@nice2dev/game-engine 0.1.0 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +193 -1
- package/dist/cjs/ai/BehaviorTree.js +1215 -0
- package/dist/cjs/ai/BehaviorTree.js.map +1 -0
- package/dist/cjs/ai/StateMachine.js +783 -0
- package/dist/cjs/ai/StateMachine.js.map +1 -0
- package/dist/cjs/audio/AudioBridge.js +454 -0
- package/dist/cjs/audio/AudioBridge.js.map +1 -0
- package/dist/cjs/devtools/GameplayAnalytics.js +651 -0
- package/dist/cjs/devtools/GameplayAnalytics.js.map +1 -0
- package/dist/cjs/dialogue/DialogueSystem.js +1023 -0
- package/dist/cjs/dialogue/DialogueSystem.js.map +1 -0
- package/dist/cjs/editor/NiceGameEditor.js +569 -71
- package/dist/cjs/editor/NiceGameEditor.js.map +1 -1
- package/dist/cjs/editor/ShaderGraph.js +1616 -0
- package/dist/cjs/editor/ShaderGraph.js.map +1 -0
- package/dist/cjs/editor/TimelineEditor.js +819 -0
- package/dist/cjs/editor/TimelineEditor.js.map +1 -0
- package/dist/cjs/engine/SaveSystemV2.js +494 -0
- package/dist/cjs/engine/SaveSystemV2.js.map +1 -0
- package/dist/cjs/export/GodotExporter.js +1102 -0
- package/dist/cjs/export/GodotExporter.js.map +1 -0
- package/dist/cjs/export/PlatformExporter.js +236 -0
- package/dist/cjs/export/PlatformExporter.js.map +1 -0
- package/dist/cjs/export/ThreeJSExporter.js +1116 -0
- package/dist/cjs/export/ThreeJSExporter.js.map +1 -0
- package/dist/cjs/export/UnityExporter.js +1193 -0
- package/dist/cjs/export/UnityExporter.js.map +1 -0
- package/dist/cjs/export/WebExporter.js +1036 -0
- package/dist/cjs/export/WebExporter.js.map +1 -0
- package/dist/cjs/export/index.js +58 -0
- package/dist/cjs/export/index.js.map +1 -0
- package/dist/cjs/i18n/useTranslation.js +11 -11
- package/dist/cjs/import/AsepriteImporter.js +761 -0
- package/dist/cjs/import/AsepriteImporter.js.map +1 -0
- package/dist/cjs/import/DragonBonesImporter.js +499 -0
- package/dist/cjs/import/DragonBonesImporter.js.map +1 -0
- package/dist/cjs/import/GameMakerImporter.js +559 -0
- package/dist/cjs/import/GameMakerImporter.js.map +1 -0
- package/dist/cjs/import/GodotSceneImporter.js +824 -0
- package/dist/cjs/import/GodotSceneImporter.js.map +1 -0
- package/dist/cjs/import/LDtkImporter.js +481 -0
- package/dist/cjs/import/LDtkImporter.js.map +1 -0
- package/dist/cjs/import/Live2DImporter.js +553 -0
- package/dist/cjs/import/Live2DImporter.js.map +1 -0
- package/dist/cjs/import/NdgFormat.js +499 -0
- package/dist/cjs/import/NdgFormat.js.map +1 -0
- package/dist/cjs/import/OgmoImporter.js +529 -0
- package/dist/cjs/import/OgmoImporter.js.map +1 -0
- package/dist/cjs/import/RPGMakerImporter.js +520 -0
- package/dist/cjs/import/RPGMakerImporter.js.map +1 -0
- package/dist/cjs/import/SceneImporter.js +449 -0
- package/dist/cjs/import/SceneImporter.js.map +1 -0
- package/dist/cjs/import/SpineImporter.js +583 -0
- package/dist/cjs/import/SpineImporter.js.map +1 -0
- package/dist/cjs/import/SpriterImporter.js +652 -0
- package/dist/cjs/import/SpriterImporter.js.map +1 -0
- package/dist/cjs/import/TiledMapImporter.js +859 -0
- package/dist/cjs/import/TiledMapImporter.js.map +1 -0
- package/dist/cjs/import/UnitySceneImporter.js +732 -0
- package/dist/cjs/import/UnitySceneImporter.js.map +1 -0
- package/dist/cjs/import/index.js +305 -0
- package/dist/cjs/import/index.js.map +1 -0
- package/dist/cjs/index.js +291 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/input/GamepadNavigation.js +21 -21
- package/dist/cjs/input/useGamepads.js +6 -6
- package/dist/cjs/integration/IconSprite.js +281 -0
- package/dist/cjs/integration/IconSprite.js.map +1 -0
- package/dist/cjs/inventory/InventorySystem.js +930 -0
- package/dist/cjs/inventory/InventorySystem.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/AbortController.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/AccessTokenHttpClient.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Errors.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HttpClient.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HubConnection.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ILogger.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ITransport.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Loggers.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Subject.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Utils.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js.map +1 -1
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/pkg-version.js.map +1 -1
- package/dist/cjs/quest/QuestSystem.js +924 -0
- package/dist/cjs/quest/QuestSystem.js.map +1 -0
- package/dist/cjs/rendering/WebGPURenderPipeline.js +658 -0
- package/dist/cjs/rendering/WebGPURenderPipeline.js.map +1 -0
- package/dist/cjs/scripting/GraphToAST.js +567 -0
- package/dist/cjs/scripting/GraphToAST.js.map +1 -0
- package/dist/cjs/scripting/LanguageExporter.js +321 -0
- package/dist/cjs/scripting/LanguageExporter.js.map +1 -0
- package/dist/cjs/scripting/ScriptAST.js +67 -0
- package/dist/cjs/scripting/ScriptAST.js.map +1 -0
- package/dist/cjs/scripting/VisualScripting2.js +1140 -0
- package/dist/cjs/scripting/VisualScripting2.js.map +1 -0
- package/dist/cjs/scripting/exporters/CSharpExporter.js +503 -0
- package/dist/cjs/scripting/exporters/CSharpExporter.js.map +1 -0
- package/dist/cjs/scripting/exporters/GDScriptExporter.js +452 -0
- package/dist/cjs/scripting/exporters/GDScriptExporter.js.map +1 -0
- package/dist/cjs/scripting/exporters/LuaExporter.js +457 -0
- package/dist/cjs/scripting/exporters/LuaExporter.js.map +1 -0
- package/dist/cjs/scripting/exporters/PythonExporter.js +565 -0
- package/dist/cjs/scripting/exporters/PythonExporter.js.map +1 -0
- package/dist/cjs/scripting/exporters/RustExporter.js +525 -0
- package/dist/cjs/scripting/exporters/RustExporter.js.map +1 -0
- package/dist/cjs/scripting/exporters/TypeScriptExporter.js +570 -0
- package/dist/cjs/scripting/exporters/TypeScriptExporter.js.map +1 -0
- package/dist/cjs/systems/ParticleSystem2.js +1478 -0
- package/dist/cjs/systems/ParticleSystem2.js.map +1 -0
- package/dist/cjs/xr/ARVR.js.map +1 -1
- package/dist/esm/ai/BehaviorTree.js +1186 -0
- package/dist/esm/ai/BehaviorTree.js.map +1 -0
- package/dist/esm/ai/StateMachine.js +767 -0
- package/dist/esm/ai/StateMachine.js.map +1 -0
- package/dist/esm/audio/AudioBridge.js +446 -0
- package/dist/esm/audio/AudioBridge.js.map +1 -0
- package/dist/esm/devtools/GameplayAnalytics.js +639 -0
- package/dist/esm/devtools/GameplayAnalytics.js.map +1 -0
- package/dist/esm/dialogue/DialogueSystem.js +1008 -0
- package/dist/esm/dialogue/DialogueSystem.js.map +1 -0
- package/dist/esm/editor/NiceGameEditor.js +556 -58
- package/dist/esm/editor/NiceGameEditor.js.map +1 -1
- package/dist/esm/editor/ShaderGraph.js +1606 -0
- package/dist/esm/editor/ShaderGraph.js.map +1 -0
- package/dist/esm/editor/TimelineEditor.js +800 -0
- package/dist/esm/editor/TimelineEditor.js.map +1 -0
- package/dist/esm/engine/SaveSystemV2.js +487 -0
- package/dist/esm/engine/SaveSystemV2.js.map +1 -0
- package/dist/esm/export/GodotExporter.js +1100 -0
- package/dist/esm/export/GodotExporter.js.map +1 -0
- package/dist/esm/export/PlatformExporter.js +230 -0
- package/dist/esm/export/PlatformExporter.js.map +1 -0
- package/dist/esm/export/ThreeJSExporter.js +1114 -0
- package/dist/esm/export/ThreeJSExporter.js.map +1 -0
- package/dist/esm/export/UnityExporter.js +1191 -0
- package/dist/esm/export/UnityExporter.js.map +1 -0
- package/dist/esm/export/WebExporter.js +1033 -0
- package/dist/esm/export/WebExporter.js.map +1 -0
- package/dist/esm/export/index.js +44 -0
- package/dist/esm/export/index.js.map +1 -0
- package/dist/esm/import/AsepriteImporter.js +759 -0
- package/dist/esm/import/AsepriteImporter.js.map +1 -0
- package/dist/esm/import/DragonBonesImporter.js +496 -0
- package/dist/esm/import/DragonBonesImporter.js.map +1 -0
- package/dist/esm/import/GameMakerImporter.js +556 -0
- package/dist/esm/import/GameMakerImporter.js.map +1 -0
- package/dist/esm/import/GodotSceneImporter.js +822 -0
- package/dist/esm/import/GodotSceneImporter.js.map +1 -0
- package/dist/esm/import/LDtkImporter.js +479 -0
- package/dist/esm/import/LDtkImporter.js.map +1 -0
- package/dist/esm/import/Live2DImporter.js +550 -0
- package/dist/esm/import/Live2DImporter.js.map +1 -0
- package/dist/esm/import/NdgFormat.js +490 -0
- package/dist/esm/import/NdgFormat.js.map +1 -0
- package/dist/esm/import/OgmoImporter.js +526 -0
- package/dist/esm/import/OgmoImporter.js.map +1 -0
- package/dist/esm/import/RPGMakerImporter.js +517 -0
- package/dist/esm/import/RPGMakerImporter.js.map +1 -0
- package/dist/esm/import/SceneImporter.js +441 -0
- package/dist/esm/import/SceneImporter.js.map +1 -0
- package/dist/esm/import/SpineImporter.js +580 -0
- package/dist/esm/import/SpineImporter.js.map +1 -0
- package/dist/esm/import/SpriterImporter.js +649 -0
- package/dist/esm/import/SpriterImporter.js.map +1 -0
- package/dist/esm/import/TiledMapImporter.js +857 -0
- package/dist/esm/import/TiledMapImporter.js.map +1 -0
- package/dist/esm/import/UnitySceneImporter.js +730 -0
- package/dist/esm/import/UnitySceneImporter.js.map +1 -0
- package/dist/esm/import/index.js +279 -0
- package/dist/esm/import/index.js.map +1 -0
- package/dist/esm/index.js +47 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/integration/IconSprite.js +266 -0
- package/dist/esm/integration/IconSprite.js.map +1 -0
- package/dist/esm/inventory/InventorySystem.js +924 -0
- package/dist/esm/inventory/InventorySystem.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/AbortController.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/AccessTokenHttpClient.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Errors.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HttpClient.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HubConnection.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ILogger.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ITransport.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Loggers.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Subject.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Utils.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js.map +1 -1
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/pkg-version.js.map +1 -1
- package/dist/esm/quest/QuestSystem.js +916 -0
- package/dist/esm/quest/QuestSystem.js.map +1 -0
- package/dist/esm/rendering/WebGPURenderPipeline.js +642 -0
- package/dist/esm/rendering/WebGPURenderPipeline.js.map +1 -0
- package/dist/esm/scripting/GraphToAST.js +564 -0
- package/dist/esm/scripting/GraphToAST.js.map +1 -0
- package/dist/esm/scripting/LanguageExporter.js +311 -0
- package/dist/esm/scripting/LanguageExporter.js.map +1 -0
- package/dist/esm/scripting/ScriptAST.js +52 -0
- package/dist/esm/scripting/ScriptAST.js.map +1 -0
- package/dist/esm/scripting/VisualScripting2.js +1130 -0
- package/dist/esm/scripting/VisualScripting2.js.map +1 -0
- package/dist/esm/scripting/exporters/CSharpExporter.js +501 -0
- package/dist/esm/scripting/exporters/CSharpExporter.js.map +1 -0
- package/dist/esm/scripting/exporters/GDScriptExporter.js +450 -0
- package/dist/esm/scripting/exporters/GDScriptExporter.js.map +1 -0
- package/dist/esm/scripting/exporters/LuaExporter.js +455 -0
- package/dist/esm/scripting/exporters/LuaExporter.js.map +1 -0
- package/dist/esm/scripting/exporters/PythonExporter.js +563 -0
- package/dist/esm/scripting/exporters/PythonExporter.js.map +1 -0
- package/dist/esm/scripting/exporters/RustExporter.js +523 -0
- package/dist/esm/scripting/exporters/RustExporter.js.map +1 -0
- package/dist/esm/scripting/exporters/TypeScriptExporter.js +568 -0
- package/dist/esm/scripting/exporters/TypeScriptExporter.js.map +1 -0
- package/dist/esm/systems/ParticleSystem2.js +1471 -0
- package/dist/esm/systems/ParticleSystem2.js.map +1 -0
- package/dist/esm/xr/ARVR.js.map +1 -1
- package/dist/types/__tests__/setup.d.ts +1 -1
- package/dist/types/ai/BehaviorTree.d.ts +375 -0
- package/dist/types/ai/StateMachine.d.ts +296 -0
- package/dist/types/audio/AudioBridge.d.ts +199 -0
- package/dist/types/devtools/GameplayAnalytics.d.ts +279 -0
- package/dist/types/dialogue/DialogueSystem.d.ts +326 -0
- package/dist/types/dialogue/index.d.ts +2 -0
- package/dist/types/editor/NiceGameEditor.d.ts +12 -1
- package/dist/types/editor/ShaderGraph.d.ts +207 -0
- package/dist/types/editor/TimelineEditor.d.ts +393 -0
- package/dist/types/engine/SaveSystemV2.d.ts +155 -0
- package/dist/types/export/GodotExporter.d.ts +56 -0
- package/dist/types/export/PlatformExporter.d.ts +201 -0
- package/dist/types/export/ThreeJSExporter.d.ts +40 -0
- package/dist/types/export/UnityExporter.d.ts +69 -0
- package/dist/types/export/WebExporter.d.ts +58 -0
- package/dist/types/export/index.d.ts +19 -0
- package/dist/types/import/AsepriteImporter.d.ts +46 -0
- package/dist/types/import/DragonBonesImporter.d.ts +331 -0
- package/dist/types/import/GameMakerImporter.d.ts +375 -0
- package/dist/types/import/GodotSceneImporter.d.ts +34 -0
- package/dist/types/import/LDtkImporter.d.ts +177 -0
- package/dist/types/import/Live2DImporter.d.ts +237 -0
- package/dist/types/import/NdgFormat.d.ts +387 -0
- package/dist/types/import/OgmoImporter.d.ts +237 -0
- package/dist/types/import/RPGMakerImporter.d.ts +186 -0
- package/dist/types/import/SceneImporter.d.ts +276 -0
- package/dist/types/import/SpineImporter.d.ts +372 -0
- package/dist/types/import/SpriterImporter.d.ts +230 -0
- package/dist/types/import/TiledMapImporter.d.ts +57 -0
- package/dist/types/import/UnitySceneImporter.d.ts +87 -0
- package/dist/types/import/index.d.ts +59 -0
- package/dist/types/index.d.ts +46 -18
- package/dist/types/integration/IconSprite.d.ts +196 -0
- package/dist/types/inventory/InventorySystem.d.ts +336 -0
- package/dist/types/performance/WebGPUCompute.d.ts +0 -10
- package/dist/types/quest/QuestSystem.d.ts +287 -0
- package/dist/types/rendering/WebGPURenderPipeline.d.ts +255 -0
- package/dist/types/scripting/GraphToAST.d.ts +55 -0
- package/dist/types/scripting/LanguageExporter.d.ts +136 -0
- package/dist/types/scripting/ScriptAST.d.ts +312 -0
- package/dist/types/scripting/VisualScripting2.d.ts +353 -0
- package/dist/types/scripting/exporters/CSharpExporter.d.ts +44 -0
- package/dist/types/scripting/exporters/GDScriptExporter.d.ts +46 -0
- package/dist/types/scripting/exporters/LuaExporter.d.ts +46 -0
- package/dist/types/scripting/exporters/PythonExporter.d.ts +49 -0
- package/dist/types/scripting/exporters/RustExporter.d.ts +46 -0
- package/dist/types/scripting/exporters/TypeScriptExporter.d.ts +48 -0
- package/dist/types/scripting/exporters/index.d.ts +8 -0
- package/dist/types/scripting/index.d.ts +11 -0
- package/dist/types/systems/ParticleSystem2.d.ts +646 -0
- package/package.json +7 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LongPollingTransport.js","sources":["../../../../../../../../node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { AbortController } from \"./AbortController\";\r\nimport { HttpError, TimeoutError } from \"./Errors\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, sendMessage } from \"./Utils\";\r\n// Not exported from 'index', this type is internal.\r\n/** @private */\r\nexport class LongPollingTransport {\r\n // This is an internal type, not exported from 'index' so this is really just internal.\r\n get pollAborted() {\r\n return this._pollAbort.aborted;\r\n }\r\n constructor(httpClient, logger, options) {\r\n this._httpClient = httpClient;\r\n this._logger = logger;\r\n this._pollAbort = new AbortController();\r\n this._options = options;\r\n this._running = false;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n async connect(url, transferFormat) {\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this._url = url;\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Connecting.\");\r\n // Allow binary format on Node and Browsers that support binary content (indicated by the presence of responseType property)\r\n if (transferFormat === TransferFormat.Binary &&\r\n (typeof XMLHttpRequest !== \"undefined\" && typeof new XMLHttpRequest().responseType !== \"string\")) {\r\n throw new Error(\"Binary protocols over XmlHttpRequest not implementing advanced features are not supported.\");\r\n }\r\n const [name, value] = getUserAgentHeader();\r\n const headers = { [name]: value, ...this._options.headers };\r\n const pollOptions = {\r\n abortSignal: this._pollAbort.signal,\r\n headers,\r\n timeout: 100000,\r\n withCredentials: this._options.withCredentials,\r\n };\r\n if (transferFormat === TransferFormat.Binary) {\r\n pollOptions.responseType = \"arraybuffer\";\r\n }\r\n // Make initial long polling request\r\n // Server uses first long polling request to finish initializing connection and it returns without data\r\n const pollUrl = `${url}&_=${Date.now()}`;\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) polling: ${pollUrl}.`);\r\n const response = await this._httpClient.get(pollUrl, pollOptions);\r\n if (response.statusCode !== 200) {\r\n this._logger.log(LogLevel.Error, `(LongPolling transport) Unexpected response code: ${response.statusCode}.`);\r\n // Mark running as false so that the poll immediately ends and runs the close logic\r\n this._closeError = new HttpError(response.statusText || \"\", response.statusCode);\r\n this._running = false;\r\n }\r\n else {\r\n this._running = true;\r\n }\r\n this._receiving = this._poll(this._url, pollOptions);\r\n }\r\n async _poll(url, pollOptions) {\r\n try {\r\n while (this._running) {\r\n try {\r\n const pollUrl = `${url}&_=${Date.now()}`;\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) polling: ${pollUrl}.`);\r\n const response = await this._httpClient.get(pollUrl, pollOptions);\r\n if (response.statusCode === 204) {\r\n this._logger.log(LogLevel.Information, \"(LongPolling transport) Poll terminated by server.\");\r\n this._running = false;\r\n }\r\n else if (response.statusCode !== 200) {\r\n this._logger.log(LogLevel.Error, `(LongPolling transport) Unexpected response code: ${response.statusCode}.`);\r\n // Unexpected status code\r\n this._closeError = new HttpError(response.statusText || \"\", response.statusCode);\r\n this._running = false;\r\n }\r\n else {\r\n // Process the response\r\n if (response.content) {\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) data received. ${getDataDetail(response.content, this._options.logMessageContent)}.`);\r\n if (this.onreceive) {\r\n this.onreceive(response.content);\r\n }\r\n }\r\n else {\r\n // This is another way timeout manifest.\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Poll timed out, reissuing.\");\r\n }\r\n }\r\n }\r\n catch (e) {\r\n if (!this._running) {\r\n // Log but disregard errors that occur after stopping\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) Poll errored after shutdown: ${e.message}`);\r\n }\r\n else {\r\n if (e instanceof TimeoutError) {\r\n // Ignore timeouts and reissue the poll.\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Poll timed out, reissuing.\");\r\n }\r\n else {\r\n // Close the connection with the error as the result.\r\n this._closeError = e;\r\n this._running = false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n finally {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Polling complete.\");\r\n // We will reach here with pollAborted==false when the server returned a response causing the transport to stop.\r\n // If pollAborted==true then client initiated the stop and the stop method will raise the close event after DELETE is sent.\r\n if (!this.pollAborted) {\r\n this._raiseOnClose();\r\n }\r\n }\r\n }\r\n async send(data) {\r\n if (!this._running) {\r\n return Promise.reject(new Error(\"Cannot send until the transport is connected\"));\r\n }\r\n return sendMessage(this._logger, \"LongPolling\", this._httpClient, this._url, data, this._options);\r\n }\r\n async stop() {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Stopping polling.\");\r\n // Tell receiving loop to stop, abort any current request, and then wait for it to finish\r\n this._running = false;\r\n this._pollAbort.abort();\r\n try {\r\n await this._receiving;\r\n // Send DELETE to clean up long polling on the server\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) sending DELETE request to ${this._url}.`);\r\n const headers = {};\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n const deleteOptions = {\r\n headers: { ...headers, ...this._options.headers },\r\n timeout: this._options.timeout,\r\n withCredentials: this._options.withCredentials,\r\n };\r\n let error;\r\n try {\r\n await this._httpClient.delete(this._url, deleteOptions);\r\n }\r\n catch (err) {\r\n error = err;\r\n }\r\n if (error) {\r\n if (error instanceof HttpError) {\r\n if (error.statusCode === 404) {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) A 404 response was returned from sending a DELETE request.\");\r\n }\r\n else {\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) Error sending a DELETE request: ${error}`);\r\n }\r\n }\r\n }\r\n else {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) DELETE request accepted.\");\r\n }\r\n }\r\n finally {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Stop finished.\");\r\n // Raise close event here instead of in polling\r\n // It needs to happen after the DELETE request is sent\r\n this._raiseOnClose();\r\n }\r\n }\r\n _raiseOnClose() {\r\n if (this.onclose) {\r\n let logMessage = \"(LongPolling transport) Firing onclose event.\";\r\n if (this._closeError) {\r\n logMessage += \" Error: \" + this._closeError;\r\n }\r\n this._logger.log(LogLevel.Trace, logMessage);\r\n this.onclose(this._closeError);\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=LongPollingTransport.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"LongPollingTransport.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { AbortController } from \"./AbortController\";\r\nimport { HttpError, TimeoutError } from \"./Errors\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, sendMessage } from \"./Utils\";\r\n// Not exported from 'index', this type is internal.\r\n/** @private */\r\nexport class LongPollingTransport {\r\n // This is an internal type, not exported from 'index' so this is really just internal.\r\n get pollAborted() {\r\n return this._pollAbort.aborted;\r\n }\r\n constructor(httpClient, logger, options) {\r\n this._httpClient = httpClient;\r\n this._logger = logger;\r\n this._pollAbort = new AbortController();\r\n this._options = options;\r\n this._running = false;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n async connect(url, transferFormat) {\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this._url = url;\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Connecting.\");\r\n // Allow binary format on Node and Browsers that support binary content (indicated by the presence of responseType property)\r\n if (transferFormat === TransferFormat.Binary &&\r\n (typeof XMLHttpRequest !== \"undefined\" && typeof new XMLHttpRequest().responseType !== \"string\")) {\r\n throw new Error(\"Binary protocols over XmlHttpRequest not implementing advanced features are not supported.\");\r\n }\r\n const [name, value] = getUserAgentHeader();\r\n const headers = { [name]: value, ...this._options.headers };\r\n const pollOptions = {\r\n abortSignal: this._pollAbort.signal,\r\n headers,\r\n timeout: 100000,\r\n withCredentials: this._options.withCredentials,\r\n };\r\n if (transferFormat === TransferFormat.Binary) {\r\n pollOptions.responseType = \"arraybuffer\";\r\n }\r\n // Make initial long polling request\r\n // Server uses first long polling request to finish initializing connection and it returns without data\r\n const pollUrl = `${url}&_=${Date.now()}`;\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) polling: ${pollUrl}.`);\r\n const response = await this._httpClient.get(pollUrl, pollOptions);\r\n if (response.statusCode !== 200) {\r\n this._logger.log(LogLevel.Error, `(LongPolling transport) Unexpected response code: ${response.statusCode}.`);\r\n // Mark running as false so that the poll immediately ends and runs the close logic\r\n this._closeError = new HttpError(response.statusText || \"\", response.statusCode);\r\n this._running = false;\r\n }\r\n else {\r\n this._running = true;\r\n }\r\n this._receiving = this._poll(this._url, pollOptions);\r\n }\r\n async _poll(url, pollOptions) {\r\n try {\r\n while (this._running) {\r\n try {\r\n const pollUrl = `${url}&_=${Date.now()}`;\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) polling: ${pollUrl}.`);\r\n const response = await this._httpClient.get(pollUrl, pollOptions);\r\n if (response.statusCode === 204) {\r\n this._logger.log(LogLevel.Information, \"(LongPolling transport) Poll terminated by server.\");\r\n this._running = false;\r\n }\r\n else if (response.statusCode !== 200) {\r\n this._logger.log(LogLevel.Error, `(LongPolling transport) Unexpected response code: ${response.statusCode}.`);\r\n // Unexpected status code\r\n this._closeError = new HttpError(response.statusText || \"\", response.statusCode);\r\n this._running = false;\r\n }\r\n else {\r\n // Process the response\r\n if (response.content) {\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) data received. ${getDataDetail(response.content, this._options.logMessageContent)}.`);\r\n if (this.onreceive) {\r\n this.onreceive(response.content);\r\n }\r\n }\r\n else {\r\n // This is another way timeout manifest.\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Poll timed out, reissuing.\");\r\n }\r\n }\r\n }\r\n catch (e) {\r\n if (!this._running) {\r\n // Log but disregard errors that occur after stopping\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) Poll errored after shutdown: ${e.message}`);\r\n }\r\n else {\r\n if (e instanceof TimeoutError) {\r\n // Ignore timeouts and reissue the poll.\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Poll timed out, reissuing.\");\r\n }\r\n else {\r\n // Close the connection with the error as the result.\r\n this._closeError = e;\r\n this._running = false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n finally {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Polling complete.\");\r\n // We will reach here with pollAborted==false when the server returned a response causing the transport to stop.\r\n // If pollAborted==true then client initiated the stop and the stop method will raise the close event after DELETE is sent.\r\n if (!this.pollAborted) {\r\n this._raiseOnClose();\r\n }\r\n }\r\n }\r\n async send(data) {\r\n if (!this._running) {\r\n return Promise.reject(new Error(\"Cannot send until the transport is connected\"));\r\n }\r\n return sendMessage(this._logger, \"LongPolling\", this._httpClient, this._url, data, this._options);\r\n }\r\n async stop() {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Stopping polling.\");\r\n // Tell receiving loop to stop, abort any current request, and then wait for it to finish\r\n this._running = false;\r\n this._pollAbort.abort();\r\n try {\r\n await this._receiving;\r\n // Send DELETE to clean up long polling on the server\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) sending DELETE request to ${this._url}.`);\r\n const headers = {};\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n const deleteOptions = {\r\n headers: { ...headers, ...this._options.headers },\r\n timeout: this._options.timeout,\r\n withCredentials: this._options.withCredentials,\r\n };\r\n let error;\r\n try {\r\n await this._httpClient.delete(this._url, deleteOptions);\r\n }\r\n catch (err) {\r\n error = err;\r\n }\r\n if (error) {\r\n if (error instanceof HttpError) {\r\n if (error.statusCode === 404) {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) A 404 response was returned from sending a DELETE request.\");\r\n }\r\n else {\r\n this._logger.log(LogLevel.Trace, `(LongPolling transport) Error sending a DELETE request: ${error}`);\r\n }\r\n }\r\n }\r\n else {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) DELETE request accepted.\");\r\n }\r\n }\r\n finally {\r\n this._logger.log(LogLevel.Trace, \"(LongPolling transport) Stop finished.\");\r\n // Raise close event here instead of in polling\r\n // It needs to happen after the DELETE request is sent\r\n this._raiseOnClose();\r\n }\r\n }\r\n _raiseOnClose() {\r\n if (this.onclose) {\r\n let logMessage = \"(LongPolling transport) Firing onclose event.\";\r\n if (this._closeError) {\r\n logMessage += \" Error: \" + this._closeError;\r\n }\r\n this._logger.log(LogLevel.Trace, logMessage);\r\n this.onclose(this._closeError);\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=LongPollingTransport.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageBuffer.js","sources":["../../../../../../../../node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { MessageType } from \"./IHubProtocol\";\r\nimport { isArrayBuffer } from \"./Utils\";\r\n/** @private */\r\nexport class MessageBuffer {\r\n constructor(protocol, connection, bufferSize) {\r\n this._bufferSize = 100000;\r\n this._messages = [];\r\n this._totalMessageCount = 0;\r\n this._waitForSequenceMessage = false;\r\n // Message IDs start at 1 and always increment by 1\r\n this._nextReceivingSequenceId = 1;\r\n this._latestReceivedSequenceId = 0;\r\n this._bufferedByteCount = 0;\r\n this._reconnectInProgress = false;\r\n this._protocol = protocol;\r\n this._connection = connection;\r\n this._bufferSize = bufferSize;\r\n }\r\n async _send(message) {\r\n const serializedMessage = this._protocol.writeMessage(message);\r\n let backpressurePromise = Promise.resolve();\r\n // Only count invocation messages. Acks, pings, etc. don't need to be resent on reconnect\r\n if (this._isInvocationMessage(message)) {\r\n this._totalMessageCount++;\r\n let backpressurePromiseResolver = () => { };\r\n let backpressurePromiseRejector = () => { };\r\n if (isArrayBuffer(serializedMessage)) {\r\n this._bufferedByteCount += serializedMessage.byteLength;\r\n }\r\n else {\r\n this._bufferedByteCount += serializedMessage.length;\r\n }\r\n if (this._bufferedByteCount >= this._bufferSize) {\r\n backpressurePromise = new Promise((resolve, reject) => {\r\n backpressurePromiseResolver = resolve;\r\n backpressurePromiseRejector = reject;\r\n });\r\n }\r\n this._messages.push(new BufferedItem(serializedMessage, this._totalMessageCount, backpressurePromiseResolver, backpressurePromiseRejector));\r\n }\r\n try {\r\n // If this is set it means we are reconnecting or resending\r\n // We don't want to send on a disconnected connection\r\n // And we don't want to send if resend is running since that would mean sending\r\n // this message twice\r\n if (!this._reconnectInProgress) {\r\n await this._connection.send(serializedMessage);\r\n }\r\n }\r\n catch {\r\n this._disconnected();\r\n }\r\n await backpressurePromise;\r\n }\r\n _ack(ackMessage) {\r\n let newestAckedMessage = -1;\r\n // Find index of newest message being acked\r\n for (let index = 0; index < this._messages.length; index++) {\r\n const element = this._messages[index];\r\n if (element._id <= ackMessage.sequenceId) {\r\n newestAckedMessage = index;\r\n if (isArrayBuffer(element._message)) {\r\n this._bufferedByteCount -= element._message.byteLength;\r\n }\r\n else {\r\n this._bufferedByteCount -= element._message.length;\r\n }\r\n // resolve items that have already been sent and acked\r\n element._resolver();\r\n }\r\n else if (this._bufferedByteCount < this._bufferSize) {\r\n // resolve items that now fall under the buffer limit but haven't been acked\r\n element._resolver();\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n if (newestAckedMessage !== -1) {\r\n // We're removing everything including the message pointed to, so add 1\r\n this._messages = this._messages.slice(newestAckedMessage + 1);\r\n }\r\n }\r\n _shouldProcessMessage(message) {\r\n if (this._waitForSequenceMessage) {\r\n if (message.type !== MessageType.Sequence) {\r\n return false;\r\n }\r\n else {\r\n this._waitForSequenceMessage = false;\r\n return true;\r\n }\r\n }\r\n // No special processing for acks, pings, etc.\r\n if (!this._isInvocationMessage(message)) {\r\n return true;\r\n }\r\n const currentId = this._nextReceivingSequenceId;\r\n this._nextReceivingSequenceId++;\r\n if (currentId <= this._latestReceivedSequenceId) {\r\n if (currentId === this._latestReceivedSequenceId) {\r\n // Should only hit this if we just reconnected and the server is sending\r\n // Messages it has buffered, which would mean it hasn't seen an Ack for these messages\r\n this._ackTimer();\r\n }\r\n // Ignore, this is a duplicate message\r\n return false;\r\n }\r\n this._latestReceivedSequenceId = currentId;\r\n // Only start the timer for sending an Ack message when we have a message to ack. This also conveniently solves\r\n // timer throttling by not having a recursive timer, and by starting the timer via a network call (recv)\r\n this._ackTimer();\r\n return true;\r\n }\r\n _resetSequence(message) {\r\n if (message.sequenceId > this._nextReceivingSequenceId) {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this._connection.stop(new Error(\"Sequence ID greater than amount of messages we've received.\"));\r\n return;\r\n }\r\n this._nextReceivingSequenceId = message.sequenceId;\r\n }\r\n _disconnected() {\r\n this._reconnectInProgress = true;\r\n this._waitForSequenceMessage = true;\r\n }\r\n async _resend() {\r\n const sequenceId = this._messages.length !== 0\r\n ? this._messages[0]._id\r\n : this._totalMessageCount + 1;\r\n await this._connection.send(this._protocol.writeMessage({ type: MessageType.Sequence, sequenceId }));\r\n // Get a local variable to the _messages, just in case messages are acked while resending\r\n // Which would slice the _messages array (which creates a new copy)\r\n const messages = this._messages;\r\n for (const element of messages) {\r\n await this._connection.send(element._message);\r\n }\r\n this._reconnectInProgress = false;\r\n }\r\n _dispose(error) {\r\n error !== null && error !== void 0 ? error : (error = new Error(\"Unable to reconnect to server.\"));\r\n // Unblock backpressure if any\r\n for (const element of this._messages) {\r\n element._rejector(error);\r\n }\r\n }\r\n _isInvocationMessage(message) {\r\n // There is no way to check if something implements an interface.\r\n // So we individually check the messages in a switch statement.\r\n // To make sure we don't miss any message types we rely on the compiler\r\n // seeing the function returns a value and it will do the\r\n // exhaustive check for us on the switch statement, since we don't use 'case default'\r\n switch (message.type) {\r\n case MessageType.Invocation:\r\n case MessageType.StreamItem:\r\n case MessageType.Completion:\r\n case MessageType.StreamInvocation:\r\n case MessageType.CancelInvocation:\r\n return true;\r\n case MessageType.Close:\r\n case MessageType.Sequence:\r\n case MessageType.Ping:\r\n case MessageType.Ack:\r\n return false;\r\n }\r\n }\r\n _ackTimer() {\r\n if (this._ackTimerHandle === undefined) {\r\n this._ackTimerHandle = setTimeout(async () => {\r\n try {\r\n if (!this._reconnectInProgress) {\r\n await this._connection.send(this._protocol.writeMessage({ type: MessageType.Ack, sequenceId: this._latestReceivedSequenceId }));\r\n }\r\n // Ignore errors, that means the connection is closed and we don't care about the Ack message anymore.\r\n }\r\n catch { }\r\n clearTimeout(this._ackTimerHandle);\r\n this._ackTimerHandle = undefined;\r\n // 1 second delay so we don't spam Ack messages if there are many messages being received at once.\r\n }, 1000);\r\n }\r\n }\r\n}\r\nclass BufferedItem {\r\n constructor(message, id, resolver, rejector) {\r\n this._message = message;\r\n this._id = id;\r\n this._resolver = resolver;\r\n this._rejector = rejector;\r\n }\r\n}\r\n//# sourceMappingURL=MessageBuffer.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"MessageBuffer.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { MessageType } from \"./IHubProtocol\";\r\nimport { isArrayBuffer } from \"./Utils\";\r\n/** @private */\r\nexport class MessageBuffer {\r\n constructor(protocol, connection, bufferSize) {\r\n this._bufferSize = 100000;\r\n this._messages = [];\r\n this._totalMessageCount = 0;\r\n this._waitForSequenceMessage = false;\r\n // Message IDs start at 1 and always increment by 1\r\n this._nextReceivingSequenceId = 1;\r\n this._latestReceivedSequenceId = 0;\r\n this._bufferedByteCount = 0;\r\n this._reconnectInProgress = false;\r\n this._protocol = protocol;\r\n this._connection = connection;\r\n this._bufferSize = bufferSize;\r\n }\r\n async _send(message) {\r\n const serializedMessage = this._protocol.writeMessage(message);\r\n let backpressurePromise = Promise.resolve();\r\n // Only count invocation messages. Acks, pings, etc. don't need to be resent on reconnect\r\n if (this._isInvocationMessage(message)) {\r\n this._totalMessageCount++;\r\n let backpressurePromiseResolver = () => { };\r\n let backpressurePromiseRejector = () => { };\r\n if (isArrayBuffer(serializedMessage)) {\r\n this._bufferedByteCount += serializedMessage.byteLength;\r\n }\r\n else {\r\n this._bufferedByteCount += serializedMessage.length;\r\n }\r\n if (this._bufferedByteCount >= this._bufferSize) {\r\n backpressurePromise = new Promise((resolve, reject) => {\r\n backpressurePromiseResolver = resolve;\r\n backpressurePromiseRejector = reject;\r\n });\r\n }\r\n this._messages.push(new BufferedItem(serializedMessage, this._totalMessageCount, backpressurePromiseResolver, backpressurePromiseRejector));\r\n }\r\n try {\r\n // If this is set it means we are reconnecting or resending\r\n // We don't want to send on a disconnected connection\r\n // And we don't want to send if resend is running since that would mean sending\r\n // this message twice\r\n if (!this._reconnectInProgress) {\r\n await this._connection.send(serializedMessage);\r\n }\r\n }\r\n catch {\r\n this._disconnected();\r\n }\r\n await backpressurePromise;\r\n }\r\n _ack(ackMessage) {\r\n let newestAckedMessage = -1;\r\n // Find index of newest message being acked\r\n for (let index = 0; index < this._messages.length; index++) {\r\n const element = this._messages[index];\r\n if (element._id <= ackMessage.sequenceId) {\r\n newestAckedMessage = index;\r\n if (isArrayBuffer(element._message)) {\r\n this._bufferedByteCount -= element._message.byteLength;\r\n }\r\n else {\r\n this._bufferedByteCount -= element._message.length;\r\n }\r\n // resolve items that have already been sent and acked\r\n element._resolver();\r\n }\r\n else if (this._bufferedByteCount < this._bufferSize) {\r\n // resolve items that now fall under the buffer limit but haven't been acked\r\n element._resolver();\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n if (newestAckedMessage !== -1) {\r\n // We're removing everything including the message pointed to, so add 1\r\n this._messages = this._messages.slice(newestAckedMessage + 1);\r\n }\r\n }\r\n _shouldProcessMessage(message) {\r\n if (this._waitForSequenceMessage) {\r\n if (message.type !== MessageType.Sequence) {\r\n return false;\r\n }\r\n else {\r\n this._waitForSequenceMessage = false;\r\n return true;\r\n }\r\n }\r\n // No special processing for acks, pings, etc.\r\n if (!this._isInvocationMessage(message)) {\r\n return true;\r\n }\r\n const currentId = this._nextReceivingSequenceId;\r\n this._nextReceivingSequenceId++;\r\n if (currentId <= this._latestReceivedSequenceId) {\r\n if (currentId === this._latestReceivedSequenceId) {\r\n // Should only hit this if we just reconnected and the server is sending\r\n // Messages it has buffered, which would mean it hasn't seen an Ack for these messages\r\n this._ackTimer();\r\n }\r\n // Ignore, this is a duplicate message\r\n return false;\r\n }\r\n this._latestReceivedSequenceId = currentId;\r\n // Only start the timer for sending an Ack message when we have a message to ack. This also conveniently solves\r\n // timer throttling by not having a recursive timer, and by starting the timer via a network call (recv)\r\n this._ackTimer();\r\n return true;\r\n }\r\n _resetSequence(message) {\r\n if (message.sequenceId > this._nextReceivingSequenceId) {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this._connection.stop(new Error(\"Sequence ID greater than amount of messages we've received.\"));\r\n return;\r\n }\r\n this._nextReceivingSequenceId = message.sequenceId;\r\n }\r\n _disconnected() {\r\n this._reconnectInProgress = true;\r\n this._waitForSequenceMessage = true;\r\n }\r\n async _resend() {\r\n const sequenceId = this._messages.length !== 0\r\n ? this._messages[0]._id\r\n : this._totalMessageCount + 1;\r\n await this._connection.send(this._protocol.writeMessage({ type: MessageType.Sequence, sequenceId }));\r\n // Get a local variable to the _messages, just in case messages are acked while resending\r\n // Which would slice the _messages array (which creates a new copy)\r\n const messages = this._messages;\r\n for (const element of messages) {\r\n await this._connection.send(element._message);\r\n }\r\n this._reconnectInProgress = false;\r\n }\r\n _dispose(error) {\r\n error !== null && error !== void 0 ? error : (error = new Error(\"Unable to reconnect to server.\"));\r\n // Unblock backpressure if any\r\n for (const element of this._messages) {\r\n element._rejector(error);\r\n }\r\n }\r\n _isInvocationMessage(message) {\r\n // There is no way to check if something implements an interface.\r\n // So we individually check the messages in a switch statement.\r\n // To make sure we don't miss any message types we rely on the compiler\r\n // seeing the function returns a value and it will do the\r\n // exhaustive check for us on the switch statement, since we don't use 'case default'\r\n switch (message.type) {\r\n case MessageType.Invocation:\r\n case MessageType.StreamItem:\r\n case MessageType.Completion:\r\n case MessageType.StreamInvocation:\r\n case MessageType.CancelInvocation:\r\n return true;\r\n case MessageType.Close:\r\n case MessageType.Sequence:\r\n case MessageType.Ping:\r\n case MessageType.Ack:\r\n return false;\r\n }\r\n }\r\n _ackTimer() {\r\n if (this._ackTimerHandle === undefined) {\r\n this._ackTimerHandle = setTimeout(async () => {\r\n try {\r\n if (!this._reconnectInProgress) {\r\n await this._connection.send(this._protocol.writeMessage({ type: MessageType.Ack, sequenceId: this._latestReceivedSequenceId }));\r\n }\r\n // Ignore errors, that means the connection is closed and we don't care about the Ack message anymore.\r\n }\r\n catch { }\r\n clearTimeout(this._ackTimerHandle);\r\n this._ackTimerHandle = undefined;\r\n // 1 second delay so we don't spam Ack messages if there are many messages being received at once.\r\n }, 1000);\r\n }\r\n }\r\n}\r\nclass BufferedItem {\r\n constructor(message, id, resolver, rejector) {\r\n this._message = message;\r\n this._id = id;\r\n this._resolver = resolver;\r\n this._rejector = rejector;\r\n }\r\n}\r\n//# sourceMappingURL=MessageBuffer.js.map"],"names":[],"mappings":";;;AAAA;AACA;AAGA;AACO,MAAM,aAAa,CAAC;AAC3B,IAAI,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE;AAClD,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAClC,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;AACpC,QAAQ,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;AAC7C;AACA,QAAQ,IAAI,CAAC,wBAAwB,GAAG,CAAC,CAAC;AAC1C,QAAQ,IAAI,CAAC,yBAAyB,GAAG,CAAC,CAAC;AAC3C,QAAQ,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;AACpC,QAAQ,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;AAC1C,QAAQ,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAClC,QAAQ,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AACtC,QAAQ,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AACtC,IAAI,CAAC;AACL,IAAI,MAAM,KAAK,CAAC,OAAO,EAAE;AACzB,QAAQ,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AACvE,QAAQ,IAAI,mBAAmB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;AACpD;AACA,QAAQ,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE;AAChD,YAAY,IAAI,CAAC,kBAAkB,EAAE,CAAC;AACtC,YAAY,IAAI,2BAA2B,GAAG,MAAM,EAAE,CAAC,CAAC;AACxD,YAAY,IAAI,2BAA2B,GAAG,MAAM,EAAE,CAAC,CAAC;AACxD,YAAY,IAAI,aAAa,CAAC,iBAAiB,CAAC,EAAE;AAClD,gBAAgB,IAAI,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,UAAU,CAAC;AACxE,YAAY,CAAC;AACb,iBAAiB;AACjB,gBAAgB,IAAI,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,MAAM,CAAC;AACpE,YAAY,CAAC;AACb,YAAY,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,WAAW,EAAE;AAC7D,gBAAgB,mBAAmB,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AACvE,oBAAoB,2BAA2B,GAAG,OAAO,CAAC;AAC1D,oBAAoB,2BAA2B,GAAG,MAAM,CAAC;AACzD,gBAAgB,CAAC,CAAC,CAAC;AACnB,YAAY,CAAC;AACb,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,2BAA2B,EAAE,2BAA2B,CAAC,CAAC,CAAC;AACxJ,QAAQ,CAAC;AACT,QAAQ,IAAI;AACZ;AACA;AACA;AACA;AACA,YAAY,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;AAC5C,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAC/D,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,QAAQ,MAAM;AACd,YAAY,IAAI,CAAC,aAAa,EAAE,CAAC;AACjC,QAAQ,CAAC;AACT,QAAQ,MAAM,mBAAmB,CAAC;AAClC,IAAI,CAAC;AACL,IAAI,IAAI,CAAC,UAAU,EAAE;AACrB,QAAQ,IAAI,kBAAkB,GAAG,EAAE,CAAC;AACpC;AACA,QAAQ,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;AACpE,YAAY,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAClD,YAAY,IAAI,OAAO,CAAC,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE;AACtD,gBAAgB,kBAAkB,GAAG,KAAK,CAAC;AAC3C,gBAAgB,IAAI,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AACrD,oBAAoB,IAAI,CAAC,kBAAkB,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;AAC3E,gBAAgB,CAAC;AACjB,qBAAqB;AACrB,oBAAoB,IAAI,CAAC,kBAAkB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;AACvE,gBAAgB,CAAC;AACjB;AACA,gBAAgB,OAAO,CAAC,SAAS,EAAE,CAAC;AACpC,YAAY,CAAC;AACb,iBAAiB,IAAI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE;AACjE;AACA,gBAAgB,OAAO,CAAC,SAAS,EAAE,CAAC;AACpC,YAAY,CAAC;AACb,iBAAiB;AACjB,gBAAgB,MAAM;AACtB,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,QAAQ,IAAI,kBAAkB,KAAK,EAAE,EAAE;AACvC;AACA,YAAY,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;AAC1E,QAAQ,CAAC;AACT,IAAI,CAAC;AACL,IAAI,qBAAqB,CAAC,OAAO,EAAE;AACnC,QAAQ,IAAI,IAAI,CAAC,uBAAuB,EAAE;AAC1C,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,QAAQ,EAAE;AACvD,gBAAgB,OAAO,KAAK,CAAC;AAC7B,YAAY,CAAC;AACb,iBAAiB;AACjB,gBAAgB,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;AACrD,gBAAgB,OAAO,IAAI,CAAC;AAC5B,YAAY,CAAC;AACb,QAAQ,CAAC;AACT;AACA,QAAQ,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE;AACjD,YAAY,OAAO,IAAI,CAAC;AACxB,QAAQ,CAAC;AACT,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAAC;AACxD,QAAQ,IAAI,CAAC,wBAAwB,EAAE,CAAC;AACxC,QAAQ,IAAI,SAAS,IAAI,IAAI,CAAC,yBAAyB,EAAE;AACzD,YAAY,IAAI,SAAS,KAAK,IAAI,CAAC,yBAAyB,EAAE;AAC9D;AACA;AACA,gBAAgB,IAAI,CAAC,SAAS,EAAE,CAAC;AACjC,YAAY,CAAC;AACb;AACA,YAAY,OAAO,KAAK,CAAC;AACzB,QAAQ,CAAC;AACT,QAAQ,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;AACnD;AACA;AACA,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;AACzB,QAAQ,OAAO,IAAI,CAAC;AACpB,IAAI,CAAC;AACL,IAAI,cAAc,CAAC,OAAO,EAAE;AAC5B,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,wBAAwB,EAAE;AAChE;AACA,YAAY,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC,CAAC;AAC5G,YAAY,OAAO;AACnB,QAAQ,CAAC;AACT,QAAQ,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC;AAC3D,IAAI,CAAC;AACL,IAAI,aAAa,GAAG;AACpB,QAAQ,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;AACzC,QAAQ,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;AAC5C,IAAI,CAAC;AACL,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;AACtD,cAAc,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG;AACnC,cAAc,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;AAC1C,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;AAC7G;AACA;AACA,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;AACxC,QAAQ,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AACxC,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC1D,QAAQ,CAAC;AACT,QAAQ,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;AAC1C,IAAI,CAAC;AACL,IAAI,QAAQ,CAAC,KAAK,EAAE;AACpB,QAAQ,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;AAC3G;AACA,QAAQ,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;AAC9C,YAAY,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACrC,QAAQ,CAAC;AACT,IAAI,CAAC;AACL,IAAI,oBAAoB,CAAC,OAAO,EAAE;AAClC;AACA;AACA;AACA;AACA;AACA,QAAQ,QAAQ,OAAO,CAAC,IAAI;AAC5B,YAAY,KAAK,WAAW,CAAC,UAAU,CAAC;AACxC,YAAY,KAAK,WAAW,CAAC,UAAU,CAAC;AACxC,YAAY,KAAK,WAAW,CAAC,UAAU,CAAC;AACxC,YAAY,KAAK,WAAW,CAAC,gBAAgB,CAAC;AAC9C,YAAY,KAAK,WAAW,CAAC,gBAAgB;AAC7C,gBAAgB,OAAO,IAAI,CAAC;AAC5B,YAAY,KAAK,WAAW,CAAC,KAAK,CAAC;AACnC,YAAY,KAAK,WAAW,CAAC,QAAQ,CAAC;AACtC,YAAY,KAAK,WAAW,CAAC,IAAI,CAAC;AAClC,YAAY,KAAK,WAAW,CAAC,GAAG;AAChC,gBAAgB,OAAO,KAAK,CAAC;AAC7B,SAAS;AACT,IAAI,CAAC;AACL,IAAI,SAAS,GAAG;AAChB,QAAQ,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE;AAChD,YAAY,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,YAAY;AAC1D,gBAAgB,IAAI;AACpB,oBAAoB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;AACpD,wBAAwB,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;AACxJ,oBAAoB,CAAC;AACrB;AACA,gBAAgB,CAAC;AACjB,gBAAgB,MAAM,EAAE,CAAC;AACzB,gBAAgB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AACnD,gBAAgB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;AACjD;AACA,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;AACrB,QAAQ,CAAC;AACT,IAAI,CAAC;AACL,CAAC;AACD,MAAM,YAAY,CAAC;AACnB,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACjD,QAAQ,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;AAChC,QAAQ,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;AACtB,QAAQ,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAClC,QAAQ,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAClC,IAAI,CAAC;AACL;;;;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerSentEventsTransport.js","sources":["
|
|
1
|
+
{"version":3,"file":"ServerSentEventsTransport.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, Platform, sendMessage } from \"./Utils\";\r\n/** @private */\r\nexport class ServerSentEventsTransport {\r\n constructor(httpClient, accessToken, logger, options) {\r\n this._httpClient = httpClient;\r\n this._accessToken = accessToken;\r\n this._logger = logger;\r\n this._options = options;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n async connect(url, transferFormat) {\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this._logger.log(LogLevel.Trace, \"(SSE transport) Connecting.\");\r\n // set url before accessTokenFactory because this._url is only for send and we set the auth header instead of the query string for send\r\n this._url = url;\r\n if (this._accessToken) {\r\n url += (url.indexOf(\"?\") < 0 ? \"?\" : \"&\") + `access_token=${encodeURIComponent(this._accessToken)}`;\r\n }\r\n return new Promise((resolve, reject) => {\r\n let opened = false;\r\n if (transferFormat !== TransferFormat.Text) {\r\n reject(new Error(\"The Server-Sent Events transport only supports the 'Text' transfer format\"));\r\n return;\r\n }\r\n let eventSource;\r\n if (Platform.isBrowser || Platform.isWebWorker) {\r\n eventSource = new this._options.EventSource(url, { withCredentials: this._options.withCredentials });\r\n }\r\n else {\r\n // Non-browser passes cookies via the dictionary\r\n const cookies = this._httpClient.getCookieString(url);\r\n const headers = {};\r\n headers.Cookie = cookies;\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n eventSource = new this._options.EventSource(url, { withCredentials: this._options.withCredentials, headers: { ...headers, ...this._options.headers } });\r\n }\r\n try {\r\n eventSource.onmessage = (e) => {\r\n if (this.onreceive) {\r\n try {\r\n this._logger.log(LogLevel.Trace, `(SSE transport) data received. ${getDataDetail(e.data, this._options.logMessageContent)}.`);\r\n this.onreceive(e.data);\r\n }\r\n catch (error) {\r\n this._close(error);\r\n return;\r\n }\r\n }\r\n };\r\n // @ts-ignore: not using event on purpose\r\n eventSource.onerror = (e) => {\r\n // EventSource doesn't give any useful information about server side closes.\r\n if (opened) {\r\n this._close();\r\n }\r\n else {\r\n reject(new Error(\"EventSource failed to connect. The connection could not be found on the server,\"\r\n + \" either the connection ID is not present on the server, or a proxy is refusing/buffering the connection.\"\r\n + \" If you have multiple servers check that sticky sessions are enabled.\"));\r\n }\r\n };\r\n eventSource.onopen = () => {\r\n this._logger.log(LogLevel.Information, `SSE connected to ${this._url}`);\r\n this._eventSource = eventSource;\r\n opened = true;\r\n resolve();\r\n };\r\n }\r\n catch (e) {\r\n reject(e);\r\n return;\r\n }\r\n });\r\n }\r\n async send(data) {\r\n if (!this._eventSource) {\r\n return Promise.reject(new Error(\"Cannot send until the transport is connected\"));\r\n }\r\n return sendMessage(this._logger, \"SSE\", this._httpClient, this._url, data, this._options);\r\n }\r\n stop() {\r\n this._close();\r\n return Promise.resolve();\r\n }\r\n _close(e) {\r\n if (this._eventSource) {\r\n this._eventSource.close();\r\n this._eventSource = undefined;\r\n if (this.onclose) {\r\n this.onclose(e);\r\n }\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=ServerSentEventsTransport.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Subject.js","sources":["
|
|
1
|
+
{"version":3,"file":"Subject.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/Subject.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { SubjectSubscription } from \"./Utils\";\r\n/** Stream implementation to stream items to the server. */\r\nexport class Subject {\r\n constructor() {\r\n this.observers = [];\r\n }\r\n next(item) {\r\n for (const observer of this.observers) {\r\n observer.next(item);\r\n }\r\n }\r\n error(err) {\r\n for (const observer of this.observers) {\r\n if (observer.error) {\r\n observer.error(err);\r\n }\r\n }\r\n }\r\n complete() {\r\n for (const observer of this.observers) {\r\n if (observer.complete) {\r\n observer.complete();\r\n }\r\n }\r\n }\r\n subscribe(observer) {\r\n this.observers.push(observer);\r\n return new SubjectSubscription(this, observer);\r\n }\r\n}\r\n//# sourceMappingURL=Subject.js.map"],"names":[],"mappings":";;AAAA;AACA;AAEA;AACO,MAAM,OAAO,CAAC;AACrB,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,IAAI,CAAC;AACL,IAAI,IAAI,CAAC,IAAI,EAAE;AACf,QAAQ,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;AAC/C,YAAY,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,QAAQ,CAAC;AACT,IAAI,CAAC;AACL,IAAI,KAAK,CAAC,GAAG,EAAE;AACf,QAAQ,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;AAC/C,YAAY,IAAI,QAAQ,CAAC,KAAK,EAAE;AAChC,gBAAgB,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACpC,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,IAAI,CAAC;AACL,IAAI,QAAQ,GAAG;AACf,QAAQ,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;AAC/C,YAAY,IAAI,QAAQ,CAAC,QAAQ,EAAE;AACnC,gBAAgB,QAAQ,CAAC,QAAQ,EAAE,CAAC;AACpC,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,IAAI,CAAC;AACL,IAAI,SAAS,CAAC,QAAQ,EAAE;AACxB,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACtC,QAAQ,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACvD,IAAI,CAAC;AACL;;;;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextMessageFormat.js","sources":["
|
|
1
|
+
{"version":3,"file":"TextMessageFormat.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\n// Not exported from index\r\n/** @private */\r\nexport class TextMessageFormat {\r\n static write(output) {\r\n return `${output}${TextMessageFormat.RecordSeparator}`;\r\n }\r\n static parse(input) {\r\n if (input[input.length - 1] !== TextMessageFormat.RecordSeparator) {\r\n throw new Error(\"Message is incomplete.\");\r\n }\r\n const messages = input.split(TextMessageFormat.RecordSeparator);\r\n messages.pop();\r\n return messages;\r\n }\r\n}\r\nTextMessageFormat.RecordSeparatorCode = 0x1e;\r\nTextMessageFormat.RecordSeparator = String.fromCharCode(TextMessageFormat.RecordSeparatorCode);\r\n//# sourceMappingURL=TextMessageFormat.js.map"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACO,MAAM,iBAAiB,CAAC;AAC/B,IAAI,OAAO,KAAK,CAAC,MAAM,EAAE;AACzB,QAAQ,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC;AAC/D,IAAI,CAAC;AACL,IAAI,OAAO,KAAK,CAAC,KAAK,EAAE;AACxB,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,iBAAiB,CAAC,eAAe,EAAE;AAC3E,YAAY,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;AACtD,QAAQ,CAAC;AACT,QAAQ,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;AACxE,QAAQ,QAAQ,CAAC,GAAG,EAAE,CAAC;AACvB,QAAQ,OAAO,QAAQ,CAAC;AACxB,IAAI,CAAC;AACL,CAAC;AACD,iBAAiB,CAAC,mBAAmB,GAAG,IAAI,CAAC;AAC7C,iBAAiB,CAAC,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;;;;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.js","sources":["../../../../../../../../node_modules/@microsoft/signalr/dist/esm/Utils.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { NullLogger } from \"./Loggers\";\r\nimport { VERSION } from \"./pkg-version\";\r\n// Version token that will be replaced by the prepack command\r\n/** The version of the SignalR client. */\r\nexport { VERSION };\r\n/** @private */\r\nexport class Arg {\r\n static isRequired(val, name) {\r\n if (val === null || val === undefined) {\r\n throw new Error(`The '${name}' argument is required.`);\r\n }\r\n }\r\n static isNotEmpty(val, name) {\r\n if (!val || val.match(/^\\s*$/)) {\r\n throw new Error(`The '${name}' argument should not be empty.`);\r\n }\r\n }\r\n static isIn(val, values, name) {\r\n // TypeScript enums have keys for **both** the name and the value of each enum member on the type itself.\r\n if (!(val in values)) {\r\n throw new Error(`Unknown ${name} value: ${val}.`);\r\n }\r\n }\r\n}\r\n/** @private */\r\nexport class Platform {\r\n // react-native has a window but no document so we should check both\r\n static get isBrowser() {\r\n return !Platform.isNode && typeof window === \"object\" && typeof window.document === \"object\";\r\n }\r\n // WebWorkers don't have a window object so the isBrowser check would fail\r\n static get isWebWorker() {\r\n return !Platform.isNode && typeof self === \"object\" && \"importScripts\" in self;\r\n }\r\n // react-native has a window but no document\r\n static get isReactNative() {\r\n return !Platform.isNode && typeof window === \"object\" && typeof window.document === \"undefined\";\r\n }\r\n // Node apps shouldn't have a window object, but WebWorkers don't either\r\n // so we need to check for both WebWorker and window\r\n static get isNode() {\r\n return typeof process !== \"undefined\" && process.release && process.release.name === \"node\";\r\n }\r\n}\r\n/** @private */\r\nexport function getDataDetail(data, includeContent) {\r\n let detail = \"\";\r\n if (isArrayBuffer(data)) {\r\n detail = `Binary data of length ${data.byteLength}`;\r\n if (includeContent) {\r\n detail += `. Content: '${formatArrayBuffer(data)}'`;\r\n }\r\n }\r\n else if (typeof data === \"string\") {\r\n detail = `String data of length ${data.length}`;\r\n if (includeContent) {\r\n detail += `. Content: '${data}'`;\r\n }\r\n }\r\n return detail;\r\n}\r\n/** @private */\r\nexport function formatArrayBuffer(data) {\r\n const view = new Uint8Array(data);\r\n // Uint8Array.map only supports returning another Uint8Array?\r\n let str = \"\";\r\n view.forEach((num) => {\r\n const pad = num < 16 ? \"0\" : \"\";\r\n str += `0x${pad}${num.toString(16)} `;\r\n });\r\n // Trim of trailing space.\r\n return str.substring(0, str.length - 1);\r\n}\r\n// Also in signalr-protocol-msgpack/Utils.ts\r\n/** @private */\r\nexport function isArrayBuffer(val) {\r\n return val && typeof ArrayBuffer !== \"undefined\" &&\r\n (val instanceof ArrayBuffer ||\r\n // Sometimes we get an ArrayBuffer that doesn't satisfy instanceof\r\n (val.constructor && val.constructor.name === \"ArrayBuffer\"));\r\n}\r\n/** @private */\r\nexport async function sendMessage(logger, transportName, httpClient, url, content, options) {\r\n const headers = {};\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n logger.log(LogLevel.Trace, `(${transportName} transport) sending data. ${getDataDetail(content, options.logMessageContent)}.`);\r\n const responseType = isArrayBuffer(content) ? \"arraybuffer\" : \"text\";\r\n const response = await httpClient.post(url, {\r\n content,\r\n headers: { ...headers, ...options.headers },\r\n responseType,\r\n timeout: options.timeout,\r\n withCredentials: options.withCredentials,\r\n });\r\n logger.log(LogLevel.Trace, `(${transportName} transport) request complete. Response status: ${response.statusCode}.`);\r\n}\r\n/** @private */\r\nexport function createLogger(logger) {\r\n if (logger === undefined) {\r\n return new ConsoleLogger(LogLevel.Information);\r\n }\r\n if (logger === null) {\r\n return NullLogger.instance;\r\n }\r\n if (logger.log !== undefined) {\r\n return logger;\r\n }\r\n return new ConsoleLogger(logger);\r\n}\r\n/** @private */\r\nexport class SubjectSubscription {\r\n constructor(subject, observer) {\r\n this._subject = subject;\r\n this._observer = observer;\r\n }\r\n dispose() {\r\n const index = this._subject.observers.indexOf(this._observer);\r\n if (index > -1) {\r\n this._subject.observers.splice(index, 1);\r\n }\r\n if (this._subject.observers.length === 0 && this._subject.cancelCallback) {\r\n this._subject.cancelCallback().catch((_) => { });\r\n }\r\n }\r\n}\r\n/** @private */\r\nexport class ConsoleLogger {\r\n constructor(minimumLogLevel) {\r\n this._minLevel = minimumLogLevel;\r\n this.out = console;\r\n }\r\n log(logLevel, message) {\r\n if (logLevel >= this._minLevel) {\r\n const msg = `[${new Date().toISOString()}] ${LogLevel[logLevel]}: ${message}`;\r\n switch (logLevel) {\r\n case LogLevel.Critical:\r\n case LogLevel.Error:\r\n this.out.error(msg);\r\n break;\r\n case LogLevel.Warning:\r\n this.out.warn(msg);\r\n break;\r\n case LogLevel.Information:\r\n this.out.info(msg);\r\n break;\r\n default:\r\n // console.debug only goes to attached debuggers in Node, so we use console.log for Trace and Debug\r\n this.out.log(msg);\r\n break;\r\n }\r\n }\r\n }\r\n}\r\n/** @private */\r\nexport function getUserAgentHeader() {\r\n let userAgentHeaderName = \"X-SignalR-User-Agent\";\r\n if (Platform.isNode) {\r\n userAgentHeaderName = \"User-Agent\";\r\n }\r\n return [userAgentHeaderName, constructUserAgent(VERSION, getOsName(), getRuntime(), getRuntimeVersion())];\r\n}\r\n/** @private */\r\nexport function constructUserAgent(version, os, runtime, runtimeVersion) {\r\n // Microsoft SignalR/[Version] ([Detailed Version]; [Operating System]; [Runtime]; [Runtime Version])\r\n let userAgent = \"Microsoft SignalR/\";\r\n const majorAndMinor = version.split(\".\");\r\n userAgent += `${majorAndMinor[0]}.${majorAndMinor[1]}`;\r\n userAgent += ` (${version}; `;\r\n if (os && os !== \"\") {\r\n userAgent += `${os}; `;\r\n }\r\n else {\r\n userAgent += \"Unknown OS; \";\r\n }\r\n userAgent += `${runtime}`;\r\n if (runtimeVersion) {\r\n userAgent += `; ${runtimeVersion}`;\r\n }\r\n else {\r\n userAgent += \"; Unknown Runtime Version\";\r\n }\r\n userAgent += \")\";\r\n return userAgent;\r\n}\r\n// eslint-disable-next-line spaced-comment\r\n/*#__PURE__*/ function getOsName() {\r\n if (Platform.isNode) {\r\n switch (process.platform) {\r\n case \"win32\":\r\n return \"Windows NT\";\r\n case \"darwin\":\r\n return \"macOS\";\r\n case \"linux\":\r\n return \"Linux\";\r\n default:\r\n return process.platform;\r\n }\r\n }\r\n else {\r\n return \"\";\r\n }\r\n}\r\n// eslint-disable-next-line spaced-comment\r\n/*#__PURE__*/ function getRuntimeVersion() {\r\n if (Platform.isNode) {\r\n return process.versions.node;\r\n }\r\n return undefined;\r\n}\r\nfunction getRuntime() {\r\n if (Platform.isNode) {\r\n return \"NodeJS\";\r\n }\r\n else {\r\n return \"Browser\";\r\n }\r\n}\r\n/** @private */\r\nexport function getErrorString(e) {\r\n if (e.stack) {\r\n return e.stack;\r\n }\r\n else if (e.message) {\r\n return e.message;\r\n }\r\n return `${e}`;\r\n}\r\n/** @private */\r\nexport function getGlobalThis() {\r\n // globalThis is semi-new and not available in Node until v12\r\n if (typeof globalThis !== \"undefined\") {\r\n return globalThis;\r\n }\r\n if (typeof self !== \"undefined\") {\r\n return self;\r\n }\r\n if (typeof window !== \"undefined\") {\r\n return window;\r\n }\r\n if (typeof global !== \"undefined\") {\r\n return global;\r\n }\r\n throw new Error(\"could not find global\");\r\n}\r\n//# sourceMappingURL=Utils.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"Utils.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/Utils.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { NullLogger } from \"./Loggers\";\r\nimport { VERSION } from \"./pkg-version\";\r\n// Version token that will be replaced by the prepack command\r\n/** The version of the SignalR client. */\r\nexport { VERSION };\r\n/** @private */\r\nexport class Arg {\r\n static isRequired(val, name) {\r\n if (val === null || val === undefined) {\r\n throw new Error(`The '${name}' argument is required.`);\r\n }\r\n }\r\n static isNotEmpty(val, name) {\r\n if (!val || val.match(/^\\s*$/)) {\r\n throw new Error(`The '${name}' argument should not be empty.`);\r\n }\r\n }\r\n static isIn(val, values, name) {\r\n // TypeScript enums have keys for **both** the name and the value of each enum member on the type itself.\r\n if (!(val in values)) {\r\n throw new Error(`Unknown ${name} value: ${val}.`);\r\n }\r\n }\r\n}\r\n/** @private */\r\nexport class Platform {\r\n // react-native has a window but no document so we should check both\r\n static get isBrowser() {\r\n return !Platform.isNode && typeof window === \"object\" && typeof window.document === \"object\";\r\n }\r\n // WebWorkers don't have a window object so the isBrowser check would fail\r\n static get isWebWorker() {\r\n return !Platform.isNode && typeof self === \"object\" && \"importScripts\" in self;\r\n }\r\n // react-native has a window but no document\r\n static get isReactNative() {\r\n return !Platform.isNode && typeof window === \"object\" && typeof window.document === \"undefined\";\r\n }\r\n // Node apps shouldn't have a window object, but WebWorkers don't either\r\n // so we need to check for both WebWorker and window\r\n static get isNode() {\r\n return typeof process !== \"undefined\" && process.release && process.release.name === \"node\";\r\n }\r\n}\r\n/** @private */\r\nexport function getDataDetail(data, includeContent) {\r\n let detail = \"\";\r\n if (isArrayBuffer(data)) {\r\n detail = `Binary data of length ${data.byteLength}`;\r\n if (includeContent) {\r\n detail += `. Content: '${formatArrayBuffer(data)}'`;\r\n }\r\n }\r\n else if (typeof data === \"string\") {\r\n detail = `String data of length ${data.length}`;\r\n if (includeContent) {\r\n detail += `. Content: '${data}'`;\r\n }\r\n }\r\n return detail;\r\n}\r\n/** @private */\r\nexport function formatArrayBuffer(data) {\r\n const view = new Uint8Array(data);\r\n // Uint8Array.map only supports returning another Uint8Array?\r\n let str = \"\";\r\n view.forEach((num) => {\r\n const pad = num < 16 ? \"0\" : \"\";\r\n str += `0x${pad}${num.toString(16)} `;\r\n });\r\n // Trim of trailing space.\r\n return str.substring(0, str.length - 1);\r\n}\r\n// Also in signalr-protocol-msgpack/Utils.ts\r\n/** @private */\r\nexport function isArrayBuffer(val) {\r\n return val && typeof ArrayBuffer !== \"undefined\" &&\r\n (val instanceof ArrayBuffer ||\r\n // Sometimes we get an ArrayBuffer that doesn't satisfy instanceof\r\n (val.constructor && val.constructor.name === \"ArrayBuffer\"));\r\n}\r\n/** @private */\r\nexport async function sendMessage(logger, transportName, httpClient, url, content, options) {\r\n const headers = {};\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n logger.log(LogLevel.Trace, `(${transportName} transport) sending data. ${getDataDetail(content, options.logMessageContent)}.`);\r\n const responseType = isArrayBuffer(content) ? \"arraybuffer\" : \"text\";\r\n const response = await httpClient.post(url, {\r\n content,\r\n headers: { ...headers, ...options.headers },\r\n responseType,\r\n timeout: options.timeout,\r\n withCredentials: options.withCredentials,\r\n });\r\n logger.log(LogLevel.Trace, `(${transportName} transport) request complete. Response status: ${response.statusCode}.`);\r\n}\r\n/** @private */\r\nexport function createLogger(logger) {\r\n if (logger === undefined) {\r\n return new ConsoleLogger(LogLevel.Information);\r\n }\r\n if (logger === null) {\r\n return NullLogger.instance;\r\n }\r\n if (logger.log !== undefined) {\r\n return logger;\r\n }\r\n return new ConsoleLogger(logger);\r\n}\r\n/** @private */\r\nexport class SubjectSubscription {\r\n constructor(subject, observer) {\r\n this._subject = subject;\r\n this._observer = observer;\r\n }\r\n dispose() {\r\n const index = this._subject.observers.indexOf(this._observer);\r\n if (index > -1) {\r\n this._subject.observers.splice(index, 1);\r\n }\r\n if (this._subject.observers.length === 0 && this._subject.cancelCallback) {\r\n this._subject.cancelCallback().catch((_) => { });\r\n }\r\n }\r\n}\r\n/** @private */\r\nexport class ConsoleLogger {\r\n constructor(minimumLogLevel) {\r\n this._minLevel = minimumLogLevel;\r\n this.out = console;\r\n }\r\n log(logLevel, message) {\r\n if (logLevel >= this._minLevel) {\r\n const msg = `[${new Date().toISOString()}] ${LogLevel[logLevel]}: ${message}`;\r\n switch (logLevel) {\r\n case LogLevel.Critical:\r\n case LogLevel.Error:\r\n this.out.error(msg);\r\n break;\r\n case LogLevel.Warning:\r\n this.out.warn(msg);\r\n break;\r\n case LogLevel.Information:\r\n this.out.info(msg);\r\n break;\r\n default:\r\n // console.debug only goes to attached debuggers in Node, so we use console.log for Trace and Debug\r\n this.out.log(msg);\r\n break;\r\n }\r\n }\r\n }\r\n}\r\n/** @private */\r\nexport function getUserAgentHeader() {\r\n let userAgentHeaderName = \"X-SignalR-User-Agent\";\r\n if (Platform.isNode) {\r\n userAgentHeaderName = \"User-Agent\";\r\n }\r\n return [userAgentHeaderName, constructUserAgent(VERSION, getOsName(), getRuntime(), getRuntimeVersion())];\r\n}\r\n/** @private */\r\nexport function constructUserAgent(version, os, runtime, runtimeVersion) {\r\n // Microsoft SignalR/[Version] ([Detailed Version]; [Operating System]; [Runtime]; [Runtime Version])\r\n let userAgent = \"Microsoft SignalR/\";\r\n const majorAndMinor = version.split(\".\");\r\n userAgent += `${majorAndMinor[0]}.${majorAndMinor[1]}`;\r\n userAgent += ` (${version}; `;\r\n if (os && os !== \"\") {\r\n userAgent += `${os}; `;\r\n }\r\n else {\r\n userAgent += \"Unknown OS; \";\r\n }\r\n userAgent += `${runtime}`;\r\n if (runtimeVersion) {\r\n userAgent += `; ${runtimeVersion}`;\r\n }\r\n else {\r\n userAgent += \"; Unknown Runtime Version\";\r\n }\r\n userAgent += \")\";\r\n return userAgent;\r\n}\r\n// eslint-disable-next-line spaced-comment\r\n/*#__PURE__*/ function getOsName() {\r\n if (Platform.isNode) {\r\n switch (process.platform) {\r\n case \"win32\":\r\n return \"Windows NT\";\r\n case \"darwin\":\r\n return \"macOS\";\r\n case \"linux\":\r\n return \"Linux\";\r\n default:\r\n return process.platform;\r\n }\r\n }\r\n else {\r\n return \"\";\r\n }\r\n}\r\n// eslint-disable-next-line spaced-comment\r\n/*#__PURE__*/ function getRuntimeVersion() {\r\n if (Platform.isNode) {\r\n return process.versions.node;\r\n }\r\n return undefined;\r\n}\r\nfunction getRuntime() {\r\n if (Platform.isNode) {\r\n return \"NodeJS\";\r\n }\r\n else {\r\n return \"Browser\";\r\n }\r\n}\r\n/** @private */\r\nexport function getErrorString(e) {\r\n if (e.stack) {\r\n return e.stack;\r\n }\r\n else if (e.message) {\r\n return e.message;\r\n }\r\n return `${e}`;\r\n}\r\n/** @private */\r\nexport function getGlobalThis() {\r\n // globalThis is semi-new and not available in Node until v12\r\n if (typeof globalThis !== \"undefined\") {\r\n return globalThis;\r\n }\r\n if (typeof self !== \"undefined\") {\r\n return self;\r\n }\r\n if (typeof window !== \"undefined\") {\r\n return window;\r\n }\r\n if (typeof global !== \"undefined\") {\r\n return global;\r\n }\r\n throw new Error(\"could not find global\");\r\n}\r\n//# sourceMappingURL=Utils.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocketTransport.js","sources":["../../../../../../../../node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { HeaderNames } from \"./HeaderNames\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, Platform } from \"./Utils\";\r\n/** @private */\r\nexport class WebSocketTransport {\r\n constructor(httpClient, accessTokenFactory, logger, logMessageContent, webSocketConstructor, headers) {\r\n this._logger = logger;\r\n this._accessTokenFactory = accessTokenFactory;\r\n this._logMessageContent = logMessageContent;\r\n this._webSocketConstructor = webSocketConstructor;\r\n this._httpClient = httpClient;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n this._headers = headers;\r\n }\r\n async connect(url, transferFormat) {\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this._logger.log(LogLevel.Trace, \"(WebSockets transport) Connecting.\");\r\n let token;\r\n if (this._accessTokenFactory) {\r\n token = await this._accessTokenFactory();\r\n }\r\n return new Promise((resolve, reject) => {\r\n url = url.replace(/^http/, \"ws\");\r\n let webSocket;\r\n const cookies = this._httpClient.getCookieString(url);\r\n let opened = false;\r\n if (Platform.isNode || Platform.isReactNative) {\r\n const headers = {};\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n if (token) {\r\n headers[HeaderNames.Authorization] = `Bearer ${token}`;\r\n }\r\n if (cookies) {\r\n headers[HeaderNames.Cookie] = cookies;\r\n }\r\n // Only pass headers when in non-browser environments\r\n webSocket = new this._webSocketConstructor(url, undefined, {\r\n headers: { ...headers, ...this._headers },\r\n });\r\n }\r\n else {\r\n if (token) {\r\n url += (url.indexOf(\"?\") < 0 ? \"?\" : \"&\") + `access_token=${encodeURIComponent(token)}`;\r\n }\r\n }\r\n if (!webSocket) {\r\n // Chrome is not happy with passing 'undefined' as protocol\r\n webSocket = new this._webSocketConstructor(url);\r\n }\r\n if (transferFormat === TransferFormat.Binary) {\r\n webSocket.binaryType = \"arraybuffer\";\r\n }\r\n webSocket.onopen = (_event) => {\r\n this._logger.log(LogLevel.Information, `WebSocket connected to ${url}.`);\r\n this._webSocket = webSocket;\r\n opened = true;\r\n resolve();\r\n };\r\n webSocket.onerror = (event) => {\r\n let error = null;\r\n // ErrorEvent is a browser only type we need to check if the type exists before using it\r\n if (typeof ErrorEvent !== \"undefined\" && event instanceof ErrorEvent) {\r\n error = event.error;\r\n }\r\n else {\r\n error = \"There was an error with the transport\";\r\n }\r\n this._logger.log(LogLevel.Information, `(WebSockets transport) ${error}.`);\r\n };\r\n webSocket.onmessage = (message) => {\r\n this._logger.log(LogLevel.Trace, `(WebSockets transport) data received. ${getDataDetail(message.data, this._logMessageContent)}.`);\r\n if (this.onreceive) {\r\n try {\r\n this.onreceive(message.data);\r\n }\r\n catch (error) {\r\n this._close(error);\r\n return;\r\n }\r\n }\r\n };\r\n webSocket.onclose = (event) => {\r\n // Don't call close handler if connection was never established\r\n // We'll reject the connect call instead\r\n if (opened) {\r\n this._close(event);\r\n }\r\n else {\r\n let error = null;\r\n // ErrorEvent is a browser only type we need to check if the type exists before using it\r\n if (typeof ErrorEvent !== \"undefined\" && event instanceof ErrorEvent) {\r\n error = event.error;\r\n }\r\n else {\r\n error = \"WebSocket failed to connect. The connection could not be found on the server,\"\r\n + \" either the endpoint may not be a SignalR endpoint,\"\r\n + \" the connection ID is not present on the server, or there is a proxy blocking WebSockets.\"\r\n + \" If you have multiple servers check that sticky sessions are enabled.\";\r\n }\r\n reject(new Error(error));\r\n }\r\n };\r\n });\r\n }\r\n send(data) {\r\n if (this._webSocket && this._webSocket.readyState === this._webSocketConstructor.OPEN) {\r\n this._logger.log(LogLevel.Trace, `(WebSockets transport) sending data. ${getDataDetail(data, this._logMessageContent)}.`);\r\n this._webSocket.send(data);\r\n return Promise.resolve();\r\n }\r\n return Promise.reject(\"WebSocket is not in the OPEN state\");\r\n }\r\n stop() {\r\n if (this._webSocket) {\r\n // Manually invoke onclose callback inline so we know the HttpConnection was closed properly before returning\r\n // This also solves an issue where websocket.onclose could take 18+ seconds to trigger during network disconnects\r\n this._close(undefined);\r\n }\r\n return Promise.resolve();\r\n }\r\n _close(event) {\r\n // webSocket will be null if the transport did not start successfully\r\n if (this._webSocket) {\r\n // Clear websocket handlers because we are considering the socket closed now\r\n this._webSocket.onclose = () => { };\r\n this._webSocket.onmessage = () => { };\r\n this._webSocket.onerror = () => { };\r\n this._webSocket.close();\r\n this._webSocket = undefined;\r\n }\r\n this._logger.log(LogLevel.Trace, \"(WebSockets transport) socket closed.\");\r\n if (this.onclose) {\r\n if (this._isCloseEvent(event) && (event.wasClean === false || event.code !== 1000)) {\r\n this.onclose(new Error(`WebSocket closed with status code: ${event.code} (${event.reason || \"no reason given\"}).`));\r\n }\r\n else if (event instanceof Error) {\r\n this.onclose(event);\r\n }\r\n else {\r\n this.onclose();\r\n }\r\n }\r\n }\r\n _isCloseEvent(event) {\r\n return event && typeof event.wasClean === \"boolean\" && typeof event.code === \"number\";\r\n }\r\n}\r\n//# sourceMappingURL=WebSocketTransport.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"WebSocketTransport.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { HeaderNames } from \"./HeaderNames\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, Platform } from \"./Utils\";\r\n/** @private */\r\nexport class WebSocketTransport {\r\n constructor(httpClient, accessTokenFactory, logger, logMessageContent, webSocketConstructor, headers) {\r\n this._logger = logger;\r\n this._accessTokenFactory = accessTokenFactory;\r\n this._logMessageContent = logMessageContent;\r\n this._webSocketConstructor = webSocketConstructor;\r\n this._httpClient = httpClient;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n this._headers = headers;\r\n }\r\n async connect(url, transferFormat) {\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this._logger.log(LogLevel.Trace, \"(WebSockets transport) Connecting.\");\r\n let token;\r\n if (this._accessTokenFactory) {\r\n token = await this._accessTokenFactory();\r\n }\r\n return new Promise((resolve, reject) => {\r\n url = url.replace(/^http/, \"ws\");\r\n let webSocket;\r\n const cookies = this._httpClient.getCookieString(url);\r\n let opened = false;\r\n if (Platform.isNode || Platform.isReactNative) {\r\n const headers = {};\r\n const [name, value] = getUserAgentHeader();\r\n headers[name] = value;\r\n if (token) {\r\n headers[HeaderNames.Authorization] = `Bearer ${token}`;\r\n }\r\n if (cookies) {\r\n headers[HeaderNames.Cookie] = cookies;\r\n }\r\n // Only pass headers when in non-browser environments\r\n webSocket = new this._webSocketConstructor(url, undefined, {\r\n headers: { ...headers, ...this._headers },\r\n });\r\n }\r\n else {\r\n if (token) {\r\n url += (url.indexOf(\"?\") < 0 ? \"?\" : \"&\") + `access_token=${encodeURIComponent(token)}`;\r\n }\r\n }\r\n if (!webSocket) {\r\n // Chrome is not happy with passing 'undefined' as protocol\r\n webSocket = new this._webSocketConstructor(url);\r\n }\r\n if (transferFormat === TransferFormat.Binary) {\r\n webSocket.binaryType = \"arraybuffer\";\r\n }\r\n webSocket.onopen = (_event) => {\r\n this._logger.log(LogLevel.Information, `WebSocket connected to ${url}.`);\r\n this._webSocket = webSocket;\r\n opened = true;\r\n resolve();\r\n };\r\n webSocket.onerror = (event) => {\r\n let error = null;\r\n // ErrorEvent is a browser only type we need to check if the type exists before using it\r\n if (typeof ErrorEvent !== \"undefined\" && event instanceof ErrorEvent) {\r\n error = event.error;\r\n }\r\n else {\r\n error = \"There was an error with the transport\";\r\n }\r\n this._logger.log(LogLevel.Information, `(WebSockets transport) ${error}.`);\r\n };\r\n webSocket.onmessage = (message) => {\r\n this._logger.log(LogLevel.Trace, `(WebSockets transport) data received. ${getDataDetail(message.data, this._logMessageContent)}.`);\r\n if (this.onreceive) {\r\n try {\r\n this.onreceive(message.data);\r\n }\r\n catch (error) {\r\n this._close(error);\r\n return;\r\n }\r\n }\r\n };\r\n webSocket.onclose = (event) => {\r\n // Don't call close handler if connection was never established\r\n // We'll reject the connect call instead\r\n if (opened) {\r\n this._close(event);\r\n }\r\n else {\r\n let error = null;\r\n // ErrorEvent is a browser only type we need to check if the type exists before using it\r\n if (typeof ErrorEvent !== \"undefined\" && event instanceof ErrorEvent) {\r\n error = event.error;\r\n }\r\n else {\r\n error = \"WebSocket failed to connect. The connection could not be found on the server,\"\r\n + \" either the endpoint may not be a SignalR endpoint,\"\r\n + \" the connection ID is not present on the server, or there is a proxy blocking WebSockets.\"\r\n + \" If you have multiple servers check that sticky sessions are enabled.\";\r\n }\r\n reject(new Error(error));\r\n }\r\n };\r\n });\r\n }\r\n send(data) {\r\n if (this._webSocket && this._webSocket.readyState === this._webSocketConstructor.OPEN) {\r\n this._logger.log(LogLevel.Trace, `(WebSockets transport) sending data. ${getDataDetail(data, this._logMessageContent)}.`);\r\n this._webSocket.send(data);\r\n return Promise.resolve();\r\n }\r\n return Promise.reject(\"WebSocket is not in the OPEN state\");\r\n }\r\n stop() {\r\n if (this._webSocket) {\r\n // Manually invoke onclose callback inline so we know the HttpConnection was closed properly before returning\r\n // This also solves an issue where websocket.onclose could take 18+ seconds to trigger during network disconnects\r\n this._close(undefined);\r\n }\r\n return Promise.resolve();\r\n }\r\n _close(event) {\r\n // webSocket will be null if the transport did not start successfully\r\n if (this._webSocket) {\r\n // Clear websocket handlers because we are considering the socket closed now\r\n this._webSocket.onclose = () => { };\r\n this._webSocket.onmessage = () => { };\r\n this._webSocket.onerror = () => { };\r\n this._webSocket.close();\r\n this._webSocket = undefined;\r\n }\r\n this._logger.log(LogLevel.Trace, \"(WebSockets transport) socket closed.\");\r\n if (this.onclose) {\r\n if (this._isCloseEvent(event) && (event.wasClean === false || event.code !== 1000)) {\r\n this.onclose(new Error(`WebSocket closed with status code: ${event.code} (${event.reason || \"no reason given\"}).`));\r\n }\r\n else if (event instanceof Error) {\r\n this.onclose(event);\r\n }\r\n else {\r\n this.onclose();\r\n }\r\n }\r\n }\r\n _isCloseEvent(event) {\r\n return event && typeof event.wasClean === \"boolean\" && typeof event.code === \"number\";\r\n }\r\n}\r\n//# sourceMappingURL=WebSocketTransport.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XhrHttpClient.js","sources":["
|
|
1
|
+
{"version":3,"file":"XhrHttpClient.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js"],"sourcesContent":["// Licensed to the .NET Foundation under one or more agreements.\r\n// The .NET Foundation licenses this file to you under the MIT license.\r\nimport { AbortError, HttpError, TimeoutError } from \"./Errors\";\r\nimport { HttpClient, HttpResponse } from \"./HttpClient\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { isArrayBuffer } from \"./Utils\";\r\nexport class XhrHttpClient extends HttpClient {\r\n constructor(logger) {\r\n super();\r\n this._logger = logger;\r\n }\r\n /** @inheritDoc */\r\n send(request) {\r\n // Check that abort was not signaled before calling send\r\n if (request.abortSignal && request.abortSignal.aborted) {\r\n return Promise.reject(new AbortError());\r\n }\r\n if (!request.method) {\r\n return Promise.reject(new Error(\"No method defined.\"));\r\n }\r\n if (!request.url) {\r\n return Promise.reject(new Error(\"No url defined.\"));\r\n }\r\n return new Promise((resolve, reject) => {\r\n const xhr = new XMLHttpRequest();\r\n xhr.open(request.method, request.url, true);\r\n xhr.withCredentials = request.withCredentials === undefined ? true : request.withCredentials;\r\n xhr.setRequestHeader(\"X-Requested-With\", \"XMLHttpRequest\");\r\n if (request.content === \"\") {\r\n request.content = undefined;\r\n }\r\n if (request.content) {\r\n // Explicitly setting the Content-Type header for React Native on Android platform.\r\n if (isArrayBuffer(request.content)) {\r\n xhr.setRequestHeader(\"Content-Type\", \"application/octet-stream\");\r\n }\r\n else {\r\n xhr.setRequestHeader(\"Content-Type\", \"text/plain;charset=UTF-8\");\r\n }\r\n }\r\n const headers = request.headers;\r\n if (headers) {\r\n Object.keys(headers)\r\n .forEach((header) => {\r\n xhr.setRequestHeader(header, headers[header]);\r\n });\r\n }\r\n if (request.responseType) {\r\n xhr.responseType = request.responseType;\r\n }\r\n if (request.abortSignal) {\r\n request.abortSignal.onabort = () => {\r\n xhr.abort();\r\n reject(new AbortError());\r\n };\r\n }\r\n if (request.timeout) {\r\n xhr.timeout = request.timeout;\r\n }\r\n xhr.onload = () => {\r\n if (request.abortSignal) {\r\n request.abortSignal.onabort = null;\r\n }\r\n if (xhr.status >= 200 && xhr.status < 300) {\r\n resolve(new HttpResponse(xhr.status, xhr.statusText, xhr.response || xhr.responseText));\r\n }\r\n else {\r\n reject(new HttpError(xhr.response || xhr.responseText || xhr.statusText, xhr.status));\r\n }\r\n };\r\n xhr.onerror = () => {\r\n this._logger.log(LogLevel.Warning, `Error from HTTP request. ${xhr.status}: ${xhr.statusText}.`);\r\n reject(new HttpError(xhr.statusText, xhr.status));\r\n };\r\n xhr.ontimeout = () => {\r\n this._logger.log(LogLevel.Warning, `Timeout from HTTP request.`);\r\n reject(new TimeoutError());\r\n };\r\n xhr.send(request.content);\r\n });\r\n }\r\n}\r\n//# sourceMappingURL=XhrHttpClient.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkg-version.js","sources":["
|
|
1
|
+
{"version":3,"file":"pkg-version.js","sources":["../../../../../../../../../node_modules/@microsoft/signalr/dist/esm/pkg-version.js"],"sourcesContent":["export const VERSION = '10.0.0';\r\n//# sourceMappingURL=pkg-version.js.map"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;","x_google_ignoreList":[0]}
|