From 3a4c1c7e3ea5784bd6ed6e830e305439c491fbf0 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 5 Nov 2024 19:35:15 +0000 Subject: [PATCH 001/173] Navisworks Connector Init --- .../Properties/launchSettings.json | 9 +++ .../Speckle.Connector.Navisworks2024.csproj | 68 +++++++++++++++++++ .../packages.lock.json | 7 ++ ...ckle.Connectors.NavisworksShared.projitems | 11 +++ ...Speckle.Connectors.NavisworksShared.shproj | 12 ++++ .../Speckle.Converter.Navisworks2024.csproj | 24 +++++++ .../packages.lock.json | 6 ++ ...ckle.Converters.NavisworksShared.projitems | 14 ++++ ...Speckle.Converters.NavisworksShared.shproj | 12 ++++ Directory.Packages.props | 2 + Speckle.Connectors.sln | 28 ++++++++ 11 files changed, 193 insertions(+) create mode 100644 Connectors/Navisworks/Speckle.Connector.Navisworks2024/Properties/launchSettings.json create mode 100644 Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj create mode 100644 Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj create mode 100644 Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj create mode 100644 Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj diff --git a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Properties/launchSettings.json new file mode 100644 index 000000000..32e5dc126 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "profiles": { + "Speckle.Connector.Navisworks2024": { + "commandName": "Executable", + "executablePath": "C:\\Program Files\\Autodesk\\Navisworks Manage 2024\\Roamer.exe", + "commandLineArgs": " -licensing AdLM" + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj new file mode 100644 index 000000000..4c1187573 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj @@ -0,0 +1,68 @@ + + + + + + net48 + x64 + win-x64 + 512 + true + + v21 + 2024 + + true + $(DefineConstants);NAVIS2024 + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connector.Navisworks.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connector.Navisworks.bundle\Contents\$(NavisworksBuildNumber) + + + + + + + + + + + + + + + + + + + bin\x64\Debug\ + TRACE;NAVIS2024; + true + full + false + prompt + 4 + + + + bin\x64\Release\ + TRACE;NAVIS2024; + pdbonly + true + prompt + 4 + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json new file mode 100644 index 000000000..b46e8fb2e --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json @@ -0,0 +1,7 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": {}, + ".NETFramework,Version=v4.8/win-x64": {} + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems new file mode 100644 index 000000000..f2a67080f --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -0,0 +1,11 @@ + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + true + D1D9FBB0-5928-4AD0-9AD3-EC61B7BD96CA + + + Speckle.Connectors.NavisworksShared + + \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj new file mode 100644 index 000000000..7b0f30f96 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj @@ -0,0 +1,12 @@ + + + + {62813838-52F7-43CB-9062-BB2611C00C79} + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj new file mode 100644 index 000000000..e03db8ab0 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj @@ -0,0 +1,24 @@ + + + SpeckleConverterNavisworks + Objects.Converter.Navisworks2024 + Objects.Converter.Navisworks + AnyCPU;x64 + bin\x64\$(Configuration) + true + $(DefineConstants);NAVIS2024 + net48 + Debug;Release;Local + + + + + + + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json new file mode 100644 index 000000000..076f20dc3 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json @@ -0,0 +1,6 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": {} + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems new file mode 100644 index 000000000..2dcaba964 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -0,0 +1,14 @@ + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + true + 6886282C-EFA5-4ED0-85BD-2883E23E092B + + + Speckle.Convereters.Navisworks + + + + + \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj new file mode 100644 index 000000000..68dc48c3b --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj @@ -0,0 +1,12 @@ + + + + {23830613-87F8-4655-B523-72189A597962} + + + + + + + diff --git a/Directory.Packages.props b/Directory.Packages.props index b91a88842..22d191a33 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -44,6 +44,8 @@ + + diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index a7b16cf0b..7c7c6be92 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -175,6 +175,20 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2 EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converter.Tekla2024", "Converters\Tekla\Speckle.Converter.Tekla2024\Speckle.Converter.Tekla2024.csproj", "{ACF75860-7FCE-4AE9-8C45-68AD1043550B}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Navisworks", "Navisworks", "{9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{633F7669-11D7-4217-9AED-F16BCEB452B9}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{7658869E-E371-4955-94FA-5C23B6311516}" +EndProject +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connector.Navisworks2024", "Connectors\Navisworks\Speckle.Connector.Navisworks2024\Speckle.Connector.Navisworks2024.csproj", "{7FC65FF7-86A7-450C-A3A1-25F36A28F026}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converter.Navisworks2024", "Converters\Navisworks\Speckle.Converter.Navisworks2024\Speckle.Converter.Navisworks2024.csproj", "{2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}" +EndProject +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -458,6 +472,14 @@ Global {ACF75860-7FCE-4AE9-8C45-68AD1043550B}.Local|Any CPU.Build.0 = Debug|Any CPU {ACF75860-7FCE-4AE9-8C45-68AD1043550B}.Release|Any CPU.ActiveCfg = Release|Any CPU {ACF75860-7FCE-4AE9-8C45-68AD1043550B}.Release|Any CPU.Build.0 = Release|Any CPU + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Local|Any CPU.Build.0 = Local|Any CPU + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Release|Any CPU.Build.0 = Release|Any CPU + {7FC65FF7-86A7-450C-A3A1-25F36A28F026}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7FC65FF7-86A7-450C-A3A1-25F36A28F026}.Debug|Any CPU.Build.0 = Debug|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -537,6 +559,12 @@ Global {4459F2B1-A340-488E-A856-EB2AE9C72AD4} = {B2BF1FAE-D0F4-4961-84CB-A00D3CABD236} {DB31E57B-60FC-49BE-91E0-1374290BCF03} = {B2BF1FAE-D0F4-4961-84CB-A00D3CABD236} {ACF75860-7FCE-4AE9-8C45-68AD1043550B} = {696086E4-D8CC-4FE0-A9B3-5F10B9089B55} + {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} + {633F7669-11D7-4217-9AED-F16BCEB452B9} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {7658869E-E371-4955-94FA-5C23B6311516} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {62813838-52F7-43CB-9062-BB2611C00C79} = {633F7669-11D7-4217-9AED-F16BCEB452B9} + {7FC65FF7-86A7-450C-A3A1-25F36A28F026} = {7658869E-E371-4955-94FA-5C23B6311516} + {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C} = {7658869E-E371-4955-94FA-5C23B6311516} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From f843767054cb39c3bb1af95cc2d647465e42e9e3 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 6 Nov 2024 13:28:31 +0000 Subject: [PATCH 002/173] Build crap --- .../packages.lock.json | 7 - .../Properties/launchSettings.json | 0 .../Speckle.Connectors.Navisworks2024.csproj} | 3 +- .../packages.lock.json | 321 ++++++++++++++++++ .../packages.lock.json | 6 - .../Speckle.Converters.Navisworks2024.csproj} | 9 +- .../packages.lock.json | 321 ++++++++++++++++++ Speckle.Connectors.sln | 31 +- 8 files changed, 667 insertions(+), 31 deletions(-) delete mode 100644 Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json rename Connectors/Navisworks/{Speckle.Connector.Navisworks2024 => Speckle.Connectors.Navisworks2024}/Properties/launchSettings.json (100%) rename Connectors/Navisworks/{Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj => Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj} (96%) create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json rename Converters/Navisworks/{Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj => Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj} (89%) create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json diff --git a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json deleted file mode 100644 index b46e8fb2e..000000000 --- a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/packages.lock.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": {}, - ".NETFramework,Version=v4.8/win-x64": {} - } -} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Properties/launchSettings.json similarity index 100% rename from Connectors/Navisworks/Speckle.Connector.Navisworks2024/Properties/launchSettings.json rename to Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Properties/launchSettings.json diff --git a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj similarity index 96% rename from Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj rename to Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index 4c1187573..ec417f9bc 100644 --- a/Connectors/Navisworks/Speckle.Connector.Navisworks2024/Speckle.Connector.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -21,6 +21,7 @@ $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connector.Navisworks.bundle $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connector.Navisworks.bundle\Contents\$(NavisworksBuildNumber) + Speckle.Connector.Navisworks2024 @@ -62,7 +63,7 @@ - + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json new file mode 100644 index 000000000..fa912c1f2 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2024.0.0, )", + "resolved": "2024.0.0", + "contentHash": "SnkvhcENMy3YLWbzy4lCweMuWdAbNzAtwvffFH2xVHmnm/2INnMGucYGazAHN496d6wgl9YRGa4qftgVsg7T7A==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.174, )", + "resolved": "3.1.0-dev.174", + "contentHash": "9SCFVbVle2+fPxx2l0sIiWQMLxw1S++V7DrDPnq/0fq5jKJNzaeT7w4VwLX7AzhTvnplpY/fhi9qUCR27nO9VA==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.174" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.174, )", + "resolved": "3.1.0-dev.174", + "contentHash": "sj0RdxcORCNxT7KdXtUYV1E+dsNfdAnNQElTv77DN5O9p4grFxkV1Wymu3XH5nkQ5HrwqBWbfRU9ycK7QruIYg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.174" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.174, )", + "resolved": "3.1.0-dev.174", + "contentHash": "I3a1XHewuT+QUTYWHiTcDy5KtKBlpztWFbA+rKplBq6pj/sBdOu/QLEDkhSK4tKhYkFrGh/3LrDeYq4TpOIGUw==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json deleted file mode 100644 index 076f20dc3..000000000 --- a/Converters/Navisworks/Speckle.Converter.Navisworks2024/packages.lock.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": {} - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj similarity index 89% rename from Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj rename to Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index e03db8ab0..398edbdd0 100644 --- a/Converters/Navisworks/Speckle.Converter.Navisworks2024/Speckle.Converter.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -11,14 +11,15 @@ Debug;Release;Local - - - + - + + + + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json new file mode 100644 index 000000000..6311ecf83 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2024.0.0, )", + "resolved": "2024.0.0", + "contentHash": "SnkvhcENMy3YLWbzy4lCweMuWdAbNzAtwvffFH2xVHmnm/2INnMGucYGazAHN496d6wgl9YRGa4qftgVsg7T7A==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.174, )" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.174, )", + "resolved": "3.1.0-dev.174", + "contentHash": "9SCFVbVle2+fPxx2l0sIiWQMLxw1S++V7DrDPnq/0fq5jKJNzaeT7w4VwLX7AzhTvnplpY/fhi9qUCR27nO9VA==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.174" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.174, )", + "resolved": "3.1.0-dev.174", + "contentHash": "sj0RdxcORCNxT7KdXtUYV1E+dsNfdAnNQElTv77DN5O9p4grFxkV1Wymu3XH5nkQ5HrwqBWbfRU9ycK7QruIYg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.174" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.174, )", + "resolved": "3.1.0-dev.174", + "contentHash": "I3a1XHewuT+QUTYWHiTcDy5KtKBlpztWFbA+rKplBq6pj/sBdOu/QLEDkhSK4tKhYkFrGh/3LrDeYq4TpOIGUw==" + } + } + } +} \ No newline at end of file diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 7c7c6be92..173bcb77c 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -181,11 +181,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{633F76 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{7658869E-E371-4955-94FA-5C23B6311516}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{EE22B8E8-405D-411B-BBDB-102A06143D2B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connector.Navisworks2024", "Connectors\Navisworks\Speckle.Connector.Navisworks2024\Speckle.Connector.Navisworks2024.csproj", "{7FC65FF7-86A7-450C-A3A1-25F36A28F026}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converter.Navisworks2024", "Converters\Navisworks\Speckle.Converter.Navisworks2024\Speckle.Converter.Navisworks2024.csproj", "{2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}" +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject @@ -472,14 +472,18 @@ Global {ACF75860-7FCE-4AE9-8C45-68AD1043550B}.Local|Any CPU.Build.0 = Debug|Any CPU {ACF75860-7FCE-4AE9-8C45-68AD1043550B}.Release|Any CPU.ActiveCfg = Release|Any CPU {ACF75860-7FCE-4AE9-8C45-68AD1043550B}.Release|Any CPU.Build.0 = Release|Any CPU - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Local|Any CPU.ActiveCfg = Local|Any CPU - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Local|Any CPU.Build.0 = Local|Any CPU - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C}.Release|Any CPU.Build.0 = Release|Any CPU - {7FC65FF7-86A7-450C-A3A1-25F36A28F026}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7FC65FF7-86A7-450C-A3A1-25F36A28F026}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Local|Any CPU.Build.0 = Debug|Any CPU + {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Release|Any CPU.Build.0 = Release|Any CPU + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Local|Any CPU.ActiveCfg = Local|Any CPU + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Local|Any CPU.Build.0 = Local|Any CPU + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -562,9 +566,10 @@ Global {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} {633F7669-11D7-4217-9AED-F16BCEB452B9} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} {7658869E-E371-4955-94FA-5C23B6311516} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {EE22B8E8-405D-411B-BBDB-102A06143D2B} = {7658869E-E371-4955-94FA-5C23B6311516} + {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B} = {7658869E-E371-4955-94FA-5C23B6311516} {62813838-52F7-43CB-9062-BB2611C00C79} = {633F7669-11D7-4217-9AED-F16BCEB452B9} - {7FC65FF7-86A7-450C-A3A1-25F36A28F026} = {7658869E-E371-4955-94FA-5C23B6311516} - {2BAE7603-E21A-42FB-A24F-07FF45BA1A7C} = {7658869E-E371-4955-94FA-5C23B6311516} + {23830613-87F8-4655-B523-72189A597962} = {633F7669-11D7-4217-9AED-F16BCEB452B9} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From ade588f0c19e8a35e281b6939e912b00b560a316 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 6 Nov 2024 20:02:29 +0000 Subject: [PATCH 003/173] Moar Init --- .../Speckle.Connectors.Navisworks2024.csproj | 14 +- .../packages.lock.json | 57 +++++ .../Bindings/BasicConnectorBinding.cs | 60 ++++++ .../ServiceRegistration.cs | 30 +++ .../GlobalUsings.cs | 1 + .../HostApp/NavisworksDocumentStore.cs | 14 ++ .../Plugin/AppUtils.cs | 20 ++ .../Plugin/BrowserPane.xaml | 17 ++ .../Plugin/BrowserPane.xaml.cs | 8 + .../Plugin/Commands.cs | 7 + .../Plugin/DockableConnectorPane.cs | 62 ++++++ .../Plugin/NavisworksRibbon.name | 9 + .../Plugin/NavisworksRibbon.xaml | 15 ++ .../Plugin/NavisworksRibbon.xaml.cs | 196 ++++++++++++++++++ .../Plugin/PackageContents.xml | 11 + .../Resources/s2logo16.png | Bin 0 -> 714 bytes .../Resources/s2logo32.png | Bin 0 -> 1672 bytes ...ckle.Connectors.NavisworksShared.projitems | 25 +++ .../Speckle.Converters.Navisworks2024.csproj | 1 - .../GlobalUsings.cs | 0 Navisworks.slnf | 28 +++ 21 files changed, 568 insertions(+), 7 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.name create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Resources/s2logo16.png create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Resources/s2logo32.png create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsings.cs create mode 100644 Navisworks.slnf diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index ec417f9bc..e96390af9 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -13,7 +13,7 @@ 2024 true - $(DefineConstants);NAVIS2024 + $(DefineConstants);NAVIS2024;NAVIS NextGen Speckle Connector for Autodesk Navisworks Manage $(Authors) jonathon@speckle.systems @@ -29,11 +29,6 @@ - - - - - @@ -65,5 +60,12 @@ + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index fa912c1f2..413eba80d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -2,6 +2,15 @@ "version": 2, "dependencies": { ".NETFramework,Version=v4.8": { + "Microsoft.Extensions.DependencyInjection": { + "type": "Direct", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.NETFramework.ReferenceAssemblies": { "type": "Direct", "requested": "[1.0.3, )", @@ -268,6 +277,36 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.174, )", + "Speckle.Sdk": "[3.1.0-dev.174, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.174, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.174, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.174, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -286,6 +325,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Sdk": { "type": "CentralTransitive", "requested": "[3.1.0-dev.174, )", @@ -308,6 +353,12 @@ "requested": "[3.1.0-dev.174, )", "resolved": "3.1.0-dev.174", "contentHash": "I3a1XHewuT+QUTYWHiTcDy5KtKBlpztWFbA+rKplBq6pj/sBdOu/QLEDkhSK4tKhYkFrGh/3LrDeYq4TpOIGUw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } }, ".NETFramework,Version=v4.8/win-x64": { @@ -315,6 +366,12 @@ "type": "Transitive", "resolved": "2.1.4", "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" } } } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs new file mode 100644 index 000000000..9e44afcaf --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs @@ -0,0 +1,60 @@ +using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.Models.Card; +using Speckle.Sdk; + +namespace Speckle.Connector.Navisworks.Bindings; + +public class BasicConnectorBinding : IBasicConnectorBinding +{ + public string Name => "baseBinding"; + public IBrowserBridge Parent { get; } + + public string GetSourceApplicationName() => _speckleApplication.Slug; + + public string GetSourceApplicationVersion() => _speckleApplication.HostApplicationVersion; + + public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; + + public DocumentInfo? GetDocumentInfo() + { + if (NavisworksApp.ActiveDocument is null) + { + return null; + } + + return new DocumentInfo(NavisworksApp.ActiveDocument.Title, "", "3"); + } + + public DocumentModelStore GetDocumentState() => _store; + + public void AddModel(ModelCard model) => _store.Models.Add(model); + + public void UpdateModel(ModelCard model) => _store.UpdateModel(model); + + public void RemoveModel(ModelCard model) => _store.RemoveModel(model); + + public Task HighlightModel(string modelCardId) + { + return Task.CompletedTask; + } + + public Task HighlightObjects(IReadOnlyList objectIds) + { + return Task.CompletedTask; + } + + public BasicConnectorBindingCommands Commands { get; } + + private readonly ISpeckleApplication _speckleApplication; + private readonly DocumentModelStore _store; + + public BasicConnectorBinding(IBrowserBridge parent, ISpeckleApplication speckleApplication, DocumentModelStore store) + { + Parent = parent; + Commands = new BasicConnectorBindingCommands(parent); + _speckleApplication = speckleApplication; + _store = store; + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs new file mode 100644 index 000000000..e33b861ae --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs @@ -0,0 +1,30 @@ +using Microsoft.Extensions.DependencyInjection; +using Speckle.Connector.Navisworks.Bindings; +using Speckle.Connector.Navisworks.HostApp; +using Speckle.Connectors.Common; +using Speckle.Connectors.DUI; +using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.WebView; + +namespace Speckle.Connector.Navisworks.DependencyInjection; + +public static class ServiceRegistration +{ + public static void AddNavisworks(this IServiceCollection serviceCollection) + { + serviceCollection.AddConnectorUtils(); + serviceCollection.AddDUI(); + serviceCollection.AddDUIView(); + + serviceCollection.RegisterTopLevelExceptionHandler(); + + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + + serviceCollection.AddSingleton(); + + serviceCollection.AddSingleton(); + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs new file mode 100644 index 000000000..0dcb0f7a2 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs @@ -0,0 +1 @@ +global using NavisworksApp = Autodesk.Navisworks.Api.Application; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs new file mode 100644 index 000000000..30f7d6d29 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -0,0 +1,14 @@ +using Speckle.Connectors.DUI.Models; +using Speckle.Newtonsoft.Json; + +namespace Speckle.Connector.Navisworks.HostApp; + +public class NavisworksDocumentStore : DocumentModelStore +{ + public NavisworksDocumentStore(JsonSerializerSettings serializerOptions) + : base(serializerOptions, true) { } + + public override void WriteToFile() { } + + public override void ReadFromFile() { } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs new file mode 100644 index 000000000..6dccd0c94 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs @@ -0,0 +1,20 @@ +using Speckle.Sdk.Host; + +namespace Speckle.Connector.Navisworks.NavisPlugin; + +public static class AppUtils +{ + public static HostApplication App => +#if NAVIS + HostApplications.Civil3D; +#else + throw new NotSupportedException(); +#endif + + public static HostAppVersion Version => +#if NAVIS2024 + HostAppVersion.v2024; +#else + throw new NotSupportedException(); +#endif +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml new file mode 100644 index 000000000..ab3a0c963 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml @@ -0,0 +1,17 @@ + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml.cs new file mode 100644 index 000000000..2605eece7 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/BrowserPane.xaml.cs @@ -0,0 +1,8 @@ +using System.Windows.Controls; + +namespace Speckle.Connectors.Navisworks; + +public class BrowserPane : UserControl +{ + public BrowserPane() { } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs new file mode 100644 index 000000000..438fb6821 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs @@ -0,0 +1,7 @@ +namespace Speckle.Connector.Navisworks.NavisPlugin; + +public abstract class LaunchSpeckleConnector +{ + public const string COMMAND = "Speckle_Launch"; + public const string PLUGIN = "SpeckleUI3"; +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs new file mode 100644 index 000000000..b972412db --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -0,0 +1,62 @@ +using System.Diagnostics.CodeAnalysis; +using System.Windows.Forms; +using System.Windows.Forms.Integration; +using Autodesk.Navisworks.Api.Plugins; +using Microsoft.Extensions.DependencyInjection; +using Speckle.Connector.Navisworks.DependencyInjection; +using Speckle.Connectors.Common; +using Speckle.Connectors.DUI; +using Speckle.Connectors.DUI.WebView; +using Speckle.Sdk.Host; + +namespace Speckle.Connector.Navisworks.NavisPlugin; + +[ + DockPanePlugin(450, 750, FixedSize = false, AutoScroll = true, MinimumHeight = 410, MinimumWidth = 250), + Plugin( + LaunchSpeckleConnector.PLUGIN, + "Speckle", + DisplayName = "Speckle", + Options = PluginOptions.None, + ToolTip = "Speckle Connector for Navisworks", + ExtendedToolTip = "Speckle Connector for Navisworks" + ) +] +[SuppressMessage( + "design", + "CA1812:Avoid uninstantiated internal classes", + Justification = "Instantiated by Navisworks" +)] +internal sealed class Connector : DockPanePlugin +{ + public ServiceProvider? Container { get; private set; } + + public override Control CreateControlPane() + { + var services = new ServiceCollection(); + + services.Initialize(HostApplications.Navisworks, HostAppVersion.v2024); + + services.AddNavisworks(); + + Container = services.BuildServiceProvider(); + + Container.UseDUI(); + + var u = Container.GetRequiredService(); + + var speckleHost = new ElementHost { AutoSize = true, Child = u }; + + speckleHost.CreateControl(); + + return speckleHost; + } + + public override void DestroyControlPane(Control pane) + { + if (pane is UserControl control) + { + control.Dispose(); + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.name b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.name new file mode 100644 index 000000000..ac79a9a2f --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.name @@ -0,0 +1,9 @@ +# This file uses UTF8 encoding. Lines starting with # or $, or ending with = +# do NOT need translating. +$utf8 + +# DisplayName= +# SpeckleNextGen + +# Speckle.DisplayName= +# SpeckleNextGen diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml new file mode 100644 index 000000000..787daf4a5 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs new file mode 100644 index 000000000..f852bec43 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs @@ -0,0 +1,196 @@ +using System.Diagnostics.CodeAnalysis; +using System.Windows.Forms; +using Autodesk.Navisworks.Api.Plugins; +#if DEBUG +using System.Text; +#endif + +namespace Speckle.Connector.Navisworks.NavisPlugin; + +[ + Plugin("SpeckleNavisworksNextGen", "Speckle", DisplayName = "Speckle Next Gen"), + Strings("NavisworksRibbon.name"), + RibbonLayout("NavisworksRibbon.xaml"), + RibbonTab("Speckle", DisplayName = "Speckle Next Gen", LoadForCanExecute = true), + Command( + LaunchSpeckleConnector.COMMAND, + LoadForCanExecute = true, + Icon = "Resources/s2logo16.png", + LargeIcon = "Resources/s2logo32.png", + Shortcut = "Ctrl+Shift+S", + ToolTip = "Next Gen Speckle Connector for Navisworks", + DisplayName = "Speckle\rConnector" + ), +] +[SuppressMessage( + "design", + "CA1812:Avoid uninstantiated internal classes", + Justification = "Instantiated by Navisworks" +)] +internal sealed class RibbonHandler : CommandHandlerPlugin +{ + private static readonly Dictionary s_loadedPlugins = []; + + /// + /// Determines the state of a command in Navisworks. + /// + /// The ID of the command to check. + /// The state of the command. + public override CommandState CanExecuteCommand(string commandId) => + commandId == LaunchSpeckleConnector.COMMAND ? new CommandState(true) : new CommandState(false); + + /// + /// Loads a plugin in Navisworks. + /// + /// The name of the plugin to load. + /// Optional. Specifies whether to check if the application is automated. Default is true. + /// Optional. The command associated with the plugin. Default is an empty string. + private static void LoadPlugin(string plugin, bool notAutomatedCheck = true, string command = "") + { + if (ShouldSkipLoad(notAutomatedCheck)) + { + return; + } + + if (ShouldSkipPluginLoad(plugin, command)) + { + return; + } + + var pluginRecord = NavisworksApp.Plugins.FindPlugin(plugin + ".Speckle"); + if (pluginRecord is null) + { + return; + } + + var loadedPlugin = pluginRecord.LoadedPlugin ?? pluginRecord.LoadPlugin(); + + ActivatePluginPane(pluginRecord, loadedPlugin, command); + } + + /// + /// Checks whether the load should be skipped based on the notAutomatedCheck flag and application automation status. + /// + /// The flag indicating whether to check if the application is automated. + /// True if the load should be skipped, False otherwise. + private static bool ShouldSkipLoad(bool notAutomatedCheck) => notAutomatedCheck && NavisworksApp.IsAutomated; + + /// + /// Checks whether the plugin load should be skipped based on the plugin and command values. + /// + /// The name of the plugin. + /// The command associated with the plugin. + /// True if the plugin load should be skipped, False otherwise. + private static bool ShouldSkipPluginLoad(string plugin, string command) => + string.IsNullOrEmpty(plugin) || string.IsNullOrEmpty(command); + + /// + /// Activates the plugin's pane if it is of the right type. + /// + /// The plugin record. + /// The loaded plugin instance. + /// The command associated with the plugin. + private static void ActivatePluginPane(PluginRecord pluginRecord, object loadedPlugin, string command) + { + if (ShouldActivatePluginPane(pluginRecord)) + { + var dockPanePlugin = (DockPanePlugin)loadedPlugin; + dockPanePlugin.ActivatePane(); + + s_loadedPlugins[dockPanePlugin] = true; + } + else + { +#if DEBUG + ShowPluginInfoMessageBox(); + ShowPluginNotLoadedMessageBox(command); +#endif + } + } + + /// + /// Checks whether the plugin's pane should be activated based on the plugin record. + /// + /// The plugin record. + /// True if the plugin's pane should be activated, False otherwise. + private static bool ShouldActivatePluginPane(PluginRecord pluginRecord) => + pluginRecord.IsLoaded && pluginRecord is DockPanePluginRecord && pluginRecord.IsEnabled; + + public override int ExecuteCommand(string commandId, params string[] parameters) + { + // ReSharper disable once RedundantAssignment + var buildVersion = string.Empty; + +#if NAVIS2020 + buildVersion = "2020"; +#endif +#if NAVIS2021 + buildVersion = "2021"; +#endif +#if NAVIS2022 + buildVersion = "2022"; +#endif +#if NAVIS2023 + buildVersion = "2023"; +#endif +#if NAVIS2024 + buildVersion = "2024"; +#endif +#if NAVIS2025 + buildVersion = "2025"; +#endif + + // Version + if (!NavisworksApp.Version.RuntimeProductName.Contains(buildVersion)) + { + MessageBox.Show( + "This Add-In was built for Navisworks " + + buildVersion + + ", please contact jonathon@speckle.systems for assistance...", + "Cannot Continue!", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + return 0; + } + + switch (commandId) + { + case LaunchSpeckleConnector.COMMAND: + { + LoadPlugin(LaunchSpeckleConnector.PLUGIN, command: commandId); + break; + } + + default: + { + MessageBox.Show("You have clicked on an unexpected command with ID = '" + commandId + "'"); + break; + } + } + + return 0; + } + +#if DEBUG + /// + /// Shows a message box displaying plugin information. + /// + private static void ShowPluginInfoMessageBox() + { + var sb = new StringBuilder(); + foreach (var pr in NavisworksApp.Plugins.PluginRecords) + { + sb.AppendLine(pr.Name + ": " + pr.DisplayName + ", " + pr.Id); + } + + MessageBox.Show(sb.ToString()); + } + + /// + /// Shows a message box indicating that the plugin was not loaded. + /// + /// The command associated with the plugin. + private static void ShowPluginNotLoadedMessageBox(string command) => MessageBox.Show(command + " Plugin not loaded."); +#endif +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml new file mode 100644 index 000000000..cbe0b4c9c --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml @@ -0,0 +1,11 @@ + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Resources/s2logo16.png b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Resources/s2logo16.png new file mode 100644 index 0000000000000000000000000000000000000000..61872f0d0cc34673152721968f5b93ef13aff8b4 GIT binary patch literal 714 zcmV;*0yX`KP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0$)i)K~y+Tm6Kga zQ(+j#hi=(LS5CY!VNB>kidYw2RM5q!h#*C~jYbsGT}U7MaL1G8SD9L~v5(5sEMkL2 zgeW^T1qF-NQcI;>Of1vo)*6=EId1R2^B!qMn?VPDyf4r5yubH(A2_m8oe|w-4myJu zEJZ&|x=dcuLos@Z$H)<%fg=HN4M})OjAGzWDWl)MWA9Px=3(OS--yC`nPz_gR8rBs zhT{VShkFSQ-c3trtf>s@jt!K}zmYTRkOY*Xvnx{I7s{r%w3akQaMIz+#7o;EnLQ<^ zz|Ps=n=nfI)~BP0&-bFJF^)s_83bnyIAZnxTTtZ~L2N}HDv3Jn3N1sGkUxZ$>8 zaOjfQRd{njNy|5siEU~vlepj-2ZU(=QM{h>qRKgm^7b&wuEnsmUdR?~yOKcEe+KE5 zM)Pom&6kPZTgF<^BV!pGaNJZ#C`fu?f-v(t8@lB42bzj$~`gmxjW={HDz zeT<%G4k#NohMaQ->eeMpy}AhUy<2>O8(8-M$$qRa>!BZbkg3ZOC>Q|+ERQYqJZ$|Y zq(WMda0Sv|s*qkfiiBT-U9Gby5c9MyOF#n(W+U;gZ!eNQ6;@xUu=so@*2Yx$F}xk; zZaSrl=p{J?lpPHpuwpI7oV^^?*FC6lx^T;K9?^Tn=(C>A)NLv#X2Ym$>p&qJg|>47 zL9SYg@3|U)u04AO?B9YvY3ORi;vF^08)tInr9X1_fk0(pO(Z5a3$c8&FfYLfZ}S;` wM9%O}Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1|3O6K~z{rwU-G@ zR96&+O%<%&Z9zq9i`uxfRV1w@)f!RJHfdt8B8_#!q@=W|+NN0R!YU|=84)N9%1*6f zT~HBGs7?_VP#8cIfyyd7!{7|ayjkAgb7y!1BclvWy~&q*=iGD8`QN+e-J2OUSlfC5 z4o0%ztS1{D0^73S&-nEsAGRZlPhf1%=C3feW%E+%s~J18f$dp*HH*_5+R!}3k4_5< z1ZQ%TvjxwC0V15{NwGSp)vWXLf<552Y`7W)Fx+=GnRR}i(A)Mi3SfNc{m`sqf4nn+ zAI|f7JkRi0dy*T$0}w?6k?8^y*%qF%B*HKVwutpWQ970P5yVNWU3@iF=z()(BWE;HK0Y zJ@xMBdEkocxf_l4S)yj>YWD%!I`ECrSRG$xoJ*1;iegXBZdUuD8dep8~pa0my;Jw~+ByjNbl|KL`2Ub?7Q_Lt~yBmPh|> z5>H@AH862cJx-nb1)Vn+V0BCeto<}-E8h?3>PWyN>Ko8qy&vz3I`E086rDF*a3#YF z4!ax7#$yb*2(A6pSS8NDjL-_KODqB}KSs&hiB3XBI?}M?_yvp&YJ=C|RE+XhnT;bb zsDRf4yD>RbhMA&P%n5J8!st4<##X>1)YG608OoObmnBYKUs`dqDo>P*Z_+RYjm(vKW*0JhV&zV`4}PawNg%d?12K zaTz*w9=&EM1-?TG?hzygDDbG#-8s?HNolx;*-=2nakmJNt)kpPAj z;e8|>O@$udnnQq|6SUXqB!sRW$4*&O$OCR8r1C}P~2I8kW|CjV2)=BU`eff z)kc_YNn{CR1VnOQ$BpsK@k{|D{Wy%I z6HN~r6K@7|LMd^C=AR{0;VZ$**3entL2Mw_gYQ@czReAqDi=JyJ`+pAa$!y4O=1yN zbe;?vhzW}<23!!aTLuc)~K;)jkHB`lpP`uZo-&= zR=hzcX8x6LFk4g(n*bTSMItmEvPXNYE!q>t!24jB*?5d030S%NPqh3t7U#m2VQ%mZ zqkV-~0p+~*{v<;ZU`@q1K49S8E>83XcX1}_&Mm=< z{R)g><3I59>kkv)Z>a!tu!J>n(;-RMD|Bf6#mAX33EtLNk0n>I> zph!F$#o~`4rQS32>95-ydI79CE|5An%`2=PssM}eQOk$>sB852auUV}UoNdTy`eD? z6Wr^n*@8Z2b&+v_k1CO2<->&y_u>2*FYM$z1cv)*oEanidK?6LLqDYr8}={JV2_00 S^FF%(0000 literal 0 HcmV?d00001 diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index f2a67080f..b0edefe91 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -8,4 +8,29 @@ Speckle.Connectors.NavisworksShared + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index 398edbdd0..5c34eccfd 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -20,6 +20,5 @@ - diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsings.cs new file mode 100644 index 000000000..e69de29bb diff --git a/Navisworks.slnf b/Navisworks.slnf new file mode 100644 index 000000000..36a51d335 --- /dev/null +++ b/Navisworks.slnf @@ -0,0 +1,28 @@ +{ + "solution": { + "path": "Speckle.Connectors.sln", + "projects": [ + "Build\\Build.csproj", + "Connectors\\Autocad\\Speckle.Connectors.Autocad2024\\Speckle.Connectors.Autocad2024.shproj", + "Connectors\\Autocad\\Speckle.Connectors.AutocadShared\\Speckle.Connectors.AutocadShared.shproj", + "Connectors\\Autocad\\Speckle.Connectors.Civil3dShared\\Speckle.Connectors.Civil3dShared.shproj", + "Connectors\\Navisworks\\Speckle.Connectors.Navisworks2024\\Speckle.Connectors.Navisworks2024.csproj", + "Connectors\\Navisworks\\Speckle.Connectors.NavisworksShared\\Speckle.Connectors.NavisworksShared.shproj", + "Connectors\\Tekla\\Speckle.Connector.Tekla2024\\Speckle.Connector.Tekla2024.csproj", + "Converters\\Autocad\\Speckle.Converters.AutocadShared\\Speckle.Converters.AutocadShared.shproj", + "Converters\\Civil3d\\Speckle.Converters.Civil3dShared\\Speckle.Converters.Civil3dShared.shproj", + "Converters\\Navisworks\\Speckle.Converters.Navisworks2024\\Speckle.Converters.Navisworks2024.csproj", + "Converters\\Navisworks\\Speckle.Converters.NavisworksShared\\Speckle.Converters.NavisworksShared.shproj", + "Converters\\Tekla\\Speckle.Converter.Tekla2024\\Speckle.Converter.Tekla2024.csproj", + "DUI3\\Speckle.Connectors.DUI.Tests\\Speckle.Connectors.DUI.Tests.csproj", + "DUI3\\Speckle.Connectors.DUI.WebView\\Speckle.Connectors.DUI.WebView.csproj", + "DUI3\\Speckle.Connectors.DUI\\Speckle.Connectors.DUI.csproj", + "Sdk\\Speckle.Connectors.Common\\Speckle.Connectors.Common.csproj", + "Sdk\\Speckle.Connectors.Logging\\Speckle.Connectors.Logging.csproj", + "Sdk\\Speckle.Connectors.Tests\\Speckle.Connectors.Tests.csproj", + "Sdk\\Speckle.Converters.Common.Tests\\Speckle.Converters.Common.Tests.csproj", + "Sdk\\Speckle.Converters.Common\\Speckle.Converters.Common.csproj", + "Sdk\\Speckle.Testing\\Speckle.Testing.csproj" + ] + } +} From 01d5c9b20e86f014c8447c5874679036b42623ab Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 8 Nov 2024 08:48:34 +0000 Subject: [PATCH 004/173] WIP - not yet working --- .../Speckle.Connectors.Navisworks2024.csproj | 88 +++++++++++-------- .../Bindings/NavisworksSelectionBinding.cs | 12 +++ .../Bindings/NavisworksSendBinding.cs | 22 +++++ .../ServiceRegistration.cs | 17 ++++ .../Filters/NavisworksSelectionFilter.cs | 8 ++ .../Plugin/PackageContents.xml | 2 +- ...ckle.Connectors.NavisworksShared.projitems | 24 +++-- 7 files changed, 131 insertions(+), 42 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index e96390af9..f20f0f288 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -2,36 +2,36 @@ - - net48 - x64 - win-x64 - 512 - true - - v21 - 2024 - - true - $(DefineConstants);NAVIS2024;NAVIS - - NextGen Speckle Connector for Autodesk Navisworks Manage - $(Authors) jonathon@speckle.systems - $(PackageTags) connector nwd nwc nwf navisworks manage - - $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connector.Navisworks.bundle - $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connector.Navisworks.bundle\Contents\$(NavisworksBuildNumber) - Speckle.Connector.Navisworks2024 - - - - - - - - - - + + net48 + x64 + win-x64 + 512 + true + + v21 + 2024 + + true + $(DefineConstants);NAVIS2024;NAVIS + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) + Speckle.Connector.Navisworks2024 + + + + + + + + + + @@ -43,7 +43,7 @@ prompt 4 - + bin\x64\Release\ TRACE;NAVIS2024; @@ -58,14 +58,32 @@ - + - + - + + + - + + + + + + + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs new file mode 100644 index 000000000..a4bd1b701 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -0,0 +1,12 @@ +using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Bridge; + +namespace Speckle.Connector.Navisworks.Bindings; + +public class NavisworksSelectionBinding : ISelectionBinding +{ + public string Name { get; } + public IBrowserBridge Parent { get; } + + public SelectionInfo GetSelection() => new([], "No selection available"); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs new file mode 100644 index 000000000..468658396 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -0,0 +1,22 @@ +using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Settings; + +namespace Speckle.Connector.Navisworks.Bindings; + +public class NavisworksSendBinding : ISendBinding +{ + public string Name { get; } + public IBrowserBridge Parent { get; } + + public List GetSendFilters() => throw new NotImplementedException(); + + public List GetSendSettings() => throw new NotImplementedException(); + + public Task Send(string modelCardId) => throw new NotImplementedException(); + + public void CancelSend(string modelCardId) => throw new NotImplementedException(); + + public SendBindingUICommands Commands { get; } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs index e33b861ae..c14e8f03b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs @@ -1,10 +1,13 @@ using Microsoft.Extensions.DependencyInjection; using Speckle.Connector.Navisworks.Bindings; +using Speckle.Connector.Navisworks.Filters; using Speckle.Connector.Navisworks.HostApp; using Speckle.Connectors.Common; +using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.WebView; namespace Speckle.Connector.Navisworks.DependencyInjection; @@ -13,18 +16,32 @@ public static class ServiceRegistration { public static void AddNavisworks(this IServiceCollection serviceCollection) { + // Register Core functionality serviceCollection.AddConnectorUtils(); serviceCollection.AddDUI(); serviceCollection.AddDUIView(); + // Register Intercom/interop serviceCollection.RegisterTopLevelExceptionHandler(); + serviceCollection.AddTransient(); + // Register bindings serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + // Register Navisworks specific bindings serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddScoped(); + + // binding dependencies + serviceCollection.AddTransient(); + + // register send filters + serviceCollection.AddScoped(); } } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs new file mode 100644 index 000000000..575f1d18e --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs @@ -0,0 +1,8 @@ +using Speckle.Connectors.DUI.Models.Card.SendFilter; + +namespace Speckle.Connector.Navisworks.Filters; + +public class NavisworksSelectionFilter : DirectSelectionSendFilter +{ + public override List GetObjectIds() => throw new NotImplementedException(); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml index cbe0b4c9c..9edbb3ba4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml @@ -6,6 +6,6 @@ + ModuleName="./Contents/2024/Speckle.Connectors.Navisworks2024.dll" AppDescription="Speckle.Connector.Navisworks2024" /> diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index b0edefe91..81e489e42 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -9,12 +9,14 @@ Speckle.Connectors.NavisworksShared - + + + @@ -25,12 +27,22 @@ - - - - + + Always + + + Always + + + Always + + + Always + - + + Always + \ No newline at end of file From 088dfb906e315fa8a7b711c198b3e19bef4b2d42 Mon Sep 17 00:00:00 2001 From: oguzhankoral Date: Thu, 14 Nov 2024 11:20:29 +0000 Subject: [PATCH 005/173] Minor fixes --- .../packages.lock.json | 50 +++++++++---------- .../Bindings/NavisworksSelectionBinding.cs | 2 +- .../Bindings/NavisworksSendBinding.cs | 6 +-- .../ServiceRegistration.cs | 6 ++- .../Filters/NavisworksSelectionFilter.cs | 2 +- .../packages.lock.json | 24 ++++----- 6 files changed, 46 insertions(+), 44 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 413eba80d..6b39412e5 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -2,15 +2,6 @@ "version": 2, "dependencies": { ".NETFramework,Version=v4.8": { - "Microsoft.Extensions.DependencyInjection": { - "type": "Direct", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, "Microsoft.NETFramework.ReferenceAssemblies": { "type": "Direct", "requested": "[1.0.3, )", @@ -50,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.174, )", - "resolved": "3.1.0-dev.174", - "contentHash": "9SCFVbVle2+fPxx2l0sIiWQMLxw1S++V7DrDPnq/0fq5jKJNzaeT7w4VwLX7AzhTvnplpY/fhi9qUCR27nO9VA==", + "requested": "[3.1.0-dev.181, )", + "resolved": "3.1.0-dev.181", + "contentHash": "r6GGA7Pq4CPGYOu6OmmLW/hhhREo/l44RUFhsoYmpHNGpOg1UjF45dwyfLgaU38wrNxQoURjLUQDkxGfhb8liA==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.174" + "Speckle.Sdk": "3.1.0-dev.181" } }, "GraphQL.Client": { @@ -282,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.174, )", - "Speckle.Sdk": "[3.1.0-dev.174, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.174, )" + "Speckle.Objects": "[3.1.0-dev.181, )", + "Speckle.Sdk": "[3.1.0-dev.181, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.181, )" } }, "speckle.connectors.dui": { @@ -292,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.174, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.174, )", + "Speckle.Sdk": "[3.1.0-dev.181, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.181, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -307,6 +298,15 @@ "speckle.connectors.logging": { "type": "Project" }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -333,9 +333,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.174, )", - "resolved": "3.1.0-dev.174", - "contentHash": "sj0RdxcORCNxT7KdXtUYV1E+dsNfdAnNQElTv77DN5O9p4grFxkV1Wymu3XH5nkQ5HrwqBWbfRU9ycK7QruIYg==", + "requested": "[3.1.0-dev.181, )", + "resolved": "3.1.0-dev.181", + "contentHash": "VmRRphUJm+qfcjtdzxkTstAD0opaIP57tP6GJ2YnalyRj3wBTGBQuy7gwhGjWyAvsMnkugpKFEfAVuNm/zHQ2A==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -345,14 +345,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.174" + "Speckle.Sdk.Dependencies": "3.1.0-dev.181" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.174, )", - "resolved": "3.1.0-dev.174", - "contentHash": "I3a1XHewuT+QUTYWHiTcDy5KtKBlpztWFbA+rKplBq6pj/sBdOu/QLEDkhSK4tKhYkFrGh/3LrDeYq4TpOIGUw==" + "requested": "[3.1.0-dev.181, )", + "resolved": "3.1.0-dev.181", + "contentHash": "W7Nb3hAPlLXGZmEFWdf9vyhXKGZk3M+lypEKB+IWQVwr3NL+bzPgfw2130kTuMr/9zGx8jUbSfx2ulTql9mZxw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index a4bd1b701..3fc63ff41 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -5,7 +5,7 @@ namespace Speckle.Connector.Navisworks.Bindings; public class NavisworksSelectionBinding : ISelectionBinding { - public string Name { get; } + public string Name { get; } = "selectionBinding"; public IBrowserBridge Parent { get; } public SelectionInfo GetSelection() => new([], "No selection available"); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 468658396..30c69f540 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -7,12 +7,12 @@ namespace Speckle.Connector.Navisworks.Bindings; public class NavisworksSendBinding : ISendBinding { - public string Name { get; } + public string Name => "sendBinding"; public IBrowserBridge Parent { get; } - public List GetSendFilters() => throw new NotImplementedException(); + public List GetSendFilters() => []; - public List GetSendSettings() => throw new NotImplementedException(); + public List GetSendSettings() => []; public Task Send(string modelCardId) => throw new NotImplementedException(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs index c14e8f03b..201e8a3ba 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs @@ -30,14 +30,16 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); - // Register Navisworks specific bindings serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(sp => sp.GetRequiredService()); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddScoped(); + serviceCollection.RegisterTopLevelExceptionHandler(); + // binding dependencies serviceCollection.AddTransient(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs index 575f1d18e..37938512c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs @@ -4,5 +4,5 @@ namespace Speckle.Connector.Navisworks.Filters; public class NavisworksSelectionFilter : DirectSelectionSendFilter { - public override List GetObjectIds() => throw new NotImplementedException(); + public override List GetObjectIds() => []; } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 6311ecf83..855c232f0 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.174, )" + "Speckle.Objects": "[3.1.0-dev.181, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.174, )", - "resolved": "3.1.0-dev.174", - "contentHash": "9SCFVbVle2+fPxx2l0sIiWQMLxw1S++V7DrDPnq/0fq5jKJNzaeT7w4VwLX7AzhTvnplpY/fhi9qUCR27nO9VA==", + "requested": "[3.1.0-dev.181, )", + "resolved": "3.1.0-dev.181", + "contentHash": "r6GGA7Pq4CPGYOu6OmmLW/hhhREo/l44RUFhsoYmpHNGpOg1UjF45dwyfLgaU38wrNxQoURjLUQDkxGfhb8liA==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.174" + "Speckle.Sdk": "3.1.0-dev.181" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.174, )", - "resolved": "3.1.0-dev.174", - "contentHash": "sj0RdxcORCNxT7KdXtUYV1E+dsNfdAnNQElTv77DN5O9p4grFxkV1Wymu3XH5nkQ5HrwqBWbfRU9ycK7QruIYg==", + "requested": "[3.1.0-dev.181, )", + "resolved": "3.1.0-dev.181", + "contentHash": "VmRRphUJm+qfcjtdzxkTstAD0opaIP57tP6GJ2YnalyRj3wBTGBQuy7gwhGjWyAvsMnkugpKFEfAVuNm/zHQ2A==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.174" + "Speckle.Sdk.Dependencies": "3.1.0-dev.181" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.174, )", - "resolved": "3.1.0-dev.174", - "contentHash": "I3a1XHewuT+QUTYWHiTcDy5KtKBlpztWFbA+rKplBq6pj/sBdOu/QLEDkhSK4tKhYkFrGh/3LrDeYq4TpOIGUw==" + "requested": "[3.1.0-dev.181, )", + "resolved": "3.1.0-dev.181", + "contentHash": "W7Nb3hAPlLXGZmEFWdf9vyhXKGZk3M+lypEKB+IWQVwr3NL+bzPgfw2130kTuMr/9zGx8jUbSfx2ulTql9mZxw==" } } } From a49d8587f52791bf02f9a95c43a2a11ad18645e9 Mon Sep 17 00:00:00 2001 From: oguzhankoral Date: Thu, 14 Nov 2024 11:42:02 +0000 Subject: [PATCH 006/173] Fix missing constuctors --- .../Bindings/BasicConnectorBinding.cs | 5 +++++ .../Bindings/NavisworksSelectionBinding.cs | 5 +++++ .../Bindings/NavisworksSendBinding.cs | 8 +++++++- .../DependencyInjection/ServiceRegistration.cs | 10 ++++++---- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs index 9e44afcaf..591a2fc5a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs @@ -11,6 +11,11 @@ public class BasicConnectorBinding : IBasicConnectorBinding public string Name => "baseBinding"; public IBrowserBridge Parent { get; } + public BasicConnectorBinding(IBrowserBridge parent) + { + Parent = parent; + } + public string GetSourceApplicationName() => _speckleApplication.Slug; public string GetSourceApplicationVersion() => _speckleApplication.HostApplicationVersion; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index 3fc63ff41..39f0a47a0 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -8,5 +8,10 @@ public class NavisworksSelectionBinding : ISelectionBinding public string Name { get; } = "selectionBinding"; public IBrowserBridge Parent { get; } + public NavisworksSelectionBinding(IBrowserBridge parent) + { + Parent = parent; + } + public SelectionInfo GetSelection() => new([], "No selection available"); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 30c69f540..f2ae7124c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -1,3 +1,4 @@ +using Speckle.Connector.Navisworks.Filters; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models.Card.SendFilter; @@ -10,7 +11,12 @@ public class NavisworksSendBinding : ISendBinding public string Name => "sendBinding"; public IBrowserBridge Parent { get; } - public List GetSendFilters() => []; + public NavisworksSendBinding(IBrowserBridge parent) + { + Parent = parent; + } + + public List GetSendFilters() => [new NavisworksSelectionFilter()]; public List GetSendSettings() => []; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs index 201e8a3ba..5ac7a8aa7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs @@ -25,17 +25,19 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.RegisterTopLevelExceptionHandler(); serviceCollection.AddTransient(); + serviceCollection.AddSingleton(); + // Register bindings serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); - // Register Navisworks specific bindings - serviceCollection.AddSingleton(); + // Register Navisworks specific binding serviceCollection.AddSingleton(sp => sp.GetRequiredService()); serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); + serviceCollection.AddScoped(); serviceCollection.RegisterTopLevelExceptionHandler(); From 6c97e4b88d4d3a2f7f6ba57aaa3632981d260184 Mon Sep 17 00:00:00 2001 From: jsdbroughton Date: Sat, 16 Nov 2024 17:43:36 +0000 Subject: [PATCH 007/173] unfix --- .../DependencyInjection/ServiceRegistration.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs index 5ac7a8aa7..416bafa5b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs @@ -40,8 +40,6 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddScoped(); - serviceCollection.RegisterTopLevelExceptionHandler(); - // binding dependencies serviceCollection.AddTransient(); From e6314ec5d68afd1399dc0317da3cc204421356c0 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 19 Nov 2024 18:43:26 +0000 Subject: [PATCH 008/173] Test commit --- .../Speckle.Connectors.Navisworks2024.csproj | 6 ++---- .../HostApp/NavisworksIdleManager.cs | 6 ++++++ .../Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index f20f0f288..f8ef0a160 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -13,7 +13,7 @@ 2024 true - $(DefineConstants);NAVIS2024;NAVIS + $(DefineConstants);TRACE;NAVIS2024;NAVIS NextGen Speckle Connector for Autodesk Navisworks Manage $(Authors) jonathon@speckle.systems @@ -21,7 +21,7 @@ $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) - Speckle.Connector.Navisworks2024 + Speckle.Connector.Navisworks @@ -36,7 +36,6 @@ bin\x64\Debug\ - TRACE;NAVIS2024; true full false @@ -46,7 +45,6 @@ bin\x64\Release\ - TRACE;NAVIS2024; pdbonly true prompt diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs new file mode 100644 index 000000000..98e23ff53 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs @@ -0,0 +1,6 @@ +namespace Speckle.Connector.Navisworks.HostApp; + +public class NavisworksIdleManager +{ + +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs index 6dccd0c94..de3da18a5 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/AppUtils.cs @@ -6,7 +6,7 @@ public static class AppUtils { public static HostApplication App => #if NAVIS - HostApplications.Civil3D; + HostApplications.Navisworks; #else throw new NotSupportedException(); #endif From 7c9674acb36709f5d8873b883dc8466b099079b4 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 19 Nov 2024 18:48:58 +0000 Subject: [PATCH 009/173] Test commit --- .../Bindings/NavisworksSelectionBinding.cs | 21 +++++++++++++++++-- .../ServiceRegistration.cs | 2 ++ .../Filters/NavisworksSelectionFilter.cs | 5 +++++ .../HostApp/NavisworksIdleManager.cs | 13 +++++++++--- ...ckle.Connectors.NavisworksShared.projitems | 1 + 5 files changed, 37 insertions(+), 5 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index 39f0a47a0..0a022aff9 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -5,13 +5,30 @@ namespace Speckle.Connector.Navisworks.Bindings; public class NavisworksSelectionBinding : ISelectionBinding { + private readonly IAppIdleManager _appIdleManager; + private const string SELECTION_EVENT = "setSelection"; public string Name { get; } = "selectionBinding"; public IBrowserBridge Parent { get; } - public NavisworksSelectionBinding(IBrowserBridge parent) + public NavisworksSelectionBinding(IAppIdleManager idleManager, IBrowserBridge parent) { + _appIdleManager = idleManager; Parent = parent; + + NavisworksApp.ActiveDocument.CurrentSelection.Changed += OnSelectionChange; } - public SelectionInfo GetSelection() => new([], "No selection available"); + private void OnSelectionChange(object? o, EventArgs eventArgs) => + _appIdleManager.SubscribeToIdle(nameof(NavisworksSelectionBinding), UpdateSelection); + + private void UpdateSelection() + { + SelectionInfo selInfo = GetSelection(); + Parent.Send(SELECTION_EVENT, selInfo); + } + + public SelectionInfo GetSelection() + { + return new SelectionInfo([], "No selection available"); + } } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs index 416bafa5b..431d3f750 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs @@ -6,6 +6,7 @@ using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.WebView; @@ -24,6 +25,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) // Register Intercom/interop serviceCollection.RegisterTopLevelExceptionHandler(); serviceCollection.AddTransient(); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs index 37938512c..e9bd93df2 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs @@ -4,5 +4,10 @@ namespace Speckle.Connector.Navisworks.Filters; public class NavisworksSelectionFilter : DirectSelectionSendFilter { + public NavisworksSelectionFilter() + { + IsDefault = true; + } + public override List GetObjectIds() => []; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs index 98e23ff53..992da0439 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs @@ -1,6 +1,13 @@ -namespace Speckle.Connector.Navisworks.HostApp; +using Speckle.Connectors.DUI.Bridge; -public class NavisworksIdleManager +namespace Speckle.Connector.Navisworks.HostApp; + +public sealed class NavisworksIdleManager(IIdleCallManager idleCallManager) : AppIdleManager(idleCallManager) { - + private readonly IIdleCallManager _idleCallManager = idleCallManager; + + protected override void AddEvent() => NavisworksApp.Idle += NavisworksAppOnIdle; + + private void NavisworksAppOnIdle(object? sender, EventArgs e) => + _idleCallManager.AppOnIdle(() => NavisworksApp.Idle -= NavisworksAppOnIdle); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 81e489e42..7d81a7f0d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -19,6 +19,7 @@ + From c09fd83b2c7b0b1dfacb0377eb2238ba16194f53 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 21 Nov 2024 08:36:01 +0000 Subject: [PATCH 010/173] Remove Dataflow usage --- .../Bridge/IdleCallManagerTests.cs | 2 +- .../Bridge/BrowserBridge.cs | 68 +++++-------------- .../Bridge/TopLevelExceptionHandler.cs | 31 +++++++-- 3 files changed, 43 insertions(+), 58 deletions(-) diff --git a/DUI3/Speckle.Connectors.DUI.Tests/Bridge/IdleCallManagerTests.cs b/DUI3/Speckle.Connectors.DUI.Tests/Bridge/IdleCallManagerTests.cs index ecbb6ebaa..9c8397023 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/Bridge/IdleCallManagerTests.cs +++ b/DUI3/Speckle.Connectors.DUI.Tests/Bridge/IdleCallManagerTests.cs @@ -56,7 +56,7 @@ public async Task AppOnIdleInternalTest() handler .Setup(m => m.CatchUnhandledAsync(It.IsAny>())) .Callback>(a => a.Invoke()) - .Returns(Task.CompletedTask); + .ReturnsAsync(new Result()); var removeEvent = Create(); removeEvent.Setup(x => x.Invoke()); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 376070bfc..812182f03 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -3,7 +3,6 @@ using System.Diagnostics.CodeAnalysis; using System.Reflection; using System.Runtime.InteropServices; -using System.Threading.Tasks.Dataflow; using Microsoft.Extensions.Logging; using Speckle.Connectors.DUI.Bindings; using Speckle.Newtonsoft.Json; @@ -33,8 +32,6 @@ public sealed class BrowserBridge : IBrowserBridge private readonly IBrowserScriptExecutor _browserScriptExecutor; private IReadOnlyDictionary _bindingMethodCache = new Dictionary(); - - private ActionBlock? _actionBlock; private IBinding? _binding; private Type? _bindingType; @@ -100,30 +97,9 @@ public void AssociateWithBinding(IBinding binding) bindingMethodCache[m.Name] = m; } _bindingMethodCache = bindingMethodCache; - - // Whenever the ui will call run method inside .net, it will post a message to this action block. - // This conveniently executes the code outside the UI thread and does not block during long operations (such as sending). - _actionBlock = new ActionBlock( - OnActionBlock, - new ExecutionDataflowBlockOptions { MaxDegreeOfParallelism = 1000 } - ); - _logger.LogInformation("Bridge bound to front end name {FrontEndName}", binding.Name); } - - private async Task OnActionBlock(RunMethodArgs args) - { - Result result = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => await ExecuteMethod(args.MethodName, args.MethodArgs).ConfigureAwait(false)) - .ConfigureAwait(false); - - string resultJson = result.IsSuccess - ? JsonConvert.SerializeObject(result.Value, _serializerOptions) - : SerializeFormattedException(result.Exception); - - await NotifyUIMethodCallResultReady(args.RequestId, resultJson).ConfigureAwait(false); - } - + /// /// Used by the Frontend bridge logic to understand which methods are available. /// @@ -141,32 +117,25 @@ public string[] GetBindingsMethodNames() /// /// /// - public void RunMethod(string methodName, string requestId, string args) - { - TopLevelExceptionHandler.CatchUnhandled(Post); - return; - - void Post() + public void RunMethod(string methodName, string requestId, string args) => + _mainThreadContext.Post(async x => { - bool wasAccepted = _actionBlock - .NotNull() - .Post( - new RunMethodArgs - { - MethodName = methodName, - RequestId = requestId, - MethodArgs = args - } - ); - if (!wasAccepted) + var runMethodArgs = (RunMethodArgs)x; + var task = await TopLevelExceptionHandler.CatchUnhandledAsync(async () => { - throw new InvalidOperationException($"Action block declined to Post ({methodName} {requestId} {args})"); + var result = await ExecuteMethod(runMethodArgs.MethodName, runMethodArgs.MethodArgs).ConfigureAwait(false); + + string resultJson = JsonConvert.SerializeObject(result, _serializerOptions); + await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); + }).ConfigureAwait(false); + if (task.Exception is not null) + { + string resultJson = SerializeFormattedException(task.Exception); + await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); } - } - } + }, new RunMethodArgs { MethodName = methodName, RequestId = requestId, MethodArgs = args }); - public void RunOnMainThread(Action action) - { + public void RunOnMainThread(Action action) => _mainThreadContext.Post( _ => { @@ -175,17 +144,14 @@ public void RunOnMainThread(Action action) }, null ); - } - public async Task RunOnMainThreadAsync(Func action) - { + public async Task RunOnMainThreadAsync(Func action) => await RunOnMainThreadAsync(async () => { await action.Invoke().ConfigureAwait(false); return null; }) .ConfigureAwait(false); - } [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] public Task RunOnMainThreadAsync(Func> action) diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs index a39ff0bc2..730c24f27 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs @@ -58,14 +58,33 @@ public Result CatchUnhandled(Func function) => /// /// A result pattern struct (where exceptions have been handled) - public async Task CatchUnhandledAsync(Func function) + public async Task CatchUnhandledAsync(Func function) { - _ = await CatchUnhandledAsync(async () => + try + { + try { - await function().ConfigureAwait(false); - return null; - }) - .ConfigureAwait(false); + await function().ConfigureAwait(false); + return new Result(); + } + catch (Exception ex) when (!ex.IsFatal()) + { + _logger.LogError(ex, UNHANDLED_LOGGER_TEMPLATE); + await SetGlobalNotification( + ToastNotificationType.DANGER, + "Unhandled Exception Occured", + ex.ToFormattedString(), + false + ) + .ConfigureAwait(false); + return new(ex); + } + } + catch (Exception ex) + { + _logger.LogCritical(ex, UNHANDLED_LOGGER_TEMPLATE); + throw; + } } /// From 01cd963381168b749a01464aa72aec1820770d31 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 21 Nov 2024 08:38:31 +0000 Subject: [PATCH 011/173] format and remove dep --- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 9 +---- .../packages.lock.json | 18 +-------- .../Bridge/BrowserBridge.cs | 38 ++++++++++++------- .../Bridge/TopLevelExceptionHandler.cs | 4 +- .../Speckle.Connectors.DUI.csproj | 1 - .../Speckle.Connectors.DUI/packages.lock.json | 6 --- Directory.Packages.props | 1 - 27 files changed, 49 insertions(+), 208 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 4c6216f4c..9480fc911 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -242,8 +242,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -328,12 +327,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } }, "net6.0-windows7.0/win-x64": { diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 18ad52afa..522fc2527 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -275,8 +275,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -367,12 +366,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index ee5fae814..6e8c11b5c 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -275,8 +275,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -367,12 +366,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index 186d76755..c19180674 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -275,8 +275,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -368,12 +367,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index 6f245f17a..0355bd0b7 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -231,8 +231,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -323,12 +322,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index 39cc05f8f..d96f3f2bd 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -284,8 +284,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -377,12 +376,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index 8b4ecf135..6fd6ec9e2 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -284,8 +284,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -377,12 +376,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index 1fb27a375..efc612093 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -284,8 +284,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -377,12 +376,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index 96510ed1e..0e9d82023 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -240,8 +240,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -333,12 +332,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json index 400a783ea..f2aa57210 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json @@ -303,8 +303,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.logging": { @@ -388,12 +387,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json index cdd6206b0..337e01dc6 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json @@ -303,8 +303,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.logging": { @@ -388,12 +387,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json index 672b6ab49..5cb8ae73d 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json @@ -303,8 +303,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.logging": { @@ -388,12 +387,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index bc762b175..f4a103850 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -253,8 +253,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -350,12 +349,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index 2ca68e848..dad99fb1f 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -284,8 +284,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -376,12 +375,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index 37c844493..e2777aca9 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -284,8 +284,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -376,12 +375,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index dbfa29c21..22ae3cbc2 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -343,8 +343,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -427,12 +426,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index e8c4528c0..cbe6d938d 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -424,8 +424,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -508,12 +507,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index 05ed55d7b..8fe5d5283 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -275,8 +275,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -360,12 +359,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index f432d48fa..09937fd1a 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -231,8 +231,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -315,12 +314,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index 8912af827..47a84e789 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -240,8 +240,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.dui.webview": { @@ -324,12 +323,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json index 10774f4b4..f1b61f855 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json @@ -335,8 +335,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.logging": { @@ -406,12 +405,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index ca439243f..09bd07198 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -275,8 +275,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.logging": { @@ -340,12 +339,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } }, "net6.0-windows7.0": { @@ -583,8 +576,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" } }, "speckle.connectors.logging": { @@ -648,12 +640,6 @@ "requested": "[3.1.0-dev.190, )", "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 812182f03..641e80833 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -99,7 +99,7 @@ public void AssociateWithBinding(IBinding binding) _bindingMethodCache = bindingMethodCache; _logger.LogInformation("Bridge bound to front end name {FrontEndName}", binding.Name); } - + /// /// Used by the Frontend bridge logic to understand which methods are available. /// @@ -118,22 +118,32 @@ public string[] GetBindingsMethodNames() /// /// public void RunMethod(string methodName, string requestId, string args) => - _mainThreadContext.Post(async x => - { - var runMethodArgs = (RunMethodArgs)x; - var task = await TopLevelExceptionHandler.CatchUnhandledAsync(async () => + _mainThreadContext.Post( + async x => { - var result = await ExecuteMethod(runMethodArgs.MethodName, runMethodArgs.MethodArgs).ConfigureAwait(false); - - string resultJson = JsonConvert.SerializeObject(result, _serializerOptions); - await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); - }).ConfigureAwait(false); - if (task.Exception is not null) + var runMethodArgs = (RunMethodArgs)x; + var task = await TopLevelExceptionHandler + .CatchUnhandledAsync(async () => + { + var result = await ExecuteMethod(runMethodArgs.MethodName, runMethodArgs.MethodArgs).ConfigureAwait(false); + + string resultJson = JsonConvert.SerializeObject(result, _serializerOptions); + await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); + }) + .ConfigureAwait(false); + if (task.Exception is not null) + { + string resultJson = SerializeFormattedException(task.Exception); + await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); + } + }, + new RunMethodArgs { - string resultJson = SerializeFormattedException(task.Exception); - await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); + MethodName = methodName, + RequestId = requestId, + MethodArgs = args } - }, new RunMethodArgs { MethodName = methodName, RequestId = requestId, MethodArgs = args }); + ); public void RunOnMainThread(Action action) => _mainThreadContext.Post( diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs index 730c24f27..569440a4e 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs @@ -64,8 +64,8 @@ public async Task CatchUnhandledAsync(Func function) { try { - await function().ConfigureAwait(false); - return new Result(); + await function().ConfigureAwait(false); + return new Result(); } catch (Exception ex) when (!ex.IsFatal()) { diff --git a/DUI3/Speckle.Connectors.DUI/Speckle.Connectors.DUI.csproj b/DUI3/Speckle.Connectors.DUI/Speckle.Connectors.DUI.csproj index 8f3048e1a..e2909423f 100644 --- a/DUI3/Speckle.Connectors.DUI/Speckle.Connectors.DUI.csproj +++ b/DUI3/Speckle.Connectors.DUI/Speckle.Connectors.DUI.csproj @@ -12,7 +12,6 @@ - diff --git a/DUI3/Speckle.Connectors.DUI/packages.lock.json b/DUI3/Speckle.Connectors.DUI/packages.lock.json index 01c09bfaa..e54d1dc45 100644 --- a/DUI3/Speckle.Connectors.DUI/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI/packages.lock.json @@ -71,12 +71,6 @@ "resolved": "3.1.0-dev.190", "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" }, - "System.Threading.Tasks.Dataflow": { - "type": "Direct", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - }, "GraphQL.Client": { "type": "Transitive", "resolved": "6.0.0", diff --git a/Directory.Packages.props b/Directory.Packages.props index 954c4d097..6e5b79e07 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -43,7 +43,6 @@ - From 6074b2c141f4dcdcad1bf7eba897c1f9449d2bc2 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 22 Nov 2024 13:36:42 +0000 Subject: [PATCH 012/173] merge fixes --- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 40 +------------------ 22 files changed, 23 insertions(+), 437 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 84572fe6e..799418a57 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -241,14 +241,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -330,21 +324,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net6.0-windows7.0/win-x64": { diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 8f5c76d5e..9b609a864 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -369,21 +363,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index e84341a13..58ea7b115 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -369,21 +363,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index e69deffed..3bc403f8a 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -370,21 +364,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index 72880782e..1aee6c3f6 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -230,14 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -325,21 +319,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index 21a573fd4..cbc7ac0e8 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -379,21 +373,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index 374358609..a972919e7 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -379,21 +373,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index 41640fa23..56e899a69 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -379,21 +373,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index c3d226612..39e7784d6 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -239,14 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -335,21 +329,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json index 1fe273d48..df10fbbf6 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json @@ -302,14 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.logging": { @@ -390,21 +384,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json index ec7127a69..683f72be5 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json @@ -302,14 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.logging": { @@ -390,21 +384,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json index 9a52f68a4..7a06d5018 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json @@ -302,14 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.logging": { @@ -390,21 +384,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index 921a15efc..a6a50a2a6 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -252,14 +252,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -352,21 +346,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index ddfe75f72..3c282d2c0 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -378,21 +372,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index 07495b4ea..ac4cdc25a 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -378,21 +372,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index 084fd4fba..7c6b247b2 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -342,14 +342,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -429,21 +423,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index 8f9e2e3e1..690d09321 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -423,14 +423,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -510,21 +504,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index 563b4dfdf..5522e91b8 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -362,21 +356,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index 57d704482..0a1d0dc26 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -230,14 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -317,21 +311,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index 04e73ea2f..05b39494a 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -239,14 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui.webview": { @@ -326,21 +320,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json index 1088566dd..a0dfc350a 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json @@ -334,14 +334,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.logging": { @@ -408,21 +402,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index aa83aaf63..73bbf36e7 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.logging": { @@ -342,21 +336,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net6.0-windows7.0": { @@ -593,14 +575,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.190, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.190, )" -======= "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.logging": { @@ -661,21 +637,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.190, )", - "resolved": "3.1.0-dev.190", - "contentHash": "XMGAV/+82xWCyFneE1UN9hwItVUMTKvziG7A7b4iZSCQZKPnziB+oTwotD8HecBeA6fQlfteDDyfYz0+UJV+Kg==" -======= "requested": "[3.1.0-dev.191, )", "resolved": "3.1.0-dev.191", "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } From 49de3d1afcc981bcc579fc924471cbde8affab0a Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 22 Nov 2024 13:38:42 +0000 Subject: [PATCH 013/173] Fix serializer --- DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 7840f4f37..74eb9fd0f 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -134,8 +134,7 @@ public void RunMethod(string methodName, string requestId, string args) => .CatchUnhandledAsync(async () => { var result = await ExecuteMethod(runMethodArgs.MethodName, runMethodArgs.MethodArgs).ConfigureAwait(false); - - string resultJson = JsonConvert.SerializeObject(result, _serializerOptions); + string resultJson = _jsonSerializer.Serialize(result); await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); }) .ConfigureAwait(false); From 0ffdf6c1932ee75e3609fac3e4030d05baf7ce23 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 22 Nov 2024 14:09:04 +0000 Subject: [PATCH 014/173] Add MainThreadContext --- .../SpeckleModule.cs | 2 - .../Bindings/AutocadBasicConnectorBinding.cs | 10 +- .../Bindings/AutocadSelectionBinding.cs | 7 +- .../Bindings/AutocadSendBaseBinding.cs | 8 +- .../Bindings/AutocadSendBinding.cs | 5 +- .../Plugin/AutocadCommand.cs | 2 - .../Bindings/Civil3dSendBinding.cs | 5 +- .../Plugin/RevitExternalApplication.cs | 2 - .../Plugin/Speckle.Connectors.RhinoPlugin.cs | 2 - .../Bridge/BrowserBridge.cs | 92 ++----------------- .../Bridge/IBrowserBridge.cs | 15 --- .../Bridge/SyncToUIThread.cs | 19 +--- .../ContainerRegistration.cs | 23 +---- .../Threading/MainThreadContext.cs | 57 ++++++++++++ 14 files changed, 94 insertions(+), 155 deletions(-) create mode 100644 DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleModule.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleModule.cs index 64370fdf2..1d5eee795 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleModule.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleModule.cs @@ -2,7 +2,6 @@ using Microsoft.Extensions.DependencyInjection; using Speckle.Connectors.ArcGIS.DependencyInjection; using Speckle.Connectors.Common; -using Speckle.Connectors.DUI; using Speckle.Converters.ArcGIS3; using Speckle.Sdk.Host; using Module = ArcGIS.Desktop.Framework.Contracts.Module; @@ -35,7 +34,6 @@ public SpeckleModule() services.AddArcGIS(); services.AddArcGISConverters(); Container = services.BuildServiceProvider(); - Container.UseDUI(); } private HostAppVersion GetVersion() diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs index dbc34f1b6..65a8d5eb9 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs @@ -5,6 +5,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; +using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Common; using Speckle.Sdk.Credentials; @@ -19,6 +20,7 @@ public class AutocadBasicConnectorBinding : IBasicConnectorBinding private readonly DocumentModelStore _store; private readonly ISpeckleApplication _speckleApplication; + private readonly IMainThreadContext _mainThreadContext; private readonly ILogger _logger; public BasicConnectorBindingCommands Commands { get; } @@ -28,8 +30,7 @@ public AutocadBasicConnectorBinding( IBrowserBridge parent, IAccountManager accountManager, ISpeckleApplication speckleApplication, - ILogger logger - ) + ILogger logger, IMainThreadContext mainThreadContext) { _store = store; Parent = parent; @@ -42,6 +43,7 @@ ILogger logger await Commands.NotifyDocumentChanged().ConfigureAwait(false); }); _logger = logger; + _mainThreadContext = mainThreadContext; } public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; @@ -129,12 +131,12 @@ private async Task HighlightObjectsOnView(ObjectId[] objectIds, string? modelCar { var doc = Application.DocumentManager.MdiActiveDocument; - await Parent + await _mainThreadContext .RunOnMainThreadAsync(async () => { try { - doc.Editor.SetImpliedSelection(Array.Empty()); // Deselects + doc.Editor.SetImpliedSelection([]); // Deselects try { doc.Editor.SetImpliedSelection(objectIds); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs index 0be4d5611..54ab2811e 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs @@ -3,6 +3,7 @@ using Speckle.Connectors.Autocad.HostApp.Extensions; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Threading; namespace Speckle.Connectors.Autocad.Bindings; @@ -10,16 +11,18 @@ public class AutocadSelectionBinding : ISelectionBinding { private const string SELECTION_EVENT = "setSelection"; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; + private readonly IMainThreadContext _mainThreadContext; private readonly HashSet _visitedDocuments = new(); public string Name => "selectionBinding"; public IBrowserBridge Parent { get; } - public AutocadSelectionBinding(IBrowserBridge parent) + public AutocadSelectionBinding(IBrowserBridge parent, IMainThreadContext mainThreadContext) { _topLevelExceptionHandler = parent.TopLevelExceptionHandler; Parent = parent; + _mainThreadContext = mainThreadContext; // POC: Use here Context for doc. In converters it's OK but we are still lacking to use context into bindings. // It is with the case of if binding created with already a document @@ -42,7 +45,7 @@ private void TryRegisterDocumentForSelection(Document? document) { document.ImpliedSelectionChanged += (_, _) => _topLevelExceptionHandler.FireAndForget( - async () => await Parent.RunOnMainThreadAsync(OnSelectionChanged).ConfigureAwait(false) + async () => await _mainThreadContext.RunOnMainThreadAsync(OnSelectionChanged).ConfigureAwait(false) ); _visitedDocuments.Add(document); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs index 11f840f92..e621b0e94 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs @@ -16,6 +16,7 @@ using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; +using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Common; @@ -38,6 +39,7 @@ public abstract class AutocadSendBaseBinding : ISendBinding private readonly ILogger _logger; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; private readonly ISpeckleApplication _speckleApplication; + private readonly IMainThreadContext _mainThreadContext; /// /// Used internally to aggregate the changed objects' id. Note we're using a concurrent dictionary here as the expiry check method is not thread safe, and this was causing problems. See: @@ -57,8 +59,7 @@ protected AutocadSendBaseBinding( ISendConversionCache sendConversionCache, IOperationProgressManager operationProgressManager, ILogger logger, - ISpeckleApplication speckleApplication - ) + ISpeckleApplication speckleApplication, IMainThreadContext mainThreadContext) { _store = store; _idleManager = idleManager; @@ -69,6 +70,7 @@ ISpeckleApplication speckleApplication _operationProgressManager = operationProgressManager; _logger = logger; _speckleApplication = speckleApplication; + _mainThreadContext = mainThreadContext; _topLevelExceptionHandler = parent.TopLevelExceptionHandler; Parent = parent; Commands = new SendBindingUICommands(parent); @@ -144,7 +146,7 @@ private async Task RunExpirationChecks() public List GetSendSettings() => []; public async Task Send(string modelCardId) => - await Parent + await _mainThreadContext .RunOnMainThreadAsync(async () => await SendInternal(modelCardId).ConfigureAwait(false)) .ConfigureAwait(false); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs index bc2a28a96..ad6c7c732 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs @@ -7,6 +7,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Threading; using Speckle.Converters.Autocad; using Speckle.Converters.Common; using Speckle.Sdk; @@ -28,7 +29,7 @@ public AutocadSendBinding( IOperationProgressManager operationProgressManager, ILogger logger, IAutocadConversionSettingsFactory autocadConversionSettingsFactory, - ISpeckleApplication speckleApplication + ISpeckleApplication speckleApplication, IMainThreadContext mainThreadContext ) : base( store, @@ -40,7 +41,7 @@ ISpeckleApplication speckleApplication sendConversionCache, operationProgressManager, logger, - speckleApplication + speckleApplication, mainThreadContext ) { _autocadConversionSettingsFactory = autocadConversionSettingsFactory; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AutocadCommand.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AutocadCommand.cs index f3c177540..cbc69d098 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AutocadCommand.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AutocadCommand.cs @@ -3,7 +3,6 @@ using Autodesk.AutoCAD.Windows; using Microsoft.Extensions.DependencyInjection; using Speckle.Connectors.Common; -using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.WebView; #if AUTOCAD using Speckle.Connectors.Autocad.DependencyInjection; @@ -48,7 +47,6 @@ public void Command() services.AddCivil3dConverters(); #endif Container = services.BuildServiceProvider(); - Container.UseDUI(); var panelWebView = Container.GetRequiredService(); diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs index a1aa571b0..9aa62cea1 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs @@ -8,6 +8,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Threading; using Speckle.Converters.Autocad; using Speckle.Converters.Civil3dShared; using Speckle.Converters.Common; @@ -32,7 +33,7 @@ public Civil3dSendBinding( ILogger logger, ICivil3dConversionSettingsFactory civil3dConversionSettingsFactory, IAutocadConversionSettingsFactory autocadConversionSettingsFactory, - ISpeckleApplication speckleApplication + ISpeckleApplication speckleApplication, IMainThreadContext mainThreadContext ) : base( store, @@ -44,7 +45,7 @@ ISpeckleApplication speckleApplication sendConversionCache, operationProgressManager, logger, - speckleApplication + speckleApplication, mainThreadContext ) { _civil3dConversionSettingsFactory = civil3dConversionSettingsFactory; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitExternalApplication.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitExternalApplication.cs index 0cd5c1b60..3eb15365b 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitExternalApplication.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitExternalApplication.cs @@ -2,7 +2,6 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Speckle.Connectors.Common; -using Speckle.Connectors.DUI; using Speckle.Connectors.Revit.DependencyInjection; using Speckle.Converters.RevitShared; using Speckle.Sdk; @@ -48,7 +47,6 @@ public Result OnStartup(UIControlledApplication application) services.AddRevitConverters(); services.AddSingleton(application); _container = services.BuildServiceProvider(); - _container.UseDUI(); // resolve root object _revitPlugin = _container.GetRequiredService(); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Plugin/Speckle.Connectors.RhinoPlugin.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Plugin/Speckle.Connectors.RhinoPlugin.cs index a172c693e..a1158578e 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Plugin/Speckle.Connectors.RhinoPlugin.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Plugin/Speckle.Connectors.RhinoPlugin.cs @@ -1,7 +1,6 @@ using Microsoft.Extensions.DependencyInjection; using Rhino.PlugIns; using Speckle.Connectors.Common; -using Speckle.Connectors.DUI; using Speckle.Connectors.Rhino.DependencyInjection; using Speckle.Converters.Rhino; using Speckle.Sdk; @@ -52,7 +51,6 @@ protected override LoadReturnCode OnLoad(ref string errorMessage) // but the Rhino connector has `.rhp` as it is extension. Container = services.BuildServiceProvider(); - Container.UseDUI(); // Resolve root plugin object and initialise. _rhinoPlugin = Container.GetRequiredService(); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 74eb9fd0f..8db6905d2 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -5,6 +5,7 @@ using System.Runtime.InteropServices; using Microsoft.Extensions.Logging; using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.Utils; using Speckle.Newtonsoft.Json; using Speckle.Sdk.Common; @@ -26,8 +27,8 @@ public sealed class BrowserBridge : IBrowserBridge /// private readonly ConcurrentDictionary _resultsStore = new(); - private readonly SynchronizationContext _mainThreadContext; public ITopLevelExceptionHandler TopLevelExceptionHandler { get; } + private readonly IMainThreadContext _mainThreadContext; private readonly IBrowserScriptExecutor _browserScriptExecutor; private readonly IJsonSerializer _jsonSerializer; @@ -53,26 +54,19 @@ private set _binding = value; } } - - private struct RunMethodArgs - { - public string MethodName; - public string RequestId; - public string MethodArgs; - } - public BrowserBridge( + IMainThreadContext mainThreadContext, IJsonSerializer jsonSerializer, ILogger logger, ILogger topLogger, IBrowserScriptExecutor browserScriptExecutor ) { + _mainThreadContext = mainThreadContext; _jsonSerializer = jsonSerializer; _logger = logger; TopLevelExceptionHandler = new TopLevelExceptionHandler(topLogger, this); // Capture the main thread's SynchronizationContext - _mainThreadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); _browserScriptExecutor = browserScriptExecutor; } @@ -95,19 +89,6 @@ public void AssociateWithBinding(IBinding binding) _logger.LogInformation("Bridge bound to front end name {FrontEndName}", binding.Name); } - private async Task OnActionBlock(RunMethodArgs args) - { - Result result = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => await ExecuteMethod(args.MethodName, args.MethodArgs).ConfigureAwait(false)) - .ConfigureAwait(false); - - string resultJson = result.IsSuccess - ? _jsonSerializer.Serialize(result.Value) - : SerializeFormattedException(result.Exception); - - await NotifyUIMethodCallResultReady(args.RequestId, resultJson).ConfigureAwait(false); - } - /// /// Used by the Frontend bridge logic to understand which methods are available. /// @@ -119,80 +100,27 @@ public string[] GetBindingsMethodNames() return bindingNames; } - /// - /// This method posts the requested call to our action block executor. - /// - /// - /// - /// - public void RunMethod(string methodName, string requestId, string args) => - _mainThreadContext.Post( - async x => + public void RunMethod(string methodName, string requestId, string methodArgs) => + _mainThreadContext.RunOnMainThreadAsync( + async () => { - var runMethodArgs = (RunMethodArgs)x; var task = await TopLevelExceptionHandler .CatchUnhandledAsync(async () => { - var result = await ExecuteMethod(runMethodArgs.MethodName, runMethodArgs.MethodArgs).ConfigureAwait(false); + var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); string resultJson = _jsonSerializer.Serialize(result); - await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); }) .ConfigureAwait(false); if (task.Exception is not null) { string resultJson = SerializeFormattedException(task.Exception); - await NotifyUIMethodCallResultReady(runMethodArgs.RequestId, resultJson).ConfigureAwait(false); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); } - }, - new RunMethodArgs - { - MethodName = methodName, - RequestId = requestId, - MethodArgs = args } ); - public void RunOnMainThread(Action action) => - _mainThreadContext.Post( - _ => - { - // Execute the action on the main thread - TopLevelExceptionHandler.CatchUnhandled(action); - }, - null - ); - - public async Task RunOnMainThreadAsync(Func action) => - await RunOnMainThreadAsync(async () => - { - await action.Invoke().ConfigureAwait(false); - return null; - }) - .ConfigureAwait(false); - - [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - public Task RunOnMainThreadAsync(Func> action) - { - TaskCompletionSource tcs = new(); - - _mainThreadContext.Post( - async _ => - { - try - { - T result = await action.Invoke().ConfigureAwait(false); - tcs.SetResult(result); - } - catch (Exception ex) - { - tcs.SetException(ex); - } - }, - null - ); - return tcs.Task; - } /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs index 7bd772978..e88b6831e 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs @@ -29,21 +29,6 @@ public interface IBrowserBridge /// public void RunMethod(string methodName, string requestId, string args); - /// - /// Posts an onto the main thread - /// Some applications might need to run some operations on main thread as deferred actions. - /// - /// An awaitable - /// Action to run on the main thread - public Task RunOnMainThreadAsync(Func> action); - - /// - /// Posts an onto the main thread - /// Some applications might need to run some operations on main thread as deferred actions. - /// - /// An awaitable - /// Action to run on the main thread - public Task RunOnMainThreadAsync(Func action); /// /// Bridge was not initialized with a binding diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs b/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs index bb7bbe0c3..5f282702b 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs @@ -1,18 +1 @@ -using System.Diagnostics.CodeAnalysis; -using Speckle.Connectors.Common.Operations; - -namespace Speckle.Connectors.DUI.Bridge; - -public class SyncToUIThread : ISyncToThread -{ - private readonly IBrowserBridge _bridge; - - public SyncToUIThread(IBrowserBridge bridge) - { - _bridge = bridge; - } - - [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "Task Completion Source")] - public async Task RunOnThread(Func> func) => - await _bridge.RunOnMainThreadAsync(func).ConfigureAwait(false); -} + \ No newline at end of file diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index f9f76d551..210e09c22 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -3,40 +3,25 @@ using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Transports; namespace Speckle.Connectors.DUI; public static class ContainerRegistration -{ /* - public static void AddDUI(this SpeckleContainerBuilder speckleContainerBuilder) - { - // send operation and dependencies - speckleContainerBuilder.AddSingletonInstance(); - speckleContainerBuilder.AddSingleton(); - speckleContainerBuilder.AddTransient(); // POC: Each binding should have it's own bridge instance - speckleContainerBuilder.AddSingleton(GetJsonSerializerSettings()); - speckleContainerBuilder.ScanAssemblyOfType(); - speckleContainerBuilder.ScanAssemblyOfType(); - } -*/ +{ public static void AddDUI(this IServiceCollection serviceCollection) { // send operation and dependencies - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(new MainThreadContext()); serviceCollection.AddSingleton(); serviceCollection.AddTransient(); // POC: Each binding should have it's own bridge instance serviceCollection.AddMatchingInterfacesAsTransient(Assembly.GetAssembly(typeof(IdleCallManager))); serviceCollection.AddMatchingInterfacesAsTransient(Assembly.GetAssembly(typeof(IServerTransportFactory))); } - - public static void UseDUI(this IServiceProvider serviceProvider) - { - serviceProvider.GetRequiredService(); - } - + public static void RegisterTopLevelExceptionHandler(this IServiceCollection serviceCollection) { serviceCollection.AddSingleton(sp => diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs new file mode 100644 index 000000000..ed371a815 --- /dev/null +++ b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs @@ -0,0 +1,57 @@ +using System.Diagnostics.CodeAnalysis; +using Speckle.InterfaceGenerator; +using Speckle.Sdk.Common; + +namespace Speckle.Connectors.DUI.Threading; + +[GenerateAutoInterface] +public class MainThreadContext: IMainThreadContext +{ + private readonly SynchronizationContext _mainThreadContext; + + public MainThreadContext( ) + { + _mainThreadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); + } + + public void RunOnMainThread(Action action) => + _mainThreadContext.Post( + _ => + { + action(); + }, + null + ); + + public async Task RunOnMainThreadAsync(Func action) => + await RunOnMainThreadAsync(async () => + { + await action.Invoke().ConfigureAwait(false); + return null; + }) + .ConfigureAwait(false); + + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] + public Task RunOnMainThreadAsync(Func> action) + { + TaskCompletionSource tcs = new(); + + _mainThreadContext.Post( + async _ => + { + try + { + T result = await action.Invoke().ConfigureAwait(false); + tcs.SetResult(result); + } + catch (Exception ex) + { + tcs.SetException(ex); + } + }, + null + ); + + return tcs.Task; + } +} From 684a295512a3574fdba1412bf09df5744cc80133 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 22 Nov 2024 14:32:51 +0000 Subject: [PATCH 015/173] add some main context detection --- .../Bindings/BasicConnectorBindingRevit.cs | 5 +++++ .../HostApp/RevitDocumentStore.cs | 9 +++++++++ .../Plugin/RevitIdleManager.cs | 5 +++++ .../Threading/MainThreadContext.cs | 6 ++++++ 4 files changed, 25 insertions(+) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index d118b513c..99857f9e7 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -4,6 +4,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Revit.HostApp; using Speckle.Connectors.RevitShared; using Speckle.Connectors.RevitShared.Operations.Send.Filters; @@ -184,6 +185,10 @@ private async Task HighlightObjectsOnView(List objectIds) _revitContext.UIApplication?.ActiveUIDocument ?? throw new SpeckleException("Unable to retrieve active UI document"); + if (!MainThreadContext.IsMainThread) + { + Console.WriteLine("Running async on a non-main thread!"); + } // UiDocument operations should be wrapped into RevitTask, otherwise doesn't work on other tasks. await RevitTask .RunAsync(() => diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs index c14e993de..f341d8be6 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs @@ -6,6 +6,7 @@ using Revit.Async; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.Utils; using Speckle.Connectors.Revit.Plugin; using Speckle.Converters.RevitShared.Helpers; @@ -97,8 +98,16 @@ public override void WriteToFile() return; } + if (!MainThreadContext.IsMainThread) + { + Console.WriteLine("Running async on a non-main thread!"); + } RevitTask.RunAsync(() => { + if (!MainThreadContext.IsMainThread) + { + Console.WriteLine("Running async on a non-main thread!"); + } using Transaction t = new(doc, "Speckle Write State"); t.Start(); using DataStorage ds = GetSettingsDataStorage(doc) ?? DataStorage.Create(doc); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs index cce89b5dd..330bfb5fd 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs @@ -1,6 +1,7 @@ using Autodesk.Revit.UI; using Autodesk.Revit.UI.Events; using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Threading; using Speckle.Converters.RevitShared.Helpers; using Speckle.Sdk.Common; @@ -45,6 +46,10 @@ private void RevitAppOnIdle(object? sender, IdlingEventArgs e) => public void RunAsync(Action action) { + if (!MainThreadContext.IsMainThread) + { + Console.WriteLine("Running async on a non-main thread!"); + } #if REVIT2025 global::Revit.Async.RevitTask.RunAsync(action); #else diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs index ed371a815..f30f2d06f 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs @@ -9,11 +9,17 @@ public class MainThreadContext: IMainThreadContext { private readonly SynchronizationContext _mainThreadContext; + // Do this when you start your application + private static int s_mainThreadId; + public MainThreadContext( ) { _mainThreadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); + s_mainThreadId = Environment.CurrentManagedThreadId; } + public static bool IsMainThread => Environment.CurrentManagedThreadId == s_mainThreadId; + public void RunOnMainThread(Action action) => _mainThreadContext.Post( _ => From ecbaed1be68cd154d85f619f1268f6a3a84980fd Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 22 Nov 2024 14:49:13 +0000 Subject: [PATCH 016/173] add RevitMainThreadContext --- .../RevitConnectorModule.cs | 2 +- .../HostApp/RevitDocumentStore.cs | 35 ++++++------------- .../Plugin/RevitIdleManager.cs | 9 +++++ .../Plugin/RevitMainThreadContext.cs | 11 ++++++ .../ContainerRegistration.cs | 5 +-- .../Threading/MainThreadContext.cs | 20 +++++++++-- 6 files changed, 52 insertions(+), 30 deletions(-) create mode 100644 Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs index f6f532d35..91961da60 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs @@ -26,7 +26,7 @@ public static class ServiceRegistration public static void AddRevit(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); RegisterUiDependencies(serviceCollection); // register diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs index f341d8be6..9884b659a 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs @@ -3,10 +3,8 @@ using Autodesk.Revit.DB.ExtensibleStorage; using Autodesk.Revit.UI; using Autodesk.Revit.UI.Events; -using Revit.Async; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.Utils; using Speckle.Connectors.Revit.Plugin; using Speckle.Converters.RevitShared.Helpers; @@ -98,31 +96,20 @@ public override void WriteToFile() return; } - if (!MainThreadContext.IsMainThread) - { - Console.WriteLine("Running async on a non-main thread!"); - } - RevitTask.RunAsync(() => - { - if (!MainThreadContext.IsMainThread) - { - Console.WriteLine("Running async on a non-main thread!"); - } - using Transaction t = new(doc, "Speckle Write State"); - t.Start(); - using DataStorage ds = GetSettingsDataStorage(doc) ?? DataStorage.Create(doc); + using Transaction t = new(doc, "Speckle Write State"); + t.Start(); + using DataStorage ds = GetSettingsDataStorage(doc) ?? DataStorage.Create(doc); - using Entity stateEntity = new(_documentModelStorageSchema.GetSchema()); - string serializedModels = Serialize(); - stateEntity.Set("contents", serializedModels); + using Entity stateEntity = new(_documentModelStorageSchema.GetSchema()); + string serializedModels = Serialize(); + stateEntity.Set("contents", serializedModels); - using Entity idEntity = new(_idStorageSchema.GetSchema()); - idEntity.Set("Id", s_revitDocumentStoreId); + using Entity idEntity = new(_idStorageSchema.GetSchema()); + idEntity.Set("Id", s_revitDocumentStoreId); - ds.SetEntity(idEntity); - ds.SetEntity(stateEntity); - t.Commit(); - }); + ds.SetEntity(idEntity); + ds.SetEntity(stateEntity); + t.Commit(); } public override void ReadFromFile() diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs index 330bfb5fd..f79a1cd28 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs @@ -1,5 +1,6 @@ using Autodesk.Revit.UI; using Autodesk.Revit.UI.Events; +using Revit.Async; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Threading; using Speckle.Converters.RevitShared.Helpers; @@ -7,6 +8,14 @@ namespace Speckle.Connectors.Revit.Plugin; +public class RevitMainThreadContext : MainThreadContext +{ + public override void RunContext(Action action) => + RevitTask.RunAsync(action); + + public override Task RunContext(Func> action) => + RevitTask.RunAsync(action); +} public interface IRevitIdleManager : IAppIdleManager { public void RunAsync(Action action); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs new file mode 100644 index 000000000..73f756718 --- /dev/null +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs @@ -0,0 +1,11 @@ +#nullable enable +namespace Speckle.Connectors.Revit.Plugin; + +public class RevitMainThreadContext : MainThreadContext +{ + public override void RunContext(Action action) => + RevitTask.RunAsync(action); + + public override Task RunContext(Func> action) => + RevitTask.RunAsync(action); +} diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index 210e09c22..08a150647 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -11,10 +11,11 @@ namespace Speckle.Connectors.DUI; public static class ContainerRegistration { - public static void AddDUI(this IServiceCollection serviceCollection) + public static void AddDUI(this IServiceCollection serviceCollection) + where TMainThreadContext : IMainThreadContext, new() { // send operation and dependencies - serviceCollection.AddSingleton(new MainThreadContext()); + serviceCollection.AddSingleton(new TMainThreadContext()); serviceCollection.AddSingleton(); serviceCollection.AddTransient(); // POC: Each binding should have it's own bridge instance diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs index f30f2d06f..9a2f49930 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs @@ -20,14 +20,23 @@ public MainThreadContext( ) public static bool IsMainThread => Environment.CurrentManagedThreadId == s_mainThreadId; - public void RunOnMainThread(Action action) => + public virtual void RunContext(Action action) => action(); + + public void RunOnMainThread(Action action) + { + if (IsMainThread) + { + RunContext(action); + return; + } _mainThreadContext.Post( _ => { - action(); + RunContext(action); }, null ); + } public async Task RunOnMainThreadAsync(Func action) => await RunOnMainThreadAsync(async () => @@ -37,9 +46,14 @@ public async Task RunOnMainThreadAsync(Func action) => }) .ConfigureAwait(false); + public virtual Task RunContext(Func> action) => action(); [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] public Task RunOnMainThreadAsync(Func> action) { + if (IsMainThread) + { + return RunContext(action); + } TaskCompletionSource tcs = new(); _mainThreadContext.Post( @@ -47,7 +61,7 @@ public Task RunOnMainThreadAsync(Func> action) { try { - T result = await action.Invoke().ConfigureAwait(false); + T result = await RunContext(action).ConfigureAwait(false); tcs.SetResult(result); } catch (Exception ex) From c1ddbc31aacd4bd64c347da28c43b40d8dac44b9 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 22 Nov 2024 14:49:24 +0000 Subject: [PATCH 017/173] remove revit async? --- .../ArcGISConnectorModule.cs | 3 +- .../DependencyInjection/SharedRegistration.cs | 3 +- .../Bindings/BasicConnectorBindingRevit.cs | 34 ++++++------------- .../Bindings/RevitSendBinding.cs | 9 ++--- .../Bindings/SelectionBinding.cs | 7 ++-- .../RevitConnectorModule.cs | 2 +- .../HostApp/RevitDocumentStore.cs | 9 ++--- .../Plugin/RevitIdleManager.cs | 29 +--------------- .../Plugin/RevitMainThreadContext.cs | 4 ++- .../Speckle.Connectors.RevitShared.projitems | 1 + .../Registration/ServiceRegistration.cs | 3 +- .../ServiceRegistration.cs | 3 +- 12 files changed, 32 insertions(+), 75 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs index c9d61bbe0..2f92779de 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs @@ -14,6 +14,7 @@ using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Converters.Common; using Speckle.Sdk.Models.GraphTraversal; @@ -28,7 +29,7 @@ public static class ArcGISConnectorModule public static void AddArcGIS(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); serviceCollection.AddSingleton(); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index 865963b20..6dea8e887 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -15,6 +15,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Sdk.Models.GraphTraversal; @@ -25,7 +26,7 @@ public static class SharedRegistration public static void AddAutocadBase(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index 99857f9e7..9e2c34802 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -1,10 +1,8 @@ using Autodesk.Revit.DB; using Microsoft.Extensions.Logging; -using Revit.Async; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Revit.HostApp; using Speckle.Connectors.RevitShared; using Speckle.Connectors.RevitShared.Operations.Send.Filters; @@ -154,49 +152,37 @@ await Commands return; } - await HighlightObjectsOnView(elementIds).ConfigureAwait(false); + HighlightObjectsOnView(elementIds); } /// /// Highlights the objects from the given ids. /// /// UniqueId's of the DB.Elements. - public async Task HighlightObjects(IReadOnlyList objectIds) + public Task HighlightObjects(IReadOnlyList objectIds) { var activeUIDoc = _revitContext.UIApplication?.ActiveUIDocument ?? throw new SpeckleException("Unable to retrieve active UI document"); - await HighlightObjectsOnView( - objectIds - .Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)) - .Where(el => el is not null) - .Cast() - .ToList() - ) - .ConfigureAwait(false); - ; + HighlightObjectsOnView( + objectIds + .Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)) + .Where(el => el is not null) + .Cast() + .ToList()); + return Task.CompletedTask; } - private async Task HighlightObjectsOnView(List objectIds) + private void HighlightObjectsOnView(List objectIds) { // POC: don't know if we can rely on storing the ActiveUIDocument, hence getting it each time var activeUIDoc = _revitContext.UIApplication?.ActiveUIDocument ?? throw new SpeckleException("Unable to retrieve active UI document"); - if (!MainThreadContext.IsMainThread) - { - Console.WriteLine("Running async on a non-main thread!"); - } - // UiDocument operations should be wrapped into RevitTask, otherwise doesn't work on other tasks. - await RevitTask - .RunAsync(() => - { activeUIDoc.Selection.SetElementIds(objectIds); activeUIDoc.ShowElements(objectIds); - }) - .ConfigureAwait(false); ; } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs index f4c724515..425f17d8a 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs @@ -16,7 +16,6 @@ using Speckle.Connectors.DUI.Settings; using Speckle.Connectors.Revit.HostApp; using Speckle.Connectors.Revit.Operations.Send.Settings; -using Speckle.Connectors.Revit.Plugin; using Speckle.Connectors.RevitShared.Operations.Send.Filters; using Speckle.Converters.Common; using Speckle.Converters.RevitShared.Helpers; @@ -28,7 +27,7 @@ namespace Speckle.Connectors.Revit.Bindings; internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding { - private readonly IRevitIdleManager _idleManager; + private readonly IAppIdleManager _idleManager; private readonly APIContext _apiContext; private readonly CancellationManager _cancellationManager; private readonly IServiceProvider _serviceProvider; @@ -49,7 +48,7 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding private ConcurrentDictionary ChangedObjectIds { get; set; } = new(); public RevitSendBinding( - IRevitIdleManager idleManager, + IAppIdleManager idleManager, RevitContext revitContext, APIContext apiContext, DocumentModelStore store, @@ -82,11 +81,9 @@ ISpeckleApplication speckleApplication Commands = new SendBindingUICommands(bridge); // TODO expiry events // TODO filters need refresh events - _idleManager.RunAsync(() => - { + revitContext.UIApplication.NotNull().Application.DocumentChanged += (_, e) => topLevelExceptionHandler.CatchUnhandled(() => DocChangeHandler(e)); - }); Store.DocumentChanged += (_, _) => topLevelExceptionHandler.FireAndForget(async () => await OnDocumentChanged().ConfigureAwait(false)); } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs index 174131ee2..37c230500 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs @@ -1,7 +1,6 @@ using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; -using Speckle.Connectors.Revit.Plugin; using Speckle.Converters.RevitShared.Helpers; using Speckle.Sdk.Common; @@ -17,7 +16,7 @@ internal sealed class SelectionBinding : RevitBaseBinding, ISelectionBinding, ID public SelectionBinding( RevitContext revitContext, DocumentModelStore store, - IRevitIdleManager revitIdleManager, + IAppIdleManager revitIdleManager, IBrowserBridge parent ) : base("selectionBinding", store, parent, revitContext) @@ -28,11 +27,9 @@ IBrowserBridge parent _selectionTimer.Elapsed += (_, _) => parent.TopLevelExceptionHandler.CatchUnhandled(OnSelectionChanged); _selectionTimer.Start(); #else - revitIdleManager.RunAsync(() => - { + RevitContext.UIApplication.NotNull().SelectionChanged += (_, _) => revitIdleManager.SubscribeToIdle(nameof(SelectionBinding), OnSelectionChanged); - }); #endif } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs index 91961da60..b0ea49153 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs @@ -45,7 +45,7 @@ public static void AddRevit(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.RegisterTopLevelExceptionHandler(); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs index 9884b659a..a8aed3ee8 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs @@ -6,7 +6,6 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Utils; -using Speckle.Connectors.Revit.Plugin; using Speckle.Converters.RevitShared.Helpers; using Speckle.Sdk; using Speckle.Sdk.Common; @@ -20,12 +19,12 @@ internal sealed class RevitDocumentStore : DocumentModelStore private static readonly Guid s_revitDocumentStoreId = new("D35B3695-EDC9-4E15-B62A-D3FC2CB83FA3"); private readonly RevitContext _revitContext; - private readonly IRevitIdleManager _idleManager; + private readonly IAppIdleManager _idleManager; private readonly DocumentModelStorageSchema _documentModelStorageSchema; private readonly IdStorageSchema _idStorageSchema; public RevitDocumentStore( - IRevitIdleManager idleManager, + IAppIdleManager idleManager, RevitContext revitContext, IJsonSerializer jsonSerializer, DocumentModelStorageSchema documentModelStorageSchema, @@ -39,8 +38,7 @@ ITopLevelExceptionHandler topLevelExceptionHandler _documentModelStorageSchema = documentModelStorageSchema; _idStorageSchema = idStorageSchema; - _idleManager.RunAsync(() => - { + UIApplication uiApplication = _revitContext.UIApplication.NotNull(); uiApplication.ViewActivated += (s, e) => topLevelExceptionHandler.CatchUnhandled(() => OnViewActivated(s, e)); @@ -50,7 +48,6 @@ ITopLevelExceptionHandler topLevelExceptionHandler uiApplication.Application.DocumentOpened += (_, _) => topLevelExceptionHandler.CatchUnhandled(() => IsDocumentInit = false); - }); Models.CollectionChanged += (_, _) => topLevelExceptionHandler.CatchUnhandled(WriteToFile); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs index f79a1cd28..43091de2d 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs @@ -1,27 +1,13 @@ using Autodesk.Revit.UI; using Autodesk.Revit.UI.Events; -using Revit.Async; using Speckle.Connectors.DUI.Bridge; -using Speckle.Connectors.DUI.Threading; using Speckle.Converters.RevitShared.Helpers; using Speckle.Sdk.Common; namespace Speckle.Connectors.Revit.Plugin; -public class RevitMainThreadContext : MainThreadContext -{ - public override void RunContext(Action action) => - RevitTask.RunAsync(action); - - public override Task RunContext(Func> action) => - RevitTask.RunAsync(action); -} -public interface IRevitIdleManager : IAppIdleManager -{ - public void RunAsync(Action action); -} -public sealed class RevitIdleManager : AppIdleManager, IRevitIdleManager +public sealed class RevitIdleManager : AppIdleManager { private readonly UIApplication _uiApplication; private readonly IIdleCallManager _idleCallManager; @@ -52,17 +38,4 @@ protected override void AddEvent() private void RevitAppOnIdle(object? sender, IdlingEventArgs e) => _idleCallManager.AppOnIdle(() => OnIdle -= RevitAppOnIdle); - - public void RunAsync(Action action) - { - if (!MainThreadContext.IsMainThread) - { - Console.WriteLine("Running async on a non-main thread!"); - } -#if REVIT2025 - global::Revit.Async.RevitTask.RunAsync(action); -#else - action(); -#endif - } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs index 73f756718..a2f8071e4 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs @@ -1,4 +1,6 @@ -#nullable enable +using Revit.Async; +using Speckle.Connectors.DUI.Threading; + namespace Speckle.Connectors.Revit.Plugin; public class RevitMainThreadContext : MainThreadContext diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems b/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems index 350c552f7..c482085b3 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems @@ -49,6 +49,7 @@ + diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs index daf21e89f..9966a078e 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs @@ -13,6 +13,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Connectors.Rhino.Bindings; using Speckle.Connectors.Rhino.Filters; @@ -33,7 +34,7 @@ public static void AddRhino(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(SpeckleConnectorsRhinoCommand.Instance); serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // POC: Overwriting the SyncToMainThread to SyncToCurrentThread for Rhino! diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs index 71da6f5c4..fa3d51dbb 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs @@ -14,6 +14,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Converter.Tekla2024; using Speckle.Converters.Common; @@ -32,7 +33,7 @@ public static IServiceCollection AddTekla(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); - services.AddDUI(); + services.AddDUI(); services.AddDUIView(); services.AddSingleton(); From 8b2a437d0c3afafd0e2a0f25e01eceb6e01c4260 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 22 Nov 2024 16:33:47 +0000 Subject: [PATCH 018/173] Handle Document Events --- ....cs => NavisworksBasicConnectorBinding.cs} | 27 ++-- ...on.cs => NavisworksServiceRegistration.cs} | 5 +- .../HostApp/NavisworksDocumentEvents.cs | 124 ++++++++++++++++++ .../HostApp/NavisworksDocumentStore.cs | 6 +- .../HostApp/NavisworksIdleManager.cs | 21 ++- ...ckle.Connectors.NavisworksShared.projitems | 5 +- 6 files changed, 166 insertions(+), 22 deletions(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/{BasicConnectorBinding.cs => NavisworksBasicConnectorBinding.cs} (68%) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/{ServiceRegistration.cs => NavisworksServiceRegistration.cs} (90%) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs similarity index 68% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index 591a2fc5a..ae63e7a3b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/BasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -6,12 +6,12 @@ namespace Speckle.Connector.Navisworks.Bindings; -public class BasicConnectorBinding : IBasicConnectorBinding +public class NavisworksBasicConnectorBinding : IBasicConnectorBinding { public string Name => "baseBinding"; public IBrowserBridge Parent { get; } - public BasicConnectorBinding(IBrowserBridge parent) + public NavisworksBasicConnectorBinding(IBrowserBridge parent) { Parent = parent; } @@ -22,15 +22,14 @@ public BasicConnectorBinding(IBrowserBridge parent) public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; - public DocumentInfo? GetDocumentInfo() - { - if (NavisworksApp.ActiveDocument is null) - { - return null; - } - - return new DocumentInfo(NavisworksApp.ActiveDocument.Title, "", "3"); - } + public DocumentInfo? GetDocumentInfo() => + NavisworksApp.ActiveDocument is null || NavisworksApp.ActiveDocument.Models.Count == 0 + ? null + : new DocumentInfo( + NavisworksApp.ActiveDocument.CurrentFileName, + NavisworksApp.ActiveDocument.Title, + NavisworksApp.ActiveDocument.GetHashCode().ToString() + ); public DocumentModelStore GetDocumentState() => _store; @@ -55,7 +54,11 @@ public Task HighlightObjects(IReadOnlyList objectIds) private readonly ISpeckleApplication _speckleApplication; private readonly DocumentModelStore _store; - public BasicConnectorBinding(IBrowserBridge parent, ISpeckleApplication speckleApplication, DocumentModelStore store) + public NavisworksBasicConnectorBinding( + IBrowserBridge parent, + ISpeckleApplication speckleApplication, + DocumentModelStore store + ) { Parent = parent; Commands = new BasicConnectorBindingCommands(parent); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs similarity index 90% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs index 431d3f750..6b6596478 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/ServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs @@ -13,7 +13,7 @@ namespace Speckle.Connector.Navisworks.DependencyInjection; -public static class ServiceRegistration +public static class NavisworksServiceRegistration { public static void AddNavisworks(this IServiceCollection serviceCollection) { @@ -28,6 +28,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); // Register bindings serviceCollection.AddSingleton(); @@ -38,7 +39,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) // Register Navisworks specific binding serviceCollection.AddSingleton(sp => sp.GetRequiredService()); - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddScoped(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs new file mode 100644 index 000000000..1f4792eec --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -0,0 +1,124 @@ +using Autodesk.Navisworks.Api; +using Speckle.Connector.Navisworks.Bindings; +using Speckle.Connectors.DUI.Bindings; +using Speckle.Connectors.DUI.Bridge; + +namespace Speckle.Connector.Navisworks.HostApp; + +/// +/// Manages document state change notifications for the Navisworks connector. +/// Coalesces various document events into batched UI updates using the idle manager. +/// +public class NavisworksDocumentEvents : IDisposable +{ + private readonly IBasicConnectorBinding _basicBinding; + private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; + private readonly IAppIdleManager _idleManager; + private bool _isSubscribed; + private readonly object _subscriptionLock = new(); + private bool _disposed; + + /// + /// Initializes event handling for document and model changes. + /// + public NavisworksDocumentEvents( + IBasicConnectorBinding basicBinding, + ITopLevelExceptionHandler topLevelExceptionHandler, + IAppIdleManager idleManager + ) + { + _basicBinding = basicBinding; + _topLevelExceptionHandler = topLevelExceptionHandler; + _idleManager = idleManager; + SubscribeToEvents(); + } + + /// + /// Subscribes to document-level events and model collection changes. + /// + private void SubscribeToEvents() + { + lock (_subscriptionLock) + { + if (_isSubscribed) + { + return; + } + + NavisworksApp.ActiveDocumentChanged += OnDocumentEvent; + NavisworksApp.DocumentAdded += OnDocumentEvent; + NavisworksApp.DocumentRemoved += OnDocumentEvent; + + if (NavisworksApp.ActiveDocument != null && NavisworksApp.ActiveDocument.Models.Count > 0) + { + SubscribeToModelEvents(NavisworksApp.ActiveDocument); + } + + _isSubscribed = true; + } + } + + private void SubscribeToModelEvents(Document document) => document.Models.CollectionChanged += OnDocumentEvent; + + /// + /// Queues a document change notification to be processed during idle time. + /// + private void OnDocumentEvent(object sender, EventArgs e) => + _topLevelExceptionHandler.CatchUnhandled( + () => + _idleManager.SubscribeToIdle( + nameof(NavisworksDocumentEvents), + async () => await NotifyDocumentChanged().ConfigureAwait(false) + ) + ); + + private async Task NotifyDocumentChanged() + { + var commands = (_basicBinding as NavisworksBasicConnectorBinding)?.Commands; + if (commands != null) + { + await commands.NotifyDocumentChanged().ConfigureAwait(false); + } + } + + private void UnsubscribeFromEvents() + { + NavisworksApp.ActiveDocumentChanged -= OnDocumentEvent; + NavisworksApp.DocumentAdded -= OnDocumentEvent; + NavisworksApp.DocumentRemoved -= OnDocumentEvent; + + if (NavisworksApp.ActiveDocument != null && NavisworksApp.ActiveDocument.Models.Count > 0) + { + UnsubscribeFromModelEvents(NavisworksApp.ActiveDocument); + } + } + + private void UnsubscribeFromModelEvents(Document document) => document.Models.CollectionChanged -= OnDocumentEvent; + + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) + { + if (_disposed) + { + return; + } + + if (disposing) + { + UnsubscribeFromEvents(); + _isSubscribed = false; + } + + _disposed = true; + } + + ~NavisworksDocumentEvents() + { + Dispose(false); + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs index 30f7d6d29..c3c292678 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -3,11 +3,9 @@ namespace Speckle.Connector.Navisworks.HostApp; -public class NavisworksDocumentStore : DocumentModelStore +public class NavisworksDocumentStore(JsonSerializerSettings serializerOptions) + : DocumentModelStore(serializerOptions, true) { - public NavisworksDocumentStore(JsonSerializerSettings serializerOptions) - : base(serializerOptions, true) { } - public override void WriteToFile() { } public override void ReadFromFile() { } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs index 992da0439..2a9087774 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksIdleManager.cs @@ -2,10 +2,27 @@ namespace Speckle.Connector.Navisworks.HostApp; -public sealed class NavisworksIdleManager(IIdleCallManager idleCallManager) : AppIdleManager(idleCallManager) +/// +/// Manages the scheduling of deferred operations during Navisworks idle periods. +/// Ensures UI updates and operations are batched efficiently to prevent UI freezing. +/// +public sealed class NavisworksIdleManager : AppIdleManager { - private readonly IIdleCallManager _idleCallManager = idleCallManager; + private readonly IIdleCallManager _idleCallManager; + /// + /// Initializes a new instance of the NavisworksIdleManager. + /// + /// The manager responsible for queuing and executing deferred operations. + public NavisworksIdleManager(IIdleCallManager idleCallManager) + : base(idleCallManager) + { + _idleCallManager = idleCallManager; + } + + /// + /// Subscribes to Navisworks idle events when operations are queued. + /// protected override void AddEvent() => NavisworksApp.Idle += NavisworksAppOnIdle; private void NavisworksAppOnIdle(object? sender, EventArgs e) => diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 7d81a7f0d..e46e7978c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -12,12 +12,13 @@ - + - + + From 252f1a5e25796f01cc5ff4fbd4231afd8445a9c9 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 22 Nov 2024 17:30:16 +0000 Subject: [PATCH 019/173] Document Model Store --- .../HostApp/NavisworksDocumentStore.cs | 202 +++++++++++++++++- 1 file changed, 198 insertions(+), 4 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs index c3c292678..1ff4c6206 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -1,12 +1,206 @@ +using System.Collections.ObjectModel; +using System.Data; +using Autodesk.Navisworks.Api.Data; +using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.Models.Card; using Speckle.Newtonsoft.Json; namespace Speckle.Connector.Navisworks.HostApp; -public class NavisworksDocumentStore(JsonSerializerSettings serializerOptions) - : DocumentModelStore(serializerOptions, true) +/// +/// Manages persistence of Speckle model states in Navisworks' embedded SQLite database +/// +public class NavisworksDocumentStore : DocumentModelStore { - public override void WriteToFile() { } + // Constants for database table name, key name, and retry settings + private const string TABLE_NAME = "speckle"; + private const string KEY_NAME = "Speckle_DUI3"; + private const int MAX_RETRIES = 3; + private const int RETRY_DELAY_MS = 100; - public override void ReadFromFile() { } + // Exception handler for capturing unhandled exceptions + private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; + + /// + /// Initialises a new instance of the NavisworksDocumentStore class + /// + /// JSON serializer settings + /// Exception handler + public NavisworksDocumentStore( + JsonSerializerSettings jsonSerializerSettings, + ITopLevelExceptionHandler topLevelExceptionHandler + ) + : base(jsonSerializerSettings, true) + { + _topLevelExceptionHandler = topLevelExceptionHandler; + ReadFromFile(); + } + + /// + /// Attempts to safely persist current model state to Navisworks document database with retries + /// + public override void WriteToFile() + { + // Skip if document is invalid + if (!IsDocumentValid()) + { + return; + } + + // Retry logic for database write operations + for (int attempt = 1; attempt <= MAX_RETRIES; attempt++) + { + try + { + WriteStateToDatabase(); + return; + } + catch (DatabaseException ex) + { + // Handle final attempt failure + if (attempt == MAX_RETRIES) + { + _topLevelExceptionHandler.CatchUnhandled( + () => throw new InvalidOperationException("Failed to write Speckle state to database", ex) + ); + } + // Delay before retrying + Thread.Sleep(RETRY_DELAY_MS); + } + } + } + + /// + /// Loads model state from Navisworks document database with retries + /// + public sealed override void ReadFromFile() + { + // Return empty model list if document is invalid + if (!IsDocumentValid()) + { + Models = []; + return; + } + + // Retry logic for database read operations + for (int attempt = 1; attempt <= MAX_RETRIES; attempt++) + { + try + { + Models = ReadStateFromDatabase(); + return; + } + catch (DatabaseException ex) + { + // Handle final attempt failure + if (attempt == MAX_RETRIES) + { + Models = new(); + _topLevelExceptionHandler.CatchUnhandled( + () => throw new InvalidOperationException("Failed to read Speckle state from database", ex) + ); + } + // Delay before retrying + Thread.Sleep(RETRY_DELAY_MS); + } + } + } + + /// + /// Validates that the Navisworks document and database are accessible + /// + private static bool IsDocumentValid() => + NavisworksApp.ActiveDocument?.Database != null && NavisworksApp.ActiveDocument.ActiveSheet != null; + + /// + /// Serializes and writes the current model state to the database + /// + private void WriteStateToDatabase() + { + // Serialize model state + string serializedState = Serialize(); + var database = NavisworksApp.ActiveDocument!.Database; + + // Ensure the database table exists + using (var transaction = database.BeginTransaction(DatabaseChangedAction.Reset)) + { + EnsureTableExists(transaction); + } + + // Insert or update the state in the database + using (var transaction = database.BeginTransaction(DatabaseChangedAction.Edited)) + { + try + { + DeleteAndInsertState(transaction, serializedState); + transaction.Commit(); + } + catch + { + transaction.Rollback(); + throw; + } + } + } + + /// + /// Ensures the database table exists, creating it if necessary + /// + /// Active database transaction + private static void EnsureTableExists(NavisworksTransaction transaction) + { + var command = transaction.Connection.CreateCommand(); + command.CommandText = $"CREATE TABLE IF NOT EXISTS {TABLE_NAME}(key TEXT PRIMARY KEY, value TEXT)"; + command.ExecuteNonQuery(); + transaction.Commit(); + } + + /// + /// Deletes the existing state and inserts the new serialized state into the database + /// + /// Active database transaction + /// Serialized state to write + private static void DeleteAndInsertState(NavisworksTransaction transaction, string serializedState) + { + var command = transaction.Connection.CreateCommand(); + + // Delete existing state + command.CommandText = $"DELETE FROM {TABLE_NAME} WHERE key = @key"; + command.Parameters.AddWithValue("@key", KEY_NAME); + command.ExecuteNonQuery(); + + // Insert new state + command.CommandText = $"INSERT INTO {TABLE_NAME}(key, value) VALUES(@key, @value)"; + command.Parameters.AddWithValue("@key", KEY_NAME); + command.Parameters.AddWithValue("@value", serializedState); + command.ExecuteNonQuery(); + } + + /// + /// Reads the model state from the database + /// + /// Collection of model cards representing the state + private ObservableCollection ReadStateFromDatabase() + { + var database = NavisworksApp.ActiveDocument!.Database; + using var table = new DataTable(); + + // Execute query to fetch the serialized state + using var dataAdapter = new NavisworksDataAdapter( + $"SELECT value FROM {TABLE_NAME} WHERE key = @key", + database.Value + ); + dataAdapter.SelectCommand.Parameters.AddWithValue("@key", KEY_NAME); + dataAdapter.Fill(table); + + // Handle missing or empty state + if (table.Rows.Count <= 0) + { + return []; + } + + string? stateString = table.Rows[0]["value"] as string; + return !string.IsNullOrEmpty(stateString) ? Deserialize(stateString!) ?? [] : []; + } } From fe28352e835e735c3a0d6693dae550ba260ad3f7 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 22 Nov 2024 17:35:00 +0000 Subject: [PATCH 020/173] Proper implementation --- .../NavisworksBasicConnectorBinding.cs | 32 +++++++------------ 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index ae63e7a3b..ea287ac67 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -11,9 +11,17 @@ public class NavisworksBasicConnectorBinding : IBasicConnectorBinding public string Name => "baseBinding"; public IBrowserBridge Parent { get; } - public NavisworksBasicConnectorBinding(IBrowserBridge parent) + public NavisworksBasicConnectorBinding( + IBrowserBridge parent, + BasicConnectorBindingCommands commands, + ISpeckleApplication speckleApplication, + DocumentModelStore store + ) { Parent = parent; + Commands = commands; + _speckleApplication = speckleApplication; + _store = store; } public string GetSourceApplicationName() => _speckleApplication.Slug; @@ -39,30 +47,12 @@ public NavisworksBasicConnectorBinding(IBrowserBridge parent) public void RemoveModel(ModelCard model) => _store.RemoveModel(model); - public Task HighlightModel(string modelCardId) - { - return Task.CompletedTask; - } + public Task HighlightModel(string modelCardId) => Task.CompletedTask; - public Task HighlightObjects(IReadOnlyList objectIds) - { - return Task.CompletedTask; - } + public Task HighlightObjects(IReadOnlyList objectIds) => Task.CompletedTask; public BasicConnectorBindingCommands Commands { get; } private readonly ISpeckleApplication _speckleApplication; private readonly DocumentModelStore _store; - - public NavisworksBasicConnectorBinding( - IBrowserBridge parent, - ISpeckleApplication speckleApplication, - DocumentModelStore store - ) - { - Parent = parent; - Commands = new BasicConnectorBindingCommands(parent); - _speckleApplication = speckleApplication; - _store = store; - } } From 43a77c04f9907245ba86b66cc83c836817910ade Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 22 Nov 2024 17:41:02 +0000 Subject: [PATCH 021/173] package updates --- .../packages.lock.json | 32 +++++++++---------- .../packages.lock.json | 24 +++++++------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 6b39412e5..db6c3327d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.181, )", - "resolved": "3.1.0-dev.181", - "contentHash": "r6GGA7Pq4CPGYOu6OmmLW/hhhREo/l44RUFhsoYmpHNGpOg1UjF45dwyfLgaU38wrNxQoURjLUQDkxGfhb8liA==", + "requested": "[3.1.0-dev.191, )", + "resolved": "3.1.0-dev.191", + "contentHash": "+m7jRFm0ABbkcSz2UphdxAsislY10IpQ1u79c8a3aVvegLjnsVQZ1sXfRIRO1aFdulkhjYKXYpB3N9M8Z+epgQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.181" + "Speckle.Sdk": "3.1.0-dev.191" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.181, )", - "Speckle.Sdk": "[3.1.0-dev.181, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.181, )" + "Speckle.Objects": "[3.1.0-dev.191, )", + "Speckle.Sdk": "[3.1.0-dev.191, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.181, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.181, )", + "Speckle.Sdk": "[3.1.0-dev.191, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -333,9 +333,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.181, )", - "resolved": "3.1.0-dev.181", - "contentHash": "VmRRphUJm+qfcjtdzxkTstAD0opaIP57tP6GJ2YnalyRj3wBTGBQuy7gwhGjWyAvsMnkugpKFEfAVuNm/zHQ2A==", + "requested": "[3.1.0-dev.191, )", + "resolved": "3.1.0-dev.191", + "contentHash": "VVT3LJiYlhqnggxxdeTt1QLrqfxDb044x0yX6kxS9b5MRzeDvK2Vz86pLDfuHs+SXvDimRVfYx1M42IW/aPcTQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -345,14 +345,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.181" + "Speckle.Sdk.Dependencies": "3.1.0-dev.191" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.181, )", - "resolved": "3.1.0-dev.181", - "contentHash": "W7Nb3hAPlLXGZmEFWdf9vyhXKGZk3M+lypEKB+IWQVwr3NL+bzPgfw2130kTuMr/9zGx8jUbSfx2ulTql9mZxw==" + "requested": "[3.1.0-dev.191, )", + "resolved": "3.1.0-dev.191", + "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 855c232f0..e92b4c08b 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.181, )" + "Speckle.Objects": "[3.1.0-dev.191, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.181, )", - "resolved": "3.1.0-dev.181", - "contentHash": "r6GGA7Pq4CPGYOu6OmmLW/hhhREo/l44RUFhsoYmpHNGpOg1UjF45dwyfLgaU38wrNxQoURjLUQDkxGfhb8liA==", + "requested": "[3.1.0-dev.191, )", + "resolved": "3.1.0-dev.191", + "contentHash": "+m7jRFm0ABbkcSz2UphdxAsislY10IpQ1u79c8a3aVvegLjnsVQZ1sXfRIRO1aFdulkhjYKXYpB3N9M8Z+epgQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.181" + "Speckle.Sdk": "3.1.0-dev.191" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.181, )", - "resolved": "3.1.0-dev.181", - "contentHash": "VmRRphUJm+qfcjtdzxkTstAD0opaIP57tP6GJ2YnalyRj3wBTGBQuy7gwhGjWyAvsMnkugpKFEfAVuNm/zHQ2A==", + "requested": "[3.1.0-dev.191, )", + "resolved": "3.1.0-dev.191", + "contentHash": "VVT3LJiYlhqnggxxdeTt1QLrqfxDb044x0yX6kxS9b5MRzeDvK2Vz86pLDfuHs+SXvDimRVfYx1M42IW/aPcTQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.181" + "Speckle.Sdk.Dependencies": "3.1.0-dev.191" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.181, )", - "resolved": "3.1.0-dev.181", - "contentHash": "W7Nb3hAPlLXGZmEFWdf9vyhXKGZk3M+lypEKB+IWQVwr3NL+bzPgfw2130kTuMr/9zGx8jUbSfx2ulTql9mZxw==" + "requested": "[3.1.0-dev.191, )", + "resolved": "3.1.0-dev.191", + "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" } } } From bb8347628ba05da29f5c16f03c559c7a99fd97c7 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 22 Nov 2024 17:48:36 +0000 Subject: [PATCH 022/173] updated to dev --- .../Filters/NavisworksSelectionFilter.cs | 2 +- .../HostApp/NavisworksDocumentStore.cs | 11 ++++------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs index e9bd93df2..ce9a80e0f 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs @@ -9,5 +9,5 @@ public NavisworksSelectionFilter() IsDefault = true; } - public override List GetObjectIds() => []; + public override List RefreshObjectIds() => []; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs index 1ff4c6206..b882fa533 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -4,7 +4,7 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; -using Speckle.Newtonsoft.Json; +using Speckle.Connectors.DUI.Utils; namespace Speckle.Connector.Navisworks.HostApp; @@ -25,13 +25,10 @@ public class NavisworksDocumentStore : DocumentModelStore /// /// Initialises a new instance of the NavisworksDocumentStore class /// - /// JSON serializer settings + /// JSON serializer /// Exception handler - public NavisworksDocumentStore( - JsonSerializerSettings jsonSerializerSettings, - ITopLevelExceptionHandler topLevelExceptionHandler - ) - : base(jsonSerializerSettings, true) + public NavisworksDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler) + : base(jsonSerializer, true) { _topLevelExceptionHandler = topLevelExceptionHandler; ReadFromFile(); From fc41f62ea546f82c0c2864b6f9dc9eb7d0751c26 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 13:53:15 +0000 Subject: [PATCH 023/173] Document Events binding ??? --- .../NavisworksBasicConnectorBinding.cs | 24 ++++++++++++------- .../HostApp/NavisworksDocumentEvents.cs | 5 ++-- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index ea287ac67..b9ef30591 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -1,3 +1,5 @@ +using Speckle.Connector.Navisworks.HostApp; +using Speckle.Connectors.Common.Caching; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; @@ -10,18 +12,27 @@ public class NavisworksBasicConnectorBinding : IBasicConnectorBinding { public string Name => "baseBinding"; public IBrowserBridge Parent { get; } + public BasicConnectorBindingCommands Commands { get; } + + private readonly DocumentModelStore _store; + private readonly ISendConversionCache _sendConversionCache; + private readonly ISpeckleApplication _speckleApplication; + private readonly NavisworksDocumentEvents _documentEvents; public NavisworksBasicConnectorBinding( IBrowserBridge parent, - BasicConnectorBindingCommands commands, + DocumentModelStore store, + ISendConversionCache sendConversionCache, ISpeckleApplication speckleApplication, - DocumentModelStore store + NavisworksDocumentEvents documentEvents ) { Parent = parent; - Commands = commands; - _speckleApplication = speckleApplication; _store = store; + _sendConversionCache = sendConversionCache; + _speckleApplication = speckleApplication; + _documentEvents = documentEvents; + Commands = new BasicConnectorBindingCommands(parent); } public string GetSourceApplicationName() => _speckleApplication.Slug; @@ -50,9 +61,4 @@ DocumentModelStore store public Task HighlightModel(string modelCardId) => Task.CompletedTask; public Task HighlightObjects(IReadOnlyList objectIds) => Task.CompletedTask; - - public BasicConnectorBindingCommands Commands { get; } - - private readonly ISpeckleApplication _speckleApplication; - private readonly DocumentModelStore _store; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 1f4792eec..04222b109 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -9,7 +9,7 @@ namespace Speckle.Connector.Navisworks.HostApp; /// Manages document state change notifications for the Navisworks connector. /// Coalesces various document events into batched UI updates using the idle manager. /// -public class NavisworksDocumentEvents : IDisposable +public sealed class NavisworksDocumentEvents : IDisposable { private readonly IBasicConnectorBinding _basicBinding; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; @@ -74,6 +74,7 @@ private void OnDocumentEvent(object sender, EventArgs e) => private async Task NotifyDocumentChanged() { + // Just notify through the binding's commands var commands = (_basicBinding as NavisworksBasicConnectorBinding)?.Commands; if (commands != null) { @@ -101,7 +102,7 @@ public void Dispose() GC.SuppressFinalize(this); } - protected virtual void Dispose(bool disposing) + private void Dispose(bool disposing) { if (_disposed) { From 15978ce34fbfb1b819cb63425a87c9ed92412237 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 14:22:53 +0000 Subject: [PATCH 024/173] registration order --- .../NavisworksServiceRegistration.cs | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs index 6b6596478..d4465a7e1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs @@ -22,14 +22,6 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddDUI(); serviceCollection.AddDUIView(); - // Register Intercom/interop - serviceCollection.RegisterTopLevelExceptionHandler(); - serviceCollection.AddTransient(); - serviceCollection.AddSingleton(); - - serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); - // Register bindings serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); @@ -41,12 +33,14 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(sp => sp.GetRequiredService()); serviceCollection.AddSingleton(); - serviceCollection.AddScoped(); - - // binding dependencies + // Register Intercom/interop + serviceCollection.RegisterTopLevelExceptionHandler(); serviceCollection.AddTransient(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); - // register send filters + // register filters serviceCollection.AddScoped(); } } From 1b61748a8bde5c57e518a84d42634d5436105e22 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 17:22:45 +0000 Subject: [PATCH 025/173] Minimised events subscribed and handle new document state to clear models --- .../Bindings/NavisworksSendBinding.cs | 24 ++++++++++- .../HostApp/NavisworksDocumentEvents.cs | 43 ++++++++++++------- 2 files changed, 49 insertions(+), 18 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index f2ae7124c..124b7fbf4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -1,4 +1,5 @@ using Speckle.Connector.Navisworks.Filters; +using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models.Card.SendFilter; @@ -11,9 +12,14 @@ public class NavisworksSendBinding : ISendBinding public string Name => "sendBinding"; public IBrowserBridge Parent { get; } - public NavisworksSendBinding(IBrowserBridge parent) + private readonly DocumentModelStore _store; + private readonly CancellationManager _cancellationManager; + + public NavisworksSendBinding(IBrowserBridge parent, DocumentModelStore store, CancellationManager cancellationManager) { Parent = parent; + _store = store; + _cancellationManager = cancellationManager; } public List GetSendFilters() => [new NavisworksSelectionFilter()]; @@ -22,7 +28,21 @@ public NavisworksSendBinding(IBrowserBridge parent) public Task Send(string modelCardId) => throw new NotImplementedException(); - public void CancelSend(string modelCardId) => throw new NotImplementedException(); + public void CancelSend(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); public SendBindingUICommands Commands { get; } + + /// + /// Cancels all outstanding send operations for the current document. + /// This method is called when the active document changes, to ensure + /// that any in-progress send operations are properly canceled before + /// the new document is loaded. + /// + public void CancelAllSendOperations() + { + foreach (var modelCardId in _store.GetSenders().Select(m => m.ModelCardId)) + { + CancelSend(modelCardId ?? string.Empty); + } + } } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 04222b109..9a2eeee21 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -1,7 +1,9 @@ using Autodesk.Navisworks.Api; +using Microsoft.Extensions.DependencyInjection; using Speckle.Connector.Navisworks.Bindings; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Models; namespace Speckle.Connector.Navisworks.HostApp; @@ -11,7 +13,7 @@ namespace Speckle.Connector.Navisworks.HostApp; /// public sealed class NavisworksDocumentEvents : IDisposable { - private readonly IBasicConnectorBinding _basicBinding; + private readonly IServiceProvider _serviceProvider; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; private readonly IAppIdleManager _idleManager; private bool _isSubscribed; @@ -22,17 +24,19 @@ public sealed class NavisworksDocumentEvents : IDisposable /// Initializes event handling for document and model changes. /// public NavisworksDocumentEvents( - IBasicConnectorBinding basicBinding, + IServiceProvider serviceProvider, ITopLevelExceptionHandler topLevelExceptionHandler, IAppIdleManager idleManager ) { - _basicBinding = basicBinding; + _serviceProvider = serviceProvider; _topLevelExceptionHandler = topLevelExceptionHandler; _idleManager = idleManager; SubscribeToEvents(); } + // public void Initialize() => SubscribeToEvents(); + /// /// Subscribes to document-level events and model collection changes. /// @@ -45,11 +49,7 @@ private void SubscribeToEvents() return; } - NavisworksApp.ActiveDocumentChanged += OnDocumentEvent; - NavisworksApp.DocumentAdded += OnDocumentEvent; - NavisworksApp.DocumentRemoved += OnDocumentEvent; - - if (NavisworksApp.ActiveDocument != null && NavisworksApp.ActiveDocument.Models.Count > 0) + if (NavisworksApp.ActiveDocument != null) { SubscribeToModelEvents(NavisworksApp.ActiveDocument); } @@ -74,8 +74,17 @@ private void OnDocumentEvent(object sender, EventArgs e) => private async Task NotifyDocumentChanged() { - // Just notify through the binding's commands - var commands = (_basicBinding as NavisworksBasicConnectorBinding)?.Commands; + var store = _serviceProvider.GetRequiredService(); + var basicBinding = _serviceProvider.GetRequiredService(); + var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; + + // Check if we have a blank document state (no models) + if (NavisworksApp.ActiveDocument.Models.Count == 0) + { + // Clear the store when there are no models + store.Models.Clear(); + } + if (commands != null) { await commands.NotifyDocumentChanged().ConfigureAwait(false); @@ -84,17 +93,19 @@ private async Task NotifyDocumentChanged() private void UnsubscribeFromEvents() { - NavisworksApp.ActiveDocumentChanged -= OnDocumentEvent; - NavisworksApp.DocumentAdded -= OnDocumentEvent; - NavisworksApp.DocumentRemoved -= OnDocumentEvent; - - if (NavisworksApp.ActiveDocument != null && NavisworksApp.ActiveDocument.Models.Count > 0) + if (NavisworksApp.ActiveDocument != null) { UnsubscribeFromModelEvents(NavisworksApp.ActiveDocument); } } - private void UnsubscribeFromModelEvents(Document document) => document.Models.CollectionChanged -= OnDocumentEvent; + private void UnsubscribeFromModelEvents(Document document) + { + document.Models.CollectionChanged -= OnDocumentEvent; + + var sendBinding = _serviceProvider.GetRequiredService(); + sendBinding.CancelAllSendOperations(); + } public void Dispose() { From 36f0abd0989b036b1e045df8dc5bb12d84aba41a Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 17:24:40 +0000 Subject: [PATCH 026/173] Stub Send command --- .../Bindings/NavisworksSendBinding.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 124b7fbf4..5fff5e580 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -2,6 +2,7 @@ using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; @@ -26,7 +27,7 @@ public NavisworksSendBinding(IBrowserBridge parent, DocumentModelStore store, Ca public List GetSendSettings() => []; - public Task Send(string modelCardId) => throw new NotImplementedException(); + public Task Send(string modelCardId) => Task.CompletedTask; public void CancelSend(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); From dcab8e3743307e7f3e9ef865da37068191a18aaa Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 17:25:28 +0000 Subject: [PATCH 027/173] Refactor Connector class to change access modifier of Container property The commit modifies the access modifier of the Container property in the Connector class from public to private. This change improves encapsulation and ensures that the property can only be accessed within the class itself. --- .../Plugin/DockableConnectorPane.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs index b972412db..9d62007e4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -29,7 +29,7 @@ namespace Speckle.Connector.Navisworks.NavisPlugin; )] internal sealed class Connector : DockPanePlugin { - public ServiceProvider? Container { get; private set; } + private ServiceProvider? Container { get; set; } public override Control CreateControlPane() { From 3b2954bd9003ea56e53aa155c131a8058625e2d0 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 17:25:53 +0000 Subject: [PATCH 028/173] Fix NavisworksDocumentStore model list initialization and document validation The commit fixes the initialization of the Models list in the NavisworksDocumentStore class. Instead of assigning an empty array, it now uses the Clear() method to clear the existing models. Additionally, the commit improves the document validation logic by checking if critical properties are accessible before considering the document valid. It also handles cases where the document is disposed. These changes ensure proper initialization of model lists and accurate document validation in NavisworksDocumentStore. --- .../HostApp/NavisworksDocumentStore.cs | 40 ++++++++++++++++--- 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs index b882fa533..c34134ad3 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -76,7 +76,7 @@ public sealed override void ReadFromFile() // Return empty model list if document is invalid if (!IsDocumentValid()) { - Models = []; + Models.Clear(); return; } @@ -93,7 +93,7 @@ public sealed override void ReadFromFile() // Handle final attempt failure if (attempt == MAX_RETRIES) { - Models = new(); + Models = []; _topLevelExceptionHandler.CatchUnhandled( () => throw new InvalidOperationException("Failed to read Speckle state from database", ex) ); @@ -107,17 +107,45 @@ public sealed override void ReadFromFile() /// /// Validates that the Navisworks document and database are accessible /// - private static bool IsDocumentValid() => - NavisworksApp.ActiveDocument?.Database != null && NavisworksApp.ActiveDocument.ActiveSheet != null; + private static bool IsDocumentValid() + { + try + { + var activeDoc = NavisworksApp.ActiveDocument; + if (activeDoc == null) + { + return false; + } + + // Check if we can access critical document properties + return activeDoc.Database != null && activeDoc.Models.Count > 0 && activeDoc.ActiveSheet != null; + } + catch (ArgumentException) + { + // Handle case where document is disposed + return false; + } + catch (ObjectDisposedException) + { + // Handle case where document is disposed + return false; + } + } /// /// Serializes and writes the current model state to the database /// private void WriteStateToDatabase() { + var activeDoc = NavisworksApp.ActiveDocument; + if (activeDoc?.Database == null) + { + return; + } + // Serialize model state string serializedState = Serialize(); - var database = NavisworksApp.ActiveDocument!.Database; + var database = activeDoc.Database; // Ensure the database table exists using (var transaction = database.BeginTransaction(DatabaseChangedAction.Reset)) @@ -198,6 +226,6 @@ private ObservableCollection ReadStateFromDatabase() } string? stateString = table.Rows[0]["value"] as string; - return !string.IsNullOrEmpty(stateString) ? Deserialize(stateString!) ?? [] : []; + return !string.IsNullOrEmpty(stateString) ? Deserialize(stateString!) : []; } } From 55af7dce42203905669478089f2591da77bdb677 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 19:12:31 +0000 Subject: [PATCH 029/173] Effectively debouncing on the SDI changes events --- .../HostApp/NavisworksDocumentEvents.cs | 61 +++++++++++++++---- 1 file changed, 48 insertions(+), 13 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 9a2eeee21..6c6e9f529 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -19,6 +19,9 @@ public sealed class NavisworksDocumentEvents : IDisposable private bool _isSubscribed; private readonly object _subscriptionLock = new(); private bool _disposed; + private bool _isProcessing; + private int _priorModelCount; + private int _finalModelCount; /// /// Initializes event handling for document and model changes. @@ -58,12 +61,22 @@ private void SubscribeToEvents() } } - private void SubscribeToModelEvents(Document document) => document.Models.CollectionChanged += OnDocumentEvent; + private void SubscribeToModelEvents(Document document) + { + document.Models.CollectionChanging += OnDocumentModelCountChanging; + document.Models.CollectionChanged += OnDocumentModelCountChanged; + } + + private void OnDocumentModelCountChanging(object sender, EventArgs e) => + _priorModelCount = ((Document)sender).Models.Count; /// /// Queues a document change notification to be processed during idle time. /// - private void OnDocumentEvent(object sender, EventArgs e) => + private void OnDocumentModelCountChanged(object sender, EventArgs e) + { + _finalModelCount = ((Document)sender).Models.Count; + _topLevelExceptionHandler.CatchUnhandled( () => _idleManager.SubscribeToIdle( @@ -71,23 +84,44 @@ private void OnDocumentEvent(object sender, EventArgs e) => async () => await NotifyDocumentChanged().ConfigureAwait(false) ) ); + } private async Task NotifyDocumentChanged() { - var store = _serviceProvider.GetRequiredService(); - var basicBinding = _serviceProvider.GetRequiredService(); - var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; - - // Check if we have a blank document state (no models) - if (NavisworksApp.ActiveDocument.Models.Count == 0) + if (_isProcessing) { - // Clear the store when there are no models - store.Models.Clear(); + return; } - if (commands != null) + _isProcessing = true; + + try + { + var store = _serviceProvider.GetRequiredService(); + var basicBinding = _serviceProvider.GetRequiredService(); + var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; + + switch (_finalModelCount) + { + // Check if we have a blank document state (no models) + case 0 when _priorModelCount > 0: + // Clear the store when there are no models + store.Models.Clear(); + break; + case > 0 when _priorModelCount == 0: + // Read the current state from the active document + store.ReadFromFile(); + break; + } + + if (commands != null) + { + await commands.NotifyDocumentChanged().ConfigureAwait(false); + } + } + finally { - await commands.NotifyDocumentChanged().ConfigureAwait(false); + _isProcessing = false; // Reset the flag } } @@ -101,7 +135,8 @@ private void UnsubscribeFromEvents() private void UnsubscribeFromModelEvents(Document document) { - document.Models.CollectionChanged -= OnDocumentEvent; + document.Models.CollectionChanged -= OnDocumentModelCountChanged; + document.Models.CollectionChanging -= OnDocumentModelCountChanging; var sendBinding = _serviceProvider.GetRequiredService(); sendBinding.CancelAllSendOperations(); From a85a6874b0a0ad6d9f27ecaaea41afb26f94cd2b Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 20:34:28 +0000 Subject: [PATCH 030/173] Get Selected Objects --- .../Bindings/NavisworksSelectionBinding.cs | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index 0a022aff9..cc1e621b2 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -1,3 +1,4 @@ +using Speckle.Connector.Navisworks.Extensions; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; @@ -29,6 +30,24 @@ private void UpdateSelection() public SelectionInfo GetSelection() { - return new SelectionInfo([], "No selection available"); + // Ensure there is an active document and a valid selection + var activeDocument = NavisworksApp.ActiveDocument; + if (activeDocument == null || activeDocument.CurrentSelection.SelectedItems.IsEmpty) + { + // Return an empty list if no valid selection exists + return new SelectionInfo([], "No selection available"); + } + + // Ensure only visible elements are processed by filtering using IsElementVisible + var selectedObjectsIds = new HashSet( + activeDocument + .CurrentSelection.SelectedItems.Where(ElementSelectionExtension.IsElementVisible) // Exclude hidden elements + .Select(ElementSelectionExtension.ResolveModelItemToIndexPath) // Resolve to index paths + ); + + return new SelectionInfo( + [.. selectedObjectsIds], + $"{selectedObjectsIds.Count} object{(selectedObjectsIds.Count != 1 ? "s" : "")}" + ); } } From bb88925d0819649a4ecf8af9148e66921dd90e95 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 20:36:21 +0000 Subject: [PATCH 031/173] ElementSelectionExtension is a collection of helpers to aid the resolution of intent --- .../Extensions/ElementSelectionExtension.cs | 52 +++++++++++++++++++ .../Filters/NavisworksSelectionFilter.cs | 2 +- ...ckle.Connectors.NavisworksShared.projitems | 6 +-- 3 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs new file mode 100644 index 000000000..ffcf8c677 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs @@ -0,0 +1,52 @@ +using Autodesk.Navisworks.Api; + +namespace Speckle.Connector.Navisworks.Extensions; + +/// +/// Provides extension methods for working with Navisworks ModelItem selections. +/// +public static class ElementSelectionExtension +{ + private const char DEFAULT_SEPARATOR = '.'; + + /// + /// Resolves a Navisworks to its unique index path representation. + /// + /// The model item to resolve. + /// + /// A string representing the model item's path. The path includes the model index and + /// a hierarchical path identifier, separated by the specified separator (e.g., "0.a.b"). + /// For root-level model items, only the model index is included. + /// + /// Thrown if is null. + internal static string ResolveModelItemToIndexPath(ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + var modelItemPathId = Application.ActiveDocument.Models.CreatePathId(modelItem); + + return modelItemPathId.PathId == "a" + ? $"{modelItemPathId.ModelIndex}" // Root-level model item + : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item + } + + /// + /// Determines whether a Navisworks and all its ancestors are visible. + /// + /// The model item to check for visibility. + /// True if the item and all ancestors are visible; otherwise, false. + /// Thrown if is null. + internal static bool IsElementVisible(ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + // Check visibility status for the item and its ancestors + return modelItem.AncestorsAndSelf.All(item => !item.IsHidden); + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs index ce9a80e0f..d063c81a4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs @@ -9,5 +9,5 @@ public NavisworksSelectionFilter() IsDefault = true; } - public override List RefreshObjectIds() => []; + public override List RefreshObjectIds() => SelectedObjectIds; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index e46e7978c..f00a3e87d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -1,4 +1,4 @@ - + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) @@ -8,14 +8,12 @@ Speckle.Connectors.NavisworksShared - - - + From 775a011e88c61ffbdbda512799bb1470db001c3e Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 23 Nov 2024 20:37:59 +0000 Subject: [PATCH 032/173] [Navisworks] Manage document and model state changes - Refactor NavisworksDocumentEvents to manage both document and model state change notifications - Update comments to reflect the new functionality - Rename SubscribeToEvents method to SubscribeToDocumentModelEvents for clarity - Add HandleDocumentModelCountChanging and HandleDocumentModelCountChanged methods to track model count changes - Update OnDocumentModelCountChanged method name to NotifyValidModelStateChange for clarity - Update UnsubscribeFromEvents method name to UnsubscribeFromDocumentModelEvents for clarity - Remove unused constants from NavisworksDocumentStore class --- .../HostApp/NavisworksDocumentEvents.cs | 78 +++++----- .../HostApp/NavisworksDocumentStore.cs | 140 +++++------------- 2 files changed, 79 insertions(+), 139 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 6c6e9f529..215c18f5f 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -8,24 +8,29 @@ namespace Speckle.Connector.Navisworks.HostApp; /// -/// Manages document state change notifications for the Navisworks connector. -/// Coalesces various document events into batched UI updates using the idle manager. +/// Manages document and model state change notifications for the Navisworks connector. +/// Coalesces various document events into batched updates to be processed during idle time. /// public sealed class NavisworksDocumentEvents : IDisposable { private readonly IServiceProvider _serviceProvider; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; private readonly IAppIdleManager _idleManager; - private bool _isSubscribed; private readonly object _subscriptionLock = new(); - private bool _disposed; + + private bool _isSubscribed; private bool _isProcessing; + private bool _disposed; + private int _priorModelCount; private int _finalModelCount; /// - /// Initializes event handling for document and model changes. + /// Initializes a new instance of the class and subscribes to document events. /// + /// The service provider for dependency injection. + /// Handles exceptions during event processing. + /// Manages idle processing. public NavisworksDocumentEvents( IServiceProvider serviceProvider, ITopLevelExceptionHandler topLevelExceptionHandler, @@ -35,15 +40,14 @@ IAppIdleManager idleManager _serviceProvider = serviceProvider; _topLevelExceptionHandler = topLevelExceptionHandler; _idleManager = idleManager; - SubscribeToEvents(); - } - // public void Initialize() => SubscribeToEvents(); + SubscribeToDocumentModelEvents(); + } /// - /// Subscribes to document-level events and model collection changes. + /// Subscribes to document-level events to monitor model state changes. /// - private void SubscribeToEvents() + private void SubscribeToDocumentModelEvents() { lock (_subscriptionLock) { @@ -52,28 +56,29 @@ private void SubscribeToEvents() return; } - if (NavisworksApp.ActiveDocument != null) + var activeDocument = NavisworksApp.ActiveDocument; + if (activeDocument != null) { - SubscribeToModelEvents(NavisworksApp.ActiveDocument); + activeDocument.Models.CollectionChanging += HandleDocumentModelCountChanging; + activeDocument.Models.CollectionChanged += HandleDocumentModelCountChanged; } _isSubscribed = true; } } - private void SubscribeToModelEvents(Document document) + /// + /// Tracks the current model count before changes occur. + /// + private void HandleDocumentModelCountChanging(object sender, EventArgs e) { - document.Models.CollectionChanging += OnDocumentModelCountChanging; - document.Models.CollectionChanged += OnDocumentModelCountChanged; - } - - private void OnDocumentModelCountChanging(object sender, EventArgs e) => _priorModelCount = ((Document)sender).Models.Count; + } /// - /// Queues a document change notification to be processed during idle time. + /// Schedules processing of model count changes during idle time. /// - private void OnDocumentModelCountChanged(object sender, EventArgs e) + private void HandleDocumentModelCountChanged(object sender, EventArgs e) { _finalModelCount = ((Document)sender).Models.Count; @@ -81,12 +86,15 @@ private void OnDocumentModelCountChanged(object sender, EventArgs e) () => _idleManager.SubscribeToIdle( nameof(NavisworksDocumentEvents), - async () => await NotifyDocumentChanged().ConfigureAwait(false) + async () => await NotifyValidModelStateChange().ConfigureAwait(false) ) ); } - private async Task NotifyDocumentChanged() + /// + /// Processes model state changes by updating the store and notifying commands. + /// + private async Task NotifyValidModelStateChange() { if (_isProcessing) { @@ -103,13 +111,12 @@ private async Task NotifyDocumentChanged() switch (_finalModelCount) { - // Check if we have a blank document state (no models) case 0 when _priorModelCount > 0: - // Clear the store when there are no models + // Clear the store when models are removed store.Models.Clear(); break; case > 0 when _priorModelCount == 0: - // Read the current state from the active document + // Load state when models are added store.ReadFromFile(); break; } @@ -121,27 +128,33 @@ private async Task NotifyDocumentChanged() } finally { - _isProcessing = false; // Reset the flag + _isProcessing = false; } } - private void UnsubscribeFromEvents() + private void UnsubscribeFromDocumentModelEvents() { - if (NavisworksApp.ActiveDocument != null) + var activeDocument = NavisworksApp.ActiveDocument; + if (activeDocument != null) { - UnsubscribeFromModelEvents(NavisworksApp.ActiveDocument); + UnsubscribeFromModelEvents(activeDocument); } + + _isSubscribed = false; } private void UnsubscribeFromModelEvents(Document document) { - document.Models.CollectionChanged -= OnDocumentModelCountChanged; - document.Models.CollectionChanging -= OnDocumentModelCountChanging; + document.Models.CollectionChanged -= HandleDocumentModelCountChanged; + document.Models.CollectionChanging -= HandleDocumentModelCountChanging; var sendBinding = _serviceProvider.GetRequiredService(); sendBinding.CancelAllSendOperations(); } + /// + /// Disposes of resources and unsubscribes from events. + /// public void Dispose() { Dispose(true); @@ -157,8 +170,7 @@ private void Dispose(bool disposing) if (disposing) { - UnsubscribeFromEvents(); - _isSubscribed = false; + UnsubscribeFromDocumentModelEvents(); } _disposed = true; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs index c34134ad3..442859a74 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -9,24 +9,16 @@ namespace Speckle.Connector.Navisworks.HostApp; /// -/// Manages persistence of Speckle model states in Navisworks' embedded SQLite database +/// Manages persistence of Speckle model states within Navisworks' embedded SQLite database. +/// Provides mechanisms for reliable read/write operations with retry handling and validation. /// public class NavisworksDocumentStore : DocumentModelStore { - // Constants for database table name, key name, and retry settings private const string TABLE_NAME = "speckle"; private const string KEY_NAME = "Speckle_DUI3"; - private const int MAX_RETRIES = 3; - private const int RETRY_DELAY_MS = 100; - // Exception handler for capturing unhandled exceptions private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; - /// - /// Initialises a new instance of the NavisworksDocumentStore class - /// - /// JSON serializer - /// Exception handler public NavisworksDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler) : base(jsonSerializer, true) { @@ -34,108 +26,64 @@ public NavisworksDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptio ReadFromFile(); } - /// - /// Attempts to safely persist current model state to Navisworks document database with retries - /// public override void WriteToFile() { - // Skip if document is invalid - if (!IsDocumentValid()) + if (!IsActiveDocumentValid()) { return; } - // Retry logic for database write operations - for (int attempt = 1; attempt <= MAX_RETRIES; attempt++) + try { - try - { - WriteStateToDatabase(); - return; - } - catch (DatabaseException ex) - { - // Handle final attempt failure - if (attempt == MAX_RETRIES) - { - _topLevelExceptionHandler.CatchUnhandled( - () => throw new InvalidOperationException("Failed to write Speckle state to database", ex) - ); - } - // Delay before retrying - Thread.Sleep(RETRY_DELAY_MS); - } + SaveStateToDatabase(); + } + catch (DatabaseException ex) + { + _topLevelExceptionHandler.CatchUnhandled( + () => throw new InvalidOperationException("Failed to write Speckle state to database", ex) + ); } } - /// - /// Loads model state from Navisworks document database with retries - /// public sealed override void ReadFromFile() { - // Return empty model list if document is invalid - if (!IsDocumentValid()) + if (!IsActiveDocumentValid()) { Models.Clear(); return; } - // Retry logic for database read operations - for (int attempt = 1; attempt <= MAX_RETRIES; attempt++) + try { - try - { - Models = ReadStateFromDatabase(); - return; - } - catch (DatabaseException ex) - { - // Handle final attempt failure - if (attempt == MAX_RETRIES) - { - Models = []; - _topLevelExceptionHandler.CatchUnhandled( - () => throw new InvalidOperationException("Failed to read Speckle state from database", ex) - ); - } - // Delay before retrying - Thread.Sleep(RETRY_DELAY_MS); - } + Models = RetrieveStateFromDatabase(); + } + catch (DatabaseException ex) + { + Models = []; // Clear models on failure to avoid stale data + _topLevelExceptionHandler.CatchUnhandled( + () => throw new InvalidOperationException("Failed to read Speckle state from database", ex) + ); } } - /// - /// Validates that the Navisworks document and database are accessible - /// - private static bool IsDocumentValid() + private static bool IsActiveDocumentValid() { try { var activeDoc = NavisworksApp.ActiveDocument; - if (activeDoc == null) - { - return false; - } - - // Check if we can access critical document properties - return activeDoc.Database != null && activeDoc.Models.Count > 0 && activeDoc.ActiveSheet != null; + return activeDoc?.Database != null && activeDoc.Models.Count > 0 && activeDoc.ActiveSheet != null; } catch (ArgumentException) { - // Handle case where document is disposed - return false; + return false; // Handle invalid document access } catch (ObjectDisposedException) { - // Handle case where document is disposed - return false; + return false; // Handle disposed document state } } - /// - /// Serializes and writes the current model state to the database - /// - private void WriteStateToDatabase() + private void SaveStateToDatabase() { var activeDoc = NavisworksApp.ActiveDocument; if (activeDoc?.Database == null) @@ -143,75 +91,56 @@ private void WriteStateToDatabase() return; } - // Serialize model state string serializedState = Serialize(); var database = activeDoc.Database; - // Ensure the database table exists using (var transaction = database.BeginTransaction(DatabaseChangedAction.Reset)) { - EnsureTableExists(transaction); + EnsureDatabaseTableExists(transaction); } - // Insert or update the state in the database using (var transaction = database.BeginTransaction(DatabaseChangedAction.Edited)) { try { - DeleteAndInsertState(transaction, serializedState); + ReplaceStateInDatabase(transaction, serializedState); transaction.Commit(); } catch { - transaction.Rollback(); + transaction.Rollback(); // Roll back transaction on failure throw; } } } - /// - /// Ensures the database table exists, creating it if necessary - /// - /// Active database transaction - private static void EnsureTableExists(NavisworksTransaction transaction) + private static void EnsureDatabaseTableExists(NavisworksTransaction transaction) { var command = transaction.Connection.CreateCommand(); command.CommandText = $"CREATE TABLE IF NOT EXISTS {TABLE_NAME}(key TEXT PRIMARY KEY, value TEXT)"; command.ExecuteNonQuery(); - transaction.Commit(); + transaction.Commit(); // Ensure table exists before proceeding } - /// - /// Deletes the existing state and inserts the new serialized state into the database - /// - /// Active database transaction - /// Serialized state to write - private static void DeleteAndInsertState(NavisworksTransaction transaction, string serializedState) + private static void ReplaceStateInDatabase(NavisworksTransaction transaction, string serializedState) { var command = transaction.Connection.CreateCommand(); - // Delete existing state command.CommandText = $"DELETE FROM {TABLE_NAME} WHERE key = @key"; command.Parameters.AddWithValue("@key", KEY_NAME); command.ExecuteNonQuery(); - // Insert new state command.CommandText = $"INSERT INTO {TABLE_NAME}(key, value) VALUES(@key, @value)"; command.Parameters.AddWithValue("@key", KEY_NAME); command.Parameters.AddWithValue("@value", serializedState); command.ExecuteNonQuery(); } - /// - /// Reads the model state from the database - /// - /// Collection of model cards representing the state - private ObservableCollection ReadStateFromDatabase() + private ObservableCollection RetrieveStateFromDatabase() { var database = NavisworksApp.ActiveDocument!.Database; using var table = new DataTable(); - // Execute query to fetch the serialized state using var dataAdapter = new NavisworksDataAdapter( $"SELECT value FROM {TABLE_NAME} WHERE key = @key", database.Value @@ -219,10 +148,9 @@ private ObservableCollection ReadStateFromDatabase() dataAdapter.SelectCommand.Parameters.AddWithValue("@key", KEY_NAME); dataAdapter.Fill(table); - // Handle missing or empty state if (table.Rows.Count <= 0) { - return []; + return []; // Return an empty collection if no state is found } string? stateString = table.Rows[0]["value"] as string; From d03a3f1110c3a757a210bf5140e5ade347f415a5 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 25 Nov 2024 16:24:16 +0000 Subject: [PATCH 033/173] formatting --- .../Bindings/AutocadBasicConnectorBinding.cs | 4 ++- .../Bindings/AutocadSendBaseBinding.cs | 4 ++- .../Bindings/AutocadSendBinding.cs | 6 ++-- .../Bindings/Civil3dSendBinding.cs | 6 ++-- .../Bindings/BasicConnectorBindingRevit.cs | 7 +++-- .../Bindings/RevitSendBinding.cs | 4 +-- .../Bindings/SelectionBinding.cs | 4 +-- .../HostApp/RevitDocumentStore.cs | 13 ++++---- .../Plugin/RevitIdleManager.cs | 1 - .../Plugin/RevitMainThreadContext.cs | 6 ++-- .../Bridge/BrowserBridge.cs | 31 +++++++++---------- .../Bridge/IBrowserBridge.cs | 1 - .../ContainerRegistration.cs | 6 ++-- .../Threading/MainThreadContext.cs | 11 ++++--- 14 files changed, 53 insertions(+), 51 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs index 65a8d5eb9..5e78829d0 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs @@ -30,7 +30,9 @@ public AutocadBasicConnectorBinding( IBrowserBridge parent, IAccountManager accountManager, ISpeckleApplication speckleApplication, - ILogger logger, IMainThreadContext mainThreadContext) + ILogger logger, + IMainThreadContext mainThreadContext + ) { _store = store; Parent = parent; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs index e621b0e94..38ce8c9aa 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs @@ -59,7 +59,9 @@ protected AutocadSendBaseBinding( ISendConversionCache sendConversionCache, IOperationProgressManager operationProgressManager, ILogger logger, - ISpeckleApplication speckleApplication, IMainThreadContext mainThreadContext) + ISpeckleApplication speckleApplication, + IMainThreadContext mainThreadContext + ) { _store = store; _idleManager = idleManager; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs index ad6c7c732..d1c16aa83 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs @@ -29,7 +29,8 @@ public AutocadSendBinding( IOperationProgressManager operationProgressManager, ILogger logger, IAutocadConversionSettingsFactory autocadConversionSettingsFactory, - ISpeckleApplication speckleApplication, IMainThreadContext mainThreadContext + ISpeckleApplication speckleApplication, + IMainThreadContext mainThreadContext ) : base( store, @@ -41,7 +42,8 @@ public AutocadSendBinding( sendConversionCache, operationProgressManager, logger, - speckleApplication, mainThreadContext + speckleApplication, + mainThreadContext ) { _autocadConversionSettingsFactory = autocadConversionSettingsFactory; diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs index 9aa62cea1..b11f54c6f 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs @@ -33,7 +33,8 @@ public Civil3dSendBinding( ILogger logger, ICivil3dConversionSettingsFactory civil3dConversionSettingsFactory, IAutocadConversionSettingsFactory autocadConversionSettingsFactory, - ISpeckleApplication speckleApplication, IMainThreadContext mainThreadContext + ISpeckleApplication speckleApplication, + IMainThreadContext mainThreadContext ) : base( store, @@ -45,7 +46,8 @@ public Civil3dSendBinding( sendConversionCache, operationProgressManager, logger, - speckleApplication, mainThreadContext + speckleApplication, + mainThreadContext ) { _civil3dConversionSettingsFactory = civil3dConversionSettingsFactory; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index 9e2c34802..ac794396f 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -170,7 +170,8 @@ public Task HighlightObjects(IReadOnlyList objectIds) .Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)) .Where(el => el is not null) .Cast() - .ToList()); + .ToList() + ); return Task.CompletedTask; } @@ -181,8 +182,8 @@ private void HighlightObjectsOnView(List objectIds) _revitContext.UIApplication?.ActiveUIDocument ?? throw new SpeckleException("Unable to retrieve active UI document"); - activeUIDoc.Selection.SetElementIds(objectIds); - activeUIDoc.ShowElements(objectIds); + activeUIDoc.Selection.SetElementIds(objectIds); + activeUIDoc.ShowElements(objectIds); ; } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs index 425f17d8a..d0974aa38 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs @@ -82,8 +82,8 @@ ISpeckleApplication speckleApplication // TODO expiry events // TODO filters need refresh events - revitContext.UIApplication.NotNull().Application.DocumentChanged += (_, e) => - topLevelExceptionHandler.CatchUnhandled(() => DocChangeHandler(e)); + revitContext.UIApplication.NotNull().Application.DocumentChanged += (_, e) => + topLevelExceptionHandler.CatchUnhandled(() => DocChangeHandler(e)); Store.DocumentChanged += (_, _) => topLevelExceptionHandler.FireAndForget(async () => await OnDocumentChanged().ConfigureAwait(false)); } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs index 37c230500..eabb03f7f 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/SelectionBinding.cs @@ -28,8 +28,8 @@ IBrowserBridge parent _selectionTimer.Start(); #else - RevitContext.UIApplication.NotNull().SelectionChanged += (_, _) => - revitIdleManager.SubscribeToIdle(nameof(SelectionBinding), OnSelectionChanged); + RevitContext.UIApplication.NotNull().SelectionChanged += (_, _) => + revitIdleManager.SubscribeToIdle(nameof(SelectionBinding), OnSelectionChanged); #endif } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs index a8aed3ee8..f965f7c3e 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs @@ -38,16 +38,15 @@ ITopLevelExceptionHandler topLevelExceptionHandler _documentModelStorageSchema = documentModelStorageSchema; _idStorageSchema = idStorageSchema; + UIApplication uiApplication = _revitContext.UIApplication.NotNull(); - UIApplication uiApplication = _revitContext.UIApplication.NotNull(); + uiApplication.ViewActivated += (s, e) => topLevelExceptionHandler.CatchUnhandled(() => OnViewActivated(s, e)); - uiApplication.ViewActivated += (s, e) => topLevelExceptionHandler.CatchUnhandled(() => OnViewActivated(s, e)); + uiApplication.Application.DocumentOpening += (_, _) => + topLevelExceptionHandler.CatchUnhandled(() => IsDocumentInit = false); - uiApplication.Application.DocumentOpening += (_, _) => - topLevelExceptionHandler.CatchUnhandled(() => IsDocumentInit = false); - - uiApplication.Application.DocumentOpened += (_, _) => - topLevelExceptionHandler.CatchUnhandled(() => IsDocumentInit = false); + uiApplication.Application.DocumentOpened += (_, _) => + topLevelExceptionHandler.CatchUnhandled(() => IsDocumentInit = false); Models.CollectionChanged += (_, _) => topLevelExceptionHandler.CatchUnhandled(WriteToFile); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs index 43091de2d..3154fb3bd 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitIdleManager.cs @@ -6,7 +6,6 @@ namespace Speckle.Connectors.Revit.Plugin; - public sealed class RevitIdleManager : AppIdleManager { private readonly UIApplication _uiApplication; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs index a2f8071e4..37aff2f86 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs @@ -5,9 +5,7 @@ namespace Speckle.Connectors.Revit.Plugin; public class RevitMainThreadContext : MainThreadContext { - public override void RunContext(Action action) => - RevitTask.RunAsync(action); + public override void RunContext(Action action) => RevitTask.RunAsync(action); - public override Task RunContext(Func> action) => - RevitTask.RunAsync(action); + public override Task RunContext(Func> action) => RevitTask.RunAsync(action); } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 8db6905d2..5d6b0f201 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -54,6 +54,7 @@ private set _binding = value; } } + public BrowserBridge( IMainThreadContext mainThreadContext, IJsonSerializer jsonSerializer, @@ -101,26 +102,22 @@ public string[] GetBindingsMethodNames() } public void RunMethod(string methodName, string requestId, string methodArgs) => - _mainThreadContext.RunOnMainThreadAsync( - async () => - { - var task = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => - { - var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); - string resultJson = _jsonSerializer.Serialize(result); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - }) - .ConfigureAwait(false); - if (task.Exception is not null) + _mainThreadContext.RunOnMainThreadAsync(async () => + { + var task = await TopLevelExceptionHandler + .CatchUnhandledAsync(async () => { - string resultJson = SerializeFormattedException(task.Exception); + var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); + string resultJson = _jsonSerializer.Serialize(result); await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - } + }) + .ConfigureAwait(false); + if (task.Exception is not null) + { + string resultJson = SerializeFormattedException(task.Exception); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); } - ); - - + }); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs index e88b6831e..f968bf3ef 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs @@ -29,7 +29,6 @@ public interface IBrowserBridge /// public void RunMethod(string methodName, string requestId, string args); - /// /// Bridge was not initialized with a binding public Task Send(string eventName, CancellationToken cancellationToken = default); diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index 08a150647..5d8e5bd03 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -10,9 +10,9 @@ namespace Speckle.Connectors.DUI; public static class ContainerRegistration -{ +{ public static void AddDUI(this IServiceCollection serviceCollection) - where TMainThreadContext : IMainThreadContext, new() + where TMainThreadContext : IMainThreadContext, new() { // send operation and dependencies serviceCollection.AddSingleton(new TMainThreadContext()); @@ -22,7 +22,7 @@ public static void AddDUI(this IServiceCollection serviceCol serviceCollection.AddMatchingInterfacesAsTransient(Assembly.GetAssembly(typeof(IdleCallManager))); serviceCollection.AddMatchingInterfacesAsTransient(Assembly.GetAssembly(typeof(IServerTransportFactory))); } - + public static void RegisterTopLevelExceptionHandler(this IServiceCollection serviceCollection) { serviceCollection.AddSingleton(sp => diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs index 9a2f49930..1ea910abc 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs @@ -5,21 +5,21 @@ namespace Speckle.Connectors.DUI.Threading; [GenerateAutoInterface] -public class MainThreadContext: IMainThreadContext +public class MainThreadContext : IMainThreadContext { private readonly SynchronizationContext _mainThreadContext; // Do this when you start your application private static int s_mainThreadId; - public MainThreadContext( ) + public MainThreadContext() { _mainThreadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); s_mainThreadId = Environment.CurrentManagedThreadId; } - + public static bool IsMainThread => Environment.CurrentManagedThreadId == s_mainThreadId; - + public virtual void RunContext(Action action) => action(); public void RunOnMainThread(Action action) @@ -45,8 +45,9 @@ public async Task RunOnMainThreadAsync(Func action) => return null; }) .ConfigureAwait(false); - + public virtual Task RunContext(Func> action) => action(); + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] public Task RunOnMainThreadAsync(Func> action) { From cc5e99f194dc175026d6099f5a965d143dca75a3 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 25 Nov 2024 16:29:40 +0000 Subject: [PATCH 034/173] use mainThreadContext --- .../Receive/AutocadHostObjectBuilder.cs | 89 +++++++------------ .../Bridge/SyncToUIThread.cs | 1 - .../Operations/ISyncToThread.cs | 6 -- 3 files changed, 32 insertions(+), 64 deletions(-) delete mode 100644 DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs delete mode 100644 Sdk/Speckle.Connectors.Common/Operations/ISyncToThread.cs diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index c9bdc4ee9..39186e091 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -5,6 +5,7 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; +using Speckle.Connectors.DUI.Threading; using Speckle.Converters.Common; using Speckle.Sdk; using Speckle.Sdk.Models; @@ -17,41 +18,18 @@ namespace Speckle.Connectors.Autocad.Operations.Receive; /// /// Expects to be a scoped dependency per receive operation. /// -public class AutocadHostObjectBuilder : IHostObjectBuilder +public class AutocadHostObjectBuilder( + IRootToHostConverter converter, + AutocadLayerBaker layerBaker, + AutocadGroupBaker groupBaker, + AutocadInstanceBaker instanceBaker, + AutocadMaterialBaker materialBaker, + AutocadColorBaker colorBaker, + AutocadContext autocadContext, + RootObjectUnpacker rootObjectUnpacker, + IMainThreadContext mainThreadContext +) : IHostObjectBuilder { - private readonly AutocadLayerBaker _layerBaker; - private readonly IRootToHostConverter _converter; - private readonly ISyncToThread _syncToThread; - private readonly AutocadGroupBaker _groupBaker; - private readonly AutocadMaterialBaker _materialBaker; - private readonly AutocadColorBaker _colorBaker; - private readonly AutocadInstanceBaker _instanceBaker; - private readonly AutocadContext _autocadContext; - private readonly RootObjectUnpacker _rootObjectUnpacker; - - public AutocadHostObjectBuilder( - IRootToHostConverter converter, - AutocadLayerBaker layerBaker, - AutocadGroupBaker groupBaker, - AutocadInstanceBaker instanceBaker, - AutocadMaterialBaker materialBaker, - AutocadColorBaker colorBaker, - ISyncToThread syncToThread, - AutocadContext autocadContext, - RootObjectUnpacker rootObjectUnpacker - ) - { - _converter = converter; - _layerBaker = layerBaker; - _groupBaker = groupBaker; - _instanceBaker = instanceBaker; - _materialBaker = materialBaker; - _colorBaker = colorBaker; - _syncToThread = syncToThread; - _autocadContext = autocadContext; - _rootObjectUnpacker = rootObjectUnpacker; - } - public async Task Build( Base rootObject, string projectName, @@ -62,8 +40,8 @@ CancellationToken _ { // NOTE: This is the only place we apply ISyncToThread across connectors. We need to sync up with main thread here // after GetObject and Deserialization. It is anti-pattern now. Happiness level 3/10 but works. - return await _syncToThread - .RunOnThread( + return await mainThreadContext + .RunOnMainThreadAsync( async () => await BuildImpl(rootObject, projectName, modelName, onOperationProgressed).ConfigureAwait(false) ) .ConfigureAwait(false); @@ -80,21 +58,21 @@ IProgress onOperationProgressed onOperationProgressed.Report(new("Converting", null)); // Layer filter for received commit with project and model name - _layerBaker.CreateLayerFilter(projectName, modelName); + layerBaker.CreateLayerFilter(projectName, modelName); // 0 - Clean then Rock n Roll! - string baseLayerPrefix = _autocadContext.RemoveInvalidChars($"SPK-{projectName}-{modelName}-"); + string baseLayerPrefix = autocadContext.RemoveInvalidChars($"SPK-{projectName}-{modelName}-"); PreReceiveDeepClean(baseLayerPrefix); // 1 - Unpack objects and proxies from root commit object - var unpackedRoot = _rootObjectUnpacker.Unpack(rootObject); + var unpackedRoot = rootObjectUnpacker.Unpack(rootObject); // 2 - Split atomic objects and instance components with their path - var (atomicObjects, instanceComponents) = _rootObjectUnpacker.SplitAtomicObjectsAndInstances( + var (atomicObjects, instanceComponents) = rootObjectUnpacker.SplitAtomicObjectsAndInstances( unpackedRoot.ObjectsToConvert ); - var atomicObjectsWithPath = _layerBaker.GetAtomicObjectsWithPath(atomicObjects); - var instanceComponentsWithPath = _layerBaker.GetInstanceComponentsWithPath(instanceComponents); + var atomicObjectsWithPath = layerBaker.GetAtomicObjectsWithPath(atomicObjects); + var instanceComponentsWithPath = layerBaker.GetInstanceComponentsWithPath(instanceComponents); // POC: these are not captured by traversal, so we need to re-add them here if (unpackedRoot.DefinitionProxies != null && unpackedRoot.DefinitionProxies.Count > 0) @@ -108,14 +86,14 @@ IProgress onOperationProgressed // 3 - Bake materials and colors, as they are used later down the line by layers and objects if (unpackedRoot.RenderMaterialProxies != null) { - await _materialBaker + await materialBaker .ParseAndBakeRenderMaterials(unpackedRoot.RenderMaterialProxies, baseLayerPrefix, onOperationProgressed) .ConfigureAwait(true); } if (unpackedRoot.ColorProxies != null) { - await _colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed).ConfigureAwait(true); + await colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed).ConfigureAwait(true); } // 5 - Convert atomic objects @@ -152,7 +130,7 @@ await _materialBaker } // 6 - Convert instances - var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = await _instanceBaker + var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = await instanceBaker .BakeInstances(instanceComponentsWithPath, applicationIdMap, baseLayerPrefix, onOperationProgressed) .ConfigureAwait(true); @@ -164,10 +142,7 @@ await _materialBaker // 7 - Create groups if (unpackedRoot.GroupProxies != null) { - List groupResults = _groupBaker.CreateGroups( - unpackedRoot.GroupProxies, - applicationIdMap - ); + List groupResults = groupBaker.CreateGroups(unpackedRoot.GroupProxies, applicationIdMap); results.AddRange(groupResults); } @@ -176,20 +151,20 @@ await _materialBaker private void PreReceiveDeepClean(string baseLayerPrefix) { - _layerBaker.DeleteAllLayersByPrefix(baseLayerPrefix); - _instanceBaker.PurgeInstances(baseLayerPrefix); - _materialBaker.PurgeMaterials(baseLayerPrefix); + layerBaker.DeleteAllLayersByPrefix(baseLayerPrefix); + instanceBaker.PurgeInstances(baseLayerPrefix); + materialBaker.PurgeMaterials(baseLayerPrefix); } private async Task> ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) { - string layerName = _layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); + string layerName = layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); var convertedEntities = new List(); using var tr = Application.DocumentManager.CurrentDocument.Database.TransactionManager.StartTransaction(); // 1: convert - var converted = _converter.Convert(obj); + var converted = converter.Convert(obj); // 2: handle result if (converted is Entity entity) @@ -211,12 +186,12 @@ private async Task> ConvertObject(Base obj, Collection[] layerPath, private Entity BakeObject(Entity entity, Base originalObject, string layerName, Base? parentObject = null) { var objId = originalObject.applicationId ?? originalObject.id; - if (_colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) + if (colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) { entity.Color = color; } - if (_materialBaker.TryGetMaterialId(originalObject, parentObject, out ObjectId matId)) + if (materialBaker.TryGetMaterialId(originalObject, parentObject, out ObjectId matId)) { entity.MaterialId = matId; } @@ -251,7 +226,7 @@ string baseLayerName var groupDictionary = (DBDictionary) tr.GetObject(Application.DocumentManager.CurrentDocument.Database.GroupDictionaryId, OpenMode.ForWrite); - var groupName = _autocadContext.RemoveInvalidChars( + var groupName = autocadContext.RemoveInvalidChars( $@"{parentObject.speckle_type.Split('.').Last()} - {parentObject.applicationId ?? parentObject.id} ({baseLayerName})" ); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs b/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs deleted file mode 100644 index 5f282702b..000000000 --- a/DUI3/Speckle.Connectors.DUI/Bridge/SyncToUIThread.cs +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/Sdk/Speckle.Connectors.Common/Operations/ISyncToThread.cs b/Sdk/Speckle.Connectors.Common/Operations/ISyncToThread.cs deleted file mode 100644 index 2440e642f..000000000 --- a/Sdk/Speckle.Connectors.Common/Operations/ISyncToThread.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace Speckle.Connectors.Common.Operations; - -public interface ISyncToThread -{ - public Task RunOnThread(Func> func); -} From 5a5de7565fc130f0426d800b7d6aaa90c9b368cc Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 25 Nov 2024 16:45:19 +0000 Subject: [PATCH 035/173] Use more MainThreadContext --- .../Receive/RevitHostObjectBuilder.cs | 137 +++++++----------- .../Operations/Send/RevitRootObjectBuilder.cs | 74 ++++------ .../Threading/MainThreadContext.cs | 11 +- 3 files changed, 94 insertions(+), 128 deletions(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 6734d1219..8dfcbf0c1 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -1,11 +1,11 @@ using Autodesk.Revit.DB; using Microsoft.Extensions.Logging; -using Revit.Async; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Instances; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Revit.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; @@ -23,51 +23,21 @@ namespace Speckle.Connectors.Revit.Operations.Receive; -internal sealed class RevitHostObjectBuilder : IHostObjectBuilder, IDisposable +internal sealed class RevitHostObjectBuilder( + IRootToHostConverter converter, + IConverterSettingsStore converterSettings, + ITransactionManager transactionManager, + ISdkActivityFactory activityFactory, + ILocalToGlobalUnpacker localToGlobalUnpacker, + RevitGroupBaker groupManager, + RevitMaterialBaker materialBaker, + RootObjectUnpacker rootObjectUnpacker, + ILogger logger, + RevitToHostCacheSingleton revitToHostCacheSingleton, + ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter, + IMainThreadContext mainThreadContext) + : IHostObjectBuilder, IDisposable { - private readonly IRootToHostConverter _converter; - private readonly IConverterSettingsStore _converterSettings; - private readonly RevitToHostCacheSingleton _revitToHostCacheSingleton; - private readonly ITransactionManager _transactionManager; - private readonly ILocalToGlobalUnpacker _localToGlobalUnpacker; - private readonly RevitGroupBaker _groupBaker; - private readonly RevitMaterialBaker _materialBaker; - private readonly ILogger _logger; - private readonly ITypedConverter< - (Base atomicObject, List matrix), - DirectShape - > _localToGlobalDirectShapeConverter; - - private readonly RootObjectUnpacker _rootObjectUnpacker; - private readonly ISdkActivityFactory _activityFactory; - - public RevitHostObjectBuilder( - IRootToHostConverter converter, - IConverterSettingsStore converterSettings, - ITransactionManager transactionManager, - ISdkActivityFactory activityFactory, - ILocalToGlobalUnpacker localToGlobalUnpacker, - RevitGroupBaker groupManager, - RevitMaterialBaker materialBaker, - RootObjectUnpacker rootObjectUnpacker, - ILogger logger, - RevitToHostCacheSingleton revitToHostCacheSingleton, - ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter - ) - { - _converter = converter; - _converterSettings = converterSettings; - _transactionManager = transactionManager; - _localToGlobalUnpacker = localToGlobalUnpacker; - _groupBaker = groupManager; - _materialBaker = materialBaker; - _rootObjectUnpacker = rootObjectUnpacker; - _logger = logger; - _revitToHostCacheSingleton = revitToHostCacheSingleton; - _localToGlobalDirectShapeConverter = localToGlobalDirectShapeConverter; - _activityFactory = activityFactory; - } - public Task Build( Base rootObject, string projectName, @@ -75,7 +45,12 @@ public Task Build( IProgress onOperationProgressed, CancellationToken cancellationToken ) => - RevitTask.RunAsync(() => BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken)); + mainThreadContext.RunOnMainThreadAsync(async () => + { + var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken); + await Task.Delay(100, cancellationToken).ConfigureAwait(false); + return ret; + }); private HostObjectBuilderResult BuildSync( Base rootObject, @@ -88,27 +63,27 @@ CancellationToken cancellationToken var baseGroupName = $"Project {projectName}: Model {modelName}"; // TODO: unify this across connectors! onOperationProgressed.Report(new("Converting", null)); - using var activity = _activityFactory.Start("Build"); + using var activity = activityFactory.Start("Build"); // 0 - Clean then Rock n Roll! 🎸 { - _activityFactory.Start("Pre receive clean"); - _transactionManager.StartTransaction(true, "Pre receive clean"); + activityFactory.Start("Pre receive clean"); + transactionManager.StartTransaction(true, "Pre receive clean"); try { PreReceiveDeepClean(baseGroupName); } catch (Exception ex) when (!ex.IsFatal()) { - _logger.LogError(ex, "Failed to clean up before receive in Revit"); + logger.LogError(ex, "Failed to clean up before receive in Revit"); } - _transactionManager.CommitTransaction(); + transactionManager.CommitTransaction(); } // 1 - Unpack objects and proxies from root commit object - var unpackedRoot = _rootObjectUnpacker.Unpack(rootObject); - var localToGlobalMaps = _localToGlobalUnpacker.Unpack( + var unpackedRoot = rootObjectUnpacker.Unpack(rootObject); + var localToGlobalMaps = localToGlobalUnpacker.Unpack( unpackedRoot.DefinitionProxies, unpackedRoot.ObjectsToConvert.ToList() ); @@ -116,14 +91,14 @@ CancellationToken cancellationToken // 2 - Bake materials if (unpackedRoot.RenderMaterialProxies != null) { - _transactionManager.StartTransaction(true, "Baking materials"); - _materialBaker.MapLayersRenderMaterials(unpackedRoot); - var map = _materialBaker.BakeMaterials(unpackedRoot.RenderMaterialProxies, baseGroupName); + transactionManager.StartTransaction(true, "Baking materials"); + materialBaker.MapLayersRenderMaterials(unpackedRoot); + var map = materialBaker.BakeMaterials(unpackedRoot.RenderMaterialProxies, baseGroupName); foreach (var kvp in map) { - _revitToHostCacheSingleton.MaterialsByObjectId.Add(kvp.Key, kvp.Value); + revitToHostCacheSingleton.MaterialsByObjectId.Add(kvp.Key, kvp.Value); } - _transactionManager.CommitTransaction(); + transactionManager.CommitTransaction(); } // 3 - Bake objects @@ -132,26 +107,26 @@ CancellationToken cancellationToken List<(DirectShape res, string applicationId)> postBakePaintTargets ) conversionResults; { - using var _ = _activityFactory.Start("Baking objects"); - _transactionManager.StartTransaction(true, "Baking objects"); + using var _ = activityFactory.Start("Baking objects"); + transactionManager.StartTransaction(true, "Baking objects"); conversionResults = BakeObjects(localToGlobalMaps, onOperationProgressed, cancellationToken); - _transactionManager.CommitTransaction(); + transactionManager.CommitTransaction(); } // 4 - Paint solids { - using var _ = _activityFactory.Start("Painting solids"); - _transactionManager.StartTransaction(true, "Painting solids"); + using var _ = activityFactory.Start("Painting solids"); + transactionManager.StartTransaction(true, "Painting solids"); PostBakePaint(conversionResults.postBakePaintTargets); - _transactionManager.CommitTransaction(); + transactionManager.CommitTransaction(); } // 5 - Create group { - using var _ = _activityFactory.Start("Grouping"); - _transactionManager.StartTransaction(true, "Grouping"); - _groupBaker.BakeGroupForTopLevel(baseGroupName); - _transactionManager.CommitTransaction(); + using var _ = activityFactory.Start("Grouping"); + transactionManager.StartTransaction(true, "Grouping"); + groupManager.BakeGroupForTopLevel(baseGroupName); + transactionManager.CommitTransaction(); } return conversionResults.builderResult; @@ -166,7 +141,7 @@ CancellationToken cancellationToken CancellationToken cancellationToken ) { - using var _ = _activityFactory.Start("BakeObjects"); + using var _ = activityFactory.Start("BakeObjects"); var conversionResults = new List(); var bakedObjectIds = new List(); int count = 0; @@ -178,7 +153,7 @@ CancellationToken cancellationToken cancellationToken.ThrowIfCancellationRequested(); try { - using var activity = _activityFactory.Start("BakeObject"); + using var activity = activityFactory.Start("BakeObject"); // POC hack of the ages: try to pre transform curves, points and meshes before baking // we need to bypass the local to global converter as there we don't have access to what we want. that service will/should stop existing. @@ -199,17 +174,17 @@ localToGlobalMap.AtomicObject is ITransformable transformable // and ICurve } // actual conversion happens here! - var result = _converter.Convert(localToGlobalMap.AtomicObject); + var result = converter.Convert(localToGlobalMap.AtomicObject); onOperationProgressed.Report(new("Converting", (double)++count / localToGlobalMaps.Count)); if (result is DirectShapeDefinitionWrapper) { // direct shape creation happens here - DirectShape directShapes = _localToGlobalDirectShapeConverter.Convert( + DirectShape directShapes = localToGlobalDirectShapeConverter.Convert( (localToGlobalMap.AtomicObject, localToGlobalMap.Matrix) ); bakedObjectIds.Add(directShapes.UniqueId); - _groupBaker.AddToTopLevelGroup(directShapes); + groupManager.AddToTopLevelGroup(directShapes); if (localToGlobalMap.AtomicObject is IRawEncodedObject and Base myBase) { @@ -228,7 +203,7 @@ localToGlobalMap.AtomicObject is ITransformable transformable // and ICurve catch (Exception ex) when (!ex.IsFatal()) { conversionResults.Add(new(Status.ERROR, localToGlobalMap.AtomicObject, null, null, ex)); - _logger.LogError(ex, $"Failed to convert object of type {localToGlobalMap.AtomicObject.speckle_type}"); + logger.LogError(ex, $"Failed to convert object of type {localToGlobalMap.AtomicObject.speckle_type}"); } } return (new(bakedObjectIds, conversionResults), postBakePaintTargets); @@ -244,7 +219,7 @@ private void PostBakePaint(List<(DirectShape res, string applicationId)> paintTa { var elGeometry = res.get_Geometry(new Options() { DetailLevel = ViewDetailLevel.Undefined }); var materialId = ElementId.InvalidElementId; - if (_revitToHostCacheSingleton.MaterialsByObjectId.TryGetValue(applicationId, out var mappedElementId)) + if (revitToHostCacheSingleton.MaterialsByObjectId.TryGetValue(applicationId, out var mappedElementId)) { materialId = mappedElementId; } @@ -261,7 +236,7 @@ private void PostBakePaint(List<(DirectShape res, string applicationId)> paintTa { foreach (Face face in s.Faces) { - _converterSettings.Current.Document.Paint(res.Id, face, materialId); + converterSettings.Current.Document.Paint(res.Id, face, materialId); } } } @@ -270,12 +245,12 @@ private void PostBakePaint(List<(DirectShape res, string applicationId)> paintTa private void PreReceiveDeepClean(string baseGroupName) { - DirectShapeLibrary.GetDirectShapeLibrary(_converterSettings.Current.Document).Reset(); // Note: this needs to be cleared, as it is being used in the converter + DirectShapeLibrary.GetDirectShapeLibrary(converterSettings.Current.Document).Reset(); // Note: this needs to be cleared, as it is being used in the converter - _revitToHostCacheSingleton.MaterialsByObjectId.Clear(); // Massive hack! - _groupBaker.PurgeGroups(baseGroupName); - _materialBaker.PurgeMaterials(baseGroupName); + revitToHostCacheSingleton.MaterialsByObjectId.Clear(); // Massive hack! + groupManager.PurgeGroups(baseGroupName); + materialBaker.PurgeMaterials(baseGroupName); } - public void Dispose() => _transactionManager?.Dispose(); + public void Dispose() => transactionManager?.Dispose(); } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 2b374c37d..8d9b784d6 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -1,62 +1,46 @@ using Autodesk.Revit.DB; using Microsoft.Extensions.Logging; -using Revit.Async; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Extensions; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Exceptions; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Revit.HostApp; using Speckle.Converters.Common; using Speckle.Converters.RevitShared.Helpers; using Speckle.Converters.RevitShared.Settings; -using Speckle.Converters.RevitShared.ToSpeckle; using Speckle.Sdk; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; namespace Speckle.Connectors.Revit.Operations.Send; -public class RevitRootObjectBuilder : IRootObjectBuilder +public class RevitRootObjectBuilder( + IRootToSpeckleConverter converter, + IConverterSettingsStore converterSettings, + ISendConversionCache sendConversionCache, + ElementUnpacker elementUnpacker, + SendCollectionManager sendCollectionManager, + ILogger logger, + RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton, + IMainThreadContext mainThreadContext) + : IRootObjectBuilder { // POC: SendSelection and RevitConversionContextStack should be interfaces, former needs interfaces - private readonly IRootToSpeckleConverter _converter; - private readonly IConverterSettingsStore _converterSettings; - private readonly ISendConversionCache _sendConversionCache; - private readonly ElementUnpacker _elementUnpacker; - private readonly SendCollectionManager _sendCollectionManager; - private readonly RevitToSpeckleCacheSingleton _revitToSpeckleCacheSingleton; - private readonly ILogger _logger; - private readonly ParameterDefinitionHandler _parameterDefinitionHandler; - - public RevitRootObjectBuilder( - IRootToSpeckleConverter converter, - IConverterSettingsStore converterSettings, - ISendConversionCache sendConversionCache, - ElementUnpacker elementUnpacker, - SendCollectionManager sendCollectionManager, - ILogger logger, - ParameterDefinitionHandler parameterDefinitionHandler, - RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton - ) - { - _converter = converter; - _converterSettings = converterSettings; - _sendConversionCache = sendConversionCache; - _elementUnpacker = elementUnpacker; - _sendCollectionManager = sendCollectionManager; - _revitToSpeckleCacheSingleton = revitToSpeckleCacheSingleton; - _logger = logger; - _parameterDefinitionHandler = parameterDefinitionHandler; - } - public async Task Build( + public Task Build( IReadOnlyList objects, SendInfo sendInfo, IProgress onOperationProgressed, CancellationToken ct = default - ) => await RevitTask.RunAsync(() => BuildSync(objects, sendInfo, onOperationProgressed, ct)).ConfigureAwait(false); + ) => mainThreadContext.RunOnMainThreadAsync(async () => + { + var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); + await Task.Delay(100, ct).ConfigureAwait(false); + return ret; + }); private RootObjectBuilderResult BuildSync( IReadOnlyList objects, @@ -65,7 +49,7 @@ private RootObjectBuilderResult BuildSync( CancellationToken ct = default ) { - var doc = _converterSettings.Current.Document; + var doc = converterSettings.Current.Document; if (doc.IsFamilyDocument) { @@ -74,15 +58,15 @@ private RootObjectBuilderResult BuildSync( // 0 - Init the root Collection rootObject = - new() { name = _converterSettings.Current.Document.PathName.Split('\\').Last().Split('.').First() }; - rootObject["units"] = _converterSettings.Current.SpeckleUnits; + new() { name = converterSettings.Current.Document.PathName.Split('\\').Last().Split('.').First() }; + rootObject["units"] = converterSettings.Current.SpeckleUnits; var revitElements = new List(); // Convert ids to actual revit elements foreach (var id in objects) { - var el = _converterSettings.Current.Document.GetElement(id); + var el = converterSettings.Current.Document.GetElement(id); if (el != null) { revitElements.Add(el); @@ -97,7 +81,7 @@ private RootObjectBuilderResult BuildSync( List results = new(revitElements.Count); // Unpack groups (& other complex data structures) - var atomicObjects = _elementUnpacker.UnpackSelectionForConversion(revitElements).ToList(); + var atomicObjects = elementUnpacker.UnpackSelectionForConversion(revitElements).ToList(); var countProgress = 0; var cacheHitCount = 0; @@ -110,25 +94,25 @@ private RootObjectBuilderResult BuildSync( try { Base converted; - if (_sendConversionCache.TryGetValue(sendInfo.ProjectId, applicationId, out ObjectReference? value)) + if (sendConversionCache.TryGetValue(sendInfo.ProjectId, applicationId, out ObjectReference? value)) { converted = value; cacheHitCount++; } else { - converted = _converter.Convert(revitElement); + converted = converter.Convert(revitElement); converted.applicationId = applicationId; } - var collection = _sendCollectionManager.GetAndCreateObjectHostCollection(revitElement, rootObject); + var collection = sendCollectionManager.GetAndCreateObjectHostCollection(revitElement, rootObject); collection.elements.Add(converted); results.Add(new(Status.SUCCESS, applicationId, sourceType, converted)); } catch (Exception ex) when (!ex.IsFatal()) { - _logger.LogSendConversionError(ex, sourceType); + logger.LogSendConversionError(ex, sourceType); results.Add(new(Status.ERROR, applicationId, sourceType, null, ex)); } @@ -140,8 +124,8 @@ private RootObjectBuilderResult BuildSync( throw new SpeckleException("Failed to convert all objects."); } - var idsAndSubElementIds = _elementUnpacker.GetElementsAndSubelementIdsFromAtomicObjects(atomicObjects); - var materialProxies = _revitToSpeckleCacheSingleton.GetRenderMaterialProxyListForObjects(idsAndSubElementIds); + var idsAndSubElementIds = elementUnpacker.GetElementsAndSubelementIdsFromAtomicObjects(atomicObjects); + var materialProxies = revitToSpeckleCacheSingleton.GetRenderMaterialProxyListForObjects(idsAndSubElementIds); rootObject[ProxyKeys.RENDER_MATERIAL] = materialProxies; // NOTE: these are currently not used anywhere, we'll skip them until someone calls for it back diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs index 1ea910abc..90d32006a 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs @@ -1,4 +1,4 @@ -using System.Diagnostics.CodeAnalysis; +using System.Diagnostics.CodeAnalysis; using Speckle.InterfaceGenerator; using Speckle.Sdk.Common; @@ -38,13 +38,20 @@ public void RunOnMainThread(Action action) ); } - public async Task RunOnMainThreadAsync(Func action) => + public async Task RunOnMainThreadAsync(Func action) + { + if (IsMainThread) + { + await action.Invoke().ConfigureAwait(false); + return; + } await RunOnMainThreadAsync(async () => { await action.Invoke().ConfigureAwait(false); return null; }) .ConfigureAwait(false); + } public virtual Task RunContext(Func> action) => action(); From e35107b03c2839b536bb5b9551edb15ddd1722ec Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 25 Nov 2024 22:23:19 +0000 Subject: [PATCH 036/173] Update Navisworks API references and fix typos - Update references to `Autodesk.Navisworks.Api` namespace to `NAV` namespace - Fix typo in file name: `GlobalUsings.cs` renamed to `GlobalUsing.cs` - Update references to `ModelItem` type from `Autodesk.Navisworks.Api` namespace to `NAV.ModelItem` - Update references to `Document` type from `Autodesk.Navisworks.Api` namespace to `NAV.Document` - Update references to database related types from `Autodesk.Navisworks.Api.Data` namespace to `NAV.Data` - Add new file: NavisworksRootObjectBuilder.cs - Remove unused using statements --- .../Extensions/ElementSelectionExtension.cs | 12 ++++---- .../{GlobalUsings.cs => GlobalUsing.cs} | 1 + .../HostApp/NavisworksDocumentEvents.cs | 13 ++++---- .../HostApp/NavisworksDocumentStore.cs | 15 +++++----- .../Operations/NavisworksRootObjectBuilder.cs | 6 ++++ .../Plugin/DockableConnectorPane.cs | 9 +++--- .../Plugin/NavisworksRibbon.xaml.cs | 30 ++++++++++--------- ...ckle.Connectors.NavisworksShared.projitems | 2 +- .../GlobalUsing.cs | 4 +++ .../NavisworksConversionSettings.cs | 6 ++++ .../ServiceRegistration.cs | 6 ++++ 11 files changed, 61 insertions(+), 43 deletions(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/{GlobalUsings.cs => GlobalUsing.cs} (60%) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs index ffcf8c677..b9698a848 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs @@ -1,5 +1,3 @@ -using Autodesk.Navisworks.Api; - namespace Speckle.Connector.Navisworks.Extensions; /// @@ -10,7 +8,7 @@ public static class ElementSelectionExtension private const char DEFAULT_SEPARATOR = '.'; /// - /// Resolves a Navisworks to its unique index path representation. + /// Resolves a Navisworks to its unique index path representation. /// /// The model item to resolve. /// @@ -19,14 +17,14 @@ public static class ElementSelectionExtension /// For root-level model items, only the model index is included. /// /// Thrown if is null. - internal static string ResolveModelItemToIndexPath(ModelItem modelItem) + internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) { if (modelItem == null) { throw new ArgumentNullException(nameof(modelItem)); } - var modelItemPathId = Application.ActiveDocument.Models.CreatePathId(modelItem); + var modelItemPathId = NavisworksApp.ActiveDocument.Models.CreatePathId(modelItem); return modelItemPathId.PathId == "a" ? $"{modelItemPathId.ModelIndex}" // Root-level model item @@ -34,12 +32,12 @@ internal static string ResolveModelItemToIndexPath(ModelItem modelItem) } /// - /// Determines whether a Navisworks and all its ancestors are visible. + /// Determines whether a Navisworks and all its ancestors are visible. /// /// The model item to check for visibility. /// True if the item and all ancestors are visible; otherwise, false. /// Thrown if is null. - internal static bool IsElementVisible(ModelItem modelItem) + internal static bool IsElementVisible(NAV.ModelItem modelItem) { if (modelItem == null) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsing.cs similarity index 60% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsing.cs index 0dcb0f7a2..8b9816d3e 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsings.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/GlobalUsing.cs @@ -1 +1,2 @@ +global using NAV = Autodesk.Navisworks.Api; global using NavisworksApp = Autodesk.Navisworks.Api.Application; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 215c18f5f..02687f981 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -1,5 +1,4 @@ -using Autodesk.Navisworks.Api; -using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection; using Speckle.Connector.Navisworks.Bindings; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; @@ -70,17 +69,15 @@ private void SubscribeToDocumentModelEvents() /// /// Tracks the current model count before changes occur. /// - private void HandleDocumentModelCountChanging(object sender, EventArgs e) - { - _priorModelCount = ((Document)sender).Models.Count; - } + private void HandleDocumentModelCountChanging(object sender, EventArgs e) => + _priorModelCount = ((NAV.Document)sender).Models.Count; /// /// Schedules processing of model count changes during idle time. /// private void HandleDocumentModelCountChanged(object sender, EventArgs e) { - _finalModelCount = ((Document)sender).Models.Count; + _finalModelCount = ((NAV.Document)sender).Models.Count; _topLevelExceptionHandler.CatchUnhandled( () => @@ -143,7 +140,7 @@ private void UnsubscribeFromDocumentModelEvents() _isSubscribed = false; } - private void UnsubscribeFromModelEvents(Document document) + private void UnsubscribeFromModelEvents(NAV.Document document) { document.Models.CollectionChanged -= HandleDocumentModelCountChanged; document.Models.CollectionChanging -= HandleDocumentModelCountChanging; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs index 442859a74..7cf3df7ba 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs @@ -1,6 +1,5 @@ using System.Collections.ObjectModel; using System.Data; -using Autodesk.Navisworks.Api.Data; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; @@ -37,7 +36,7 @@ public override void WriteToFile() { SaveStateToDatabase(); } - catch (DatabaseException ex) + catch (NAV.Data.DatabaseException ex) { _topLevelExceptionHandler.CatchUnhandled( () => throw new InvalidOperationException("Failed to write Speckle state to database", ex) @@ -57,7 +56,7 @@ public sealed override void ReadFromFile() { Models = RetrieveStateFromDatabase(); } - catch (DatabaseException ex) + catch (NAV.Data.DatabaseException ex) { Models = []; // Clear models on failure to avoid stale data _topLevelExceptionHandler.CatchUnhandled( @@ -94,12 +93,12 @@ private void SaveStateToDatabase() string serializedState = Serialize(); var database = activeDoc.Database; - using (var transaction = database.BeginTransaction(DatabaseChangedAction.Reset)) + using (var transaction = database.BeginTransaction(NAV.Data.DatabaseChangedAction.Reset)) { EnsureDatabaseTableExists(transaction); } - using (var transaction = database.BeginTransaction(DatabaseChangedAction.Edited)) + using (var transaction = database.BeginTransaction(NAV.Data.DatabaseChangedAction.Edited)) { try { @@ -114,7 +113,7 @@ private void SaveStateToDatabase() } } - private static void EnsureDatabaseTableExists(NavisworksTransaction transaction) + private static void EnsureDatabaseTableExists(NAV.Data.NavisworksTransaction transaction) { var command = transaction.Connection.CreateCommand(); command.CommandText = $"CREATE TABLE IF NOT EXISTS {TABLE_NAME}(key TEXT PRIMARY KEY, value TEXT)"; @@ -122,7 +121,7 @@ private static void EnsureDatabaseTableExists(NavisworksTransaction transaction) transaction.Commit(); // Ensure table exists before proceeding } - private static void ReplaceStateInDatabase(NavisworksTransaction transaction, string serializedState) + private static void ReplaceStateInDatabase(NAV.Data.NavisworksTransaction transaction, string serializedState) { var command = transaction.Connection.CreateCommand(); @@ -141,7 +140,7 @@ private ObservableCollection RetrieveStateFromDatabase() var database = NavisworksApp.ActiveDocument!.Database; using var table = new DataTable(); - using var dataAdapter = new NavisworksDataAdapter( + using var dataAdapter = new NAV.Data.NavisworksDataAdapter( $"SELECT value FROM {TABLE_NAME} WHERE key = @key", database.Value ); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs new file mode 100644 index 000000000..1618fc843 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs @@ -0,0 +1,6 @@ +namespace Speckle.Connector.Navisworks.Operations; + +public class NavisworksRootObjectBuilder +{ + +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs index 9d62007e4..1fec303c3 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -1,7 +1,6 @@ using System.Diagnostics.CodeAnalysis; using System.Windows.Forms; using System.Windows.Forms.Integration; -using Autodesk.Navisworks.Api.Plugins; using Microsoft.Extensions.DependencyInjection; using Speckle.Connector.Navisworks.DependencyInjection; using Speckle.Connectors.Common; @@ -12,12 +11,12 @@ namespace Speckle.Connector.Navisworks.NavisPlugin; [ - DockPanePlugin(450, 750, FixedSize = false, AutoScroll = true, MinimumHeight = 410, MinimumWidth = 250), - Plugin( + NAV.Plugins.DockPanePlugin(450, 750, FixedSize = false, AutoScroll = true, MinimumHeight = 410, MinimumWidth = 250), + NAV.Plugins.Plugin( LaunchSpeckleConnector.PLUGIN, "Speckle", DisplayName = "Speckle", - Options = PluginOptions.None, + Options = NAV.Plugins.PluginOptions.None, ToolTip = "Speckle Connector for Navisworks", ExtendedToolTip = "Speckle Connector for Navisworks" ) @@ -27,7 +26,7 @@ namespace Speckle.Connector.Navisworks.NavisPlugin; "CA1812:Avoid uninstantiated internal classes", Justification = "Instantiated by Navisworks" )] -internal sealed class Connector : DockPanePlugin +internal sealed class Connector : NAV.Plugins.DockPanePlugin { private ServiceProvider? Container { get; set; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs index f852bec43..ea30d4572 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs @@ -1,6 +1,5 @@ using System.Diagnostics.CodeAnalysis; using System.Windows.Forms; -using Autodesk.Navisworks.Api.Plugins; #if DEBUG using System.Text; #endif @@ -8,11 +7,11 @@ namespace Speckle.Connector.Navisworks.NavisPlugin; [ - Plugin("SpeckleNavisworksNextGen", "Speckle", DisplayName = "Speckle Next Gen"), - Strings("NavisworksRibbon.name"), - RibbonLayout("NavisworksRibbon.xaml"), - RibbonTab("Speckle", DisplayName = "Speckle Next Gen", LoadForCanExecute = true), - Command( + NAV.Plugins.Plugin("SpeckleNavisworksNextGen", "Speckle", DisplayName = "Speckle Next Gen"), + NAV.Plugins.Strings("NavisworksRibbon.name"), + NAV.Plugins.RibbonLayout("NavisworksRibbon.xaml"), + NAV.Plugins.RibbonTab("Speckle", DisplayName = "Speckle Next Gen", LoadForCanExecute = true), + NAV.Plugins.Command( LaunchSpeckleConnector.COMMAND, LoadForCanExecute = true, Icon = "Resources/s2logo16.png", @@ -27,17 +26,20 @@ namespace Speckle.Connector.Navisworks.NavisPlugin; "CA1812:Avoid uninstantiated internal classes", Justification = "Instantiated by Navisworks" )] -internal sealed class RibbonHandler : CommandHandlerPlugin +internal sealed class RibbonHandler : NAV.Plugins.CommandHandlerPlugin { - private static readonly Dictionary s_loadedPlugins = []; + // ReSharper disable once CollectionNeverQueried.Local + private static readonly Dictionary s_loadedPlugins = []; /// /// Determines the state of a command in Navisworks. /// /// The ID of the command to check. /// The state of the command. - public override CommandState CanExecuteCommand(string commandId) => - commandId == LaunchSpeckleConnector.COMMAND ? new CommandState(true) : new CommandState(false); + public override NAV.Plugins.CommandState CanExecuteCommand(string commandId) => + commandId == LaunchSpeckleConnector.COMMAND + ? new NAV.Plugins.CommandState(true) + : new NAV.Plugins.CommandState(false); /// /// Loads a plugin in Navisworks. @@ -90,11 +92,11 @@ private static bool ShouldSkipPluginLoad(string plugin, string command) => /// The plugin record. /// The loaded plugin instance. /// The command associated with the plugin. - private static void ActivatePluginPane(PluginRecord pluginRecord, object loadedPlugin, string command) + private static void ActivatePluginPane(NAV.Plugins.PluginRecord pluginRecord, object loadedPlugin, string command) { if (ShouldActivatePluginPane(pluginRecord)) { - var dockPanePlugin = (DockPanePlugin)loadedPlugin; + var dockPanePlugin = (NAV.Plugins.DockPanePlugin)loadedPlugin; dockPanePlugin.ActivatePane(); s_loadedPlugins[dockPanePlugin] = true; @@ -113,8 +115,8 @@ private static void ActivatePluginPane(PluginRecord pluginRecord, object loadedP /// /// The plugin record. /// True if the plugin's pane should be activated, False otherwise. - private static bool ShouldActivatePluginPane(PluginRecord pluginRecord) => - pluginRecord.IsLoaded && pluginRecord is DockPanePluginRecord && pluginRecord.IsEnabled; + private static bool ShouldActivatePluginPane(NAV.Plugins.PluginRecord pluginRecord) => + pluginRecord.IsLoaded && pluginRecord is NAV.Plugins.DockPanePluginRecord && pluginRecord.IsEnabled; public override int ExecuteCommand(string commandId, params string[] parameters) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index f00a3e87d..626dc43a4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -15,7 +15,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs new file mode 100644 index 000000000..2e310b343 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs @@ -0,0 +1,4 @@ +global using SOG = Speckle.Objects.Geometry; +global using TG = Tekla.Structures.Geometry3d; +global using TSM = Tekla.Structures.Model; +global using TSMUI = Tekla.Structures.Model.UI; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs new file mode 100644 index 000000000..6d1bbae19 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs @@ -0,0 +1,6 @@ +namespace Objects.Converter.Navisworks; + +public class NavisworksConversionSettings +{ + +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs new file mode 100644 index 000000000..940d6971d --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs @@ -0,0 +1,6 @@ +namespace Objects.Converter.Navisworks; + +public class ServiceRegistration +{ + +} From 4cf46feef2e8b2c5b397c27c282f0207835dca26 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 25 Nov 2024 23:47:17 +0000 Subject: [PATCH 037/173] Add Navisworks2024 converter dependencies and update project references - Added "Objects.Converter.Navisworks2024" to the packages.lock.json file with dependencies on "Speckle.Converters.Common" and "Speckle.Navisworks.API" - Updated the Speckle.Connectors.Navisworks2024.csproj file to include a reference to "Speckle.Converters.Navisworks2024.csproj" and "Speckle.Converters.Common.csproj" - Added "speckle.converters.common" to the packages.lock.json file with dependencies on "Microsoft.Extensions.Logging.Abstractions" and "Speckle.Objects" - Renamed files: - NavisworksConversionSettings.cs -> NavisworksConversionSettingsFactory.cs - GlobalUsings.cs -> GlobalUsing.cs - NavisworksConversionSettings.cs -> Settings/NavisworksConversionSettings.cs - NavisworksConversionSettings.cs -> Services/NavisworksToSpeckleUnitConverter.cs - NavisworksConversionSettings.cs -> ToSpeckle/NavisworksRootToSpeckleConverter.cs --- .../Speckle.Connectors.Navisworks2024.csproj | 3 ++- .../packages.lock.json | 14 ++++++++++++++ .../Speckle.Connectors.NavisworksShared.projitems | 1 + .../Speckle.Converters.Navisworks2024.csproj | 3 ++- .../GlobalUsing.cs | 8 ++++---- .../GlobalUsings.cs | 0 .../NavisworksConversionSettings.cs | 6 ------ .../NavisworksConversionSettingsFactory.cs | 6 ++++++ .../Services/NavisworksToSpeckleUnitConverter.cs | 6 ++++++ .../Settings/NavisworksConversionSettings.cs | 3 +++ .../Speckle.Converters.NavisworksShared.projitems | 12 ++++++++++-- .../Speckle.Converters.NavisworksShared.shproj | 2 +- .../ToSpeckle/NavisworksRootToSpeckleConverter.cs | 6 ++++++ 13 files changed, 55 insertions(+), 15 deletions(-) delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsings.cs delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index f8ef0a160..6d35edb67 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -60,9 +60,10 @@ + - + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index db6c3327d..303c2faae 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -268,6 +268,13 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "Objects.Converter.Navisworks2024": { + "type": "Project", + "dependencies": { + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2024.0.0, )" + } + }, "speckle.connectors.common": { "type": "Project", "dependencies": { @@ -298,6 +305,13 @@ "speckle.connectors.logging": { "type": "Project" }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.191, )" + } + }, "Microsoft.Extensions.DependencyInjection": { "type": "CentralTransitive", "requested": "[2.2.0, )", diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 626dc43a4..2757bd072 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -19,6 +19,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index 5c34eccfd..7bc6089e0 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -9,8 +9,8 @@ $(DefineConstants);NAVIS2024 net48 Debug;Release;Local + Speckle.Converter.Navisworks - @@ -20,5 +20,6 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs index 2e310b343..1cc200877 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs @@ -1,4 +1,4 @@ -global using SOG = Speckle.Objects.Geometry; -global using TG = Tekla.Structures.Geometry3d; -global using TSM = Tekla.Structures.Model; -global using TSMUI = Tekla.Structures.Model.UI; +global using NAV = Autodesk.Navisworks.Api; +global using NavisworksApp = Autodesk.Navisworks.Api.Application; +// global using SOG = Speckle.Objects.Geometry; +global using SSC = Speckle.Sdk.Common; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsings.cs deleted file mode 100644 index e69de29bb..000000000 diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs deleted file mode 100644 index 6d1bbae19..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/NavisworksConversionSettings.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace Objects.Converter.Navisworks; - -public class NavisworksConversionSettings -{ - -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs new file mode 100644 index 000000000..dc7963b74 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs @@ -0,0 +1,6 @@ +namespace Speckle.Converter.Navisworks.Services; + +public class NavisworksConversionSettingsFactory +{ + +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs new file mode 100644 index 000000000..eb861fdef --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs @@ -0,0 +1,6 @@ +namespace Speckle.Converter.Navisworks.Services; + +public class NavisworksToSpeckleUnitConverter +{ + +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs new file mode 100644 index 000000000..4e37cf297 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -0,0 +1,3 @@ +namespace Speckle.Converter.Navisworks; + +public record NavisworksConversionSettings(NAV.Document Document, string SpeckleUnits); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 2dcaba964..3450d0498 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -6,9 +6,17 @@ 6886282C-EFA5-4ED0-85BD-2883E23E092B - Speckle.Convereters.Navisworks + Speckle.Converters.NavisworksShared - + + + + + + + + + \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj index 68dc48c3b..4c710fd92 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj @@ -7,6 +7,6 @@ Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')"/> - + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs new file mode 100644 index 000000000..b7b3ddf5a --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs @@ -0,0 +1,6 @@ +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class NavisworksRootToSpeckleConverter +{ + +} From 24f933118835a0b5f673ee1e1649a7fbc5b2dc7e Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 25 Nov 2024 23:47:50 +0000 Subject: [PATCH 038/173] feat: Add NavisworksSendBinding changes - Added Microsoft.Extensions.DependencyInjection and Microsoft.Extensions.Logging namespaces - Added Speckle.Connectors.Common.Operations namespace - Added Speckle.Connectors.DUI.Exceptions, Speckle.Connectors.DUI.Logging, and Speckle.Connectors.DUI.Models.Card namespaces - Added Speckle.Sdk and Speckle.Sdk.Common namespaces - Updated constructor of NavisworksSendBinding class to include additional parameters - Updated Send method in NavisworksSendBinding class to include try-catch block for handling exceptions during send operation - Updated CancelSend method in NavisworksSendBinding class to call the cancellation manager's CancelOperation method with the modelCardId parameter - Added ResolveIndexPathToModelItem method in ElementSelectionExtension class to resolve the model item path from an index path string - Added ResolveGeometryLeafNodes method in ElementSelectionExtension class to resolve geometry leaf nodes from a model item - Updated Send method in NavisworksSendBinding class to use the resolved model items for sending data --- .../Bindings/NavisworksSendBinding.cs | 110 +++++++++++++++-- .../Extensions/ElementSelectionExtension.cs | 19 ++- .../Operations/NavisworksRootObjectBuilder.cs | 116 +++++++++++++++++- .../ServiceRegistration.cs | 30 ++++- .../NavisworksConversionSettingsFactory.cs | 17 ++- .../NavisworksToSpeckleUnitConverter.cs | 26 +++- .../Settings/NavisworksConversionSettings.cs | 2 +- .../NavisworksRootToSpeckleConverter.cs | 9 +- 8 files changed, 305 insertions(+), 24 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 5fff5e580..9b88e74f0 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -1,10 +1,19 @@ -using Speckle.Connector.Navisworks.Filters; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; using Speckle.Connectors.Common.Cancellation; +using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; +using Speckle.Connectors.DUI.Exceptions; +using Speckle.Connectors.DUI.Logging; using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; +using Speckle.Sdk; +using Speckle.Sdk.Common; +using Speckle.Sdk.Logging; +using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; namespace Speckle.Connector.Navisworks.Bindings; @@ -13,25 +22,112 @@ public class NavisworksSendBinding : ISendBinding public string Name => "sendBinding"; public IBrowserBridge Parent { get; } + public SendBindingUICommands Commands { get; } + private readonly DocumentModelStore _store; + private readonly IServiceProvider _serviceProvider; + private readonly List _sendFilters; private readonly CancellationManager _cancellationManager; + private readonly IOperationProgressManager _operationProgressManager; + private readonly ILogger _logger; + private readonly ISpeckleApplication _speckleApplication; + private readonly ISdkActivityFactory _activityFactory; - public NavisworksSendBinding(IBrowserBridge parent, DocumentModelStore store, CancellationManager cancellationManager) + public NavisworksSendBinding( + DocumentModelStore store, + IBrowserBridge parent, + IEnumerable sendFilters, + IServiceProvider serviceProvider, + CancellationManager cancellationManager, + IOperationProgressManager operationProgressManager, + ILogger logger, + ISpeckleApplication speckleApplication, + ISdkActivityFactory activityFactory + ) { - Parent = parent; _store = store; + _serviceProvider = serviceProvider; + _sendFilters = sendFilters.ToList(); _cancellationManager = cancellationManager; + _operationProgressManager = operationProgressManager; + _logger = logger; + _speckleApplication = speckleApplication; + Parent = parent; + Commands = new SendBindingUICommands(parent); + _activityFactory = activityFactory; + SubscribeToNavisworksEvents(); } - public List GetSendFilters() => [new NavisworksSelectionFilter()]; + private static void SubscribeToNavisworksEvents() { } + + public List GetSendFilters() => _sendFilters; public List GetSendSettings() => []; - public Task Send(string modelCardId) => Task.CompletedTask; + public async Task Send(string modelCardId) + { + using var activity = _activityFactory.Start(); + + try + { + if (_store.GetModelById(modelCardId) is not SenderModelCard modelCard) + { + throw new InvalidOperationException("No publish model card was found."); + } - public void CancelSend(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); + using var scope = _serviceProvider.CreateScope(); - public SendBindingUICommands Commands { get; } + CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); + + // Get the selected paths from the filter + var selectedPaths = modelCard.SendFilter.NotNull().RefreshObjectIds(); + if (selectedPaths.Count == 0) + { + throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!"); + } + + List navisworksModelItems = modelCard + .SendFilter.NotNull() + .RefreshObjectIds() + .Select(ResolveIndexPathToModelItem) + .SelectMany(ResolveGeometryLeafNodes) + .Where(IsElementVisible) + .ToList(); + + if (navisworksModelItems.Count == 0) + { + // Handle as CARD ERROR in this function + throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!"); + } + + var sendResult = await scope + .ServiceProvider.GetRequiredService>() + .Execute( + navisworksModelItems, + modelCard.GetSendInfo(_speckleApplication.Slug), + _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, token), + token + ) + .ConfigureAwait(false); + + await Commands + .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) + .ConfigureAwait(false); + } + catch (OperationCanceledException) + { + // SWALLOW -> UI handles it immediately, so we do not need to handle anything for now! + // Idea for later -> when cancel called, create promise from UI to solve it later with this catch block. + // So have 3 state on UI -> Cancellation clicked -> Cancelling -> Cancelled + } + catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation + { + _logger.LogModelCardHandledError(ex); + await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + } + } + + public void CancelSend(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); /// /// Cancels all outstanding send operations for the current document. diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs index b9698a848..5acc23a03 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs @@ -1,4 +1,4 @@ -namespace Speckle.Connector.Navisworks.Extensions; +namespace Speckle.Connector.Navisworks.Extensions; /// /// Provides extension methods for working with Navisworks ModelItem selections. @@ -31,6 +31,20 @@ internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item } + internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) + { + var indexPathParts = indexPath.Split(DEFAULT_SEPARATOR); + + var modelIndex = int.Parse(indexPathParts[0]); + var pathId = string.Join(DEFAULT_SEPARATOR.ToString(), indexPathParts.Skip(1)); + + // assign the first part of indexPathParts to modelIndex and parse it to int, the second part to pathId string + NAV.DocumentParts.ModelItemPathId modelItemPathId = new() { ModelIndex = modelIndex, PathId = pathId }; + + var modelItem = NavisworksApp.ActiveDocument.Models.ResolvePathId(modelItemPathId); + return modelItem; + } + /// /// Determines whether a Navisworks and all its ancestors are visible. /// @@ -47,4 +61,7 @@ internal static bool IsElementVisible(NAV.ModelItem modelItem) // Check visibility status for the item and its ancestors return modelItem.AncestorsAndSelf.All(item => !item.IsHidden); } + + internal static List ResolveGeometryLeafNodes(NAV.ModelItem modelItem) => + modelItem.DescendantsAndSelf.Where(x => x.HasGeometry).ToList(); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs index 1618fc843..02db58d32 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs @@ -1,6 +1,116 @@ -namespace Speckle.Connector.Navisworks.Operations; +using Microsoft.Extensions.Logging; +using Speckle.Connectors.Common.Builders; +using Speckle.Connectors.Common.Caching; +using Speckle.Connectors.Common.Conversion; +using Speckle.Connectors.Common.Operations; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Sdk; +using Speckle.Sdk.Logging; +using Speckle.Sdk.Models; +using Speckle.Sdk.Models.Collections; +using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; -public class NavisworksRootObjectBuilder +namespace Speckle.Connector.Navisworks.Operations.Send; + +public class NavisworksRootObjectBuilder : IRootObjectBuilder { - + private readonly IRootToSpeckleConverter _rootToSpeckleConverter; + private readonly ISendConversionCache _sendConversionCache; + private readonly IConverterSettingsStore _converterSettings; + private readonly ILogger _logger; + private readonly ISdkActivityFactory _activityFactory; + + public NavisworksRootObjectBuilder( + IRootToSpeckleConverter rootToSpeckleConverter, + ISendConversionCache sendConversionCache, + IConverterSettingsStore converterSettings, + ILogger logger, + ISdkActivityFactory activityFactory + ) + { + _rootToSpeckleConverter = rootToSpeckleConverter; + _sendConversionCache = sendConversionCache; + _converterSettings = converterSettings; + _logger = logger; + _activityFactory = activityFactory; + } + + public async Task Build( + IReadOnlyList navisworksModelItems, + SendInfo sendInfo, + IProgress onOperationProgressed, + CancellationToken cancellationToken = default + ) + { + using var activity = _activityFactory.Start("Build"); + + // Initialize root collection + Collection rootObjectCollection = + new() + { + name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", + ["units"] = _converterSettings.Current.SpeckleUnits + }; + + if (!navisworksModelItems.Any()) + { + throw new SpeckleException("No objects to convert"); + } + + List results = new(navisworksModelItems.Count); + int count = 0; + + using (var _ = _activityFactory.Start("Convert all")) + { + foreach (var navisworksItem in navisworksModelItems) + { + using var _2 = _activityFactory.Start("Convert"); + cancellationToken.ThrowIfCancellationRequested(); + + var result = ConvertNavisworksItem(navisworksItem, rootObjectCollection, sendInfo.ProjectId); + results.Add(result); + + ++count; + onOperationProgressed.Report(new("Converting", (double)count / navisworksModelItems.Count)); + } + } + + if (results.All(x => x.Status == Status.ERROR)) + { + throw new SpeckleException("Failed to convert all objects."); + } + + await Task.Yield(); + return new RootObjectBuilderResult(rootObjectCollection, results); + } + + private SendConversionResult ConvertNavisworksItem( + NAV.ModelItem navisworksItem, + Collection collectionHost, + string projectId + ) + { + string applicationId = ResolveModelItemToIndexPath(navisworksItem); + string sourceType = navisworksItem.GetType().Name; + + try + { + Base converted = + // Check cache first + _sendConversionCache.TryGetValue(projectId, applicationId, out ObjectReference? value) + ? value + // Convert geometry + : _rootToSpeckleConverter.Convert(navisworksItem); + + collectionHost.elements.Add(converted); + + return new SendConversionResult(Status.SUCCESS, applicationId, sourceType, converted); + } + catch (Exception ex) when (!ex.IsFatal()) + { + _logger.LogError(ex, "Failed to convert model item {id}", applicationId); + return new SendConversionResult(Status.ERROR, applicationId, "ModelItem", null, ex); + } + } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs index 940d6971d..1d9fd380c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs @@ -1,6 +1,30 @@ -namespace Objects.Converter.Navisworks; +using System.Reflection; +using Microsoft.Extensions.DependencyInjection; +using Speckle.Converter.Navisworks.Services; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.ToSpeckle; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Registration; +using Speckle.Sdk; -public class ServiceRegistration +namespace Speckle.Converters.Navisworks; + +public static class ServiceRegistration { - + public static IServiceCollection AddNavisworksConverters(this IServiceCollection serviceCollection) + { + var converterAssembly = Assembly.GetExecutingAssembly(); + //register types by default + serviceCollection.AddMatchingInterfacesAsTransient(converterAssembly); + // Register single root + serviceCollection.AddRootCommon(converterAssembly); + + // register all application converters and context stacks + serviceCollection.AddApplicationConverters(converterAssembly); + serviceCollection.AddScoped< + IConverterSettingsStore, + ConverterSettingsStore + >(); + return serviceCollection; + } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs index dc7963b74..dfcd2bb60 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs @@ -1,6 +1,17 @@ -namespace Speckle.Converter.Navisworks.Services; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.InterfaceGenerator; -public class NavisworksConversionSettingsFactory +namespace Speckle.Converters.RevitShared.Settings; + +[GenerateAutoInterface] +public class NavisworksConversionSettingsFactory( + IHostToSpeckleUnitConverter unitsConverter, + IConverterSettingsStore settingsStore +) : INavisworksConversionSettingsFactory { - + public NavisworksConversionSettings Current => settingsStore.Current; + + public NavisworksConversionSettings Create(NAV.Document document) => + new(document, unitsConverter.ConvertOrThrow(NavisworksApp.ActiveDocument.Units)); } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs index eb861fdef..8f75388a9 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksToSpeckleUnitConverter.cs @@ -1,6 +1,26 @@ -namespace Speckle.Converter.Navisworks.Services; +using Speckle.Converters.Common; +using Speckle.Sdk.Common.Exceptions; -public class NavisworksToSpeckleUnitConverter +namespace Speckle.Converter.Navisworks.Services; + +public sealed class NavisworksToSpeckleUnitConverter : IHostToSpeckleUnitConverter { - + private readonly Dictionary _unitMapping = []; + + public NavisworksToSpeckleUnitConverter() + { + _unitMapping[NAV.Units.Millimeters] = SSC.Units.Millimeters; + _unitMapping[NAV.Units.Centimeters] = SSC.Units.Centimeters; + _unitMapping[NAV.Units.Meters] = SSC.Units.Meters; + _unitMapping[NAV.Units.Inches] = SSC.Units.Inches; + _unitMapping[NAV.Units.Feet] = SSC.Units.Feet; + _unitMapping[NAV.Units.Miles] = SSC.Units.Miles; + _unitMapping[NAV.Units.Kilometers] = SSC.Units.Kilometers; + _unitMapping[NAV.Units.Yards] = SSC.Units.Yards; + } + + public string ConvertOrThrow(NAV.Units hostUnit) => + _unitMapping.TryGetValue(hostUnit, out string? value) + ? value + : throw new UnitNotSupportedException($"The Unit System \"{hostUnit}\" is unsupported."); } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index 4e37cf297..ffb56f30c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -1,3 +1,3 @@ -namespace Speckle.Converter.Navisworks; +namespace Speckle.Converter.Navisworks.Settings; public record NavisworksConversionSettings(NAV.Document Document, string SpeckleUnits); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs index b7b3ddf5a..e9f74c0c0 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs @@ -1,6 +1,9 @@ -namespace Speckle.Converter.Navisworks.ToSpeckle; +using Speckle.Converters.Common; +using Speckle.Sdk.Models; -public class NavisworksRootToSpeckleConverter +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class NavisworksRootToSpeckleConverter : IRootToSpeckleConverter { - + public Base Convert(object target) => throw new NotImplementedException(); } From c893d8c0322891f60cff58e8977455ae4403d9b0 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 00:29:57 +0000 Subject: [PATCH 039/173] Update namespace in Navisworks plugin files - Update namespace from "Speckle.Connector.Navisworks.NavisPlugin" to "Speckle.Connector.Navisworks.Plugin" in Commands.cs, DockableConnectorPane.cs, and NavisworksRibbon.xaml.cs files. --- .../Speckle.Connectors.NavisworksShared/Plugin/Commands.cs | 2 +- .../Plugin/DockableConnectorPane.cs | 2 +- .../Plugin/NavisworksRibbon.xaml.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs index 438fb6821..00bf0f0ea 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/Commands.cs @@ -1,4 +1,4 @@ -namespace Speckle.Connector.Navisworks.NavisPlugin; +namespace Speckle.Connector.Navisworks.Plugin; public abstract class LaunchSpeckleConnector { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs index 1fec303c3..344c5c6ea 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -8,7 +8,7 @@ using Speckle.Connectors.DUI.WebView; using Speckle.Sdk.Host; -namespace Speckle.Connector.Navisworks.NavisPlugin; +namespace Speckle.Connector.Navisworks.Plugin; [ NAV.Plugins.DockPanePlugin(450, 750, FixedSize = false, AutoScroll = true, MinimumHeight = 410, MinimumWidth = 250), diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs index ea30d4572..37fcbe83b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/NavisworksRibbon.xaml.cs @@ -4,7 +4,7 @@ using System.Text; #endif -namespace Speckle.Connector.Navisworks.NavisPlugin; +namespace Speckle.Connector.Navisworks.Plugin; [ NAV.Plugins.Plugin("SpeckleNavisworksNextGen", "Speckle", DisplayName = "Speckle Next Gen"), From e28a0e8385f25a7a516656a03b00a9899d9d4529 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 00:30:52 +0000 Subject: [PATCH 040/173] Add Navisworks sending operations and converters - Added sending operations for Navisworks models - Registered the root object builder and send operation for Navisworks model items - Added Navisworks converters to the service registration - Updated the NavisworksRootToSpeckleConverter to handle null targets and validate target type before conversion --- .../NavisworksServiceRegistration.cs | 9 ++++++ .../Plugin/DockableConnectorPane.cs | 2 ++ .../ServiceRegistration.cs | 2 +- ...ckle.Converters.NavisworksShared.projitems | 4 +-- .../NavisworksRootToSpeckleConverter.cs | 28 +++++++++++++++++-- 5 files changed, 38 insertions(+), 7 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs index d4465a7e1..3e1ee82fa 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs @@ -2,14 +2,18 @@ using Speckle.Connector.Navisworks.Bindings; using Speckle.Connector.Navisworks.Filters; using Speckle.Connector.Navisworks.HostApp; +using Speckle.Connector.Navisworks.Operations.Send; using Speckle.Connectors.Common; +using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Cancellation; +using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.WebView; +using Speckle.Sdk.Models.GraphTraversal; namespace Speckle.Connector.Navisworks.DependencyInjection; @@ -33,6 +37,11 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(sp => sp.GetRequiredService()); serviceCollection.AddSingleton(); + // Sending operations + serviceCollection.AddScoped, NavisworksRootObjectBuilder>(); + serviceCollection.AddScoped>(); + serviceCollection.AddSingleton(DefaultTraversal.CreateTraversalFunc()); + // Register Intercom/interop serviceCollection.RegisterTopLevelExceptionHandler(); serviceCollection.AddTransient(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs index 344c5c6ea..44f1e6b97 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -6,6 +6,7 @@ using Speckle.Connectors.Common; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.WebView; +using Speckle.Converter.Navisworks; using Speckle.Sdk.Host; namespace Speckle.Connector.Navisworks.Plugin; @@ -37,6 +38,7 @@ public override Control CreateControlPane() services.Initialize(HostApplications.Navisworks, HostAppVersion.v2024); services.AddNavisworks(); + services.AddNavisworksConverters(); Container = services.BuildServiceProvider(); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs index 1d9fd380c..b59b38f41 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs @@ -7,7 +7,7 @@ using Speckle.Converters.Common.Registration; using Speckle.Sdk; -namespace Speckle.Converters.Navisworks; +namespace Speckle.Converter.Navisworks; public static class ServiceRegistration { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 3450d0498..f30925a7f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -9,6 +9,7 @@ Speckle.Converters.NavisworksShared + @@ -16,7 +17,4 @@ - - - \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs index e9f74c0c0..129f164c3 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs @@ -1,9 +1,31 @@ -using Speckle.Converters.Common; +using System.ComponentModel.DataAnnotations; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Converters.Common.Registration; using Speckle.Sdk.Models; namespace Speckle.Converter.Navisworks.ToSpeckle; -public class NavisworksRootToSpeckleConverter : IRootToSpeckleConverter +public class NavisworksRootToSpeckleConverter(IConverterManager toSpeckle) + : IRootToSpeckleConverter { - public Base Convert(object target) => throw new NotImplementedException(); + public Base Convert(object target) + { + if (target == null) + { + throw new ValidationException("Target object is null"); + } + + if (target is not NAV.ModelItem) + { + throw new ValidationException($"Target object is not a ModelObject. It's a ${target.GetType()}"); + } + + Type type = target.GetType(); + var objectConverter = toSpeckle.ResolveConverter(type); + + Base result = objectConverter.Convert(target); + + return result; + } } From 474a3161479688fb4fcb9fb67286409cdf3badfa Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 00:35:12 +0000 Subject: [PATCH 041/173] Add folder to project items - Added a new folder to the project items in the Navisworks converter. - The folder includes the necessary files for extensions, global using, service registration, and conversion settings factory. --- .../Speckle.Converters.NavisworksShared.projitems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index f30925a7f..6f46ede57 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -9,7 +9,7 @@ Speckle.Converters.NavisworksShared - + From 934f829b1bef5e98a5697f6ce0371a3479ca43d6 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 01:03:34 +0000 Subject: [PATCH 042/173] Refactor NavisworksConversionSettings class to use properties instead of fields - Convert fields to properties in NavisworksConversionSettings class - Update constructor to initialize properties instead of fields --- .../Settings/NavisworksConversionSettings.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index ffb56f30c..92e22aec6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -1,3 +1,13 @@ namespace Speckle.Converter.Navisworks.Settings; -public record NavisworksConversionSettings(NAV.Document Document, string SpeckleUnits); +public record NavisworksConversionSettings +{ + public NavisworksConversionSettings(NAV.Document document, string speckleUnits) + { + this.Document = document; + this.SpeckleUnits = speckleUnits; + } + + public NAV.Document Document { get; } + public string SpeckleUnits { get; } +} From 378faeffb63f65e2c8298a8ca69ede08971b12a8 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 01:03:58 +0000 Subject: [PATCH 043/173] Add Navisworks conversion settings factory and store initialization - Add `INavisworksConversionSettingsFactory` to the constructor of `NavisworksSendBinding` - Initialize `_conversionSettingsFactory` in the constructor of `NavisworksSendBinding` - Initialize the conversion settings store with `_conversionSettingsFactory.Create(NavisworksApp.ActiveDocument)` --- .../Bindings/NavisworksSendBinding.cs | 11 ++++++++++- .../NavisworksServiceRegistration.cs | 10 ++++++++++ .../Operations/NavisworksRootObjectBuilder.cs | 10 ++++------ 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 9b88e74f0..065053cb4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -10,6 +10,9 @@ using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Converters.RevitShared.Settings; using Speckle.Sdk; using Speckle.Sdk.Common; using Speckle.Sdk.Logging; @@ -32,6 +35,7 @@ public class NavisworksSendBinding : ISendBinding private readonly ILogger _logger; private readonly ISpeckleApplication _speckleApplication; private readonly ISdkActivityFactory _activityFactory; + private readonly INavisworksConversionSettingsFactory _conversionSettingsFactory; public NavisworksSendBinding( DocumentModelStore store, @@ -42,7 +46,8 @@ public NavisworksSendBinding( IOperationProgressManager operationProgressManager, ILogger logger, ISpeckleApplication speckleApplication, - ISdkActivityFactory activityFactory + ISdkActivityFactory activityFactory, + INavisworksConversionSettingsFactory conversionSettingsFactory ) { _store = store; @@ -56,6 +61,7 @@ ISdkActivityFactory activityFactory Commands = new SendBindingUICommands(parent); _activityFactory = activityFactory; SubscribeToNavisworksEvents(); + _conversionSettingsFactory = conversionSettingsFactory; } private static void SubscribeToNavisworksEvents() { } @@ -76,6 +82,9 @@ public async Task Send(string modelCardId) } using var scope = _serviceProvider.CreateScope(); + scope + .ServiceProvider.GetRequiredService>() + .Initialize(_conversionSettingsFactory.Create(NavisworksApp.ActiveDocument)); CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs index 3e1ee82fa..50fbad3e7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs @@ -13,6 +13,9 @@ using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.WebView; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Converters.RevitShared.Settings; using Speckle.Sdk.Models.GraphTraversal; namespace Speckle.Connector.Navisworks.DependencyInjection; @@ -36,6 +39,13 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) // Register Navisworks specific binding serviceCollection.AddSingleton(sp => sp.GetRequiredService()); serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + + // Conversion settings + serviceCollection.AddScoped< + IConverterSettingsStore, + ConverterSettingsStore + >(); // Sending operations serviceCollection.AddScoped, NavisworksRootObjectBuilder>(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs index 02db58d32..4edd717d8 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs @@ -46,12 +46,10 @@ public async Task Build( using var activity = _activityFactory.Start("Build"); // Initialize root collection - Collection rootObjectCollection = - new() - { - name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", - ["units"] = _converterSettings.Current.SpeckleUnits - }; + var name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model"; + + var rootObjectCollection = new Collection { name = name }; + rootObjectCollection["units"] = _converterSettings.Current.SpeckleUnits; if (!navisworksModelItems.Any()) { From 146af34df2a2c50c6e01437aca1967a48e6233ef Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 01:04:13 +0000 Subject: [PATCH 044/173] Change element selection path separator from '.' to '/' in ElementSelectionExtension.cs This commit updates the code in ElementSelectionExtension.cs to change the default separator used for resolving a Navisworks model item's unique index path representation. The previous separator was '.', and it has been changed to '/'. This change ensures consistency and compatibility with other parts of the codebase that rely on this representation. --- .../Extensions/ElementSelectionExtension.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs index 5acc23a03..e0d45531d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs @@ -5,7 +5,7 @@ /// public static class ElementSelectionExtension { - private const char DEFAULT_SEPARATOR = '.'; + private const char DEFAULT_SEPARATOR = '/'; /// /// Resolves a Navisworks to its unique index path representation. @@ -26,9 +26,12 @@ internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) var modelItemPathId = NavisworksApp.ActiveDocument.Models.CreatePathId(modelItem); - return modelItemPathId.PathId == "a" - ? $"{modelItemPathId.ModelIndex}" // Root-level model item - : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item + var pathIndex = + modelItemPathId.PathId == "a" + ? $"{modelItemPathId.ModelIndex}" // Root-level model item + : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item + + return pathIndex; } internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) From 486ec478b79827e81118c06ea8e3e030f4e457fd Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 01:52:58 +0000 Subject: [PATCH 045/173] Add Navisworks model item to Speckle converter - Add `ModelItemToSpeckleConverter.cs` file for converting Navisworks model items to Speckle objects. - Update `GlobalUsing.cs` to include `SSM` namespace. - Update project file `Speckle.Converters.NavisworksShared.projitems` to include the new converter file. --- .../GlobalUsing.cs | 2 +- .../Speckle.Converters.NavisworksShared.projitems | 1 + .../ToSpeckle/ModelItemToSpeckleConverter.cs | 11 +++++++++++ 3 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs index 1cc200877..778ce58c3 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs @@ -1,4 +1,4 @@ global using NAV = Autodesk.Navisworks.Api; global using NavisworksApp = Autodesk.Navisworks.Api.Application; -// global using SOG = Speckle.Objects.Geometry; global using SSC = Speckle.Sdk.Common; +global using SSM = Speckle.Sdk.Models; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 6f46ede57..c11e6ece2 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -9,6 +9,7 @@ Speckle.Converters.NavisworksShared + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs new file mode 100644 index 000000000..dab505560 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs @@ -0,0 +1,11 @@ +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class ModelItemToSpeckleTopLevelConverter(IConverterSettingsStore settingsStore) + : IToSpeckleTopLevelConverter +{ + public SSM.Base Convert(object target) => new() { ["units"] = settingsStore.Current.SpeckleUnits }; +} From 0940fe773eef0d30e67259df493a6349a11a84f4 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 26 Nov 2024 08:31:31 +0000 Subject: [PATCH 046/173] some rearranging --- .../DependencyInjection/SharedRegistration.cs | 1 - .../HostApp/AutocadColorBaker.cs | 20 +-- .../HostApp/AutocadInstanceBaker.cs | 3 +- .../HostApp/AutocadMaterialBaker.cs | 3 +- .../Receive/AutocadHostObjectBuilder.cs | 42 +++--- .../Receive/RevitHostObjectBuilder.cs | 4 +- .../Operations/Send/RevitRootObjectBuilder.cs | 17 +-- .../HostApp/RhinoInstanceBaker.cs | 3 +- .../Receive/RhinoHostObjectBuilder.cs | 35 ++++- .../Registration/ServiceRegistration.cs | 3 - .../Bridge/BrowserBridge.cs | 31 +++-- .../Threading/MainThreadContext.cs | 126 ++++++++++++------ .../Instances/IInstanceBaker.cs | 2 +- 13 files changed, 178 insertions(+), 112 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index 6dea8e887..b677234aa 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -46,7 +46,6 @@ public static void AddAutocadBase(this IServiceCollection serviceCollection) serviceCollection.AddScoped(); serviceCollection.AddScoped(); - serviceCollection.AddScoped(); serviceCollection.AddScoped(); serviceCollection.AddScoped(); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadColorBaker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadColorBaker.cs index 531ded14e..c02e1d839 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadColorBaker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadColorBaker.cs @@ -1,6 +1,7 @@ using Autodesk.AutoCAD.Colors; using Microsoft.Extensions.Logging; using Speckle.Connectors.Common.Operations; +using Speckle.InterfaceGenerator; using Speckle.Sdk; using Speckle.Sdk.Models.Proxies; using AutocadColor = Autodesk.AutoCAD.Colors.Color; @@ -10,15 +11,9 @@ namespace Speckle.Connectors.Autocad.HostApp; /// /// Expects to be a scoped dependency for a given operation and helps with layer creation and cleanup. /// -public class AutocadColorBaker +[GenerateAutoInterface] +public class AutocadColorBaker(ILogger logger) : IAutocadColorBaker { - private readonly ILogger _logger; - - public AutocadColorBaker(ILogger logger) - { - _logger = logger; - } - /// /// For receive operations /// @@ -29,10 +24,7 @@ public AutocadColorBaker(ILogger logger) /// /// /// - public async Task ParseColors( - IReadOnlyCollection colorProxies, - IProgress onOperationProgressed - ) + public void ParseColors(IReadOnlyCollection colorProxies, IProgress onOperationProgressed) { var count = 0; foreach (ColorProxy colorProxy in colorProxies) @@ -62,10 +54,8 @@ IProgress onOperationProgressed } catch (Exception ex) when (!ex.IsFatal()) { - _logger.LogError(ex, "Failed parsing color proxy"); + logger.LogError(ex, "Failed parsing color proxy"); } - - await Task.Yield(); } } diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs index 35d44abe0..cf3439f7f 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs @@ -49,7 +49,7 @@ IConverterSettingsStore converterSettings } [SuppressMessage("Maintainability", "CA1506:Avoid excessive class coupling")] - public async Task BakeInstances( + public BakeResult BakeInstances( IReadOnlyCollection<(Collection[] collectionPath, IInstanceComponent obj)> instanceComponents, Dictionary> applicationIdMap, string baseLayerName, @@ -167,7 +167,6 @@ instanceOrDefinition is InstanceProxy instanceProxy } transaction.Commit(); - await Task.Yield(); return new(createdObjectIds, consumedObjectIds, conversionResults); } diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs index 4aea349fb..6afc37ebf 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs @@ -91,7 +91,7 @@ public void PurgeMaterials(string namePrefix) transaction.Commit(); } - public async Task ParseAndBakeRenderMaterials( + public void ParseAndBakeRenderMaterials( List materialProxies, string baseLayerPrefix, IProgress onOperationProgressed @@ -140,7 +140,6 @@ IProgress onOperationProgressed } transaction.Commit(); - await Task.Yield(); } private (ObjectId, ReceiveConversionResult) BakeMaterial( diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 39186e091..ebb6b891c 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -24,7 +24,7 @@ public class AutocadHostObjectBuilder( AutocadGroupBaker groupBaker, AutocadInstanceBaker instanceBaker, AutocadMaterialBaker materialBaker, - AutocadColorBaker colorBaker, + IAutocadColorBaker colorBaker, AutocadContext autocadContext, RootObjectUnpacker rootObjectUnpacker, IMainThreadContext mainThreadContext @@ -35,19 +35,20 @@ public async Task Build( string projectName, string modelName, IProgress onOperationProgressed, - CancellationToken _ + CancellationToken ct ) { - // NOTE: This is the only place we apply ISyncToThread across connectors. We need to sync up with main thread here - // after GetObject and Deserialization. It is anti-pattern now. Happiness level 3/10 but works. return await mainThreadContext - .RunOnMainThreadAsync( - async () => await BuildImpl(rootObject, projectName, modelName, onOperationProgressed).ConfigureAwait(false) - ) + .RunOnMainThreadAsync(async () => + { + var ret = BuildImpl(rootObject, projectName, modelName, onOperationProgressed); + await Task.Delay(100, ct).ConfigureAwait(false); + return ret; + }) .ConfigureAwait(false); } - private async Task BuildImpl( + private HostObjectBuilderResult BuildImpl( Base rootObject, string projectName, string modelName, @@ -86,14 +87,16 @@ IProgress onOperationProgressed // 3 - Bake materials and colors, as they are used later down the line by layers and objects if (unpackedRoot.RenderMaterialProxies != null) { - await materialBaker - .ParseAndBakeRenderMaterials(unpackedRoot.RenderMaterialProxies, baseLayerPrefix, onOperationProgressed) - .ConfigureAwait(true); + materialBaker.ParseAndBakeRenderMaterials( + unpackedRoot.RenderMaterialProxies, + baseLayerPrefix, + onOperationProgressed + ); } if (unpackedRoot.ColorProxies != null) { - await colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed).ConfigureAwait(true); + colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); } // 5 - Convert atomic objects @@ -107,8 +110,7 @@ await materialBaker onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); try { - List convertedObjects = await ConvertObject(atomicObject, layerPath, baseLayerPrefix) - .ConfigureAwait(true); + List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); applicationIdMap[objectId] = convertedObjects; @@ -130,9 +132,12 @@ await materialBaker } // 6 - Convert instances - var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = await instanceBaker - .BakeInstances(instanceComponentsWithPath, applicationIdMap, baseLayerPrefix, onOperationProgressed) - .ConfigureAwait(true); + var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = instanceBaker.BakeInstances( + instanceComponentsWithPath, + applicationIdMap, + baseLayerPrefix, + onOperationProgressed + ); bakedObjectIds.RemoveAll(id => consumedObjectIds.Contains(id)); bakedObjectIds.AddRange(createdInstanceIds); @@ -156,7 +161,7 @@ private void PreReceiveDeepClean(string baseLayerPrefix) materialBaker.PurgeMaterials(baseLayerPrefix); } - private async Task> ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) + private List ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) { string layerName = layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); var convertedEntities = new List(); @@ -179,7 +184,6 @@ private async Task> ConvertObject(Base obj, Collection[] layerPath, } tr.Commit(); - await Task.Delay(10).ConfigureAwait(true); return convertedEntities; } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 8dfcbf0c1..6de705816 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -35,8 +35,8 @@ internal sealed class RevitHostObjectBuilder( ILogger logger, RevitToHostCacheSingleton revitToHostCacheSingleton, ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter, - IMainThreadContext mainThreadContext) - : IHostObjectBuilder, IDisposable + IMainThreadContext mainThreadContext +) : IHostObjectBuilder, IDisposable { public Task Build( Base rootObject, diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 8d9b784d6..93a44c2b2 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -25,8 +25,8 @@ public class RevitRootObjectBuilder( SendCollectionManager sendCollectionManager, ILogger logger, RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton, - IMainThreadContext mainThreadContext) - : IRootObjectBuilder + IMainThreadContext mainThreadContext +) : IRootObjectBuilder { // POC: SendSelection and RevitConversionContextStack should be interfaces, former needs interfaces @@ -35,12 +35,13 @@ public Task Build( SendInfo sendInfo, IProgress onOperationProgressed, CancellationToken ct = default - ) => mainThreadContext.RunOnMainThreadAsync(async () => - { - var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); - await Task.Delay(100, ct).ConfigureAwait(false); - return ret; - }); + ) => + mainThreadContext.RunOnMainThreadAsync(async () => + { + var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); + await Task.Delay(100, ct).ConfigureAwait(false); + return ret; + }); private RootObjectBuilderResult BuildSync( IReadOnlyList objects, diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/HostApp/RhinoInstanceBaker.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/HostApp/RhinoInstanceBaker.cs index 8cc716e9f..cafc8ba5c 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/HostApp/RhinoInstanceBaker.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/HostApp/RhinoInstanceBaker.cs @@ -42,7 +42,7 @@ ILogger logger /// Instance definitions and instances that need creating. /// A dict mapping { original application id -> [resulting application ids post conversion] } /// - public async Task BakeInstances( + public BakeResult BakeInstances( IReadOnlyCollection<(Collection[] collectionPath, IInstanceComponent obj)> instanceComponents, Dictionary> applicationIdMap, string baseLayerName, @@ -153,7 +153,6 @@ instanceOrDefinition is InstanceProxy instanceProxy } } - await Task.Yield(); return new(createdObjectIds, consumedObjectIds, conversionResults); } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 939051fea..a5a18676b 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -5,6 +5,7 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; +using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Rhino.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Rhino; @@ -30,6 +31,7 @@ public class RhinoHostObjectBuilder : IHostObjectBuilder private readonly RhinoGroupBaker _groupBaker; private readonly RootObjectUnpacker _rootObjectUnpacker; private readonly ISdkActivityFactory _activityFactory; + private readonly IMainThreadContext _mainThreadContext; public RhinoHostObjectBuilder( IRootToHostConverter converter, @@ -40,7 +42,8 @@ public RhinoHostObjectBuilder( RhinoMaterialBaker materialBaker, RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, - ISdkActivityFactory activityFactory + ISdkActivityFactory activityFactory, + IMainThreadContext mainThreadContext ) { _converter = converter; @@ -52,6 +55,7 @@ ISdkActivityFactory activityFactory _layerBaker = layerBaker; _groupBaker = groupBaker; _activityFactory = activityFactory; + _mainThreadContext = mainThreadContext; } #pragma warning disable CA1506 @@ -63,6 +67,26 @@ public async Task Build( IProgress onOperationProgressed, CancellationToken cancellationToken ) + { + return await _mainThreadContext + .RunOnThreadAsync( + async () => + { + var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed); + await Task.Delay(100, cancellationToken).ConfigureAwait(false); + return ret; + }, + false + ) + .ConfigureAwait(false); + } + + public HostObjectBuilderResult BuildSync( + Base rootObject, + string projectName, + string modelName, + IProgress onOperationProgressed + ) { using var activity = _activityFactory.Start("Build"); // POC: This is where the top level base-layer name is set. Could be abstracted or injected in the context? @@ -202,9 +226,12 @@ CancellationToken cancellationToken // 6 - Convert instances using (var _ = _activityFactory.Start("Converting instances")) { - var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = await _instanceBaker - .BakeInstances(instanceComponentsWithPath, applicationIdMap, baseLayerName, onOperationProgressed) - .ConfigureAwait(false); + var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = _instanceBaker.BakeInstances( + instanceComponentsWithPath, + applicationIdMap, + baseLayerName, + onOperationProgressed + ); bakedObjectIds.RemoveAll(id => consumedObjectIds.Contains(id)); // remove all objects that have been "consumed" bakedObjectIds.AddRange(createdInstanceIds); // add instance ids diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs index 9966a078e..a406e0f3f 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs @@ -37,9 +37,6 @@ public static void AddRhino(this IServiceCollection serviceCollection) serviceCollection.AddDUI(); serviceCollection.AddDUIView(); - // POC: Overwriting the SyncToMainThread to SyncToCurrentThread for Rhino! - // builder.AddSingletonInstance(); - // Register other connector specific types serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 5d6b0f201..00e6c79f9 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -102,22 +102,25 @@ public string[] GetBindingsMethodNames() } public void RunMethod(string methodName, string requestId, string methodArgs) => - _mainThreadContext.RunOnMainThreadAsync(async () => - { - var task = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => + _mainThreadContext.RunOnThreadAsync( + async () => + { + var task = await TopLevelExceptionHandler + .CatchUnhandledAsync(async () => + { + var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); + string resultJson = _jsonSerializer.Serialize(result); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); + }) + .ConfigureAwait(false); + if (task.Exception is not null) { - var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); - string resultJson = _jsonSerializer.Serialize(result); + string resultJson = SerializeFormattedException(task.Exception); await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - }) - .ConfigureAwait(false); - if (task.Exception is not null) - { - string resultJson = SerializeFormattedException(task.Exception); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - } - }); + } + }, + true + ); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs index 90d32006a..8767209be 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs @@ -22,64 +22,112 @@ public MainThreadContext() public virtual void RunContext(Action action) => action(); - public void RunOnMainThread(Action action) + public void RunOnThread(Action action, bool useMain) { - if (IsMainThread) + if (useMain) { - RunContext(action); - return; + if (IsMainThread) + { + RunContext(action); + } + else + { + _mainThreadContext.Post( + _ => + { + RunContext(action); + }, + null + ); + } } - _mainThreadContext.Post( - _ => + else + { + if (IsMainThread) + { + Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default) + .GetAwaiter() + .GetResult(); + } + else { RunContext(action); - }, - null - ); + } + } } - public async Task RunOnMainThreadAsync(Func action) + public async Task RunOnThreadAsync(Func action, bool useMain) { - if (IsMainThread) + if (useMain) { - await action.Invoke().ConfigureAwait(false); - return; - } - await RunOnMainThreadAsync(async () => + if (IsMainThread) { await action.Invoke().ConfigureAwait(false); - return null; - }) - .ConfigureAwait(false); + } + else + { + await RunOnThreadAsync( + async () => + { + await RunContext(action.Invoke).ConfigureAwait(false); + return null; + }, + useMain + ) + .ConfigureAwait(false); + } + } + else + { + if (IsMainThread) + { + await Task + .Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default) + .ConfigureAwait(false); + } + else + { + await RunContext(action.Invoke).ConfigureAwait(false); + } + } } + public virtual Task RunContext(Func action) => action(); + public virtual Task RunContext(Func> action) => action(); [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - public Task RunOnMainThreadAsync(Func> action) + public Task RunOnThreadAsync(Func> action, bool useMain) { - if (IsMainThread) + if (useMain) { - return RunContext(action); - } - TaskCompletionSource tcs = new(); - - _mainThreadContext.Post( - async _ => + if (IsMainThread) { - try + return RunContext(action.Invoke); + } + TaskCompletionSource tcs = new(); + _mainThreadContext.Post( + async _ => { - T result = await RunContext(action).ConfigureAwait(false); - tcs.SetResult(result); - } - catch (Exception ex) - { - tcs.SetException(ex); - } - }, - null - ); - - return tcs.Task; + try + { + T result = await RunContext(action).ConfigureAwait(false); + tcs.SetResult(result); + } + catch (Exception ex) + { + tcs.SetException(ex); + } + }, + null + ); + return tcs.Task; + } + if (IsMainThread) + { + Task> f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); + return f.Unwrap(); + } + return RunContext(action.Invoke); } } diff --git a/Sdk/Speckle.Connectors.Common/Instances/IInstanceBaker.cs b/Sdk/Speckle.Connectors.Common/Instances/IInstanceBaker.cs index fe6fa4af7..2ed88c836 100644 --- a/Sdk/Speckle.Connectors.Common/Instances/IInstanceBaker.cs +++ b/Sdk/Speckle.Connectors.Common/Instances/IInstanceBaker.cs @@ -14,7 +14,7 @@ public interface IInstanceBaker /// /// /// - Task BakeInstances( + BakeResult BakeInstances( IReadOnlyCollection<(Collection[] collectionPath, IInstanceComponent obj)> instanceComponents, Dictionary applicationIdMap, string baseLayerName, From 4ee6d04d27a1a9971f29016fc33d843fce324ae3 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 26 Nov 2024 11:28:56 +0000 Subject: [PATCH 047/173] renaming --- .../ArcGISConnectorModule.cs | 2 +- .../Bindings/AutocadBasicConnectorBinding.cs | 10 ++--- .../Bindings/AutocadSelectionBinding.cs | 8 ++-- .../Bindings/AutocadSendBaseBinding.cs | 10 ++--- .../Bindings/AutocadSendBinding.cs | 4 +- .../DependencyInjection/SharedRegistration.cs | 2 +- .../Receive/AutocadHostObjectBuilder.cs | 6 +-- .../Bindings/Civil3dSendBinding.cs | 4 +- .../RevitConnectorModule.cs | 2 +- .../Receive/RevitHostObjectBuilder.cs | 4 +- .../Operations/Send/RevitRootObjectBuilder.cs | 4 +- ...ThreadContext.cs => RevitThreadContext.cs} | 2 +- .../Speckle.Connectors.RevitShared.projitems | 2 +- .../Receive/RhinoHostObjectBuilder.cs | 23 +++++------- .../Registration/ServiceRegistration.cs | 2 +- .../ServiceRegistration.cs | 2 +- .../Bridge/BrowserBridge.cs | 37 +++++++++---------- .../ContainerRegistration.cs | 6 +-- ...{MainThreadContext.cs => ThreadContext.cs} | 20 +++++----- .../Threading/ThreadContextExtensions.cs | 22 +++++++++++ 20 files changed, 94 insertions(+), 78 deletions(-) rename Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/{RevitMainThreadContext.cs => RevitThreadContext.cs} (83%) rename DUI3/Speckle.Connectors.DUI/Threading/{MainThreadContext.cs => ThreadContext.cs} (90%) create mode 100644 DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs index 2f92779de..1b01489e2 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs @@ -29,7 +29,7 @@ public static class ArcGISConnectorModule public static void AddArcGIS(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); serviceCollection.AddSingleton(); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs index 5e78829d0..09d6818c1 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs @@ -20,7 +20,7 @@ public class AutocadBasicConnectorBinding : IBasicConnectorBinding private readonly DocumentModelStore _store; private readonly ISpeckleApplication _speckleApplication; - private readonly IMainThreadContext _mainThreadContext; + private readonly IThreadContext _threadContext; private readonly ILogger _logger; public BasicConnectorBindingCommands Commands { get; } @@ -31,7 +31,7 @@ public AutocadBasicConnectorBinding( IAccountManager accountManager, ISpeckleApplication speckleApplication, ILogger logger, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) { _store = store; @@ -45,7 +45,7 @@ IMainThreadContext mainThreadContext await Commands.NotifyDocumentChanged().ConfigureAwait(false); }); _logger = logger; - _mainThreadContext = mainThreadContext; + _threadContext = threadContext; } public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; @@ -133,8 +133,8 @@ private async Task HighlightObjectsOnView(ObjectId[] objectIds, string? modelCar { var doc = Application.DocumentManager.MdiActiveDocument; - await _mainThreadContext - .RunOnMainThreadAsync(async () => + await _threadContext + .RunOnMainAsync(async () => { try { diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs index 54ab2811e..61fb5e739 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs @@ -11,18 +11,18 @@ public class AutocadSelectionBinding : ISelectionBinding { private const string SELECTION_EVENT = "setSelection"; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; - private readonly IMainThreadContext _mainThreadContext; + private readonly IThreadContext _threadContext; private readonly HashSet _visitedDocuments = new(); public string Name => "selectionBinding"; public IBrowserBridge Parent { get; } - public AutocadSelectionBinding(IBrowserBridge parent, IMainThreadContext mainThreadContext) + public AutocadSelectionBinding(IBrowserBridge parent, IThreadContext threadContext) { _topLevelExceptionHandler = parent.TopLevelExceptionHandler; Parent = parent; - _mainThreadContext = mainThreadContext; + _threadContext = threadContext; // POC: Use here Context for doc. In converters it's OK but we are still lacking to use context into bindings. // It is with the case of if binding created with already a document @@ -45,7 +45,7 @@ private void TryRegisterDocumentForSelection(Document? document) { document.ImpliedSelectionChanged += (_, _) => _topLevelExceptionHandler.FireAndForget( - async () => await _mainThreadContext.RunOnMainThreadAsync(OnSelectionChanged).ConfigureAwait(false) + async () => await _threadContext.RunOnMainAsync(OnSelectionChanged).ConfigureAwait(false) ); _visitedDocuments.Add(document); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs index 38ce8c9aa..01f612275 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs @@ -39,7 +39,7 @@ public abstract class AutocadSendBaseBinding : ISendBinding private readonly ILogger _logger; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; private readonly ISpeckleApplication _speckleApplication; - private readonly IMainThreadContext _mainThreadContext; + private readonly IThreadContext _threadContext; /// /// Used internally to aggregate the changed objects' id. Note we're using a concurrent dictionary here as the expiry check method is not thread safe, and this was causing problems. See: @@ -60,7 +60,7 @@ protected AutocadSendBaseBinding( IOperationProgressManager operationProgressManager, ILogger logger, ISpeckleApplication speckleApplication, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) { _store = store; @@ -72,7 +72,7 @@ IMainThreadContext mainThreadContext _operationProgressManager = operationProgressManager; _logger = logger; _speckleApplication = speckleApplication; - _mainThreadContext = mainThreadContext; + _threadContext = threadContext; _topLevelExceptionHandler = parent.TopLevelExceptionHandler; Parent = parent; Commands = new SendBindingUICommands(parent); @@ -148,8 +148,8 @@ private async Task RunExpirationChecks() public List GetSendSettings() => []; public async Task Send(string modelCardId) => - await _mainThreadContext - .RunOnMainThreadAsync(async () => await SendInternal(modelCardId).ConfigureAwait(false)) + await _threadContext + .RunOnWorkerAsync(async () => await SendInternal(modelCardId).ConfigureAwait(false)) .ConfigureAwait(false); protected abstract void InitializeSettings(IServiceProvider serviceProvider); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs index d1c16aa83..50b485c30 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs @@ -30,7 +30,7 @@ public AutocadSendBinding( ILogger logger, IAutocadConversionSettingsFactory autocadConversionSettingsFactory, ISpeckleApplication speckleApplication, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) : base( store, @@ -43,7 +43,7 @@ IMainThreadContext mainThreadContext operationProgressManager, logger, speckleApplication, - mainThreadContext + threadContext ) { _autocadConversionSettingsFactory = autocadConversionSettingsFactory; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index b677234aa..33d4ee099 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -26,7 +26,7 @@ public static class SharedRegistration public static void AddAutocadBase(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index ebb6b891c..b4e2b86eb 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -27,7 +27,7 @@ public class AutocadHostObjectBuilder( IAutocadColorBaker colorBaker, AutocadContext autocadContext, RootObjectUnpacker rootObjectUnpacker, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) : IHostObjectBuilder { public async Task Build( @@ -38,8 +38,8 @@ public async Task Build( CancellationToken ct ) { - return await mainThreadContext - .RunOnMainThreadAsync(async () => + return await threadContext + .RunOnWorkerAsync(async () => { var ret = BuildImpl(rootObject, projectName, modelName, onOperationProgressed); await Task.Delay(100, ct).ConfigureAwait(false); diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs index b11f54c6f..a29b42865 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs @@ -34,7 +34,7 @@ public Civil3dSendBinding( ICivil3dConversionSettingsFactory civil3dConversionSettingsFactory, IAutocadConversionSettingsFactory autocadConversionSettingsFactory, ISpeckleApplication speckleApplication, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) : base( store, @@ -47,7 +47,7 @@ IMainThreadContext mainThreadContext operationProgressManager, logger, speckleApplication, - mainThreadContext + threadContext ) { _civil3dConversionSettingsFactory = civil3dConversionSettingsFactory; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs index b0ea49153..9554daf1b 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs @@ -26,7 +26,7 @@ public static class ServiceRegistration public static void AddRevit(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); RegisterUiDependencies(serviceCollection); // register diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 6de705816..536b07ee0 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -35,7 +35,7 @@ internal sealed class RevitHostObjectBuilder( ILogger logger, RevitToHostCacheSingleton revitToHostCacheSingleton, ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) : IHostObjectBuilder, IDisposable { public Task Build( @@ -45,7 +45,7 @@ public Task Build( IProgress onOperationProgressed, CancellationToken cancellationToken ) => - mainThreadContext.RunOnMainThreadAsync(async () => + threadContext.RunOnWorkerAsync(async () => { var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken); await Task.Delay(100, cancellationToken).ConfigureAwait(false); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 93a44c2b2..691172ea4 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -25,7 +25,7 @@ public class RevitRootObjectBuilder( SendCollectionManager sendCollectionManager, ILogger logger, RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) : IRootObjectBuilder { // POC: SendSelection and RevitConversionContextStack should be interfaces, former needs interfaces @@ -36,7 +36,7 @@ public Task Build( IProgress onOperationProgressed, CancellationToken ct = default ) => - mainThreadContext.RunOnMainThreadAsync(async () => + threadContext.RunOnWorkerAsync(async () => { var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); await Task.Delay(100, ct).ConfigureAwait(false); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs similarity index 83% rename from Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs rename to Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 37aff2f86..28bb76264 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitMainThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -3,7 +3,7 @@ namespace Speckle.Connectors.Revit.Plugin; -public class RevitMainThreadContext : MainThreadContext +public class RevitThreadContext : ThreadContext { public override void RunContext(Action action) => RevitTask.RunAsync(action); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems b/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems index c482085b3..0811cbe7b 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems @@ -49,7 +49,7 @@ - + diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index a5a18676b..5403e9d4f 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -31,7 +31,7 @@ public class RhinoHostObjectBuilder : IHostObjectBuilder private readonly RhinoGroupBaker _groupBaker; private readonly RootObjectUnpacker _rootObjectUnpacker; private readonly ISdkActivityFactory _activityFactory; - private readonly IMainThreadContext _mainThreadContext; + private readonly IThreadContext _threadContext; public RhinoHostObjectBuilder( IRootToHostConverter converter, @@ -43,7 +43,7 @@ public RhinoHostObjectBuilder( RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, ISdkActivityFactory activityFactory, - IMainThreadContext mainThreadContext + IThreadContext threadContext ) { _converter = converter; @@ -55,7 +55,7 @@ IMainThreadContext mainThreadContext _layerBaker = layerBaker; _groupBaker = groupBaker; _activityFactory = activityFactory; - _mainThreadContext = mainThreadContext; + _threadContext = threadContext; } #pragma warning disable CA1506 @@ -68,16 +68,13 @@ public async Task Build( CancellationToken cancellationToken ) { - return await _mainThreadContext - .RunOnThreadAsync( - async () => - { - var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed); - await Task.Delay(100, cancellationToken).ConfigureAwait(false); - return ret; - }, - false - ) + return await _threadContext + .RunOnWorkerAsync(async () => + { + var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed); + await Task.Delay(100, cancellationToken).ConfigureAwait(false); + return ret; + }) .ConfigureAwait(false); } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs index a406e0f3f..397c20eff 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs @@ -34,7 +34,7 @@ public static void AddRhino(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(SpeckleConnectorsRhinoCommand.Instance); serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs index fa3d51dbb..200b9508b 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs @@ -33,7 +33,7 @@ public static IServiceCollection AddTekla(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); - services.AddDUI(); + services.AddDUI(); services.AddDUIView(); services.AddSingleton(); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 00e6c79f9..83cabb513 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -28,7 +28,7 @@ public sealed class BrowserBridge : IBrowserBridge private readonly ConcurrentDictionary _resultsStore = new(); public ITopLevelExceptionHandler TopLevelExceptionHandler { get; } - private readonly IMainThreadContext _mainThreadContext; + private readonly IThreadContext _threadContext; private readonly IBrowserScriptExecutor _browserScriptExecutor; private readonly IJsonSerializer _jsonSerializer; @@ -56,14 +56,14 @@ private set } public BrowserBridge( - IMainThreadContext mainThreadContext, + IThreadContext threadContext, IJsonSerializer jsonSerializer, ILogger logger, ILogger topLogger, IBrowserScriptExecutor browserScriptExecutor ) { - _mainThreadContext = mainThreadContext; + _threadContext = threadContext; _jsonSerializer = jsonSerializer; _logger = logger; TopLevelExceptionHandler = new TopLevelExceptionHandler(topLogger, this); @@ -102,25 +102,22 @@ public string[] GetBindingsMethodNames() } public void RunMethod(string methodName, string requestId, string methodArgs) => - _mainThreadContext.RunOnThreadAsync( - async () => - { - var task = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => - { - var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); - string resultJson = _jsonSerializer.Serialize(result); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - }) - .ConfigureAwait(false); - if (task.Exception is not null) + _threadContext.RunOnMainAsync(async () => + { + var task = await TopLevelExceptionHandler + .CatchUnhandledAsync(async () => { - string resultJson = SerializeFormattedException(task.Exception); + var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); + string resultJson = _jsonSerializer.Serialize(result); await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - } - }, - true - ); + }) + .ConfigureAwait(false); + if (task.Exception is not null) + { + string resultJson = SerializeFormattedException(task.Exception); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); + } + }); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index 5d8e5bd03..0d31ee8e1 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -11,11 +11,11 @@ namespace Speckle.Connectors.DUI; public static class ContainerRegistration { - public static void AddDUI(this IServiceCollection serviceCollection) - where TMainThreadContext : IMainThreadContext, new() + public static void AddDUI(this IServiceCollection serviceCollection) + where TThreadContext : IThreadContext, new() { // send operation and dependencies - serviceCollection.AddSingleton(new TMainThreadContext()); + serviceCollection.AddSingleton(new TThreadContext()); serviceCollection.AddSingleton(); serviceCollection.AddTransient(); // POC: Each binding should have it's own bridge instance diff --git a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs similarity index 90% rename from DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs rename to DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs index 8767209be..2c9bea3ce 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/MainThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs @@ -5,16 +5,16 @@ namespace Speckle.Connectors.DUI.Threading; [GenerateAutoInterface] -public class MainThreadContext : IMainThreadContext +public class ThreadContext : IThreadContext { - private readonly SynchronizationContext _mainThreadContext; + private readonly SynchronizationContext _threadContext; // Do this when you start your application private static int s_mainThreadId; - public MainThreadContext() + public ThreadContext() { - _mainThreadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); + _threadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); s_mainThreadId = Environment.CurrentManagedThreadId; } @@ -22,6 +22,10 @@ public MainThreadContext() public virtual void RunContext(Action action) => action(); + public virtual Task RunContext(Func action) => action(); + + public virtual Task RunContext(Func> action) => action(); + public void RunOnThread(Action action, bool useMain) { if (useMain) @@ -32,7 +36,7 @@ public void RunOnThread(Action action, bool useMain) } else { - _mainThreadContext.Post( + _threadContext.Post( _ => { RunContext(action); @@ -92,10 +96,6 @@ await Task } } - public virtual Task RunContext(Func action) => action(); - - public virtual Task RunContext(Func> action) => action(); - [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] public Task RunOnThreadAsync(Func> action, bool useMain) { @@ -106,7 +106,7 @@ public Task RunOnThreadAsync(Func> action, bool useMain) return RunContext(action.Invoke); } TaskCompletionSource tcs = new(); - _mainThreadContext.Post( + _threadContext.Post( async _ => { try diff --git a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs new file mode 100644 index 000000000..022d27f6f --- /dev/null +++ b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs @@ -0,0 +1,22 @@ +namespace Speckle.Connectors.DUI.Threading; + +public static class ThreadContextExtensions +{ + public static void RunOnMain(this IThreadContext threadContext, Action action) => + threadContext.RunOnThread(action, true); + + public static void RunOnWorker(this IThreadContext threadContext, Action action) => + threadContext.RunOnThread(action, false); + + public static Task RunOnMainAsync(this IThreadContext threadContext, Func action) => + threadContext.RunOnThreadAsync(action, true); + + public static Task RunOnWorkerAsync(this IThreadContext threadContext, Func action) => + threadContext.RunOnThreadAsync(action, false); + + public static Task RunOnMainAsync(this IThreadContext threadContext, Func> action) => + threadContext.RunOnThreadAsync(action, true); + + public static Task RunOnWorkerAsync(this IThreadContext threadContext, Func> action) => + threadContext.RunOnThreadAsync(action, false); +} From a7699f0bc50e8b5f91fbe3a3020597e0881895b2 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 26 Nov 2024 11:48:23 +0000 Subject: [PATCH 048/173] Revit needs new run async --- .../Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 28bb76264..2fde8c265 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -5,6 +5,8 @@ namespace Speckle.Connectors.Revit.Plugin; public class RevitThreadContext : ThreadContext { + public override Task RunContext(Func action) => RevitTask.RunAsync(action); + public override void RunContext(Action action) => RevitTask.RunAsync(action); public override Task RunContext(Func> action) => RevitTask.RunAsync(action); From 25cbbb42913f7ad8ea034986d0f7c67109e96435 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 26 Nov 2024 15:40:03 +0000 Subject: [PATCH 049/173] merge fixes --- .../DependencyInjection/ArcGISConnectorModule.cs | 3 +-- .../DependencyInjection/SharedRegistration.cs | 3 +-- .../Bindings/BasicConnectorBindingRevit.cs | 2 -- .../DependencyInjection/RevitConnectorModule.cs | 3 +-- .../HostApp/RevitDocumentStore.cs | 12 ------------ .../Registration/ServiceRegistration.cs | 6 +----- .../ServiceRegistration.cs | 3 +-- DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs | 12 +++++------- 8 files changed, 10 insertions(+), 34 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs index 0aaa95865..6bafdfc96 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs @@ -28,8 +28,7 @@ public static class ArcGISConnectorModule public static void AddArcGIS(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register bindings serviceCollection.AddSingleton(); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index 5d9d2b4ad..98a318893 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -25,8 +25,7 @@ public static class SharedRegistration public static void AddAutocadBase(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index 51cd67cb1..14d6ee7dd 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -1,6 +1,4 @@ using Autodesk.Revit.DB; -using Microsoft.Extensions.Logging; -using Revit.Async; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs index 606056d41..600cc674e 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs @@ -25,8 +25,7 @@ public static class ServiceRegistration public static void AddRevit(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); RegisterUiDependencies(serviceCollection); // Storage Schema diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs index 0d5fef95b..5b8629853 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/RevitDocumentStore.cs @@ -87,7 +87,6 @@ protected override void HostAppSaveState(string modelCardState) { return; } -<<<<<<< HEAD using Transaction t = new(doc, "Speckle Write State"); t.Start(); @@ -96,17 +95,6 @@ protected override void HostAppSaveState(string modelCardState) using Entity stateEntity = new(_documentModelStorageSchema.GetSchema()); string serializedModels = Serialize(); stateEntity.Set("contents", serializedModels); -======= - RevitTask.RunAsync(() => - { - var doc = (_revitContext.UIApplication?.ActiveUIDocument?.Document).NotNull(); - using Transaction t = new(doc, "Speckle Write State"); - t.Start(); - using DataStorage ds = GetSettingsDataStorage(doc) ?? DataStorage.Create(doc); - - using Entity stateEntity = new(_documentModelStorageSchema.GetSchema()); - stateEntity.Set("contents", modelCardState); ->>>>>>> dev using Entity idEntity = new(_idStorageSchema.GetSchema()); idEntity.Set("Id", s_revitDocumentStoreId); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs index 5d0040802..9a4060dcd 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs @@ -33,11 +33,7 @@ public static void AddRhino(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(SpeckleConnectorsRhinoCommand.Instance); serviceCollection.AddConnectorUtils(); -<<<<<<< HEAD - serviceCollection.AddDUI(); -======= - serviceCollection.AddDUI(); ->>>>>>> dev + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs index 736432744..a4a75c081 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs @@ -32,8 +32,7 @@ public static IServiceCollection AddTekla(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); - services.AddDUI(); - services.AddDUI(); + services.AddDUI(); services.AddDUIView(); services.AddSingleton(); diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index e08668a06..28aed8ef8 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -3,8 +3,8 @@ using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.Models; +using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Transports; @@ -12,16 +12,14 @@ namespace Speckle.Connectors.DUI; public static class ContainerRegistration { - public static void AddDUI(this IServiceCollection serviceCollection) - where TThreadContext : IThreadContext, new() -{ - public static void AddDUI(this IServiceCollection serviceCollection) + public static void AddDUI(this IServiceCollection serviceCollection) where TDocumentStore : DocumentModelStore + where TThreadContext : IThreadContext, new() { - serviceCollection.AddSingleton(); - // send operation and dependencies serviceCollection.AddSingleton(new TThreadContext()); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddTransient(); // POC: Each binding should have it's own bridge instance From e38102f805b52d07399995ea51bb6d26e99d8269 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 26 Nov 2024 16:12:50 +0000 Subject: [PATCH 050/173] gather on worker, convert on main --- .../DependencyInjection/SharedRegistration.cs | 1 - .../HostApp/AutocadInstanceBaker.cs | 8 +- .../HostApp/AutocadLayerBaker.cs | 8 +- .../HostApp/AutocadMaterialBaker.cs | 4 +- .../Receive/AutocadHostObjectBuilder.cs | 143 ++++++++++++------ .../Plugin/RevitThreadContext.cs | 8 +- .../Threading/ThreadContext.cs | 44 +++++- .../Threading/ThreadContextExtensions.cs | 6 + 8 files changed, 161 insertions(+), 61 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index 98a318893..d84de38a3 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -46,7 +46,6 @@ public static void AddAutocadBase(this IServiceCollection serviceCollection) serviceCollection.AddScoped(); serviceCollection.AddScoped(); - serviceCollection.AddScoped(); serviceCollection.AddSingleton(); diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs index cf3439f7f..739cc7612 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadInstanceBaker.cs @@ -25,16 +25,16 @@ namespace Speckle.Connectors.Autocad.HostApp; public class AutocadInstanceBaker : IInstanceBaker> { private readonly AutocadLayerBaker _layerBaker; - private readonly AutocadColorBaker _colorBaker; - private readonly AutocadMaterialBaker _materialBaker; + private readonly IAutocadColorBaker _colorBaker; + private readonly IAutocadMaterialBaker _materialBaker; private readonly AutocadContext _autocadContext; private readonly ILogger _logger; private readonly IConverterSettingsStore _converterSettings; public AutocadInstanceBaker( AutocadLayerBaker layerBaker, - AutocadColorBaker colorBaker, - AutocadMaterialBaker materialBaker, + IAutocadColorBaker colorBaker, + IAutocadMaterialBaker materialBaker, AutocadContext autocadContext, ILogger logger, IConverterSettingsStore converterSettings diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerBaker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerBaker.cs index a7beefdb5..fb86ed438 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerBaker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerBaker.cs @@ -11,15 +11,15 @@ public class AutocadLayerBaker : TraversalContextUnpacker { private readonly string _layerFilterName = "Speckle"; private readonly AutocadContext _autocadContext; - private readonly AutocadMaterialBaker _materialBaker; - private readonly AutocadColorBaker _colorBaker; + private readonly IAutocadMaterialBaker _materialBaker; + private readonly IAutocadColorBaker _colorBaker; private Document Doc => Application.DocumentManager.MdiActiveDocument; private readonly HashSet _uniqueLayerNames = new(); public AutocadLayerBaker( AutocadContext autocadContext, - AutocadMaterialBaker materialBaker, - AutocadColorBaker colorBaker + IAutocadMaterialBaker materialBaker, + IAutocadColorBaker colorBaker ) { _autocadContext = autocadContext; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs index 6afc37ebf..93a542784 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadMaterialBaker.cs @@ -4,6 +4,7 @@ using Microsoft.Extensions.Logging; using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; +using Speckle.InterfaceGenerator; using Speckle.Objects.Other; using Speckle.Sdk; using Speckle.Sdk.Models; @@ -15,7 +16,8 @@ namespace Speckle.Connectors.Autocad.HostApp; /// /// Expects to be a scoped dependency for a given operation and helps with layer creation and cleanup. /// -public class AutocadMaterialBaker +[GenerateAutoInterface] +public class AutocadMaterialBaker : IAutocadMaterialBaker { private readonly ILogger _logger; private readonly AutocadContext _autocadContext; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index b4e2b86eb..9bdc6fbaa 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -10,6 +10,7 @@ using Speckle.Sdk; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; +using Speckle.Sdk.Models.GraphTraversal; using Speckle.Sdk.Models.Instances; using AutocadColor = Autodesk.AutoCAD.Colors.Color; @@ -18,62 +19,97 @@ namespace Speckle.Connectors.Autocad.Operations.Receive; /// /// Expects to be a scoped dependency per receive operation. /// -public class AutocadHostObjectBuilder( - IRootToHostConverter converter, - AutocadLayerBaker layerBaker, - AutocadGroupBaker groupBaker, - AutocadInstanceBaker instanceBaker, - AutocadMaterialBaker materialBaker, - IAutocadColorBaker colorBaker, - AutocadContext autocadContext, - RootObjectUnpacker rootObjectUnpacker, - IThreadContext threadContext -) : IHostObjectBuilder +public class AutocadHostObjectBuilder : IHostObjectBuilder { + private readonly AutocadLayerBaker _layerBaker; + private readonly IRootToHostConverter _converter; + private readonly AutocadGroupBaker _groupBaker; + private readonly IAutocadMaterialBaker _materialBaker; + private readonly IAutocadColorBaker _colorBaker; + private readonly AutocadInstanceBaker _instanceBaker; + private readonly AutocadContext _autocadContext; + private readonly RootObjectUnpacker _rootObjectUnpacker; + private readonly IThreadContext _threadContext; + + public AutocadHostObjectBuilder( + IRootToHostConverter converter, + AutocadLayerBaker layerBaker, + AutocadGroupBaker groupBaker, + AutocadInstanceBaker instanceBaker, + IAutocadMaterialBaker materialBaker, + IAutocadColorBaker colorBaker, + AutocadContext autocadContext, + RootObjectUnpacker rootObjectUnpacker, + IThreadContext threadContext + ) + { + _converter = converter; + _layerBaker = layerBaker; + _groupBaker = groupBaker; + _instanceBaker = instanceBaker; + _materialBaker = materialBaker; + _colorBaker = colorBaker; + _autocadContext = autocadContext; + _rootObjectUnpacker = rootObjectUnpacker; + _threadContext = threadContext; + } + public async Task Build( Base rootObject, string projectName, string modelName, IProgress onOperationProgressed, - CancellationToken ct + CancellationToken _ ) { - return await threadContext - .RunOnWorkerAsync(async () => - { - var ret = BuildImpl(rootObject, projectName, modelName, onOperationProgressed); - await Task.Delay(100, ct).ConfigureAwait(false); - return ret; - }) + // NOTE: This is the only place we apply ISyncToThread across connectors. We need to sync up with main thread here + // after GetObject and Deserialization. It is anti-pattern now. Happiness level 3/10 but works. + var x = await _threadContext + .RunOnWorker(() => ReceiveData(rootObject, projectName, modelName, onOperationProgressed)) + .ConfigureAwait(false); + + return await _threadContext + .RunOnMainAsync( + () => + LoadData( + x.baseLayerPrefix, + x.atomicObjects, + x.atomicObjectsWithPath, + x.instanceComponentsWithPath, + x.unpackedRoot, + onOperationProgressed + ) + ) .ConfigureAwait(false); } - private HostObjectBuilderResult BuildImpl( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed - ) + private ( + string baseLayerPrefix, + List atomicObjects, + List<(Collection[] path, Base current)> atomicObjectsWithPath, + List<(Collection[] path, IInstanceComponent instance)> instanceComponentsWithPath, + RootObjectUnpackerResult unpackedRoot + ) ReceiveData(Base rootObject, string projectName, string modelName, IProgress onOperationProgressed) { // Prompt the UI conversion started. Progress bar will swoosh. onOperationProgressed.Report(new("Converting", null)); // Layer filter for received commit with project and model name - layerBaker.CreateLayerFilter(projectName, modelName); + _layerBaker.CreateLayerFilter(projectName, modelName); // 0 - Clean then Rock n Roll! - string baseLayerPrefix = autocadContext.RemoveInvalidChars($"SPK-{projectName}-{modelName}-"); + string baseLayerPrefix = _autocadContext.RemoveInvalidChars($"SPK-{projectName}-{modelName}-"); PreReceiveDeepClean(baseLayerPrefix); // 1 - Unpack objects and proxies from root commit object - var unpackedRoot = rootObjectUnpacker.Unpack(rootObject); + var unpackedRoot = _rootObjectUnpacker.Unpack(rootObject); // 2 - Split atomic objects and instance components with their path - var (atomicObjects, instanceComponents) = rootObjectUnpacker.SplitAtomicObjectsAndInstances( + var (atomicObjects, instanceComponents) = _rootObjectUnpacker.SplitAtomicObjectsAndInstances( unpackedRoot.ObjectsToConvert ); - var atomicObjectsWithPath = layerBaker.GetAtomicObjectsWithPath(atomicObjects); - var instanceComponentsWithPath = layerBaker.GetInstanceComponentsWithPath(instanceComponents); + var atomicObjectsWithPath = _layerBaker.GetAtomicObjectsWithPath(atomicObjects); + var instanceComponentsWithPath = _layerBaker.GetInstanceComponentsWithPath(instanceComponents); // POC: these are not captured by traversal, so we need to re-add them here if (unpackedRoot.DefinitionProxies != null && unpackedRoot.DefinitionProxies.Count > 0) @@ -87,7 +123,7 @@ IProgress onOperationProgressed // 3 - Bake materials and colors, as they are used later down the line by layers and objects if (unpackedRoot.RenderMaterialProxies != null) { - materialBaker.ParseAndBakeRenderMaterials( + _materialBaker.ParseAndBakeRenderMaterials( unpackedRoot.RenderMaterialProxies, baseLayerPrefix, onOperationProgressed @@ -96,9 +132,21 @@ IProgress onOperationProgressed if (unpackedRoot.ColorProxies != null) { - colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); + _colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); } + return (baseLayerPrefix, atomicObjects, atomicObjectsWithPath, instanceComponentsWithPath, unpackedRoot); + } + + private async Task LoadData( + string baseLayerPrefix, + List atomicObjects, + List<(Collection[] path, Base current)> atomicObjectsWithPath, + List<(Collection[] path, IInstanceComponent instance)> instanceComponentsWithPath, + RootObjectUnpackerResult unpackedRoot, + IProgress onOperationProgressed + ) + { // 5 - Convert atomic objects List results = new(); List bakedObjectIds = new(); @@ -110,7 +158,8 @@ IProgress onOperationProgressed onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); try { - List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); + List convertedObjects = await ConvertObject(atomicObject, layerPath, baseLayerPrefix) + .ConfigureAwait(true); applicationIdMap[objectId] = convertedObjects; @@ -132,7 +181,7 @@ IProgress onOperationProgressed } // 6 - Convert instances - var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = instanceBaker.BakeInstances( + var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = _instanceBaker.BakeInstances( instanceComponentsWithPath, applicationIdMap, baseLayerPrefix, @@ -147,7 +196,10 @@ IProgress onOperationProgressed // 7 - Create groups if (unpackedRoot.GroupProxies != null) { - List groupResults = groupBaker.CreateGroups(unpackedRoot.GroupProxies, applicationIdMap); + List groupResults = _groupBaker.CreateGroups( + unpackedRoot.GroupProxies, + applicationIdMap + ); results.AddRange(groupResults); } @@ -156,20 +208,20 @@ IProgress onOperationProgressed private void PreReceiveDeepClean(string baseLayerPrefix) { - layerBaker.DeleteAllLayersByPrefix(baseLayerPrefix); - instanceBaker.PurgeInstances(baseLayerPrefix); - materialBaker.PurgeMaterials(baseLayerPrefix); + _layerBaker.DeleteAllLayersByPrefix(baseLayerPrefix); + _instanceBaker.PurgeInstances(baseLayerPrefix); + _materialBaker.PurgeMaterials(baseLayerPrefix); } - private List ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) + private async Task> ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) { - string layerName = layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); + string layerName = _layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); var convertedEntities = new List(); using var tr = Application.DocumentManager.CurrentDocument.Database.TransactionManager.StartTransaction(); // 1: convert - var converted = converter.Convert(obj); + var converted = _converter.Convert(obj); // 2: handle result if (converted is Entity entity) @@ -184,18 +236,19 @@ private List ConvertObject(Base obj, Collection[] layerPath, string base } tr.Commit(); + await Task.Delay(10).ConfigureAwait(true); return convertedEntities; } private Entity BakeObject(Entity entity, Base originalObject, string layerName, Base? parentObject = null) { var objId = originalObject.applicationId ?? originalObject.id; - if (colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) + if (_colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) { entity.Color = color; } - if (materialBaker.TryGetMaterialId(originalObject, parentObject, out ObjectId matId)) + if (_materialBaker.TryGetMaterialId(originalObject, parentObject, out ObjectId matId)) { entity.MaterialId = matId; } @@ -230,7 +283,7 @@ string baseLayerName var groupDictionary = (DBDictionary) tr.GetObject(Application.DocumentManager.CurrentDocument.Database.GroupDictionaryId, OpenMode.ForWrite); - var groupName = autocadContext.RemoveInvalidChars( + var groupName = _autocadContext.RemoveInvalidChars( $@"{parentObject.speckle_type.Split('.').Last()} - {parentObject.applicationId ?? parentObject.id} ({baseLayerName})" ); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 2fde8c265..a42dba677 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -5,9 +5,11 @@ namespace Speckle.Connectors.Revit.Plugin; public class RevitThreadContext : ThreadContext { - public override Task RunContext(Func action) => RevitTask.RunAsync(action); + protected override Task RunContext(Func action) => RevitTask.RunAsync(action); - public override void RunContext(Action action) => RevitTask.RunAsync(action); + protected override Task RunContext(Func action) => RevitTask.RunAsync(action); - public override Task RunContext(Func> action) => RevitTask.RunAsync(action); + protected override void RunContext(Action action) => RevitTask.RunAsync(action); + + protected override Task RunContext(Func> action) => RevitTask.RunAsync(action); } diff --git a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs index 2c9bea3ce..22fb743a0 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs @@ -20,11 +20,13 @@ public ThreadContext() public static bool IsMainThread => Environment.CurrentManagedThreadId == s_mainThreadId; - public virtual void RunContext(Action action) => action(); + protected virtual void RunContext(Action action) => action(); - public virtual Task RunContext(Func action) => action(); + protected virtual Task RunContext(Func action) => Task.FromResult(action()); - public virtual Task RunContext(Func> action) => action(); + protected virtual Task RunContext(Func action) => action(); + + protected virtual Task RunContext(Func> action) => action(); public void RunOnThread(Action action, bool useMain) { @@ -60,6 +62,42 @@ public void RunOnThread(Action action, bool useMain) } } + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] + public Task RunOnThread(Func action, bool useMain) + { + if (useMain) + { + if (IsMainThread) + { + return RunContext(action.Invoke); + } + TaskCompletionSource tcs = new(); + _threadContext.Post( + async _ => + { + try + { + T result = await RunContext(action).ConfigureAwait(false); + tcs.SetResult(result); + } + catch (Exception ex) + { + tcs.SetException(ex); + } + }, + null + ); + return tcs.Task; + } + if (IsMainThread) + { + Task f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); + return f; + } + + return RunContext(action.Invoke); + } + public async Task RunOnThreadAsync(Func action, bool useMain) { if (useMain) diff --git a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs index 022d27f6f..0862f732b 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs +++ b/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs @@ -8,6 +8,12 @@ public static void RunOnMain(this IThreadContext threadContext, Action action) = public static void RunOnWorker(this IThreadContext threadContext, Action action) => threadContext.RunOnThread(action, false); + public static Task RunOnMain(this IThreadContext threadContext, Func action) => + threadContext.RunOnThread(action, true); + + public static Task RunOnWorker(this IThreadContext threadContext, Func action) => + threadContext.RunOnThread(action, false); + public static Task RunOnMainAsync(this IThreadContext threadContext, Func action) => threadContext.RunOnThreadAsync(action, true); From 81b7aec7381d3ae969a4a3eaa483105091e54d55 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 16:19:51 +0000 Subject: [PATCH 051/173] Update Speckle.Objects and Speckle.Sdk versions to 3.1.0-dev.200 - Updated the requested and resolved versions of Speckle.Objects and Speckle.Sdk to 3.1.0-dev.200 in packages.lock.json files for Connectors/Navisworks/Speckle.Connectors.Navisworks2024 and Converters/Navisworks/Speckle.Converters.Navisworks2024 directories. - Also updated the contentHash values for both packages. Note: This commit updates the versions of Speckle.Objects and Speckle.Sdk to 3.1.0-dev.200 in the mentioned directories' packages.lock.json files, along with their respective contentHash values being updated as well. --- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 24 ++++++------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 303c2faae..71bc885cb 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.191, )", - "resolved": "3.1.0-dev.191", - "contentHash": "+m7jRFm0ABbkcSz2UphdxAsislY10IpQ1u79c8a3aVvegLjnsVQZ1sXfRIRO1aFdulkhjYKXYpB3N9M8Z+epgQ==", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.191" + "Speckle.Sdk": "3.1.0-dev.200" } }, "GraphQL.Client": { @@ -280,9 +280,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.191, )", - "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )" + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" } }, "speckle.connectors.dui": { @@ -290,8 +290,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.191, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.191, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -309,7 +309,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.191, )" + "Speckle.Objects": "[3.1.0-dev.200, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -347,9 +347,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.191, )", - "resolved": "3.1.0-dev.191", - "contentHash": "VVT3LJiYlhqnggxxdeTt1QLrqfxDb044x0yX6kxS9b5MRzeDvK2Vz86pLDfuHs+SXvDimRVfYx1M42IW/aPcTQ==", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -359,14 +359,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.191" + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.191, )", - "resolved": "3.1.0-dev.191", - "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index e92b4c08b..80f20e1e5 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.191, )" + "Speckle.Objects": "[3.1.0-dev.200, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.191, )", - "resolved": "3.1.0-dev.191", - "contentHash": "+m7jRFm0ABbkcSz2UphdxAsislY10IpQ1u79c8a3aVvegLjnsVQZ1sXfRIRO1aFdulkhjYKXYpB3N9M8Z+epgQ==", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.191" + "Speckle.Sdk": "3.1.0-dev.200" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.191, )", - "resolved": "3.1.0-dev.191", - "contentHash": "VVT3LJiYlhqnggxxdeTt1QLrqfxDb044x0yX6kxS9b5MRzeDvK2Vz86pLDfuHs+SXvDimRVfYx1M42IW/aPcTQ==", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.191" + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.191, )", - "resolved": "3.1.0-dev.191", - "contentHash": "EmEOyjsGsNi56Z/ZoBOn8WirTmIT2yqWvlUeUh0BSPX2TDMZXHTKOM/kHmP6HSd10KVFn2Zo/ItY7/K9iRtL1Q==" + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" } } } From 3644054c58925fe878e7616e93dca345514af433 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 26 Nov 2024 16:45:25 +0000 Subject: [PATCH 052/173] operations know threading but not host apps --- .../ArcGISConnectorModule.cs | 2 +- .../Bindings/AutocadBasicConnectorBinding.cs | 2 +- .../Bindings/AutocadSelectionBinding.cs | 2 +- .../Bindings/AutocadSendBaseBinding.cs | 2 +- .../Bindings/AutocadSendBinding.cs | 2 +- .../DependencyInjection/SharedRegistration.cs | 2 +- .../Receive/AutocadHostObjectBuilder.cs | 140 +++++------------- .../Bindings/Civil3dSendBinding.cs | 2 +- .../Receive/RevitHostObjectBuilder.cs | 19 +-- .../Operations/Send/RevitRootObjectBuilder.cs | 19 +-- .../Plugin/RevitThreadContext.cs | 2 +- .../Receive/RhinoHostObjectBuilder.cs | 17 +-- .../Registration/ServiceRegistration.cs | 2 +- .../ServiceRegistration.cs | 2 +- .../Bridge/BrowserBridge.cs | 2 +- .../ContainerRegistration.cs | 2 +- .../Operations/ReceiveOperation.cs | 49 +++--- .../Operations/SendOperation.cs | 24 ++- .../Threading/ThreadContext.cs | 2 +- .../Threading/ThreadContextExtensions.cs | 2 +- 20 files changed, 113 insertions(+), 183 deletions(-) rename {DUI3/Speckle.Connectors.DUI => Sdk/Speckle.Connectors.Common}/Threading/ThreadContext.cs (98%) rename {DUI3/Speckle.Connectors.DUI => Sdk/Speckle.Connectors.Common}/Threading/ThreadContextExtensions.cs (95%) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs index 6bafdfc96..3dd514777 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs @@ -10,10 +10,10 @@ using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Models.Card.SendFilter; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Converters.Common; using Speckle.Sdk.Models.GraphTraversal; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs index 296b9bb6c..552c43aaf 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs @@ -1,11 +1,11 @@ using Autodesk.AutoCAD.DatabaseServices; using Microsoft.Extensions.Logging; using Speckle.Connectors.Autocad.HostApp.Extensions; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; -using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Common; using Speckle.Sdk.Credentials; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs index 61fb5e739..0af057595 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs @@ -1,9 +1,9 @@ using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.EditorInput; using Speckle.Connectors.Autocad.HostApp.Extensions; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; -using Speckle.Connectors.DUI.Threading; namespace Speckle.Connectors.Autocad.Bindings; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs index 01f612275..cf2a9b659 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs @@ -8,6 +8,7 @@ using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Exceptions; @@ -16,7 +17,6 @@ using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; -using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Common; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs index 50b485c30..ddd5c223c 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBinding.cs @@ -3,11 +3,11 @@ using Speckle.Connectors.Autocad.HostApp; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Cancellation; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; -using Speckle.Connectors.DUI.Threading; using Speckle.Converters.Autocad; using Speckle.Converters.Common; using Speckle.Sdk; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index d84de38a3..9632b802b 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -10,11 +10,11 @@ using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Instances; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models.Card.SendFilter; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Sdk.Models.GraphTraversal; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 9bdc6fbaa..7f19a85bf 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -5,12 +5,10 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; -using Speckle.Connectors.DUI.Threading; using Speckle.Converters.Common; using Speckle.Sdk; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; -using Speckle.Sdk.Models.GraphTraversal; using Speckle.Sdk.Models.Instances; using AutocadColor = Autodesk.AutoCAD.Colors.Color; @@ -19,97 +17,56 @@ namespace Speckle.Connectors.Autocad.Operations.Receive; /// /// Expects to be a scoped dependency per receive operation. /// -public class AutocadHostObjectBuilder : IHostObjectBuilder +public class AutocadHostObjectBuilder( + IRootToHostConverter converter, + AutocadLayerBaker layerBaker, + AutocadGroupBaker groupBaker, + AutocadInstanceBaker instanceBaker, + AutocadMaterialBaker materialBaker, + IAutocadColorBaker colorBaker, + AutocadContext autocadContext, + RootObjectUnpacker rootObjectUnpacker +) : IHostObjectBuilder { - private readonly AutocadLayerBaker _layerBaker; - private readonly IRootToHostConverter _converter; - private readonly AutocadGroupBaker _groupBaker; - private readonly IAutocadMaterialBaker _materialBaker; - private readonly IAutocadColorBaker _colorBaker; - private readonly AutocadInstanceBaker _instanceBaker; - private readonly AutocadContext _autocadContext; - private readonly RootObjectUnpacker _rootObjectUnpacker; - private readonly IThreadContext _threadContext; - - public AutocadHostObjectBuilder( - IRootToHostConverter converter, - AutocadLayerBaker layerBaker, - AutocadGroupBaker groupBaker, - AutocadInstanceBaker instanceBaker, - IAutocadMaterialBaker materialBaker, - IAutocadColorBaker colorBaker, - AutocadContext autocadContext, - RootObjectUnpacker rootObjectUnpacker, - IThreadContext threadContext - ) - { - _converter = converter; - _layerBaker = layerBaker; - _groupBaker = groupBaker; - _instanceBaker = instanceBaker; - _materialBaker = materialBaker; - _colorBaker = colorBaker; - _autocadContext = autocadContext; - _rootObjectUnpacker = rootObjectUnpacker; - _threadContext = threadContext; - } - public async Task Build( Base rootObject, string projectName, string modelName, IProgress onOperationProgressed, - CancellationToken _ + CancellationToken ct ) { - // NOTE: This is the only place we apply ISyncToThread across connectors. We need to sync up with main thread here - // after GetObject and Deserialization. It is anti-pattern now. Happiness level 3/10 but works. - var x = await _threadContext - .RunOnWorker(() => ReceiveData(rootObject, projectName, modelName, onOperationProgressed)) - .ConfigureAwait(false); - - return await _threadContext - .RunOnMainAsync( - () => - LoadData( - x.baseLayerPrefix, - x.atomicObjects, - x.atomicObjectsWithPath, - x.instanceComponentsWithPath, - x.unpackedRoot, - onOperationProgressed - ) - ) - .ConfigureAwait(false); + var ret = BuildImpl(rootObject, projectName, modelName, onOperationProgressed); + await Task.Delay(100, ct).ConfigureAwait(false); + return ret; } - private ( - string baseLayerPrefix, - List atomicObjects, - List<(Collection[] path, Base current)> atomicObjectsWithPath, - List<(Collection[] path, IInstanceComponent instance)> instanceComponentsWithPath, - RootObjectUnpackerResult unpackedRoot - ) ReceiveData(Base rootObject, string projectName, string modelName, IProgress onOperationProgressed) + private HostObjectBuilderResult BuildImpl( + Base rootObject, + string projectName, + string modelName, + IProgress onOperationProgressed + ) { // Prompt the UI conversion started. Progress bar will swoosh. onOperationProgressed.Report(new("Converting", null)); // Layer filter for received commit with project and model name - _layerBaker.CreateLayerFilter(projectName, modelName); + layerBaker.CreateLayerFilter(projectName, modelName); // 0 - Clean then Rock n Roll! - string baseLayerPrefix = _autocadContext.RemoveInvalidChars($"SPK-{projectName}-{modelName}-"); + string baseLayerPrefix = autocadContext.RemoveInvalidChars($"SPK-{projectName}-{modelName}-"); PreReceiveDeepClean(baseLayerPrefix); // 1 - Unpack objects and proxies from root commit object - var unpackedRoot = _rootObjectUnpacker.Unpack(rootObject); + var unpackedRoot = rootObjectUnpacker.Unpack(rootObject); // 2 - Split atomic objects and instance components with their path - var (atomicObjects, instanceComponents) = _rootObjectUnpacker.SplitAtomicObjectsAndInstances( + var (atomicObjects, instanceComponents) = rootObjectUnpacker.SplitAtomicObjectsAndInstances( unpackedRoot.ObjectsToConvert ); - var atomicObjectsWithPath = _layerBaker.GetAtomicObjectsWithPath(atomicObjects); - var instanceComponentsWithPath = _layerBaker.GetInstanceComponentsWithPath(instanceComponents); + var atomicObjectsWithPath = layerBaker.GetAtomicObjectsWithPath(atomicObjects); + var instanceComponentsWithPath = layerBaker.GetInstanceComponentsWithPath(instanceComponents); // POC: these are not captured by traversal, so we need to re-add them here if (unpackedRoot.DefinitionProxies != null && unpackedRoot.DefinitionProxies.Count > 0) @@ -123,7 +80,7 @@ RootObjectUnpackerResult unpackedRoot // 3 - Bake materials and colors, as they are used later down the line by layers and objects if (unpackedRoot.RenderMaterialProxies != null) { - _materialBaker.ParseAndBakeRenderMaterials( + materialBaker.ParseAndBakeRenderMaterials( unpackedRoot.RenderMaterialProxies, baseLayerPrefix, onOperationProgressed @@ -132,21 +89,9 @@ RootObjectUnpackerResult unpackedRoot if (unpackedRoot.ColorProxies != null) { - _colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); + colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); } - return (baseLayerPrefix, atomicObjects, atomicObjectsWithPath, instanceComponentsWithPath, unpackedRoot); - } - - private async Task LoadData( - string baseLayerPrefix, - List atomicObjects, - List<(Collection[] path, Base current)> atomicObjectsWithPath, - List<(Collection[] path, IInstanceComponent instance)> instanceComponentsWithPath, - RootObjectUnpackerResult unpackedRoot, - IProgress onOperationProgressed - ) - { // 5 - Convert atomic objects List results = new(); List bakedObjectIds = new(); @@ -158,8 +103,7 @@ IProgress onOperationProgressed onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); try { - List convertedObjects = await ConvertObject(atomicObject, layerPath, baseLayerPrefix) - .ConfigureAwait(true); + List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); applicationIdMap[objectId] = convertedObjects; @@ -181,7 +125,7 @@ IProgress onOperationProgressed } // 6 - Convert instances - var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = _instanceBaker.BakeInstances( + var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = instanceBaker.BakeInstances( instanceComponentsWithPath, applicationIdMap, baseLayerPrefix, @@ -196,10 +140,7 @@ IProgress onOperationProgressed // 7 - Create groups if (unpackedRoot.GroupProxies != null) { - List groupResults = _groupBaker.CreateGroups( - unpackedRoot.GroupProxies, - applicationIdMap - ); + List groupResults = groupBaker.CreateGroups(unpackedRoot.GroupProxies, applicationIdMap); results.AddRange(groupResults); } @@ -208,20 +149,20 @@ IProgress onOperationProgressed private void PreReceiveDeepClean(string baseLayerPrefix) { - _layerBaker.DeleteAllLayersByPrefix(baseLayerPrefix); - _instanceBaker.PurgeInstances(baseLayerPrefix); - _materialBaker.PurgeMaterials(baseLayerPrefix); + layerBaker.DeleteAllLayersByPrefix(baseLayerPrefix); + instanceBaker.PurgeInstances(baseLayerPrefix); + materialBaker.PurgeMaterials(baseLayerPrefix); } - private async Task> ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) + private List ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) { - string layerName = _layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); + string layerName = layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); var convertedEntities = new List(); using var tr = Application.DocumentManager.CurrentDocument.Database.TransactionManager.StartTransaction(); // 1: convert - var converted = _converter.Convert(obj); + var converted = converter.Convert(obj); // 2: handle result if (converted is Entity entity) @@ -236,19 +177,18 @@ private async Task> ConvertObject(Base obj, Collection[] layerPath, } tr.Commit(); - await Task.Delay(10).ConfigureAwait(true); return convertedEntities; } private Entity BakeObject(Entity entity, Base originalObject, string layerName, Base? parentObject = null) { var objId = originalObject.applicationId ?? originalObject.id; - if (_colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) + if (colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) { entity.Color = color; } - if (_materialBaker.TryGetMaterialId(originalObject, parentObject, out ObjectId matId)) + if (materialBaker.TryGetMaterialId(originalObject, parentObject, out ObjectId matId)) { entity.MaterialId = matId; } @@ -283,7 +223,7 @@ string baseLayerName var groupDictionary = (DBDictionary) tr.GetObject(Application.DocumentManager.CurrentDocument.Database.GroupDictionaryId, OpenMode.ForWrite); - var groupName = _autocadContext.RemoveInvalidChars( + var groupName = autocadContext.RemoveInvalidChars( $@"{parentObject.speckle_type.Split('.').Last()} - {parentObject.applicationId ?? parentObject.id} ({baseLayerName})" ); diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs index a29b42865..4b26c74ef 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Bindings/Civil3dSendBinding.cs @@ -4,11 +4,11 @@ using Speckle.Connectors.Autocad.HostApp; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Cancellation; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; -using Speckle.Connectors.DUI.Threading; using Speckle.Converters.Autocad; using Speckle.Converters.Civil3dShared; using Speckle.Converters.Common; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 536b07ee0..1cbfb6796 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -5,7 +5,6 @@ using Speckle.Connectors.Common.Instances; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Revit.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; @@ -34,23 +33,21 @@ internal sealed class RevitHostObjectBuilder( RootObjectUnpacker rootObjectUnpacker, ILogger logger, RevitToHostCacheSingleton revitToHostCacheSingleton, - ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter, - IThreadContext threadContext + ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter ) : IHostObjectBuilder, IDisposable { - public Task Build( + public async Task Build( Base rootObject, string projectName, string modelName, IProgress onOperationProgressed, CancellationToken cancellationToken - ) => - threadContext.RunOnWorkerAsync(async () => - { - var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken); - await Task.Delay(100, cancellationToken).ConfigureAwait(false); - return ret; - }); + ) + { + var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken); + await Task.Delay(100, cancellationToken).ConfigureAwait(false); + return ret; + } private HostObjectBuilderResult BuildSync( Base rootObject, diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 691172ea4..923848427 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -6,7 +6,6 @@ using Speckle.Connectors.Common.Extensions; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Exceptions; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Revit.HostApp; using Speckle.Converters.Common; using Speckle.Converters.RevitShared.Helpers; @@ -24,24 +23,22 @@ public class RevitRootObjectBuilder( ElementUnpacker elementUnpacker, SendCollectionManager sendCollectionManager, ILogger logger, - RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton, - IThreadContext threadContext + RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton ) : IRootObjectBuilder { // POC: SendSelection and RevitConversionContextStack should be interfaces, former needs interfaces - public Task Build( + public async Task Build( IReadOnlyList objects, SendInfo sendInfo, IProgress onOperationProgressed, CancellationToken ct = default - ) => - threadContext.RunOnWorkerAsync(async () => - { - var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); - await Task.Delay(100, ct).ConfigureAwait(false); - return ret; - }); + ) + { + var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); + await Task.Delay(100, ct).ConfigureAwait(false); + return ret; + } private RootObjectBuilderResult BuildSync( IReadOnlyList objects, diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index a42dba677..59eb5c58d 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -1,5 +1,5 @@ using Revit.Async; -using Speckle.Connectors.DUI.Threading; +using Speckle.Connectors.Common.Threading; namespace Speckle.Connectors.Revit.Plugin; diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 5403e9d4f..460af0a38 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -5,7 +5,6 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.Rhino.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Rhino; @@ -31,7 +30,6 @@ public class RhinoHostObjectBuilder : IHostObjectBuilder private readonly RhinoGroupBaker _groupBaker; private readonly RootObjectUnpacker _rootObjectUnpacker; private readonly ISdkActivityFactory _activityFactory; - private readonly IThreadContext _threadContext; public RhinoHostObjectBuilder( IRootToHostConverter converter, @@ -42,8 +40,7 @@ public RhinoHostObjectBuilder( RhinoMaterialBaker materialBaker, RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, - ISdkActivityFactory activityFactory, - IThreadContext threadContext + ISdkActivityFactory activityFactory ) { _converter = converter; @@ -55,7 +52,6 @@ IThreadContext threadContext _layerBaker = layerBaker; _groupBaker = groupBaker; _activityFactory = activityFactory; - _threadContext = threadContext; } #pragma warning disable CA1506 @@ -68,14 +64,9 @@ public async Task Build( CancellationToken cancellationToken ) { - return await _threadContext - .RunOnWorkerAsync(async () => - { - var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed); - await Task.Delay(100, cancellationToken).ConfigureAwait(false); - return ret; - }) - .ConfigureAwait(false); + var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed); + await Task.Delay(100, cancellationToken).ConfigureAwait(false); + return ret; } public HostObjectBuilderResult BuildSync( diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs index 9a4060dcd..a461cf8b4 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs @@ -8,11 +8,11 @@ using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.Common.Instances; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models.Card.SendFilter; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Connectors.Rhino.Bindings; using Speckle.Connectors.Rhino.Filters; diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs index a4a75c081..2b240179f 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs @@ -9,11 +9,11 @@ using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models.Card.SendFilter; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.WebView; using Speckle.Converter.Tekla2024; using Speckle.Converters.Common; diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 83cabb513..f951a9642 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -4,8 +4,8 @@ using System.Reflection; using System.Runtime.InteropServices; using Microsoft.Extensions.Logging; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; -using Speckle.Connectors.DUI.Threading; using Speckle.Connectors.DUI.Utils; using Speckle.Newtonsoft.Json; using Speckle.Sdk.Common; diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index 28aed8ef8..244727976 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -1,10 +1,10 @@ using System.Reflection; using Microsoft.Extensions.DependencyInjection; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; -using Speckle.Connectors.DUI.Threading; using Speckle.Sdk; using Speckle.Sdk.Transports; diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 84e6fee41..45f025963 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -1,4 +1,5 @@ using Speckle.Connectors.Common.Builders; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.Logging; using Speckle.Sdk.Api; using Speckle.Sdk.Credentials; @@ -13,29 +14,29 @@ public sealed class ReceiveOperation { private readonly IHostObjectBuilder _hostObjectBuilder; private readonly AccountService _accountService; - private readonly IServerTransportFactory _serverTransportFactory; private readonly IProgressDisplayManager _progressDisplayManager; private readonly ISdkActivityFactory _activityFactory; private readonly IOperations _operations; private readonly IClientFactory _clientFactory; + private readonly IThreadContext _threadContext; public ReceiveOperation( IHostObjectBuilder hostObjectBuilder, AccountService accountService, - IServerTransportFactory serverTransportFactory, IProgressDisplayManager progressDisplayManager, ISdkActivityFactory activityFactory, IOperations operations, - IClientFactory clientFactory + IClientFactory clientFactory, + IThreadContext threadContext ) { _hostObjectBuilder = hostObjectBuilder; _accountService = accountService; - _serverTransportFactory = serverTransportFactory; _progressDisplayManager = progressDisplayManager; _activityFactory = activityFactory; _operations = operations; _clientFactory = clientFactory; + _threadContext = threadContext; } public async Task Execute( @@ -55,8 +56,30 @@ CancellationToken cancellationToken .Version.Get(receiveInfo.SelectedVersionId, receiveInfo.ProjectId, cancellationToken) .ConfigureAwait(false); - using var transport = _serverTransportFactory.Create(account, receiveInfo.ProjectId); + var commitObject = await _threadContext + .RunOnWorkerAsync(() => ReceiveData(account, version, receiveInfo, onOperationProgressed, cancellationToken)) + .ConfigureAwait(false); + + // 4 - Convert objects + HostObjectBuilderResult res = await _threadContext + .RunOnMainAsync(() => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken)) + .ConfigureAwait(false); + await apiClient + .Version.Received(new(version.id, receiveInfo.ProjectId, receiveInfo.SourceApplication), cancellationToken) + .ConfigureAwait(false); + + return res; + } + + private async Task ReceiveData( + Account account, + Speckle.Sdk.Api.GraphQL.Models.Version version, + ReceiveInfo receiveInfo, + IProgress onOperationProgressed, + CancellationToken cancellationToken + ) + { double? previousPercentage = null; _progressDisplayManager.Begin(); Base? commitObject = await _operations @@ -97,21 +120,7 @@ CancellationToken cancellationToken .ConfigureAwait(false); cancellationToken.ThrowIfCancellationRequested(); - - // 4 - Convert objects - HostObjectBuilderResult? res = await ConvertObjects( - commitObject, - receiveInfo, - onOperationProgressed, - cancellationToken - ) - .ConfigureAwait(false); - - await apiClient - .Version.Received(new(version.id, receiveInfo.ProjectId, receiveInfo.SourceApplication), cancellationToken) - .ConfigureAwait(false); - - return res; + return commitObject; } private async Task ConvertObjects( diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs index 665e1910c..499332781 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs @@ -1,21 +1,17 @@ using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Conversion; +using Speckle.Connectors.Common.Threading; using Speckle.Sdk.Models; using Speckle.Sdk.Serialisation; namespace Speckle.Connectors.Common.Operations; -public sealed class SendOperation +public sealed class SendOperation( + IRootObjectBuilder rootObjectBuilder, + IRootObjectSender baseObjectSender, + IThreadContext threadContext +) { - private readonly IRootObjectBuilder _rootObjectBuilder; - private readonly IRootObjectSender _baseObjectSender; - - public SendOperation(IRootObjectBuilder rootObjectBuilder, IRootObjectSender baseObjectSender) - { - _rootObjectBuilder = rootObjectBuilder; - _baseObjectSender = baseObjectSender; - } - public async Task Execute( IReadOnlyList objects, SendInfo sendInfo, @@ -23,8 +19,8 @@ public async Task Execute( CancellationToken ct = default ) { - var buildResult = await _rootObjectBuilder - .Build(objects, sendInfo, onOperationProgressed, ct) + var buildResult = await threadContext + .RunOnMainAsync(() => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed, ct)) .ConfigureAwait(false); // POC: Jonathon asks on behalf of willow twin - let's explore how this can work @@ -33,8 +29,8 @@ public async Task Execute( buildResult.RootObject["version"] = 3; // base object handler is separated, so we can do some testing on non-production databases // exact interface may want to be tweaked when we implement this - var (rootObjId, convertedReferences) = await _baseObjectSender - .Send(buildResult.RootObject, sendInfo, onOperationProgressed, ct) + var (rootObjId, convertedReferences) = await threadContext + .RunOnWorkerAsync(() => baseObjectSender.Send(buildResult.RootObject, sendInfo, onOperationProgressed, ct)) .ConfigureAwait(false); return new(rootObjId, convertedReferences, buildResult.ConversionResults); diff --git a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs similarity index 98% rename from DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs rename to Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 22fb743a0..441fb91df 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -2,7 +2,7 @@ using Speckle.InterfaceGenerator; using Speckle.Sdk.Common; -namespace Speckle.Connectors.DUI.Threading; +namespace Speckle.Connectors.Common.Threading; [GenerateAutoInterface] public class ThreadContext : IThreadContext diff --git a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs similarity index 95% rename from DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs rename to Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs index 0862f732b..ddf29854c 100644 --- a/DUI3/Speckle.Connectors.DUI/Threading/ThreadContextExtensions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs @@ -1,4 +1,4 @@ -namespace Speckle.Connectors.DUI.Threading; +namespace Speckle.Connectors.Common.Threading; public static class ThreadContextExtensions { From 9a88f0b14a0298c98bc5950798ed4846589114ab Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 26 Nov 2024 17:00:35 +0000 Subject: [PATCH 053/173] Add Navisworks and 2024 projects, along with their connectors and converters This commit adds the Navisworks project, along with the 2024 project. It also includes the connectors and converters for both projects. --- Local.sln | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/Local.sln b/Local.sln index 738e2b396..52ecff765 100644 --- a/Local.sln +++ b/Local.sln @@ -194,6 +194,20 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.TeklaSha EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.TeklaShared", "Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.shproj", "{52666479-5401-47D6-B7BA-D554784439EA}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Navisworks", "Navisworks", "{BAAB254D-7AD0-4E78-A5C9-F975DD090AF2}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{A91E99F9-66BD-4F33-9362-50C1CE78D3B1}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3}" +EndProject +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" +EndProject +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{C032C662-A2E1-4F77-97A1-4D9E88245C9B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -507,6 +521,18 @@ Global {4C373FD0-E3F3-478B-AD32-CDBF340D21A9}.Local|Any CPU.Build.0 = Local|Any CPU {4C373FD0-E3F3-478B-AD32-CDBF340D21A9}.Release|Any CPU.ActiveCfg = Release|Any CPU {4C373FD0-E3F3-478B-AD32-CDBF340D21A9}.Release|Any CPU.Build.0 = Release|Any CPU + {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Local|Any CPU.Build.0 = Debug|Any CPU + {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Release|Any CPU.Build.0 = Release|Any CPU + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Local|Any CPU.Build.0 = Local|Any CPU + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -593,6 +619,13 @@ Global {4C373FD0-E3F3-478B-AD32-CDBF340D21A9} = {474752C4-3D2A-4A7D-B8E0-B7A43FC3694C} {3AB9028B-B2D2-464B-9BA3-39C192441E50} = {0B47C151-3B4E-4EB5-AB21-02FD096A2024} {52666479-5401-47D6-B7BA-D554784439EA} = {0B47C151-3B4E-4EB5-AB21-02FD096A2024} + {BAAB254D-7AD0-4E78-A5C9-F975DD090AF2} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} + {A91E99F9-66BD-4F33-9362-50C1CE78D3B1} = {BAAB254D-7AD0-4E78-A5C9-F975DD090AF2} + {7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3} = {BAAB254D-7AD0-4E78-A5C9-F975DD090AF2} + {62813838-52F7-43CB-9062-BB2611C00C79} = {7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3} + {23830613-87F8-4655-B523-72189A597962} = {7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3} + {C032C662-A2E1-4F77-97A1-4D9E88245C9B} = {A91E99F9-66BD-4F33-9362-50C1CE78D3B1} + {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818} = {A91E99F9-66BD-4F33-9362-50C1CE78D3B1} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From d416e7612a09cc5d9ea3f30900932e252e249fbe Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 09:38:13 +0000 Subject: [PATCH 054/173] rhino options --- .../Operations/Send/RevitRootObjectBuilder.cs | 14 +------------- .../Operations/Receive/RhinoHostObjectBuilder.cs | 15 +-------------- .../Operations/Send/RhinoRootObjectBuilder.cs | 7 ++----- .../Builders/IHostObjectBuilder.cs | 6 ++---- .../Builders/IRootObjectBuilder.cs | 5 ++--- .../Operations/SendOperation.cs | 2 +- .../Threading/ThreadOptions.cs | 6 ++++++ 7 files changed, 15 insertions(+), 40 deletions(-) create mode 100644 Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 923848427..fc47ca10f 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -28,19 +28,7 @@ RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton { // POC: SendSelection and RevitConversionContextStack should be interfaces, former needs interfaces - public async Task Build( - IReadOnlyList objects, - SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken ct = default - ) - { - var ret = BuildSync(objects, sendInfo, onOperationProgressed, ct); - await Task.Delay(100, ct).ConfigureAwait(false); - return ret; - } - - private RootObjectBuilderResult BuildSync( + public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, IProgress onOperationProgressed, diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 460af0a38..47a3d7681 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -55,21 +55,8 @@ ISdkActivityFactory activityFactory } #pragma warning disable CA1506 - public async Task Build( + public HostObjectBuilderResult Build( #pragma warning restore CA1506 - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken - ) - { - var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed); - await Task.Delay(100, cancellationToken).ConfigureAwait(false); - return ret; - } - - public HostObjectBuilderResult BuildSync( Base rootObject, string projectName, string modelName, diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs index 5f337e491..1d15c5d3b 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs @@ -60,11 +60,10 @@ ISdkActivityFactory activityFactory _activityFactory = activityFactory; } - public async Task Build( + public RootObjectBuilderResult Build( IReadOnlyList rhinoObjects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken cancellationToken = default + IProgress onOperationProgressed ) { using var activity = _activityFactory.Start("Build"); @@ -96,7 +95,6 @@ public async Task Build( foreach (RhinoObject rhinoObject in atomicObjects) { using var _2 = _activityFactory.Start("Convert"); - cancellationToken.ThrowIfCancellationRequested(); // handle layer Layer layer = _converterSettings.Current.Document.Layers[rhinoObject.Attributes.LayerIndex]; @@ -130,7 +128,6 @@ public async Task Build( rootObjectCollection[ProxyKeys.COLOR] = _colorUnpacker.UnpackColors(atomicObjects, versionLayers.ToList()); } - await Task.Yield(); return new RootObjectBuilderResult(rootObjectCollection, results); } diff --git a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs index 7d9e150dc..30ebc7eb9 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs @@ -14,16 +14,14 @@ public interface IHostObjectBuilder /// Project of the model. /// Name of the model. /// Action to update UI progress bar. - /// Cancellation token that passed from top -> ReceiveBinding. /// List of application ids. // POC: Where we will return these ids will matter later when we target to also cache received application ids. /// Project and model name are needed for now to construct host app objects into related layers or filters. /// POC: we might consider later to have HostObjectBuilderContext? that might hold all possible data we will need. - Task Build( + HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken + IProgress onOperationProgressed ); } diff --git a/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs index f3584c726..c018b2b4d 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs @@ -6,11 +6,10 @@ namespace Speckle.Connectors.Common.Builders; public interface IRootObjectBuilder { - public Task Build( + public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken ct = default + IProgress onOperationProgressed ); } diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs index 499332781..327cb639c 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs @@ -20,7 +20,7 @@ public async Task Execute( ) { var buildResult = await threadContext - .RunOnMainAsync(() => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed, ct)) + .RunOnMain(() => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed)) .ConfigureAwait(false); // POC: Jonathon asks on behalf of willow twin - let's explore how this can work diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs new file mode 100644 index 000000000..ba37a4489 --- /dev/null +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs @@ -0,0 +1,6 @@ +namespace Speckle.Connectors.Common.Threading; + +public class ThreadOptions +{ + +} From 9c83cee6416b2e30c65ce9eb97cfe7f50d7ca73f Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 09:49:41 +0000 Subject: [PATCH 055/173] revit can receive --- .../Receive/RevitHostObjectBuilder.cs | 24 ++++--------------- .../Operations/Send/RevitRootObjectBuilder.cs | 4 +--- .../Operations/ReceiveOperation.cs | 17 +++++++------ .../Threading/ThreadOptions.cs | 11 ++++++--- 4 files changed, 21 insertions(+), 35 deletions(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 1cbfb6796..07b483176 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -36,25 +36,11 @@ internal sealed class RevitHostObjectBuilder( ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter ) : IHostObjectBuilder, IDisposable { - public async Task Build( + public HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken - ) - { - var ret = BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken); - await Task.Delay(100, cancellationToken).ConfigureAwait(false); - return ret; - } - - private HostObjectBuilderResult BuildSync( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken + IProgress onOperationProgressed ) { var baseGroupName = $"Project {projectName}: Model {modelName}"; // TODO: unify this across connectors! @@ -106,7 +92,7 @@ CancellationToken cancellationToken { using var _ = activityFactory.Start("Baking objects"); transactionManager.StartTransaction(true, "Baking objects"); - conversionResults = BakeObjects(localToGlobalMaps, onOperationProgressed, cancellationToken); + conversionResults = BakeObjects(localToGlobalMaps, onOperationProgressed); transactionManager.CommitTransaction(); } @@ -134,8 +120,7 @@ CancellationToken cancellationToken List<(DirectShape res, string applicationId)> postBakePaintTargets ) BakeObjects( List localToGlobalMaps, - IProgress onOperationProgressed, - CancellationToken cancellationToken + IProgress onOperationProgressed ) { using var _ = activityFactory.Start("BakeObjects"); @@ -147,7 +132,6 @@ CancellationToken cancellationToken foreach (LocalToGlobalMap localToGlobalMap in localToGlobalMaps) { - cancellationToken.ThrowIfCancellationRequested(); try { using var activity = activityFactory.Start("BakeObject"); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index fc47ca10f..287214e2a 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -31,8 +31,7 @@ RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken ct = default + IProgress onOperationProgressed ) { var doc = converterSettings.Current.Document; @@ -74,7 +73,6 @@ public RootObjectBuilderResult Build( foreach (Element revitElement in atomicObjects) { - ct.ThrowIfCancellationRequested(); string applicationId = revitElement.UniqueId; string sourceType = revitElement.GetType().Name; try diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 45f025963..94764c28a 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -19,6 +19,7 @@ public sealed class ReceiveOperation private readonly IOperations _operations; private readonly IClientFactory _clientFactory; private readonly IThreadContext _threadContext; + private readonly IThreadOptions _threadOptions; public ReceiveOperation( IHostObjectBuilder hostObjectBuilder, @@ -27,8 +28,7 @@ public ReceiveOperation( ISdkActivityFactory activityFactory, IOperations operations, IClientFactory clientFactory, - IThreadContext threadContext - ) + IThreadContext threadContext, IThreadOptions threadOptions) { _hostObjectBuilder = hostObjectBuilder; _accountService = accountService; @@ -37,6 +37,7 @@ IThreadContext threadContext _operations = operations; _clientFactory = clientFactory; _threadContext = threadContext; + _threadOptions = threadOptions; } public async Task Execute( @@ -62,7 +63,7 @@ CancellationToken cancellationToken // 4 - Convert objects HostObjectBuilderResult res = await _threadContext - .RunOnMainAsync(() => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken)) + .RunOnThread(() => ConvertObjects(commitObject, receiveInfo, onOperationProgressed), _threadOptions.RunReceiveBuildOnMainThread) .ConfigureAwait(false); await apiClient @@ -123,11 +124,10 @@ CancellationToken cancellationToken return commitObject; } - private async Task ConvertObjects( + private HostObjectBuilderResult ConvertObjects( Base commitObject, ReceiveInfo receiveInfo, - IProgress onOperationProgressed, - CancellationToken cancellationToken + IProgress onOperationProgressed ) { using var conversionActivity = _activityFactory.Start("ReceiveOperation.ConvertObjects"); @@ -140,9 +140,8 @@ CancellationToken cancellationToken try { - HostObjectBuilderResult res = await _hostObjectBuilder - .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed, cancellationToken) - .ConfigureAwait(false); + HostObjectBuilderResult res = _hostObjectBuilder + .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed); conversionActivity?.SetStatus(SdkActivityStatusCode.Ok); return res; } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs index ba37a4489..38ead87e7 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs @@ -1,6 +1,11 @@ -namespace Speckle.Connectors.Common.Threading; +using Speckle.InterfaceGenerator; +using Speckle.Sdk; +using Speckle.Sdk.Host; -public class ThreadOptions +namespace Speckle.Connectors.Common.Threading; + +[GenerateAutoInterface] +public class ThreadOptions(ISpeckleApplication speckleApplication) : IThreadOptions { - + public bool RunReceiveBuildOnMainThread => speckleApplication.HostApplication != HostApplications.Rhino.Name; } From 8708779a51a088fe851e9ca9fa671bda6f076172 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 10:16:40 +0000 Subject: [PATCH 056/173] autocad in progress --- .../Receive/AutocadHostObjectBuilder.cs | 17 ++------------ .../Send/AutocadRootObjectBaseBuilder.cs | 23 ++++++------------- 2 files changed, 9 insertions(+), 31 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 7f19a85bf..b5cf36ad9 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -22,26 +22,13 @@ public class AutocadHostObjectBuilder( AutocadLayerBaker layerBaker, AutocadGroupBaker groupBaker, AutocadInstanceBaker instanceBaker, - AutocadMaterialBaker materialBaker, + IAutocadMaterialBaker materialBaker, IAutocadColorBaker colorBaker, AutocadContext autocadContext, RootObjectUnpacker rootObjectUnpacker ) : IHostObjectBuilder { - public async Task Build( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed, - CancellationToken ct - ) - { - var ret = BuildImpl(rootObject, projectName, modelName, onOperationProgressed); - await Task.Delay(100, ct).ConfigureAwait(false); - return ret; - } - - private HostObjectBuilderResult BuildImpl( + public HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs index 9c8c77e15..6e95c9948 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs @@ -49,28 +49,20 @@ ISdkActivityFactory activityFactory _activityFactory = activityFactory; } - public Task Build( - IReadOnlyList objects, - SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken ct = default - ) => Task.FromResult(BuildSync(objects, sendInfo, onOperationProgressed, ct)); - [SuppressMessage( "Maintainability", "CA1506:Avoid excessive class coupling", Justification = """ - It is already simplified but has many different references since it is a builder. Do not know can we simplify it now. - Later we might consider to refactor proxies from one proxy manager? but we do not know the shape of it all potential - proxy classes yet. So I'm supressing this one now!!! - """ + It is already simplified but has many different references since it is a builder. Do not know can we simplify it now. + Later we might consider to refactor proxies from one proxy manager? but we do not know the shape of it all potential + proxy classes yet. So I'm supressing this one now!!! + """ )] - private RootObjectBuilderResult BuildSync( + public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken ct = default - ) + IProgress onOperationProgressed + ) { // 0 - Init the root Collection root = @@ -101,7 +93,6 @@ private RootObjectBuilderResult BuildSync( int count = 0; foreach (var (entity, applicationId) in atomicObjects) { - ct.ThrowIfCancellationRequested(); using (var convertActivity = _activityFactory.Start("Converting object")) { // Create and add a collection for this entity if not done so already. From ca6ce6c400a959c7843504fef032850d3dc1c9fd Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 13:37:08 +0000 Subject: [PATCH 057/173] need to yield for UI thread async --- .../Receive/AutocadHostObjectBuilder.cs | 8 ++++-- .../Builders/IHostObjectBuilder.cs | 5 ++-- .../Operations/ReceiveOperation.cs | 11 ++++---- .../Threading/Yield.cs | 25 +++++++++++++++++++ 4 files changed, 40 insertions(+), 9 deletions(-) create mode 100644 Sdk/Speckle.Connectors.Common/Threading/Yield.cs diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index b5cf36ad9..bcb0f36fa 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -5,6 +5,7 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; +using Speckle.Connectors.Common.Threading; using Speckle.Converters.Common; using Speckle.Sdk; using Speckle.Sdk.Models; @@ -28,15 +29,17 @@ public class AutocadHostObjectBuilder( RootObjectUnpacker rootObjectUnpacker ) : IHostObjectBuilder { - public HostObjectBuilderResult Build( + public async Task Build( Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { // Prompt the UI conversion started. Progress bar will swoosh. onOperationProgressed.Report(new("Converting", null)); + await Yield.Force().ConfigureAwait(true); // Layer filter for received commit with project and model name layerBaker.CreateLayerFilter(projectName, modelName); @@ -88,6 +91,7 @@ IProgress onOperationProgressed { string objectId = atomicObject.applicationId ?? atomicObject.id; onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); + await Yield.Force().ConfigureAwait(true); try { List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); diff --git a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs index 30ebc7eb9..aa19cc90f 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs @@ -17,11 +17,12 @@ public interface IHostObjectBuilder /// List of application ids. // POC: Where we will return these ids will matter later when we target to also cache received application ids. /// Project and model name are needed for now to construct host app objects into related layers or filters. /// POC: we might consider later to have HostObjectBuilderContext? that might hold all possible data we will need. - HostObjectBuilderResult Build( + Task Build( Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ); } diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 94764c28a..054459b8a 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -63,7 +63,7 @@ CancellationToken cancellationToken // 4 - Convert objects HostObjectBuilderResult res = await _threadContext - .RunOnThread(() => ConvertObjects(commitObject, receiveInfo, onOperationProgressed), _threadOptions.RunReceiveBuildOnMainThread) + .RunOnThreadAsync(() => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken), _threadOptions.RunReceiveBuildOnMainThread) .ConfigureAwait(false); await apiClient @@ -124,10 +124,11 @@ CancellationToken cancellationToken return commitObject; } - private HostObjectBuilderResult ConvertObjects( + private async Task ConvertObjects( Base commitObject, ReceiveInfo receiveInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { using var conversionActivity = _activityFactory.Start("ReceiveOperation.ConvertObjects"); @@ -140,8 +141,8 @@ IProgress onOperationProgressed try { - HostObjectBuilderResult res = _hostObjectBuilder - .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed); + HostObjectBuilderResult res = await _hostObjectBuilder + .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed, cancellationToken).ConfigureAwait(false); conversionActivity?.SetStatus(SdkActivityStatusCode.Ok); return res; } diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs new file mode 100644 index 000000000..70606a0bf --- /dev/null +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -0,0 +1,25 @@ +namespace Speckle.Connectors.Common.Threading; + +public static class Yield +{ + + private static readonly Action s_yield = () => { }; + + public static async ValueTask Force() + { + if (ThreadContext.IsMainThread) + { + await Task.Factory.StartNew( + s_yield, + CancellationToken.None, + TaskCreationOptions.PreferFairness, + SynchronizationContext.Current != null + ? TaskScheduler.FromCurrentSynchronizationContext() + : TaskScheduler.Current).ConfigureAwait(false); + } + else + { + await Task.Yield(); + } + } +} From ea45057c03db792d33acfab50a5a02210083c977 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 13:47:59 +0000 Subject: [PATCH 058/173] revamp yield --- .../Operations/Receive/AutocadHostObjectBuilder.cs | 4 ++-- .../Operations/Receive/RevitHostObjectBuilder.cs | 6 +++--- .../Operations/Receive/RhinoHostObjectBuilder.cs | 4 ++-- .../Builders/IHostObjectBuilder.cs | 9 +++++++++ Sdk/Speckle.Connectors.Common/Threading/Yield.cs | 7 +++++++ 5 files changed, 23 insertions(+), 7 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index bcb0f36fa..38c874037 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -39,7 +39,7 @@ CancellationToken cancellationToken { // Prompt the UI conversion started. Progress bar will swoosh. onOperationProgressed.Report(new("Converting", null)); - await Yield.Force().ConfigureAwait(true); + await Yield.Force().BackToThread(); // Layer filter for received commit with project and model name layerBaker.CreateLayerFilter(projectName, modelName); @@ -91,7 +91,7 @@ CancellationToken cancellationToken { string objectId = atomicObject.applicationId ?? atomicObject.id; onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); - await Yield.Force().ConfigureAwait(true); + await Yield.Force().BackToThread(); try { List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 07b483176..2cc466dc0 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -22,7 +22,7 @@ namespace Speckle.Connectors.Revit.Operations.Receive; -internal sealed class RevitHostObjectBuilder( +public sealed class RevitHostObjectBuilder( IRootToHostConverter converter, IConverterSettingsStore converterSettings, ITransactionManager transactionManager, @@ -34,9 +34,9 @@ internal sealed class RevitHostObjectBuilder( ILogger logger, RevitToHostCacheSingleton revitToHostCacheSingleton, ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter -) : IHostObjectBuilder, IDisposable +) : HostObjectBuilder, IDisposable { - public HostObjectBuilderResult Build( + protected override HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 47a3d7681..dd0787f6e 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -19,7 +19,7 @@ namespace Speckle.Connectors.Rhino.Operations.Receive; /// /// Expects to be a scoped dependency per receive operation. /// -public class RhinoHostObjectBuilder : IHostObjectBuilder +public class RhinoHostObjectBuilder : HostObjectBuilder { private readonly IRootToHostConverter _converter; private readonly IConverterSettingsStore _converterSettings; @@ -55,7 +55,7 @@ ISdkActivityFactory activityFactory } #pragma warning disable CA1506 - public HostObjectBuilderResult Build( + protected override HostObjectBuilderResult Build( #pragma warning restore CA1506 Base rootObject, string projectName, diff --git a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs index aa19cc90f..cea3c1fe8 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs @@ -4,6 +4,15 @@ namespace Speckle.Connectors.Common.Builders; +public abstract class HostObjectBuilder : IHostObjectBuilder +{ + Task IHostObjectBuilder.Build(Base rootObject, string projectName, string modelName, IProgress onOperationProgressed, + CancellationToken cancellationToken) => + Task.FromResult(Build(rootObject, projectName, modelName, onOperationProgressed)); + + protected abstract HostObjectBuilderResult Build(Base rootObject, string projectName, string modelName, + IProgress onOperationProgressed); +} // POC: We might consider to put also IRootObjectBuilder interface here in same folder and create concrete classes from it in per connector. public interface IHostObjectBuilder { diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs index 70606a0bf..23cd77d03 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -1,3 +1,5 @@ +using System.Runtime.CompilerServices; + namespace Speckle.Connectors.Common.Threading; public static class Yield @@ -22,4 +24,9 @@ await Task.Factory.StartNew( await Task.Yield(); } } + + public static ConfiguredValueTaskAwaitable BackToThread(this ValueTask valueTask) => valueTask.ConfigureAwait(true); + public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); + public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); + public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); } From 2971a5e61d3df623e15e5984bba06ae682457f8f Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 14:23:58 +0000 Subject: [PATCH 059/173] Found APIContext and removed it --- .../Bindings/BasicConnectorBindingRevit.cs | 11 +- .../Bindings/RevitSendBinding.cs | 15 +- .../RevitConnectorModule.cs | 3 - .../HostApp/APIContext.cs | 130 ------------------ .../Send/Filters/IRevitSendFilter.cs | 5 +- .../Send/Filters/RevitCategoriesFilter.cs | 8 +- .../Send/Filters/RevitViewsFilter.cs | 8 +- .../Send/Settings/ToSpeckleSettingsManager.cs | 3 - .../Speckle.Connectors.RevitShared.projitems | 1 - 9 files changed, 12 insertions(+), 172 deletions(-) delete mode 100644 Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/APIContext.cs diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index 14d6ee7dd..b72c3a5d1 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -2,7 +2,6 @@ using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card; -using Speckle.Connectors.Revit.HostApp; using Speckle.Connectors.RevitShared; using Speckle.Connectors.RevitShared.Operations.Send.Filters; using Speckle.Converters.RevitShared.Helpers; @@ -19,13 +18,11 @@ internal sealed class BasicConnectorBindingRevit : IBasicConnectorBinding public BasicConnectorBindingCommands Commands { get; } - private readonly APIContext _apiContext; private readonly DocumentModelStore _store; private readonly RevitContext _revitContext; private readonly ISpeckleApplication _speckleApplication; public BasicConnectorBindingRevit( - APIContext apiContext, DocumentModelStore store, IBrowserBridge parent, RevitContext revitContext, @@ -34,7 +31,6 @@ ISpeckleApplication speckleApplication { Name = "baseBinding"; Parent = parent; - _apiContext = apiContext; _store = store; _revitContext = revitContext; _speckleApplication = speckleApplication; @@ -96,21 +92,16 @@ public async Task HighlightModel(string modelCardId) { if (senderModelCard.SendFilter is IRevitSendFilter revitFilter) { - revitFilter.SetContext(_revitContext, _apiContext); + revitFilter.SetContext(_revitContext); } if (senderModelCard.SendFilter is RevitViewsFilter revitViewsFilter) { - await _apiContext - .Run(() => - { var view = revitViewsFilter.GetView(); if (view is not null) { _revitContext.UIApplication.ActiveUIDocument.ActiveView = view; } - }) - .ConfigureAwait(false); return; } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs index d0974aa38..48cd80243 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs @@ -28,7 +28,6 @@ namespace Speckle.Connectors.Revit.Bindings; internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding { private readonly IAppIdleManager _idleManager; - private readonly APIContext _apiContext; private readonly CancellationManager _cancellationManager; private readonly IServiceProvider _serviceProvider; private readonly ISendConversionCache _sendConversionCache; @@ -50,7 +49,6 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding public RevitSendBinding( IAppIdleManager idleManager, RevitContext revitContext, - APIContext apiContext, DocumentModelStore store, CancellationManager cancellationManager, IBrowserBridge bridge, @@ -66,7 +64,6 @@ ISpeckleApplication speckleApplication : base("sendBinding", store, bridge, revitContext) { _idleManager = idleManager; - _apiContext = apiContext; _cancellationManager = cancellationManager; _serviceProvider = serviceProvider; _sendConversionCache = sendConversionCache; @@ -91,8 +88,8 @@ ISpeckleApplication speckleApplication public List GetSendFilters() => [ new RevitSelectionFilter() { IsDefault = true }, - new RevitViewsFilter(RevitContext, _apiContext), - new RevitCategoriesFilter(RevitContext, _apiContext) + new RevitViewsFilter(RevitContext), + new RevitCategoriesFilter(RevitContext) ]; public List GetSendSettings() => @@ -174,12 +171,10 @@ private async Task> RefreshElementsOnSender(SenderModelCard modelC if (modelCard.SendFilter is IRevitSendFilter viewFilter) { - viewFilter.SetContext(RevitContext, _apiContext); + viewFilter.SetContext(RevitContext); } - var selectedObjects = await _apiContext - .Run(_ => modelCard.SendFilter.NotNull().RefreshObjectIds()) - .ConfigureAwait(false); + var selectedObjects = modelCard.SendFilter.NotNull().RefreshObjectIds(); List elements = selectedObjects .Select(uid => activeUIDoc.Document.GetElement(uid)) @@ -384,7 +379,7 @@ private async Task RunExpirationChecks() { if (modelCard.SendFilter is IRevitSendFilter viewFilter) { - viewFilter.SetContext(RevitContext, _apiContext); + viewFilter.SetContext(RevitContext); } var selectedObjects = modelCard.SendFilter.NotNull().IdMap.NotNull().Values; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs index 600cc674e..b719cc2d4 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/DependencyInjection/RevitConnectorModule.cs @@ -69,9 +69,6 @@ public static void AddRevit(this IServiceCollection serviceCollection) // operation progress manager serviceCollection.AddSingleton(); - - // API context helps us to run functions on Revit UI Thread (main) - serviceCollection.AddSingleton(); } public static void RegisterUiDependencies(IServiceCollection serviceCollection) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/APIContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/APIContext.cs deleted file mode 100644 index 5260d0933..000000000 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/APIContext.cs +++ /dev/null @@ -1,130 +0,0 @@ -using Autodesk.Revit.UI; - -namespace Speckle.Connectors.Revit.HostApp; - -/// -/// This class gives access to the Revit API context from anywhere in your codebase. This is essentially a -/// lite version of the Revit.Async package from Kennan Chan. Most of the functionality was taken from that code. -/// The main difference is that this class does not subscribe to the applicationIdling event from revit -/// which the docs say will impact the performance of Revit -/// -public sealed class APIContext : IDisposable -{ - private readonly SemaphoreSlim _semaphore = new(1, 1); - private readonly UIControlledApplication _uiApplication; - private readonly ExternalEventHandler _factoryExternalEventHandler; -#pragma warning disable CA2213 - private readonly ExternalEvent _factoryExternalEvent; -#pragma warning restore CA2213 - - public APIContext(UIControlledApplication application) - { - _uiApplication = application; - _factoryExternalEventHandler = new(ExternalEvent.Create); - _factoryExternalEvent = ExternalEvent.Create(_factoryExternalEventHandler); - } - - public async Task Run(Func func) - { - await _semaphore.WaitAsync().ConfigureAwait(false); - try - { - var handler = new ExternalEventHandler(func); - using var externalEvent = await Run(_factoryExternalEventHandler, handler, _factoryExternalEvent) - .ConfigureAwait(false); - - return await Run(handler, _uiApplication, externalEvent).ConfigureAwait(false); - } - finally - { - _semaphore.Release(); - } - } - - public async Task Run(Action action) => - await Run(app => - { - action(app); - return null!; - }) - .ConfigureAwait(false); - - public async Task Run(Action action) => - await Run(_ => - { - action(); - return null!; - }) - .ConfigureAwait(false); - - private async Task Run( - ExternalEventHandler handler, - TParameter parameter, - ExternalEvent externalEvent - ) - { - var task = handler.GetTask(parameter); - externalEvent.Raise(); - - return await task.ConfigureAwait(false); - } - - public void Dispose() - { - _factoryExternalEvent.Dispose(); - _semaphore.Dispose(); - } -} - -public enum HandlerStatus -{ - NotStarted, - Started, - IsCompleted, - IsFaulted, -} - -internal sealed class ExternalEventHandler : IExternalEventHandler -{ - private TaskCompletionSource Result { get; set; } - - public Task GetTask(TParameter parameter) - { - Parameter = parameter; - Result = new TaskCompletionSource(); - return Result.Task; - } - - private readonly Func _func; - - public ExternalEventHandler(Func func) - { - this._func = func; - } - - public HandlerStatus Status { get; private set; } = HandlerStatus.NotStarted; - private TParameter Parameter { get; set; } - - [System.Diagnostics.CodeAnalysis.SuppressMessage( - "Design", - "CA1031:Do not catch general exception types", - Justification = "This is a very generic utility method for running things in a Revit context. If the result of the Run method is awaited, then the exception caught here will be raised there." - )] - public void Execute(UIApplication app) - { - Status = HandlerStatus.Started; - try - { - var r = _func(Parameter); - Result.SetResult(r); - Status = HandlerStatus.IsCompleted; - } - catch (Exception ex) - { - Status = HandlerStatus.IsFaulted; - Result.SetException(ex); - } - } - - public string GetName() => "SpeckleRevitContextEventHandler"; -} diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/IRevitSendFilter.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/IRevitSendFilter.cs index 8895b357b..fe576b8b3 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/IRevitSendFilter.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/IRevitSendFilter.cs @@ -1,9 +1,8 @@ -using Speckle.Connectors.Revit.HostApp; -using Speckle.Converters.RevitShared.Helpers; +using Speckle.Converters.RevitShared.Helpers; namespace Speckle.Connectors.RevitShared.Operations.Send.Filters; public interface IRevitSendFilter { - public void SetContext(RevitContext revitContext, APIContext apiContext); + public void SetContext(RevitContext revitContext); } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitCategoriesFilter.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitCategoriesFilter.cs index b1cd74db7..25e3d017c 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitCategoriesFilter.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitCategoriesFilter.cs @@ -2,7 +2,6 @@ using Speckle.Connectors.DUI.Exceptions; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Utils; -using Speckle.Connectors.Revit.HostApp; using Speckle.Converters.RevitShared.Helpers; namespace Speckle.Connectors.RevitShared.Operations.Send.Filters; @@ -12,7 +11,6 @@ public record CategoryData(string Name, string Id); public class RevitCategoriesFilter : DiscriminatedObject, ISendFilter, IRevitSendFilter { private RevitContext _revitContext; - private APIContext _apiContext; private Document? _doc; public string Id { get; set; } = "revitCategories"; public string Name { get; set; } = "Categories"; @@ -25,10 +23,9 @@ public class RevitCategoriesFilter : DiscriminatedObject, ISendFilter, IRevitSen public RevitCategoriesFilter() { } - public RevitCategoriesFilter(RevitContext revitContext, APIContext apiContext) + public RevitCategoriesFilter(RevitContext revitContext) { _revitContext = revitContext; - _apiContext = apiContext; _doc = _revitContext.UIApplication?.ActiveUIDocument.Document; GetCategories(); @@ -82,10 +79,9 @@ private void GetCategories() /// NOTE: this is needed since we need doc on `GetObjectIds()` function after it deserialized. /// DI doesn't help here to pass RevitContext from constructor. /// - public void SetContext(RevitContext revitContext, APIContext apiContext) + public void SetContext(RevitContext revitContext) { _revitContext = revitContext; - _apiContext = apiContext; _doc = _revitContext.UIApplication?.ActiveUIDocument.Document; } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitViewsFilter.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitViewsFilter.cs index d98f46b80..d5ae8f0e9 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitViewsFilter.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Filters/RevitViewsFilter.cs @@ -2,7 +2,6 @@ using Speckle.Connectors.DUI.Exceptions; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Utils; -using Speckle.Connectors.Revit.HostApp; using Speckle.Converters.RevitShared.Helpers; namespace Speckle.Connectors.RevitShared.Operations.Send.Filters; @@ -10,7 +9,6 @@ namespace Speckle.Connectors.RevitShared.Operations.Send.Filters; public class RevitViewsFilter : DiscriminatedObject, ISendFilter, IRevitSendFilter { private RevitContext _revitContext; - private APIContext _apiContext; private Document? _doc; public string Id { get; set; } = "revitViews"; public string Name { get; set; } = "Views"; @@ -23,10 +21,9 @@ public class RevitViewsFilter : DiscriminatedObject, ISendFilter, IRevitSendFilt public RevitViewsFilter() { } - public RevitViewsFilter(RevitContext revitContext, APIContext apiContext) + public RevitViewsFilter(RevitContext revitContext) { _revitContext = revitContext; - _apiContext = apiContext; _doc = _revitContext.UIApplication?.ActiveUIDocument.Document; GetViews(); @@ -100,10 +97,9 @@ private void GetViews() /// NOTE: this is needed since we need doc on `GetObjectIds()` function after it deserialized. /// DI doesn't help here to pass RevitContext from constructor. /// - public void SetContext(RevitContext revitContext, APIContext apiContext) + public void SetContext(RevitContext revitContext) { _revitContext = revitContext; - _apiContext = apiContext; _doc = _revitContext.UIApplication?.ActiveUIDocument.Document; } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs index 96ce3fde7..f1e55df9b 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs @@ -14,7 +14,6 @@ namespace Speckle.Connectors.Revit.Operations.Send.Settings; public class ToSpeckleSettingsManager : IToSpeckleSettingsManager { private readonly RevitContext _revitContext; - private readonly APIContext _apiContext; private readonly ISendConversionCache _sendConversionCache; private readonly ElementUnpacker _elementUnpacker; @@ -25,13 +24,11 @@ public class ToSpeckleSettingsManager : IToSpeckleSettingsManager public ToSpeckleSettingsManager( RevitContext revitContext, - APIContext apiContext, ISendConversionCache sendConversionCache, ElementUnpacker elementUnpacker ) { _revitContext = revitContext; - _apiContext = apiContext; _elementUnpacker = elementUnpacker; _sendConversionCache = sendConversionCache; } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems b/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems index 0811cbe7b..cc39c34ae 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Speckle.Connectors.RevitShared.projitems @@ -19,7 +19,6 @@ - From 05eba2502c844d2f3fc11da4496ba6ef476c8322 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 27 Nov 2024 15:39:34 +0000 Subject: [PATCH 060/173] ArcGIS runs all workers on MCT thread --- .../Bindings/ArcGISSendBinding.cs | 13 +-- .../Bindings/BasicConnectorBinding.cs | 30 +++-- .../ArcGISConnectorModule.cs | 3 +- .../Receive/ArcGISHostObjectBuilder.cs | 53 +++------ .../Send/ArcGISRootObjectBuilder.cs | 12 +- .../Utils/ArcGISThreadContext.cs | 108 ++++++++++++++++++ .../Utils/ArcGisDocumentStore.cs | 17 ++- .../ArcGISConversionSettingsFactory.cs | 7 +- .../Utils/FeatureClassUtils.cs | 6 +- .../Bridge/BrowserBridge.cs | 9 +- .../Threading/ThreadContext.cs | 8 +- .../Threading/ThreadOptions.cs | 1 + .../Threading/Yield.cs | 2 + 13 files changed, 169 insertions(+), 100 deletions(-) create mode 100644 Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs index 1b3dcb613..95404059d 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs @@ -3,7 +3,6 @@ using ArcGIS.Core.Data; using ArcGIS.Desktop.Core; using ArcGIS.Desktop.Editing.Events; -using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Mapping; using ArcGIS.Desktop.Mapping.Events; using Microsoft.Extensions.DependencyInjection; @@ -139,8 +138,6 @@ private void SubscribeToArcGISEvents() private void SubscribeToMapMembersDataSourceChange() { - var task = QueuedTask.Run(() => - { if (MapView.Active == null) { return; @@ -159,8 +156,6 @@ private void SubscribeToMapMembersDataSourceChange() { SubscribeToTableDataSourceChange(table); } - }); - task.Wait(); } private void SubscribeToFeatureLayerDataSourceChange(FeatureLayer layer) @@ -366,9 +361,6 @@ public async Task Send(string modelCardId) CancellationToken cancellationToken = _cancellationManager.InitCancellationTokenSource(modelCardId); - var sendResult = await QueuedTask - .Run(async () => - { using var scope = _serviceProvider.CreateScope(); scope .ServiceProvider.GetRequiredService>() @@ -407,7 +399,7 @@ public async Task Send(string modelCardId) } } - var result = await scope + var sendResult = await scope .ServiceProvider.GetRequiredService>() .Execute( mapMembers, @@ -417,9 +409,6 @@ public async Task Send(string modelCardId) ) .ConfigureAwait(false); - return result; - }) - .ConfigureAwait(false); await Commands .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs index 13e0d315c..ec71b65fd 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs @@ -1,5 +1,4 @@ using ArcGIS.Core.Data; -using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Mapping; using Speckle.Connectors.ArcGIS.Utils; using Speckle.Connectors.DUI.Bindings; @@ -60,16 +59,19 @@ public BasicConnectorBinding(DocumentModelStore store, IBrowserBridge parent, IS public void RemoveModel(ModelCard model) => _store.RemoveModel(model); - public async Task HighlightObjects(IReadOnlyList objectIds) => - await HighlightObjectsOnView(objectIds.Select(x => new ObjectID(x)).ToList()).ConfigureAwait(false); + public Task HighlightObjects(IReadOnlyList objectIds) + { + HighlightObjectsOnView(objectIds.Select(x => new ObjectID(x)).ToList()); + return Task.CompletedTask; + } - public async Task HighlightModel(string modelCardId) + public Task HighlightModel(string modelCardId) { var model = _store.GetModelById(modelCardId); if (model is null) { - return; + return Task.CompletedTask; } var objectIds = new List(); @@ -86,26 +88,22 @@ public async Task HighlightModel(string modelCardId) if (objectIds is null) { - return; + return Task.CompletedTask; } - await HighlightObjectsOnView(objectIds).ConfigureAwait(false); + HighlightObjectsOnView(objectIds); + return Task.CompletedTask; } - private async Task HighlightObjectsOnView(IReadOnlyList objectIds) + private void HighlightObjectsOnView(IReadOnlyList objectIds) { MapView mapView = MapView.Active; - await QueuedTask - .Run(async () => - { List mapMembersFeatures = GetMapMembers(objectIds, mapView); ClearSelectionInTOC(); ClearSelection(); - await SelectMapMembersInTOC(mapMembersFeatures).ConfigureAwait(false); + SelectMapMembersInTOC(mapMembersFeatures); SelectMapMembersAndFeatures(mapMembersFeatures); mapView.ZoomToSelected(); - }) - .ConfigureAwait(false); } private List GetMapMembers(IReadOnlyList objectIds, MapView mapView) @@ -171,7 +169,7 @@ private void SelectMapMembersAndFeatures(IReadOnlyList mapMemb } } - private async Task SelectMapMembersInTOC(IReadOnlyList mapMembersFeatures) + private void SelectMapMembersInTOC(IReadOnlyList mapMembersFeatures) { List layers = new(); List tables = new(); @@ -187,7 +185,7 @@ private async Task SelectMapMembersInTOC(IReadOnlyList mapMemb } else { - await QueuedTask.Run(() => layer.SetExpanded(true)).ConfigureAwait(false); + layer.SetExpanded(true); } } else if (member is StandaloneTable table) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs index 3dd514777..1908a7372 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/DependencyInjection/ArcGISConnectorModule.cs @@ -10,7 +10,6 @@ using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Operations; -using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Models.Card.SendFilter; @@ -28,7 +27,7 @@ public static class ArcGISConnectorModule public static void AddArcGIS(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register bindings serviceCollection.AddSingleton(); diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs index 2b98a8300..d0fb515cb 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs @@ -1,7 +1,6 @@ using System.Diagnostics.Contracts; using ArcGIS.Core.CIM; using ArcGIS.Core.Geometry; -using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Mapping; using Speckle.Connectors.ArcGIS.HostApp; using Speckle.Connectors.ArcGIS.Utils; @@ -9,6 +8,7 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Instances; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Converters.ArcGIS3; using Speckle.Converters.ArcGIS3.Utils; using Speckle.Converters.Common; @@ -78,14 +78,14 @@ CancellationToken cancellationToken .ToList(); if (materials != null) { - await _colorManager.ParseMaterials(materials, onOperationProgressed).ConfigureAwait(false); + await _colorManager.ParseMaterials(materials, onOperationProgressed).BackToThread(); } // get colors List? colors = (rootObject[ProxyKeys.COLOR] as List)?.Cast().ToList(); if (colors != null) { - await _colorManager.ParseColors(colors, onOperationProgressed).ConfigureAwait(false); + await _colorManager.ParseColors(colors, onOperationProgressed).BackToThread(); } int count = 0; @@ -107,7 +107,7 @@ CancellationToken cancellationToken object? conversionResult = obj is GisNonGeometricFeature ? null - : await QueuedTask.Run(() => _converter.Convert(obj)).ConfigureAwait(false); + : _converter.Convert(obj); string nestedLayerPath = $"{string.Join("\\", path)}"; if (objectToConvert.TraversalContext.Parent?.Current is not VectorLayer) @@ -130,29 +130,20 @@ obj is GisNonGeometricFeature // 2.1. Group conversionTrackers (to write into datasets) onOperationProgressed.Report(new("Grouping features into layers", null)); - Dictionary> convertedGroups = await QueuedTask - .Run(async () => - { - return await _featureClassUtils - .GroupConversionTrackers(conversionTracker, (s, progres) => onOperationProgressed.Report(new(s, progres))) - .ConfigureAwait(false); - }) - .ConfigureAwait(false); + Dictionary> convertedGroups = + _featureClassUtils + .GroupConversionTrackers(conversionTracker, (s, progres) => onOperationProgressed.Report(new(s, progres))); + // 2.2. Write groups of objects to Datasets onOperationProgressed.Report(new("Writing to Database", null)); - await QueuedTask - .Run(async () => - { - await _featureClassUtils - .CreateDatasets( - conversionTracker, - convertedGroups, - (s, progres) => onOperationProgressed.Report(new(s, progres)) - ) - .ConfigureAwait(false); - }) - .ConfigureAwait(false); + + _featureClassUtils + .CreateDatasets( + conversionTracker, + convertedGroups, + (s, progres) => onOperationProgressed.Report(new(s, progres)) + ); // 3. add layer and tables to the Map and Table Of Content @@ -204,8 +195,7 @@ await _featureClassUtils else { // no layer yet, create and add layer to Map - MapMember mapMember = await AddDatasetsToMap(trackerItem, createdLayerGroups, projectName, modelName) - .ConfigureAwait(false); + MapMember mapMember = AddDatasetsToMap(trackerItem, createdLayerGroups, projectName, modelName); // add layer and layer URI to tracker trackerItem.AddConvertedMapMember(mapMember); @@ -233,7 +223,7 @@ await _featureClassUtils if (bakedMember.Value.Item1 is FeatureLayer fLayer) { // Set the feature layer's renderer. - await QueuedTask.Run(() => fLayer.SetRenderer(bakedMember.Value.Item2)).ConfigureAwait(false); + fLayer.SetRenderer(bakedMember.Value.Item2); } } bakedObjectIds.AddRange(createdLayerGroups.Values.Select(x => x.URI)); @@ -304,16 +294,13 @@ private void AddResultsFromTracker(ObjectConversionTracker trackerItem, List AddDatasetsToMap( + private MapMember AddDatasetsToMap( ObjectConversionTracker trackerItem, Dictionary createdLayerGroups, string projectName, string modelName ) { - return await QueuedTask - .Run(() => - { // get layer details string? datasetId = trackerItem.DatasetId; // should not be null here Uri uri = new($"{_settingsStore.Current.SpeckleDatabasePath.AbsolutePath.Replace('/', '\\')}\\{datasetId}"); @@ -365,7 +352,7 @@ string modelName } } - return (MapMember)layer; + return layer; } catch (ArgumentException) { @@ -376,8 +363,6 @@ string modelName ); return table; } - }) - .ConfigureAwait(false); } private GroupLayer CreateNestedGroupLayer(string nestedLayerPath, Dictionary createdLayerGroups) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs index 08f3e2d0e..b0c3456d1 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs @@ -1,5 +1,4 @@ using System.Diagnostics; -using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Mapping; using Microsoft.Extensions.Logging; using Speckle.Connectors.ArcGIS.HostApp; @@ -53,12 +52,11 @@ ISdkActivityFactory activityFactory } #pragma warning disable CA1506 - public async Task Build( + public RootObjectBuilderResult Build( #pragma warning restore CA1506 IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken ct = default + IProgress onOperationProgressed ) { // TODO: add a warning if Geographic CRS is set @@ -84,8 +82,6 @@ public async Task Build( { foreach ((MapMember mapMember, _) in layersWithDisplayPriority) { - ct.ThrowIfCancellationRequested(); - using (var convertingActivity = _activityFactory.Start("Converting object")) { var collectionHost = rootObjectCollection; @@ -130,9 +126,7 @@ mapMember is not ILayerContainer } else { - converted = await QueuedTask - .Run(() => (Collection)_rootToSpeckleConverter.Convert(mapMember)) - .ConfigureAwait(false); + converted = (Collection)_rootToSpeckleConverter.Convert(mapMember); // get units & Active CRS (for writing geometry coords) converted["units"] = _converterSettings.Current.SpeckleUnits; diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs new file mode 100644 index 000000000..02bccb50f --- /dev/null +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -0,0 +1,108 @@ +using ArcGIS.Desktop.Framework.Threading.Tasks; +using Speckle.Connectors.Common.Threading; + +namespace Speckle.Connectors.ArcGIS.Utils; + +public class ArcGISThreadContext : ThreadContext +{ + public override void RunOnThread(Action action, bool useMain) + { + if (useMain) + { + if (IsMainThread) + { + base.RunOnThread(action, useMain); + } + else { + QueuedTask.Run(action); + } + } + else + { + if (IsMainThread) + { + QueuedTask.Run(action); + } + else { + base.RunOnThread(action, useMain); + } + } + } + + public override async Task RunOnThread(Func action, bool useMain) + { + if (useMain) + {if (IsMainThread) + { + return await base.RunOnThread(action, useMain).BackToThread(); + } + else + { + return await QueuedTask.Run(action).BackToThread(); + } + } + else + { + if (IsMainThread) + { + return await QueuedTask.Run(action).BackToThread(); + } + else { + return await base.RunOnThread(action, useMain).BackToThread(); + } + } + } + + public override async Task RunOnThreadAsync(Func action, bool useMain) + { + if (useMain) + { + if (IsMainThread) + { + await base.RunOnThreadAsync(action, useMain).BackToThread(); + } + else + { + await QueuedTask.Run(action).BackToThread(); + } + } + else + { + if (IsMainThread) + { + await QueuedTask.Run(action).BackToThread(); + } + else + { + await base.RunOnThreadAsync(action, useMain).BackToThread(); + } + } + } + + public override async Task RunOnThreadAsync(Func> action, bool useMain) + + { + if (useMain) + { + if (IsMainThread) + { + return await base.RunOnThreadAsync(action, useMain).BackToThread(); + } + else + { + return await QueuedTask.Run(action).BackToThread(); + } + } + else + { + if (IsMainThread) + { + return await QueuedTask.Run(action).BackToThread(); + } + else + { + return await base.RunOnThreadAsync(action, useMain).BackToThread(); + } + } + } +} diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs index 78be6af1d..9638d715c 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs @@ -1,8 +1,8 @@ using System.Xml.Linq; using ArcGIS.Desktop.Core.Events; -using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Mapping; using ArcGIS.Desktop.Mapping.Events; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Utils; @@ -11,9 +11,11 @@ namespace Speckle.Connectors.ArcGIS.Utils; public class ArcGISDocumentStore : DocumentModelStore { - public ArcGISDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler) + private readonly IThreadContext _threadContext; + public ArcGISDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler, IThreadContext threadContext) : base(jsonSerializer) { + _threadContext = threadContext; ActiveMapViewChangedEvent.Subscribe(a => topLevelExceptionHandler.CatchUnhandled(() => OnMapViewChanged(a)), true); ProjectSavingEvent.Subscribe( _ => @@ -77,8 +79,6 @@ private void OnMapViewChanged(ActiveMapViewChangedEventArgs args) protected override void HostAppSaveState(string modelCardState) { Map map = MapView.Active.Map; - QueuedTask.Run(() => - { // Read existing metadata - To prevent messing existing metadata. 🤞 Hope other add-in developers will do same :D var existingMetadata = map.GetMetadata(); @@ -101,14 +101,12 @@ protected override void HostAppSaveState(string modelCardState) } map.SetMetadata(existingXmlDocument.ToString()); - }); } - protected override void LoadState() - { - Map map = MapView.Active.Map; - QueuedTask.Run(() => + protected override void LoadState() => + _threadContext.RunOnWorker(() => { + Map map = MapView.Active.Map; var metadata = map.GetMetadata(); var root = XDocument.Parse(metadata).Root; var element = root?.Element("SpeckleModelCards"); @@ -121,5 +119,4 @@ protected override void LoadState() string modelsString = element.Value; LoadFromString(modelsString); }); - } } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs index 5ae9ae250..f3c0e2fc4 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs @@ -1,7 +1,6 @@ using ArcGIS.Core.Data; using ArcGIS.Core.Data.DDL; using ArcGIS.Desktop.Core; -using ArcGIS.Desktop.Framework.Threading.Tasks; using ArcGIS.Desktop.Mapping; using Speckle.Converters.ArcGIS3.Utils; using Speckle.Converters.Common; @@ -137,8 +136,7 @@ public Uri AddDatabaseToProject(Uri databasePath) var parentFolder = Path.GetDirectoryName(databasePath.AbsolutePath); var fGdbName = databasePath.Segments[^1]; Item folderToAdd = ItemFactory.Instance.Create(parentFolder); - // POC: QueuedTask - QueuedTask.Run(() => Project.Current.AddItem(folderToAdd as IProjectItem)); + Project.Current.AddItem(folderToAdd as IProjectItem); // Add a file geodatabase or a SQLite or enterprise database connection to a project try @@ -149,8 +147,7 @@ public Uri AddDatabaseToProject(Uri databasePath) if (gdbToAdd is not null) { - // POC: QueuedTask - var addedGeodatabase = QueuedTask.Run(() => Project.Current.AddItem(gdbToAdd as IProjectItem)); + var addedGeodatabase = Project.Current.AddItem(gdbToAdd as IProjectItem); } } catch (NullReferenceException ex) diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs index 0cd9690f1..0795d4550 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs @@ -73,7 +73,7 @@ private Geodatabase GetDatabase() return geodatabase; } - public async Task>> GroupConversionTrackers( + public Dictionary> GroupConversionTrackers( Dictionary conversionTracker, Action onOperationProgressed ) @@ -132,13 +132,12 @@ private Geodatabase GetDatabase() ClearExistingDataset(uniqueKey); onOperationProgressed.Invoke("Grouping features into layers", count++ / conversionTracker.Count); - await Task.Yield(); } return geometryGroups; } - public async Task CreateDatasets( + public void CreateDatasets( Dictionary conversionTracker, Dictionary> featureClassElements, Action onOperationProgressed @@ -201,7 +200,6 @@ public async Task CreateDatasets( } onOperationProgressed.Invoke("Writing to Database", count++ / featureClassElements.Count); - await Task.Yield(); } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index f951a9642..195ae18c4 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -29,6 +29,7 @@ public sealed class BrowserBridge : IBrowserBridge private readonly ConcurrentDictionary _resultsStore = new(); public ITopLevelExceptionHandler TopLevelExceptionHandler { get; } private readonly IThreadContext _threadContext; + private readonly IThreadOptions _threadOptions; private readonly IBrowserScriptExecutor _browserScriptExecutor; private readonly IJsonSerializer _jsonSerializer; @@ -60,8 +61,7 @@ public BrowserBridge( IJsonSerializer jsonSerializer, ILogger logger, ILogger topLogger, - IBrowserScriptExecutor browserScriptExecutor - ) + IBrowserScriptExecutor browserScriptExecutor, IThreadOptions threadOptions) { _threadContext = threadContext; _jsonSerializer = jsonSerializer; @@ -69,6 +69,7 @@ IBrowserScriptExecutor browserScriptExecutor TopLevelExceptionHandler = new TopLevelExceptionHandler(topLogger, this); // Capture the main thread's SynchronizationContext _browserScriptExecutor = browserScriptExecutor; + _threadOptions = threadOptions; } public void AssociateWithBinding(IBinding binding) @@ -102,7 +103,7 @@ public string[] GetBindingsMethodNames() } public void RunMethod(string methodName, string requestId, string methodArgs) => - _threadContext.RunOnMainAsync(async () => + _threadContext.RunOnThreadAsync(async () => { var task = await TopLevelExceptionHandler .CatchUnhandledAsync(async () => @@ -117,7 +118,7 @@ public void RunMethod(string methodName, string requestId, string methodArgs) => string resultJson = SerializeFormattedException(task.Exception); await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); } - }); + }, _threadOptions.RunCommandsOnMainThread); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 441fb91df..51bea970a 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -28,7 +28,7 @@ public ThreadContext() protected virtual Task RunContext(Func> action) => action(); - public void RunOnThread(Action action, bool useMain) + public virtual void RunOnThread(Action action, bool useMain) { if (useMain) { @@ -63,7 +63,7 @@ public void RunOnThread(Action action, bool useMain) } [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - public Task RunOnThread(Func action, bool useMain) + public virtual Task RunOnThread(Func action, bool useMain) { if (useMain) { @@ -98,7 +98,7 @@ public Task RunOnThread(Func action, bool useMain) return RunContext(action.Invoke); } - public async Task RunOnThreadAsync(Func action, bool useMain) + public virtual async Task RunOnThreadAsync(Func action, bool useMain) { if (useMain) { @@ -135,7 +135,7 @@ await Task } [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - public Task RunOnThreadAsync(Func> action, bool useMain) + public virtual Task RunOnThreadAsync(Func> action, bool useMain) { if (useMain) { diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs index 38ead87e7..3ef94b7f2 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadOptions.cs @@ -8,4 +8,5 @@ namespace Speckle.Connectors.Common.Threading; public class ThreadOptions(ISpeckleApplication speckleApplication) : IThreadOptions { public bool RunReceiveBuildOnMainThread => speckleApplication.HostApplication != HostApplications.Rhino.Name; + public bool RunCommandsOnMainThread => speckleApplication.HostApplication != HostApplications.ArcGIS.Name; } diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs index 23cd77d03..bfebf3b24 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -29,4 +29,6 @@ await Task.Factory.StartNew( public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); + public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); + public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); } From b59b37d8048e019b861d1be8206bdf9949c27051 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 28 Nov 2024 09:05:34 +0000 Subject: [PATCH 061/173] Refactor ThreadContext and ArcGIS saving is always on a worker --- .../Utils/ArcGISThreadContext.cs | 101 +-------------- .../Utils/ArcGisDocumentStore.cs | 9 +- .../DependencyInjection/SharedRegistration.cs | 2 +- .../Plugin/RevitThreadContext.cs | 2 +- .../Registration/ServiceRegistration.cs | 2 +- .../Threading/DefaultThreadContext.cs | 66 ++++++++++ .../Threading/ThreadContext.cs | 119 +++++++----------- 7 files changed, 121 insertions(+), 180 deletions(-) create mode 100644 Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index 02bccb50f..7ae0eb6a8 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -5,104 +5,11 @@ namespace Speckle.Connectors.ArcGIS.Utils; public class ArcGISThreadContext : ThreadContext { - public override void RunOnThread(Action action, bool useMain) - { - if (useMain) - { - if (IsMainThread) - { - base.RunOnThread(action, useMain); - } - else { - QueuedTask.Run(action); - } - } - else - { - if (IsMainThread) - { - QueuedTask.Run(action); - } - else { - base.RunOnThread(action, useMain); - } - } - } + protected override Task MainToWorkerAsync(Func> action) => QueuedTask.Run(action); - public override async Task RunOnThread(Func action, bool useMain) - { - if (useMain) - {if (IsMainThread) - { - return await base.RunOnThread(action, useMain).BackToThread(); - } - else - { - return await QueuedTask.Run(action).BackToThread(); - } - } - else - { - if (IsMainThread) - { - return await QueuedTask.Run(action).BackToThread(); - } - else { - return await base.RunOnThread(action, useMain).BackToThread(); - } - } - } + protected override Task WorkerToMainAsync(Func> action) => QueuedTask.Run(action); - public override async Task RunOnThreadAsync(Func action, bool useMain) - { - if (useMain) - { - if (IsMainThread) - { - await base.RunOnThreadAsync(action, useMain).BackToThread(); - } - else - { - await QueuedTask.Run(action).BackToThread(); - } - } - else - { - if (IsMainThread) - { - await QueuedTask.Run(action).BackToThread(); - } - else - { - await base.RunOnThreadAsync(action, useMain).BackToThread(); - } - } - } + protected override Task MainToWorker(Func action) => QueuedTask.Run(action); - public override async Task RunOnThreadAsync(Func> action, bool useMain) - - { - if (useMain) - { - if (IsMainThread) - { - return await base.RunOnThreadAsync(action, useMain).BackToThread(); - } - else - { - return await QueuedTask.Run(action).BackToThread(); - } - } - else - { - if (IsMainThread) - { - return await QueuedTask.Run(action).BackToThread(); - } - else - { - return await base.RunOnThreadAsync(action, useMain).BackToThread(); - } - } - } + protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs index 9638d715c..952b7f836 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs @@ -76,9 +76,10 @@ private void OnMapViewChanged(ActiveMapViewChangedEventArgs args) OnDocumentChanged(); } - protected override void HostAppSaveState(string modelCardState) - { - Map map = MapView.Active.Map; + protected override void HostAppSaveState(string modelCardState) => + _threadContext.RunOnWorker(() => + { + Map map = MapView.Active.Map; // Read existing metadata - To prevent messing existing metadata. 🤞 Hope other add-in developers will do same :D var existingMetadata = map.GetMetadata(); @@ -101,7 +102,7 @@ protected override void HostAppSaveState(string modelCardState) } map.SetMetadata(existingXmlDocument.ToString()); - } + }); protected override void LoadState() => _threadContext.RunOnWorker(() => diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index 9632b802b..f264e63d2 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -25,7 +25,7 @@ public static class SharedRegistration public static void AddAutocadBase(this IServiceCollection serviceCollection) { serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 59eb5c58d..5100ba300 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -3,7 +3,7 @@ namespace Speckle.Connectors.Revit.Plugin; -public class RevitThreadContext : ThreadContext +public class RevitThreadContext : DefaultThreadContext { protected override Task RunContext(Func action) => RevitTask.RunAsync(action); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs index a461cf8b4..a5ad1c12d 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Registration/ServiceRegistration.cs @@ -33,7 +33,7 @@ public static void AddRhino(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(SpeckleConnectorsRhinoCommand.Instance); serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register other connector specific types diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs new file mode 100644 index 000000000..3fb0e7c3e --- /dev/null +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -0,0 +1,66 @@ +using System.Diagnostics.CodeAnalysis; +using Speckle.Sdk.Common; + +namespace Speckle.Connectors.Common.Threading; + +public class DefaultThreadContext : ThreadContext +{ + private readonly SynchronizationContext _threadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); + + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] + protected override Task WorkerToMainAsync(Func> action) + { + + TaskCompletionSource tcs = new(); + _threadContext.Post( + async _ => + { + try + { + T result = await RunContext(action).ConfigureAwait(false); + tcs.SetResult(result); + } + catch (Exception ex) + { + tcs.SetException(ex); + } + }, + null + ); + return tcs.Task; + } + + protected override Task MainToWorkerAsync(Func> action) + { + Task> f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); + return f.Unwrap(); + } + + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] + protected override Task WorkerToMain(Func action) + { + TaskCompletionSource tcs = new(); + _threadContext.Post( + async _ => + { + try + { + T result = await RunContext(action).ConfigureAwait(false); + tcs.SetResult(result); + } + catch (Exception ex) + { + tcs.SetException(ex); + } + }, + null + ); + return tcs.Task; + } + + protected override Task MainToWorker(Func action) + { + Task f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); + return f; + } +} diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 51bea970a..c242fd070 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -1,24 +1,13 @@ -using System.Diagnostics.CodeAnalysis; using Speckle.InterfaceGenerator; -using Speckle.Sdk.Common; namespace Speckle.Connectors.Common.Threading; [GenerateAutoInterface] -public class ThreadContext : IThreadContext +public abstract class ThreadContext : IThreadContext { - private readonly SynchronizationContext _threadContext; + private static readonly Task s_completedTask = Task.FromResult(null); - // Do this when you start your application - private static int s_mainThreadId; - - public ThreadContext() - { - _threadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); - s_mainThreadId = Environment.CurrentManagedThreadId; - } - - public static bool IsMainThread => Environment.CurrentManagedThreadId == s_mainThreadId; + public static bool IsMainThread => Environment.CurrentManagedThreadId == 1 && !Thread.CurrentThread.IsBackground; protected virtual void RunContext(Action action) => action(); @@ -28,7 +17,7 @@ public ThreadContext() protected virtual Task RunContext(Func> action) => action(); - public virtual void RunOnThread(Action action, bool useMain) + public async Task RunOnThread(Action action, bool useMain) { if (useMain) { @@ -38,22 +27,25 @@ public virtual void RunOnThread(Action action, bool useMain) } else { - _threadContext.Post( - _ => - { - RunContext(action); - }, - null - ); + await WorkerToMainAsync( + () => + { + RunContext(action); + return s_completedTask; + } + ) + .ConfigureAwait(false); } } else { if (IsMainThread) { - Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default) - .GetAwaiter() - .GetResult(); + await MainToWorkerAsync(() => + { + action(); + return s_completedTask; + }).BackToAny(); } else { @@ -62,59 +54,41 @@ public virtual void RunOnThread(Action action, bool useMain) } } - [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] public virtual Task RunOnThread(Func action, bool useMain) { if (useMain) { if (IsMainThread) { - return RunContext(action.Invoke); + return RunContext(action); } - TaskCompletionSource tcs = new(); - _threadContext.Post( - async _ => - { - try - { - T result = await RunContext(action).ConfigureAwait(false); - tcs.SetResult(result); - } - catch (Exception ex) - { - tcs.SetException(ex); - } - }, - null - ); - return tcs.Task; + + return WorkerToMain(action); } if (IsMainThread) { - Task f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); - return f; + return MainToWorker(action); } - return RunContext(action.Invoke); + return RunContext(action); } - public virtual async Task RunOnThreadAsync(Func action, bool useMain) + public async Task RunOnThreadAsync(Func action, bool useMain) { if (useMain) { if (IsMainThread) { - await action.Invoke().ConfigureAwait(false); + await RunContext(action).ConfigureAwait(false); } else { - await RunOnThreadAsync( + await WorkerToMainAsync( async () => { await RunContext(action.Invoke).ConfigureAwait(false); return null; - }, - useMain + } ) .ConfigureAwait(false); } @@ -123,9 +97,11 @@ public virtual async Task RunOnThreadAsync(Func action, bool useMain) { if (IsMainThread) { - await Task - .Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default) - .ConfigureAwait(false); + await MainToWorkerAsync(async () => + { + await action().BackToAny(); + return null; + }).BackToAny(); } else { @@ -134,8 +110,7 @@ await Task } } - [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - public virtual Task RunOnThreadAsync(Func> action, bool useMain) + public Task RunOnThreadAsync(Func> action, bool useMain) { if (useMain) { @@ -143,29 +118,21 @@ public virtual Task RunOnThreadAsync(Func> action, bool useMain) { return RunContext(action.Invoke); } - TaskCompletionSource tcs = new(); - _threadContext.Post( - async _ => - { - try - { - T result = await RunContext(action).ConfigureAwait(false); - tcs.SetResult(result); - } - catch (Exception ex) - { - tcs.SetException(ex); - } - }, - null - ); - return tcs.Task; + + return WorkerToMainAsync(action); } if (IsMainThread) { - Task> f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); - return f.Unwrap(); + return MainToWorkerAsync(action); } return RunContext(action.Invoke); } + + protected abstract Task WorkerToMainAsync(Func> action); + + protected abstract Task MainToWorkerAsync(Func> action); + protected abstract Task WorkerToMain(Func action); + + protected abstract Task MainToWorker(Func action); } + From d826a3e9a8f62f31b2adb295aa4138e65c0d6913 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 28 Nov 2024 09:33:23 +0000 Subject: [PATCH 062/173] Revit threading is simplier? --- .../Plugin/RevitThreadContext.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 5100ba300..c1bada778 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -3,13 +3,13 @@ namespace Speckle.Connectors.Revit.Plugin; -public class RevitThreadContext : DefaultThreadContext +public class RevitThreadContext : ThreadContext { - protected override Task RunContext(Func action) => RevitTask.RunAsync(action); + protected override Task MainToWorkerAsync(Func> action) => action(); - protected override Task RunContext(Func action) => RevitTask.RunAsync(action); + protected override Task WorkerToMainAsync(Func> action) => RevitTask.RunAsync(action); - protected override void RunContext(Action action) => RevitTask.RunAsync(action); + protected override Task MainToWorker(Func action) => Task.FromResult(action()); - protected override Task RunContext(Func> action) => RevitTask.RunAsync(action); + protected override Task WorkerToMain(Func action) => RevitTask.RunAsync(action); } From 2e437cbc3b3df7bf8a6dba275e4e296f04a9662b Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 28 Nov 2024 09:40:27 +0000 Subject: [PATCH 063/173] ArcGIS can not always go to the queued task --- .../Utils/ArcGISThreadContext.cs | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index 7ae0eb6a8..dcb7cb237 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -3,13 +3,34 @@ namespace Speckle.Connectors.ArcGIS.Utils; +//don't check for GUI as it's the same check we do in ThreadContext public class ArcGISThreadContext : ThreadContext { - protected override Task MainToWorkerAsync(Func> action) => QueuedTask.Run(action); + protected override Task MainToWorkerAsync(Func> action) + { + if (QueuedTask.OnWorker) + { + return action(); + } + else + { + return QueuedTask.Run(action); + } + } protected override Task WorkerToMainAsync(Func> action) => QueuedTask.Run(action); - protected override Task MainToWorker(Func action) => QueuedTask.Run(action); + protected override Task MainToWorker(Func action) + { + if (QueuedTask.OnWorker) + { + return Task.FromResult(action()); + } + else + { + return QueuedTask.Run(action); + } + } - protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); + protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); } From 4b245840a5bb6a7fb2431234431e008eaa4b8c37 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 28 Nov 2024 09:40:57 +0000 Subject: [PATCH 064/173] format --- .../Bindings/ArcGISSendBinding.cs | 121 ++++++++-------- .../Bindings/BasicConnectorBinding.cs | 16 +-- .../Receive/ArcGISHostObjectBuilder.cs | 132 +++++++++--------- .../Utils/ArcGISThreadContext.cs | 4 +- .../Utils/ArcGisDocumentStore.cs | 7 +- .../Send/AutocadRootObjectBaseBuilder.cs | 10 +- .../Bindings/BasicConnectorBindingRevit.cs | 10 +- .../Receive/RevitHostObjectBuilder.cs | 5 +- .../Plugin/RevitThreadContext.cs | 2 +- .../ArcGISConversionSettingsFactory.cs | 2 +- .../Bridge/BrowserBridge.cs | 35 +++-- .../Builders/IHostObjectBuilder.cs | 19 ++- .../Operations/ReceiveOperation.cs | 12 +- .../Threading/DefaultThreadContext.cs | 13 +- .../Threading/ThreadContext.cs | 43 +++--- .../Threading/Yield.cs | 23 +-- 16 files changed, 234 insertions(+), 220 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs index 95404059d..7082ee687 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs @@ -138,24 +138,24 @@ private void SubscribeToArcGISEvents() private void SubscribeToMapMembersDataSourceChange() { - if (MapView.Active == null) - { - return; - } + if (MapView.Active == null) + { + return; + } - // subscribe to layers - foreach (Layer layer in MapView.Active.Map.Layers) - { - if (layer is FeatureLayer featureLayer) - { - SubscribeToFeatureLayerDataSourceChange(featureLayer); - } - } - // subscribe to tables - foreach (StandaloneTable table in MapView.Active.Map.StandaloneTables) + // subscribe to layers + foreach (Layer layer in MapView.Active.Map.Layers) + { + if (layer is FeatureLayer featureLayer) { - SubscribeToTableDataSourceChange(table); + SubscribeToFeatureLayerDataSourceChange(featureLayer); } + } + // subscribe to tables + foreach (StandaloneTable table in MapView.Active.Map.StandaloneTables) + { + SubscribeToTableDataSourceChange(table); + } } private void SubscribeToFeatureLayerDataSourceChange(FeatureLayer layer) @@ -361,54 +361,51 @@ public async Task Send(string modelCardId) CancellationToken cancellationToken = _cancellationManager.InitCancellationTokenSource(modelCardId); - using var scope = _serviceProvider.CreateScope(); - scope - .ServiceProvider.GetRequiredService>() - .Initialize( - _arcGISConversionSettingsFactory.Create( - Project.Current, - MapView.Active.Map, - new CRSoffsetRotation(MapView.Active.Map) - ) - ); - List mapMembers = modelCard - .SendFilter.NotNull() - .RefreshObjectIds() - .Select(id => (MapMember)MapView.Active.Map.FindLayer(id) ?? MapView.Active.Map.FindStandaloneTable(id)) - .Where(obj => obj != null) - .ToList(); - - if (mapMembers.Count == 0) - { - // Handle as CARD ERROR in this function - throw new SpeckleSendFilterException( - "No objects were found to convert. Please update your publish filter!" - ); - } - - // subscribe to the selected layer events - foreach (MapMember mapMember in mapMembers) - { - if (mapMember is FeatureLayer featureLayer) - { - SubscribeToFeatureLayerDataSourceChange(featureLayer); - } - else if (mapMember is StandaloneTable table) - { - SubscribeToTableDataSourceChange(table); - } - } - - var sendResult = await scope - .ServiceProvider.GetRequiredService>() - .Execute( - mapMembers, - modelCard.GetSendInfo("ArcGIS"), // POC: get host app name from settings? same for GetReceiveInfo - _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), - cancellationToken - ) - .ConfigureAwait(false); + using var scope = _serviceProvider.CreateScope(); + scope + .ServiceProvider.GetRequiredService>() + .Initialize( + _arcGISConversionSettingsFactory.Create( + Project.Current, + MapView.Active.Map, + new CRSoffsetRotation(MapView.Active.Map) + ) + ); + List mapMembers = modelCard + .SendFilter.NotNull() + .RefreshObjectIds() + .Select(id => (MapMember)MapView.Active.Map.FindLayer(id) ?? MapView.Active.Map.FindStandaloneTable(id)) + .Where(obj => obj != null) + .ToList(); + + if (mapMembers.Count == 0) + { + // Handle as CARD ERROR in this function + throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!"); + } + // subscribe to the selected layer events + foreach (MapMember mapMember in mapMembers) + { + if (mapMember is FeatureLayer featureLayer) + { + SubscribeToFeatureLayerDataSourceChange(featureLayer); + } + else if (mapMember is StandaloneTable table) + { + SubscribeToTableDataSourceChange(table); + } + } + + var sendResult = await scope + .ServiceProvider.GetRequiredService>() + .Execute( + mapMembers, + modelCard.GetSendInfo("ArcGIS"), // POC: get host app name from settings? same for GetReceiveInfo + _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), + cancellationToken + ) + .ConfigureAwait(false); await Commands .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs index ec71b65fd..89f04d1f6 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs @@ -90,20 +90,20 @@ public Task HighlightModel(string modelCardId) { return Task.CompletedTask; } - HighlightObjectsOnView(objectIds); - return Task.CompletedTask; + HighlightObjectsOnView(objectIds); + return Task.CompletedTask; } private void HighlightObjectsOnView(IReadOnlyList objectIds) { MapView mapView = MapView.Active; - List mapMembersFeatures = GetMapMembers(objectIds, mapView); - ClearSelectionInTOC(); - ClearSelection(); - SelectMapMembersInTOC(mapMembersFeatures); - SelectMapMembersAndFeatures(mapMembersFeatures); - mapView.ZoomToSelected(); + List mapMembersFeatures = GetMapMembers(objectIds, mapView); + ClearSelectionInTOC(); + ClearSelection(); + SelectMapMembersInTOC(mapMembersFeatures); + SelectMapMembersAndFeatures(mapMembersFeatures); + mapView.ZoomToSelected(); } private List GetMapMembers(IReadOnlyList objectIds, MapView mapView) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs index d0fb515cb..d5f7b3f87 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs @@ -104,10 +104,7 @@ CancellationToken cancellationToken try { obj = _localToGlobalConverterUtils.TransformObjects(objectToConvert.AtomicObject, objectToConvert.Matrix); - object? conversionResult = - obj is GisNonGeometricFeature - ? null - : _converter.Convert(obj); + object? conversionResult = obj is GisNonGeometricFeature ? null : _converter.Convert(obj); string nestedLayerPath = $"{string.Join("\\", path)}"; if (objectToConvert.TraversalContext.Parent?.Current is not VectorLayer) @@ -131,19 +128,19 @@ obj is GisNonGeometricFeature // 2.1. Group conversionTrackers (to write into datasets) onOperationProgressed.Report(new("Grouping features into layers", null)); Dictionary> convertedGroups = - _featureClassUtils - .GroupConversionTrackers(conversionTracker, (s, progres) => onOperationProgressed.Report(new(s, progres))); - + _featureClassUtils.GroupConversionTrackers( + conversionTracker, + (s, progres) => onOperationProgressed.Report(new(s, progres)) + ); // 2.2. Write groups of objects to Datasets onOperationProgressed.Report(new("Writing to Database", null)); - _featureClassUtils - .CreateDatasets( - conversionTracker, - convertedGroups, - (s, progres) => onOperationProgressed.Report(new(s, progres)) - ); + _featureClassUtils.CreateDatasets( + conversionTracker, + convertedGroups, + (s, progres) => onOperationProgressed.Report(new(s, progres)) + ); // 3. add layer and tables to the Map and Table Of Content @@ -301,68 +298,65 @@ private MapMember AddDatasetsToMap( string modelName ) { - // get layer details - string? datasetId = trackerItem.DatasetId; // should not be null here - Uri uri = new($"{_settingsStore.Current.SpeckleDatabasePath.AbsolutePath.Replace('/', '\\')}\\{datasetId}"); - string nestedLayerName = trackerItem.NestedLayerName; + // get layer details + string? datasetId = trackerItem.DatasetId; // should not be null here + Uri uri = new($"{_settingsStore.Current.SpeckleDatabasePath.AbsolutePath.Replace('/', '\\')}\\{datasetId}"); + string nestedLayerName = trackerItem.NestedLayerName; - // add group for the current layer - string shortName = nestedLayerName.Split("\\")[^1]; - string nestedLayerPath = string.Join("\\", nestedLayerName.Split("\\").SkipLast(1)); + // add group for the current layer + string shortName = nestedLayerName.Split("\\")[^1]; + string nestedLayerPath = string.Join("\\", nestedLayerName.Split("\\").SkipLast(1)); - // if no general group layer found - if (createdLayerGroups.Count == 0) - { - Map map = _settingsStore.Current.Map; - GroupLayer mainGroupLayer = LayerFactory.Instance.CreateGroupLayer(map, 0, $"{projectName}: {modelName}"); - mainGroupLayer.SetExpanded(true); - createdLayerGroups["Basic Speckle Group"] = mainGroupLayer; // key doesn't really matter here - } + // if no general group layer found + if (createdLayerGroups.Count == 0) + { + Map map = _settingsStore.Current.Map; + GroupLayer mainGroupLayer = LayerFactory.Instance.CreateGroupLayer(map, 0, $"{projectName}: {modelName}"); + mainGroupLayer.SetExpanded(true); + createdLayerGroups["Basic Speckle Group"] = mainGroupLayer; // key doesn't really matter here + } - var groupLayer = CreateNestedGroupLayer(nestedLayerPath, createdLayerGroups); + var groupLayer = CreateNestedGroupLayer(nestedLayerPath, createdLayerGroups); - // Most of the Speckle-written datasets will be containing geometry and added as Layers - // although, some datasets might be just tables (e.g. native GIS Tables, in the future maybe Revit schedules etc. - // We can create a connection to the dataset in advance and determine its type, but this will be more - // expensive, than assuming by default that it's a layer with geometry (which in most cases it's expected to be) - try - { - var layer = LayerFactory.Instance.CreateLayer(uri, groupLayer, layerName: shortName); - if (layer == null) - { - throw new SpeckleException($"Layer '{shortName}' was not created"); - } - layer.SetExpanded(false); - - // if Scene - // https://community.esri.com/t5/arcgis-pro-sdk-questions/sdk-equivalent-to-changing-layer-s-elevation/td-p/1346139 - if (_settingsStore.Current.Map.IsScene) - { - var groundSurfaceLayer = _settingsStore.Current.Map.GetGroundElevationSurfaceLayer(); - var layerElevationSurface = new CIMLayerElevationSurface - { - ElevationSurfaceLayerURI = groundSurfaceLayer.URI, - }; - - // for Feature Layers - if (layer.GetDefinition() is CIMFeatureLayer cimLyr) - { - cimLyr.LayerElevation = layerElevationSurface; - layer.SetDefinition(cimLyr); - } - } - - return layer; - } - catch (ArgumentException) + // Most of the Speckle-written datasets will be containing geometry and added as Layers + // although, some datasets might be just tables (e.g. native GIS Tables, in the future maybe Revit schedules etc. + // We can create a connection to the dataset in advance and determine its type, but this will be more + // expensive, than assuming by default that it's a layer with geometry (which in most cases it's expected to be) + try + { + var layer = LayerFactory.Instance.CreateLayer(uri, groupLayer, layerName: shortName); + if (layer == null) + { + throw new SpeckleException($"Layer '{shortName}' was not created"); + } + layer.SetExpanded(false); + + // if Scene + // https://community.esri.com/t5/arcgis-pro-sdk-questions/sdk-equivalent-to-changing-layer-s-elevation/td-p/1346139 + if (_settingsStore.Current.Map.IsScene) + { + var groundSurfaceLayer = _settingsStore.Current.Map.GetGroundElevationSurfaceLayer(); + var layerElevationSurface = new CIMLayerElevationSurface { ElevationSurfaceLayerURI = groundSurfaceLayer.URI, }; + + // for Feature Layers + if (layer.GetDefinition() is CIMFeatureLayer cimLyr) { - StandaloneTable table = StandaloneTableFactory.Instance.CreateStandaloneTable( - uri, - groupLayer, - tableName: shortName - ); - return table; + cimLyr.LayerElevation = layerElevationSurface; + layer.SetDefinition(cimLyr); } + } + + return layer; + } + catch (ArgumentException) + { + StandaloneTable table = StandaloneTableFactory.Instance.CreateStandaloneTable( + uri, + groupLayer, + tableName: shortName + ); + return table; + } } private GroupLayer CreateNestedGroupLayer(string nestedLayerPath, Dictionary createdLayerGroups) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index dcb7cb237..3741d2c8d 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -20,7 +20,7 @@ protected override Task MainToWorkerAsync(Func> action) protected override Task WorkerToMainAsync(Func> action) => QueuedTask.Run(action); - protected override Task MainToWorker(Func action) + protected override Task MainToWorker(Func action) { if (QueuedTask.OnWorker) { @@ -32,5 +32,5 @@ protected override Task MainToWorker(Func action) } } - protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); + protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs index 952b7f836..ad44f657f 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs @@ -12,7 +12,12 @@ namespace Speckle.Connectors.ArcGIS.Utils; public class ArcGISDocumentStore : DocumentModelStore { private readonly IThreadContext _threadContext; - public ArcGISDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler, IThreadContext threadContext) + + public ArcGISDocumentStore( + IJsonSerializer jsonSerializer, + ITopLevelExceptionHandler topLevelExceptionHandler, + IThreadContext threadContext + ) : base(jsonSerializer) { _threadContext = threadContext; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs index 6e95c9948..62290cec2 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs @@ -53,16 +53,16 @@ ISdkActivityFactory activityFactory "Maintainability", "CA1506:Avoid excessive class coupling", Justification = """ - It is already simplified but has many different references since it is a builder. Do not know can we simplify it now. - Later we might consider to refactor proxies from one proxy manager? but we do not know the shape of it all potential - proxy classes yet. So I'm supressing this one now!!! - """ + It is already simplified but has many different references since it is a builder. Do not know can we simplify it now. + Later we might consider to refactor proxies from one proxy manager? but we do not know the shape of it all potential + proxy classes yet. So I'm supressing this one now!!! + """ )] public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, IProgress onOperationProgressed - ) + ) { // 0 - Init the root Collection root = diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index b72c3a5d1..6691eb77b 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -97,11 +97,11 @@ public async Task HighlightModel(string modelCardId) if (senderModelCard.SendFilter is RevitViewsFilter revitViewsFilter) { - var view = revitViewsFilter.GetView(); - if (view is not null) - { - _revitContext.UIApplication.ActiveUIDocument.ActiveView = view; - } + var view = revitViewsFilter.GetView(); + if (view is not null) + { + _revitContext.UIApplication.ActiveUIDocument.ActiveView = view; + } return; } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 2cc466dc0..76738b4d3 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -118,10 +118,7 @@ IProgress onOperationProgressed private ( HostObjectBuilderResult builderResult, List<(DirectShape res, string applicationId)> postBakePaintTargets - ) BakeObjects( - List localToGlobalMaps, - IProgress onOperationProgressed - ) + ) BakeObjects(List localToGlobalMaps, IProgress onOperationProgressed) { using var _ = activityFactory.Start("BakeObjects"); var conversionResults = new List(); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index c1bada778..2d53d1ada 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -9,7 +9,7 @@ public class RevitThreadContext : ThreadContext protected override Task WorkerToMainAsync(Func> action) => RevitTask.RunAsync(action); - protected override Task MainToWorker(Func action) => Task.FromResult(action()); + protected override Task MainToWorker(Func action) => Task.FromResult(action()); protected override Task WorkerToMain(Func action) => RevitTask.RunAsync(action); } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs index f3c0e2fc4..e0464be1b 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISConversionSettingsFactory.cs @@ -147,7 +147,7 @@ public Uri AddDatabaseToProject(Uri databasePath) if (gdbToAdd is not null) { - var addedGeodatabase = Project.Current.AddItem(gdbToAdd as IProjectItem); + var addedGeodatabase = Project.Current.AddItem(gdbToAdd as IProjectItem); } } catch (NullReferenceException ex) diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 195ae18c4..9249aa255 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -61,7 +61,9 @@ public BrowserBridge( IJsonSerializer jsonSerializer, ILogger logger, ILogger topLogger, - IBrowserScriptExecutor browserScriptExecutor, IThreadOptions threadOptions) + IBrowserScriptExecutor browserScriptExecutor, + IThreadOptions threadOptions + ) { _threadContext = threadContext; _jsonSerializer = jsonSerializer; @@ -103,22 +105,25 @@ public string[] GetBindingsMethodNames() } public void RunMethod(string methodName, string requestId, string methodArgs) => - _threadContext.RunOnThreadAsync(async () => - { - var task = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => + _threadContext.RunOnThreadAsync( + async () => + { + var task = await TopLevelExceptionHandler + .CatchUnhandledAsync(async () => + { + var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); + string resultJson = _jsonSerializer.Serialize(result); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); + }) + .ConfigureAwait(false); + if (task.Exception is not null) { - var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); - string resultJson = _jsonSerializer.Serialize(result); + string resultJson = SerializeFormattedException(task.Exception); await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - }) - .ConfigureAwait(false); - if (task.Exception is not null) - { - string resultJson = SerializeFormattedException(task.Exception); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - } - }, _threadOptions.RunCommandsOnMainThread); + } + }, + _threadOptions.RunCommandsOnMainThread + ); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs index cea3c1fe8..5d68b23d1 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs @@ -6,13 +6,22 @@ namespace Speckle.Connectors.Common.Builders; public abstract class HostObjectBuilder : IHostObjectBuilder { - Task IHostObjectBuilder.Build(Base rootObject, string projectName, string modelName, IProgress onOperationProgressed, - CancellationToken cancellationToken) => - Task.FromResult(Build(rootObject, projectName, modelName, onOperationProgressed)); + Task IHostObjectBuilder.Build( + Base rootObject, + string projectName, + string modelName, + IProgress onOperationProgressed, + CancellationToken cancellationToken + ) => Task.FromResult(Build(rootObject, projectName, modelName, onOperationProgressed)); - protected abstract HostObjectBuilderResult Build(Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed); + protected abstract HostObjectBuilderResult Build( + Base rootObject, + string projectName, + string modelName, + IProgress onOperationProgressed + ); } + // POC: We might consider to put also IRootObjectBuilder interface here in same folder and create concrete classes from it in per connector. public interface IHostObjectBuilder { diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 9fac3cf5c..4647e79fb 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -20,7 +20,6 @@ public sealed class ReceiveOperation( IThreadOptions threadOptions ) { - public async Task Execute( ReceiveInfo receiveInfo, IProgress onOperationProgressed, @@ -44,8 +43,10 @@ CancellationToken cancellationToken // 4 - Convert objects HostObjectBuilderResult res = await threadContext - .RunOnThreadAsync(() => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken), - threadOptions.RunReceiveBuildOnMainThread) + .RunOnThreadAsync( + () => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken), + threadOptions.RunReceiveBuildOnMainThread + ) .BackToAny(); await apiClient @@ -96,8 +97,9 @@ CancellationToken cancellationToken try { - HostObjectBuilderResult res = await hostObjectBuilder - .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed, cancellationToken).BackToAny(); + HostObjectBuilderResult res = await hostObjectBuilder + .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed, cancellationToken) + .BackToAny(); conversionActivity?.SetStatus(SdkActivityStatusCode.Ok); return res; } diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs index 3fb0e7c3e..1a9717976 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -5,12 +5,13 @@ namespace Speckle.Connectors.Common.Threading; public class DefaultThreadContext : ThreadContext { - private readonly SynchronizationContext _threadContext = SynchronizationContext.Current.NotNull("No UI thread to capture?"); - + private readonly SynchronizationContext _threadContext = SynchronizationContext.Current.NotNull( + "No UI thread to capture?" + ); + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] protected override Task WorkerToMainAsync(Func> action) { - TaskCompletionSource tcs = new(); _threadContext.Post( async _ => @@ -29,13 +30,13 @@ protected override Task WorkerToMainAsync(Func> action) ); return tcs.Task; } - + protected override Task MainToWorkerAsync(Func> action) { Task> f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); return f.Unwrap(); } - + [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] protected override Task WorkerToMain(Func action) { @@ -57,7 +58,7 @@ protected override Task WorkerToMain(Func action) ); return tcs.Task; } - + protected override Task MainToWorker(Func action) { Task f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index c242fd070..ddced50e3 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -27,13 +27,11 @@ public async Task RunOnThread(Action action, bool useMain) } else { - await WorkerToMainAsync( - () => - { - RunContext(action); - return s_completedTask; - } - ) + await WorkerToMainAsync(() => + { + RunContext(action); + return s_completedTask; + }) .ConfigureAwait(false); } } @@ -42,10 +40,11 @@ await WorkerToMainAsync( if (IsMainThread) { await MainToWorkerAsync(() => - { - action(); - return s_completedTask; - }).BackToAny(); + { + action(); + return s_completedTask; + }) + .BackToAny(); } else { @@ -83,13 +82,11 @@ public async Task RunOnThreadAsync(Func action, bool useMain) } else { - await WorkerToMainAsync( - async () => - { - await RunContext(action.Invoke).ConfigureAwait(false); - return null; - } - ) + await WorkerToMainAsync(async () => + { + await RunContext(action.Invoke).ConfigureAwait(false); + return null; + }) .ConfigureAwait(false); } } @@ -98,10 +95,11 @@ public async Task RunOnThreadAsync(Func action, bool useMain) if (IsMainThread) { await MainToWorkerAsync(async () => - { - await action().BackToAny(); - return null; - }).BackToAny(); + { + await action().BackToAny(); + return null; + }) + .BackToAny(); } else { @@ -135,4 +133,3 @@ public Task RunOnThreadAsync(Func> action, bool useMain) protected abstract Task MainToWorker(Func action); } - diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs index bfebf3b24..c1cb6e12c 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -4,20 +4,22 @@ namespace Speckle.Connectors.Common.Threading; public static class Yield { - private static readonly Action s_yield = () => { }; public static async ValueTask Force() { if (ThreadContext.IsMainThread) { - await Task.Factory.StartNew( - s_yield, - CancellationToken.None, - TaskCreationOptions.PreferFairness, - SynchronizationContext.Current != null - ? TaskScheduler.FromCurrentSynchronizationContext() - : TaskScheduler.Current).ConfigureAwait(false); + await Task + .Factory.StartNew( + s_yield, + CancellationToken.None, + TaskCreationOptions.PreferFairness, + SynchronizationContext.Current != null + ? TaskScheduler.FromCurrentSynchronizationContext() + : TaskScheduler.Current + ) + .ConfigureAwait(false); } else { @@ -26,9 +28,14 @@ await Task.Factory.StartNew( } public static ConfiguredValueTaskAwaitable BackToThread(this ValueTask valueTask) => valueTask.ConfigureAwait(true); + public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); + public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); + public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); + public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); + public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); } From 7a71b5d96be95950b3da84aea56930a49b8c3fd7 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 28 Nov 2024 15:38:41 +0000 Subject: [PATCH 065/173] fix tekla compile errors --- .../Operations/Send/TeklaRootObjectBuilder.cs | 8 ++------ .../Speckle.Connector.TeklaShared/ServiceRegistration.cs | 2 +- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs index 69da6664c..e7e4fef87 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs @@ -11,7 +11,6 @@ using Speckle.Sdk.Logging; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; -using Task = System.Threading.Tasks.Task; namespace Speckle.Connectors.TeklaShared.Operations.Send; @@ -44,11 +43,10 @@ TeklaMaterialUnpacker materialUnpacker _materialUnpacker = materialUnpacker; } - public async Task Build( + public RootObjectBuilderResult Build( IReadOnlyList teklaObjects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken cancellationToken = default + IProgress onOperationProgressed ) { using var activity = _activityFactory.Start("Build"); @@ -67,7 +65,6 @@ public async Task Build( foreach (TSM.ModelObject teklaObject in teklaObjects) { using var _2 = _activityFactory.Start("Convert"); - cancellationToken.ThrowIfCancellationRequested(); var result = ConvertTeklaObject(teklaObject, rootObjectCollection, sendInfo.ProjectId); results.Add(result); @@ -88,7 +85,6 @@ public async Task Build( rootObjectCollection[ProxyKeys.RENDER_MATERIAL] = renderMaterialProxies; } - await Task.Yield(); return new RootObjectBuilderResult(rootObjectCollection, results); } diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs index de258945a..d9d42e0cf 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/ServiceRegistration.cs @@ -32,7 +32,7 @@ public static IServiceCollection AddTekla(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); - services.AddDUI(); + services.AddDUI(); services.AddDUIView(); services.AddSingleton(); From 3c0a84ee812f0aace1365814ad415cc9d3760944 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 29 Nov 2024 14:27:04 +0000 Subject: [PATCH 066/173] update etabs --- .../CSi/Speckle.Connectors.ETABS21/packages.lock.json | 9 +-------- .../CSi/Speckle.Connectors.ETABS22/packages.lock.json | 9 +-------- 2 files changed, 2 insertions(+), 16 deletions(-) diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json index 74d5a6c3d..75dcd2fbe 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json @@ -275,8 +275,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" } }, "speckle.connectors.dui.webview": { @@ -353,12 +352,6 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json index 873e54ded..c759c35e1 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json @@ -231,8 +231,7 @@ "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" } }, "speckle.connectors.dui.webview": { @@ -308,12 +307,6 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } From 20ecbada87679700b8fe3335111e6c4d9ab5da44 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 29 Nov 2024 14:54:51 +0000 Subject: [PATCH 067/173] thread context --- .../CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs index ce63063fc..0f689e31f 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs @@ -1,5 +1,6 @@ using Microsoft.Extensions.DependencyInjection; using Speckle.Connectors.Common; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.CSiShared.Bindings; using Speckle.Connectors.CSiShared.Filters; using Speckle.Connectors.CSiShared.HostApp; @@ -20,7 +21,7 @@ public static IServiceCollection AddCSi(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); - services.AddDUI(); + services.AddDUI(); services.AddDUIView(); services.AddSingleton(); From 54dfd05c8ec73b8f486692e218daee9eba0511a7 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 29 Nov 2024 14:55:01 +0000 Subject: [PATCH 068/173] autocad threading? --- .../Operations/Receive/AutocadHostObjectBuilder.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 38c874037..e6423e742 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -75,11 +75,13 @@ CancellationToken cancellationToken baseLayerPrefix, onOperationProgressed ); + await Yield.Force().BackToThread(); } if (unpackedRoot.ColorProxies != null) { colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); + await Yield.Force().BackToThread(); } // 5 - Convert atomic objects @@ -91,7 +93,11 @@ CancellationToken cancellationToken { string objectId = atomicObject.applicationId ?? atomicObject.id; onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); - await Yield.Force().BackToThread(); + if (count % 50 == 0) + { + await Yield.Force().BackToThread(); + } + try { List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); From bdf698afda1221d24107bbb08e8103fe86af195d Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 21:11:41 +0000 Subject: [PATCH 069/173] Add Navisworks conversion settings and modes This commit adds new files for Navisworks conversion settings and modes. - The `ConversionModes.cs` file defines enums for representation mode and origin mode used during conversion. - The `NavisworksConversionSettings.cs` file represents the settings used for Navisworks conversions, including properties such as document, units, origin mode, hidden elements, visual representation mode, and more. - A new factory class `NavisworksConversionSettingsFactory.cs` is added to create instances of the conversion settings with calculated values based on the active document. - A new file `GeometryHelpers.cs` which contains a static class `GeometryHelpers`. The class provides a method `VectorMatch` that compares two vectors to determine if they are approximately equal within a given tolerance. The method takes in two vectors and an optional tolerance value, and returns true if the vectors match within the tolerance, otherwise false. --- .../Helpers/GeometryHelpers.cs | 16 +++ .../NavisworksConversionSettingsFactory.cs | 17 --- .../Settings/ConversionModes.cs | 47 +++++++ .../Settings/NavisworksConversionSettings.cs | 26 ++-- .../NavisworksConversionSettingsFactory.cs | 127 ++++++++++++++++++ ...ckle.Converters.NavisworksShared.projitems | 6 +- 6 files changed, 208 insertions(+), 31 deletions(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs new file mode 100644 index 000000000..fc6302f35 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs @@ -0,0 +1,16 @@ +namespace Speckle.Converter.Navisworks.Helpers; + +public static class GeometryHelpers +{ + /// + /// Compares two vectors to determine if they are approximately equal within a given tolerance. + /// + /// The first comparison vector. + /// The second comparison vector. + /// The tolerance value for the comparison. Default is 1e-9. + /// True if the vectors match within the tolerance; otherwise, false. + public static bool VectorMatch(NAV.Vector3D vectorA, NAV.Vector3D vectorB, double tolerance = 1e-9) => + Math.Abs(vectorA.X - vectorB.X) < tolerance + && Math.Abs(vectorA.Y - vectorB.Y) < tolerance + && Math.Abs(vectorA.Z - vectorB.Z) < tolerance; +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs deleted file mode 100644 index dfcd2bb60..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Services/NavisworksConversionSettingsFactory.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Speckle.Converter.Navisworks.Settings; -using Speckle.Converters.Common; -using Speckle.InterfaceGenerator; - -namespace Speckle.Converters.RevitShared.Settings; - -[GenerateAutoInterface] -public class NavisworksConversionSettingsFactory( - IHostToSpeckleUnitConverter unitsConverter, - IConverterSettingsStore settingsStore -) : INavisworksConversionSettingsFactory -{ - public NavisworksConversionSettings Current => settingsStore.Current; - - public NavisworksConversionSettings Create(NAV.Document document) => - new(document, unitsConverter.ConvertOrThrow(NavisworksApp.ActiveDocument.Units)); -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs new file mode 100644 index 000000000..b5835b1f6 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs @@ -0,0 +1,47 @@ +namespace Speckle.Converter.Navisworks.Settings; + +/// +/// Defines the representation mode to be used during conversion. +/// +public enum RepresentationMode +{ + /// + /// Uses the current active representation (e.g., overrides or temporary settings). + /// + ACTIVE, + + /// + /// Preserves the original representation as defined in the source data. + /// + ORIGINAL, + + /// + /// Applies a fixed or user-defined representation, overriding others. + /// + PERMANENT +} + +/// +/// Specifies the origin mode, which defines the basis of a transformation +/// applied to the model before conversion. The transformation aligns +/// the model's origin point to a base point. +/// +public enum OriginMode +{ + /// + /// Uses the model origin as the base point. This is the default mode. + /// No transformation is applied other than converting from the local + /// coordinate system to the world coordinate system. + /// + MODEL_ORIGIN, + + /// + /// Uses a user-defined project base point as the base point for the transformation. + /// + PROJECT_BASE_ORIGIN, + + /// + /// Uses the center of the model's bounding box as the base point for the transformation. + /// + BOUNDING_BOX_ORIGIN +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index 92e22aec6..f57a221d2 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -1,13 +1,17 @@ namespace Speckle.Converter.Navisworks.Settings; -public record NavisworksConversionSettings -{ - public NavisworksConversionSettings(NAV.Document document, string speckleUnits) - { - this.Document = document; - this.SpeckleUnits = speckleUnits; - } - - public NAV.Document Document { get; } - public string SpeckleUnits { get; } -} +/// +/// Represents the settings used for Navisworks conversions. +/// +public record NavisworksConversionSettings( + NAV.Document Document, // The active Navisworks document to be processed. + string SpeckleUnits, // Units used in Speckle for standardised measurements. + OriginMode OriginMode, // Defines the base point for transformations. + bool IncludeInternalProperties, // Whether to include internal Navisworks properties in the output. + bool ConvertHiddenElements, // Whether to include hidden elements during the conversion process. + RepresentationMode VisualRepresentationMode, // Specifies the visual representation mode. + bool CoalescePropertiesFromFirstObjectAncestor, // Whether to merge properties from the first object ancestor. + NAV.Vector3D TransformVector, // Transformation vector applied to the model. + bool IsUpright, // Indicates if the model's orientation is upright relative to canonical up. + NAV.BoundingBox3D ModelBoundingBox // The bounding box of the model. +); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs new file mode 100644 index 000000000..3705111ce --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -0,0 +1,127 @@ +using Microsoft.Extensions.Logging; +using Speckle.Converters.Common; +using Speckle.InterfaceGenerator; +using static Speckle.Converter.Navisworks.Helpers.GeometryHelpers; +using static Speckle.Converter.Navisworks.Settings.OriginMode; +using static Speckle.Converter.Navisworks.Settings.RepresentationMode; + +namespace Speckle.Converter.Navisworks.Settings; + +[GenerateAutoInterface] +public class NavisworksConversionSettingsFactory : INavisworksConversionSettingsFactory +{ + private readonly IConverterSettingsStore _settingsStore; + private readonly ILogger _logger; + private readonly IHostToSpeckleUnitConverter _unitsConverter; + + private NAV.Document _document; + private NAV.BoundingBox3D _modelBoundingBox; + private bool _convertHiddenElements; + + public NavisworksConversionSettingsFactory( + IHostToSpeckleUnitConverter unitsConverter, + IConverterSettingsStore settingsStore, + ILogger logger + ) + { + _logger = logger; + _settingsStore = settingsStore; + _unitsConverter = unitsConverter; + } + + public NavisworksConversionSettings Current => _settingsStore.Current; + + private bool _includeInternalProperties; + private bool _coalescePropertiesFromFirstObjectAncestor; + private RepresentationMode _visualRepresentationMode; + private OriginMode _originMode; + + private static readonly NAV.Vector3D s_canonicalUp = new(0, 0, 1); + + /// + /// Creates a new instance of NavisworksConversionSettings with calculated values. + /// + /// + /// Thrown when no active document is found or document units cannot be converted. + /// + public NavisworksConversionSettings Create() + { + // Default settings until overriding them in UI is implemented + _convertHiddenElements = false; + _includeInternalProperties = false; + _coalescePropertiesFromFirstObjectAncestor = true; + _visualRepresentationMode = ACTIVE; + _originMode = MODEL_ORIGIN; + + // Derived settings from the active document + _document = NavisworksApp.ActiveDocument ?? throw new InvalidOperationException("No active document found."); + _logger.LogInformation("Creating settings for document: {DocumentName}", _document.Title); + + _modelBoundingBox = + _document.GetBoundingBox(_convertHiddenElements) + ?? throw new InvalidOperationException("Bounding box could not be determined."); + + var units = _unitsConverter.ConvertOrThrow(_document.Units); + if (string.IsNullOrEmpty(units)) + { + throw new InvalidOperationException("Document units could not be converted."); + } + + // Calculate the transformation vector based on the origin mode + var transformVector = CalculateTransformVector(); + var isUpright = VectorMatch(_document.UpVector, s_canonicalUp); + + return new NavisworksConversionSettings( + Document: _document, + SpeckleUnits: units, + OriginMode: _originMode, + IncludeInternalProperties: _includeInternalProperties, + ConvertHiddenElements: _convertHiddenElements, + VisualRepresentationMode: _visualRepresentationMode, + CoalescePropertiesFromFirstObjectAncestor: _coalescePropertiesFromFirstObjectAncestor, + TransformVector: transformVector, + IsUpright: isUpright, + ModelBoundingBox: _modelBoundingBox + ); + } + + private NAV.Vector3D CalculateTransformVector() => + _originMode switch + { + PROJECT_BASE_ORIGIN => CalculateProjectBasePointTransform(), + BOUNDING_BOX_ORIGIN => CalculateBoundingBoxTransform(), + MODEL_ORIGIN => new NAV.Vector3D(0, 0, 0), // Default identity transform + _ => throw new NotSupportedException($"OriginMode {_originMode} is not supported.") + }; + + /// + /// Calculates the transformation vector based on the project base point. + /// + /// The calculated transformation vector. + /// + /// This uses mocked project base point data and should be replaced with actual logic + /// when finally integrating with UI or external configurations. + /// + private NAV.Vector3D CalculateProjectBasePointTransform() + { + // TODO: Replace with actual logic to fetch project base point and units from UI or settings + using var projectBasePoint = new NAV.Vector3D(10, 20, 0); + var projectBasePointUnits = NAV.Units.Meters; + + var scale = NAV.UnitConversion.ScaleFactor(projectBasePointUnits, _document.Units); + + // The transformation vector is the negative of the project base point, scaled to the source units. + // These units are independent of the Speckle units, and because they are from user input. + return new NAV.Vector3D(-projectBasePoint.X * scale, -projectBasePoint.Y * scale, 0); + } + + /// + /// Calculates the transformation vector based on the bounding box center offset from the origin. + /// + /// The calculated transformation vector. + /// + /// This uses the document active model bounding box center as the base point for the transformation. + /// + private NAV.Vector3D CalculateBoundingBoxTransform() => + new(-_modelBoundingBox.Center.X, -_modelBoundingBox.Center.Y, 0); +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index c11e6ece2..d6dab8a8a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -1,4 +1,4 @@ - + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) @@ -13,9 +13,9 @@ - + - + \ No newline at end of file From 1aacc4a38f1158567995cb5904ccb2d984342071 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 22:35:29 +0000 Subject: [PATCH 070/173] Add ArrayExtensions.cs for converting arrays to generic type arrays This commit adds a new file, ArrayExtensions.cs, which contains an extension method for converting arrays to generic type arrays. The method uses the `Array.Copy` function to copy the elements of the original array into a new array of the specified generic type. This allows for more flexibility when working with arrays in the codebase. Specifically Navisworks heavily uses 1* indexed arrays which are a pain to access generically. --- .../Extensions/ArrayExtensions.cs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Extensions/ArrayExtensions.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Extensions/ArrayExtensions.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Extensions/ArrayExtensions.cs new file mode 100644 index 000000000..c8c3b5e74 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Extensions/ArrayExtensions.cs @@ -0,0 +1,15 @@ +using System.Runtime.CompilerServices; + +namespace Speckle.Converter.Navisworks.Extensions; + +internal static class ArrayExtension +{ + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static T[] ToArray(this Array arr) + where T : struct + { + var result = new T[arr.Length]; + Array.Copy(arr, result, result.Length); + return result; + } +} From 810e6c63566273f98721348aad3353ee32444e05 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 22:36:25 +0000 Subject: [PATCH 071/173] Delete Navisworks converters This commit deletes two files: ModelItemToSpeckleConverter.cs and NavisworksRootToSpeckleConverter.cs. These files contained code related to converting Navisworks models to Speckle format. The deletion of these files indicates that the functionality provided by these converters is no longer needed or has been replaced by other methods. --- .../ToSpeckle/ModelItemToSpeckleConverter.cs | 11 ------- .../NavisworksRootToSpeckleConverter.cs | 31 ------------------- 2 files changed, 42 deletions(-) delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs deleted file mode 100644 index dab505560..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemToSpeckleConverter.cs +++ /dev/null @@ -1,11 +0,0 @@ -using Speckle.Converter.Navisworks.Settings; -using Speckle.Converters.Common; -using Speckle.Converters.Common.Objects; - -namespace Speckle.Converter.Navisworks.ToSpeckle; - -public class ModelItemToSpeckleTopLevelConverter(IConverterSettingsStore settingsStore) - : IToSpeckleTopLevelConverter -{ - public SSM.Base Convert(object target) => new() { ["units"] = settingsStore.Current.SpeckleUnits }; -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs deleted file mode 100644 index 129f164c3..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System.ComponentModel.DataAnnotations; -using Speckle.Converters.Common; -using Speckle.Converters.Common.Objects; -using Speckle.Converters.Common.Registration; -using Speckle.Sdk.Models; - -namespace Speckle.Converter.Navisworks.ToSpeckle; - -public class NavisworksRootToSpeckleConverter(IConverterManager toSpeckle) - : IRootToSpeckleConverter -{ - public Base Convert(object target) - { - if (target == null) - { - throw new ValidationException("Target object is null"); - } - - if (target is not NAV.ModelItem) - { - throw new ValidationException($"Target object is not a ModelObject. It's a ${target.GetType()}"); - } - - Type type = target.GetType(); - var objectConverter = toSpeckle.ResolveConverter(type); - - Base result = objectConverter.Convert(target); - - return result; - } -} From 8e0584f2d335ba76e977bcadd719c550ba13b856 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 22:38:25 +0000 Subject: [PATCH 072/173] Add new classes for double-precision geometric primitives and transformation matrices - Added `Primitives.cs` file containing definitions for `PointD`, `TriangleD`, and `LineD` classes with double-precision vertex storage - Added `TransformMatrix.cs` file containing a class for 4x4 transformation matrices - Updated project items to include the new files in the build process --- .../Geometries/Primitives.cs | 49 ++++++++ .../Geometries/TransformMatrix.cs | 59 ++++++++++ .../GlobalUsing.cs | 1 + .../Helpers/PropertyHelpers.cs | 108 ++++++++++++++++++ ...ckle.Converters.NavisworksShared.projitems | 4 + 5 files changed, 221 insertions(+) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/TransformMatrix.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs new file mode 100644 index 000000000..6b59d8f83 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs @@ -0,0 +1,49 @@ +// --------------------------------------------------------------------------------------------------------------------- +// File: Primitives.cs +// Description: Contains definitions for primitives (PointD, TriangleD, LineD) with double-precision vertex storage +// for use in the Speckle Navisworks converter. These classes ensure higher precision for geometric data +// compared to the default float-based representations. +// +// --------------------------------------------------------------------------------------------------------------------- +// Notes: +// - These primitives leverage NAV.Vector3D for double-precision vertex representation. +// - Suppression of unused member warnings is intentional to accommodate potential future use cases. +// +// --------------------------------------------------------------------------------------------------------------------- + + + +using System.Diagnostics.CodeAnalysis; + +namespace Speckle.Converter.Navisworks.Geometry; + +/// +/// A Point where the vertex is stored with double values as opposed to floats +/// +[SuppressMessage("ReSharper", "UnusedMember.Global")] +public class PointD(NAV.Vector3D vertex1) +{ + // ReSharper disable once UnusedAutoPropertyAccessor.Global + public NAV.Vector3D Vertex1 { get; set; } = vertex1; +} + +/// +/// A Triangle where all vertices are in turn stored with double values as opposed to floats +/// +[SuppressMessage("ReSharper", "UnusedMember.Global")] +public class TriangleD(NAV.Vector3D v1, NAV.Vector3D v2, NAV.Vector3D v3) +{ + public NAV.Vector3D Vertex1 { get; set; } = v1; + public NAV.Vector3D Vertex2 { get; set; } = v2; + public NAV.Vector3D Vertex3 { get; set; } = v3; +} + +/// +/// A Line where each end point vertex is in turn stored with double values as opposed to floats +/// +[SuppressMessage("ReSharper", "UnusedMember.Global")] +public class LineD(NAV.Vector3D v1, NAV.Vector3D v2) +{ + public NAV.Vector3D Vertex1 { get; set; } = v1; + public NAV.Vector3D Vertex2 { get; set; } = v2; +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/TransformMatrix.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/TransformMatrix.cs new file mode 100644 index 000000000..8fd7dde7d --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/TransformMatrix.cs @@ -0,0 +1,59 @@ +using Speckle.DoubleNumerics; + +namespace Speckle.Converter.Navisworks.Geometry; + +public class Transforms +{ + private readonly double[] _elements; + + /// + /// Creates a new 4x4 matrix with the given elements in row-major order. + /// + /// An array of 16 elements representing the matrix. + public Transforms(double[] elements) + { + if (elements == null || elements.Length != 16) + { + throw new ArgumentException("A 4x4 matrix must have exactly 16 elements.", nameof(elements)); + } + + this._elements = elements; + } + + /// + /// Accesses the element at the given row and column. + /// + public double this[int row, int col] + { + get => _elements[row * 4 + col]; + set => _elements[row * 4 + col] = value; + } + + /// + /// Applies the transformation defined by this matrix to a 3D vector. + /// + public NAV.Vector3D Transform(Vector3 vector) + { + var t1 = this[0, 3] * vector.X + this[1, 3] * vector.Y + this[2, 3] * vector.Z + this[3, 3]; + if (t1 == 0) + { + t1 = 1; // Prevent division by zero + } + + var x = (this[0, 0] * vector.X + this[0, 1] * vector.Y + this[0, 2] * vector.Z + this[0, 3]) / t1; + var y = (this[1, 0] * vector.X + this[1, 1] * vector.Y + this[1, 2] * vector.Z + this[1, 3]) / t1; + var z = (this[2, 0] * vector.X + this[2, 1] * vector.Y + this[2, 2] * vector.Z + this[2, 3]) / t1; + + return new NAV.Vector3D(x, y, z); + } + + /// + /// Creates an identity matrix. + /// + public static Transforms Identity() => new([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]); + + /// + /// Returns the matrix as a flat array in row-major order. + /// + public double[] ToArray() => (double[])_elements.Clone(); +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs index 778ce58c3..b58b1908f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs @@ -1,3 +1,4 @@ +global using ComBridge = Autodesk.Navisworks.Api.ComApi.ComApiBridge; global using NAV = Autodesk.Navisworks.Api; global using NavisworksApp = Autodesk.Navisworks.Api.Application; global using SSC = Speckle.Sdk.Common; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs new file mode 100644 index 000000000..0d7eba46c --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs @@ -0,0 +1,108 @@ +using System.Globalization; +using Speckle.Objects.Geometry; + +namespace Speckle.Converter.Navisworks.Helpers; + +public class PropertyHelpers +{ + private static dynamic ConvertPropertyValue(NAV.VariantData value) + { + dynamic propertyValue = null; + + NAV.VariantDataType type = value.DataType; + + switch (type) + { + case NAV.VariantDataType.Boolean: + propertyValue = value.ToBoolean(); + break; + case NAV.VariantDataType.DisplayString: + propertyValue = value.ToDisplayString(); + break; + case NAV.VariantDataType.IdentifierString: + propertyValue = value.ToIdentifierString(); + break; + case NAV.VariantDataType.Int32: + propertyValue = value.ToInt32(); + break; + case NAV.VariantDataType.Double: + propertyValue = value.ToDouble(); + break; + case NAV.VariantDataType.DoubleAngle: + propertyValue = value.ToDoubleAngle(); + break; + case NAV.VariantDataType.DoubleArea: + propertyValue = value.ToDoubleArea(); + break; + case NAV.VariantDataType.DoubleLength: + propertyValue = value.ToDoubleLength(); + break; + case NAV.VariantDataType.DoubleVolume: + propertyValue = value.ToDoubleVolume(); + break; + case NAV.VariantDataType.DateTime: + propertyValue = value.ToDateTime().ToString(CultureInfo.InvariantCulture); + break; + case NAV.VariantDataType.NamedConstant: + propertyValue = value.ToNamedConstant().DisplayName; + break; + case NAV.VariantDataType.Point3D: + NAV.Point3D point = value.ToPoint3D(); + Point pointProperty = new(point.X, point.Y, point.Z); + propertyValue = pointProperty.ToString(); + break; + case NAV.VariantDataType.None: + break; + case NAV.VariantDataType.Point2D: + break; + default: + propertyValue = value.ToString(); + break; + } + + return propertyValue; + } + + /// + /// Adds a property to an object (either a Base object or a Dictionary) if the value is not null or empty. + /// + /// The object to which the property is to be added. Can be either a Base object or a Dictionary. + /// The name of the property to add. + /// The value of the property. + internal static void AddPropertyIfNotNullOrEmpty(object baseObject, string propertyName, object value) + { + switch (value) + { + case string stringValue: + { + if (!string.IsNullOrEmpty(stringValue)) + { + AssignProperty(baseObject, propertyName, value); + } + + break; + } + default: + AssignProperty(baseObject, propertyName, value); + break; + } + } + + /// + /// Helper method to assign the property to the base object or dictionary. + /// + private static void AssignProperty(object baseObject, string propertyName, object value) + { + switch (baseObject) + { + case SSM.Base baseObj: + baseObj[propertyName] = value; + break; + case Dictionary baseDict: + baseDict[propertyName] = value; + break; + default: + throw new ArgumentException("Unsupported object type", nameof(baseObject)); + } + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index d6dab8a8a..69cd59a77 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -11,6 +11,10 @@ + + + + From 85666c41dda28e7210002f9a638aa6f2c51781e7 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 23:24:26 +0000 Subject: [PATCH 073/173] Add NavisworksObject and NavisworksGeometryObject classes This commit adds the NavisworksObject and NavisworksGeometryObject classes to handle non-geometry and geometry-based Speckle objects converted from Navisworks. These classes implement the INavisworksObject interface, which provides methods for adding properties to objects and retrieving property values by key. The NavisworksObject class represents a non-geometry object with a name property and a dictionary of properties, while the NavisworksGeometryObject class represents a geometry-based object with a displayValue property, name property, and a dictionary of properties. --- .../Models/NavisworksObjects.cs | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs new file mode 100644 index 000000000..33dd7e8d6 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs @@ -0,0 +1,62 @@ +using System.Diagnostics.CodeAnalysis; +using Speckle.Objects; + +namespace Speckle.Converter.Navisworks.Models; + +/// +/// Interface for Speckle objects converted from Navisworks. +/// +public interface INavisworksObject : IDataObject +{ + /// + /// Adds a property to the object. + /// + /// The property key. + /// The property value. + void AddProperty(string key, object? value); + + /// + /// Retrieves a property value by key. + /// + /// The property key. + /// The property value, or null if the key does not exist. + object? GetProperty(string key); +} + +/// +/// Represents a non-geometry Speckle object. +/// +internal class NavisworksObject(string name) : SSM.Base, INavisworksObject +{ + public string name { get; init; } = name; + + private readonly Dictionary _properties = []; + + public void AddProperty(string key, object? value) => _properties[key] = value; + + public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; + + [SSM.DetachProperty] + [SuppressMessage("Style", "IDE1006:Naming Styles")] + [SuppressMessage("ReSharper", "UnusedAutoPropertyAccessor.Local")] + [SuppressMessage("ReSharper", "InconsistentNaming")] + public required List elements { get; set; } = []; + + // Implement the `IDataObject.displayValue` property with an empty list + IReadOnlyList IDataObject.displayValue => []; +} + +/// +/// Represents a geometry-based Speckle object. +/// +internal class NavisworksGeometryObject(IReadOnlyList displayValue, string name) : SSM.Base, INavisworksObject +{ + IReadOnlyList IDataObject.displayValue => displayValue; + public string name { get; init; } = name; + + private readonly Dictionary _properties = []; + + public void AddProperty(string key, object? value) => _properties[key] = value; + + public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; +} From cc5a4022de1dee9ba3e02657caa23957111663fc Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 23:25:34 +0000 Subject: [PATCH 074/173] Add ClassPropertiesExtractor, DisplayValueExtractor, and PropertySetsExtractor classes - Added ClassPropertiesExtractor class to extract class properties from a NAV.ModelItem - Added DisplayValueExtractor class to extract display values from a NAV.ModelItem - Added PropertySetsExtractor class to extract property sets from a NAV.ModelItem --- .../ClassPropertiesExtractor.cs | 61 +++++++++++++++++++ .../DataExtractors/DisplayValueExtractor.cs | 24 ++++++++ .../DataExtractors/PropertySetsExtractor.cs | 52 ++++++++++++++++ ...ckle.Converters.NavisworksShared.projitems | 7 ++- 4 files changed, 142 insertions(+), 2 deletions(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs new file mode 100644 index 000000000..2ae30fad8 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -0,0 +1,61 @@ +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class ClassPropertiesExtractor +{ + private readonly IConverterSettingsStore _settingsStore; + + public ClassPropertiesExtractor(IConverterSettingsStore settingsStore) + { + _settingsStore = settingsStore; + } + + public Dictionary? GetClassProperties(NAV.ModelItem modelItem) + { + if (_settingsStore.Current.ExcludeProperties) + { + return null; + } + + var propertyDictionary = ExtractClassProperties(modelItem); + + return propertyDictionary; + } + + /// + /// Extracts property sets from a NAV.ModelItem and adds them to a dictionary, + /// including various details such as ClassName, ClassDisplayName, DisplayName, + /// InstanceGuid, Source, and Source Guid, ensuring that null or empty values + /// are not included in the final dictionary. + /// + /// The NAV.ModelItem from which properties are extracted. + /// A dictionary containing non-null/non-empty properties of the modelItem. + private static Dictionary ExtractClassProperties(NAV.ModelItem modelItem) + { + var propertyDictionary = new Dictionary(); + + // Define properties and their values to be added to the dictionary + var propertiesToAdd = new (string PropertyName, object? Value)[] + { + ("ClassName", modelItem.ClassName), + ("ClassDisplayName", modelItem.ClassDisplayName), + ("DisplayName", modelItem.DisplayName), + ("InstanceGuid", modelItem.InstanceGuid != Guid.Empty ? modelItem.InstanceGuid : null), + ("Source", modelItem.Model?.SourceFileName), + ("Source Guid", modelItem.Model?.SourceGuid) + }; + + // Loop through properties and add them if they are not null or empty + foreach ((string propertyName, object? value) in propertiesToAdd) + { + if (value != null) + { + Helpers.PropertyHelpers.AddPropertyIfNotNullOrEmpty(propertyDictionary, propertyName, value); + } + } + + return propertyDictionary; + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs new file mode 100644 index 000000000..0f194ddb4 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs @@ -0,0 +1,24 @@ +using Microsoft.Extensions.Logging; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Objects.Geometry; +using Speckle.Sdk; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class DisplayValueExtractor +{ + private readonly IConverterSettingsStore _converterSettings; + private readonly ILogger _logger; + + public DisplayValueExtractor( + IConverterSettingsStore converterSettings, + ILogger logger + ) + { + _converterSettings = converterSettings; + _logger = logger; + } + + public List GetDisplayValue(NAV.ModelItem _) => []; +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs new file mode 100644 index 000000000..1f655b762 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -0,0 +1,52 @@ +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class PropertySetsExtractor +{ + private readonly IConverterSettingsStore _settingsStore; + + public PropertySetsExtractor(IConverterSettingsStore settingsStore) + { + _settingsStore = settingsStore; + } + + public Dictionary? GetPropertySets(NAV.ModelItem modelItem) + { + if (_settingsStore.Current.ExcludeProperties) + { + return null; + } + + var propertyDictionary = ExtractPropertySets(modelItem); + + return propertyDictionary; + } + + /// + /// Extracts property sets from a NAV.ModelItem and adds them to a dictionary, + /// PropertySets are specific to the host application source appended to Navisworks and therefore + /// arbitrary in nature. + /// + /// The NAV.ModelItem from which property sets are extracted. + /// A dictionary containing property sets of the modelItem. + private static Dictionary ExtractPropertySets(NAV.ModelItem modelItem) + { + var propertySetDictionary = new Dictionary(); + + modelItem.PropertyCategories.ForEach(propertyCategory => + { + var propertySet = new Dictionary(); + + propertyCategory.Properties.ForEach(property => + { + propertySet.Add(property.Name, property.Value); + }); + + propertySetDictionary.Add(propertyCategory.Name, propertySet); + }); + + return propertySetDictionary; + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 69cd59a77..f9338b5a7 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -9,13 +9,16 @@ Speckle.Converters.NavisworksShared - - + + + + + From e46bebbac3256b1b1663c2af104480077ca6848d Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 23:25:54 +0000 Subject: [PATCH 075/173] feat: Add ExcludeProperties option to NavisworksConversionSettings This commit adds a new boolean property, ExcludeProperties, to the NavisworksConversionSettings class. This property allows users to specify whether properties should be excluded from the output. The default value is set to false. Changes: - Added ExcludeProperties boolean property to NavisworksConversionSettings - Updated NavisworksConversionSettingsFactory to include _excludeProperties field and pass it to the NavisworksConversionSettings constructor --- .../Settings/NavisworksConversionSettings.cs | 3 ++- .../Settings/NavisworksConversionSettingsFactory.cs | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index f57a221d2..eff3caf4e 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -13,5 +13,6 @@ public record NavisworksConversionSettings( bool CoalescePropertiesFromFirstObjectAncestor, // Whether to merge properties from the first object ancestor. NAV.Vector3D TransformVector, // Transformation vector applied to the model. bool IsUpright, // Indicates if the model's orientation is upright relative to canonical up. - NAV.BoundingBox3D ModelBoundingBox // The bounding box of the model. + NAV.BoundingBox3D ModelBoundingBox, // The bounding box of the model. + bool ExcludeProperties // Whether to exclude properties from the output. ); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index 3705111ce..730289df6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -35,6 +35,7 @@ ILogger logger private bool _coalescePropertiesFromFirstObjectAncestor; private RepresentationMode _visualRepresentationMode; private OriginMode _originMode; + private bool _excludeProperties; private static readonly NAV.Vector3D s_canonicalUp = new(0, 0, 1); @@ -52,6 +53,7 @@ public NavisworksConversionSettings Create() _coalescePropertiesFromFirstObjectAncestor = true; _visualRepresentationMode = ACTIVE; _originMode = MODEL_ORIGIN; + _excludeProperties = false; // Derived settings from the active document _document = NavisworksApp.ActiveDocument ?? throw new InvalidOperationException("No active document found."); @@ -81,7 +83,8 @@ public NavisworksConversionSettings Create() CoalescePropertiesFromFirstObjectAncestor: _coalescePropertiesFromFirstObjectAncestor, TransformVector: transformVector, IsUpright: isUpright, - ModelBoundingBox: _modelBoundingBox + ModelBoundingBox: _modelBoundingBox, + ExcludeProperties: _excludeProperties ); } From 98d7e4dc8373b13046e3c36a0d2fe9b095b3f43f Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 23:26:35 +0000 Subject: [PATCH 076/173] feat: Add ModelItemTopLevelConverterToSpeckle This commit adds the `ModelItemTopLevelConverterToSpeckle` class, which converts Navisworks `ModelItem` objects to Speckle Base objects. The converter extracts display values, class properties, and property sets from the Navisworks object and creates a corresponding Speckle Base object. --- .../ServiceRegistration.cs | 2 +- ...ckle.Converters.NavisworksShared.projitems | 1 + .../ModelItemTopLevelConverterToSpeckle.cs | 96 +++++++++++++++++++ 3 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs index b59b38f41..8d53af6c5 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs @@ -17,7 +17,7 @@ public static IServiceCollection AddNavisworksConverters(this IServiceCollection //register types by default serviceCollection.AddMatchingInterfacesAsTransient(converterAssembly); // Register single root - serviceCollection.AddRootCommon(converterAssembly); + serviceCollection.AddRootCommon(converterAssembly); // register all application converters and context stacks serviceCollection.AddApplicationConverters(converterAssembly); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index f9338b5a7..432ec6a19 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -24,5 +24,6 @@ + \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs new file mode 100644 index 000000000..bf82d3f63 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs @@ -0,0 +1,96 @@ +using Speckle.Converter.Navisworks.Models; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Models; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +/// +/// Converts Navisworks ModelItem objects to Speckle Base objects. +/// +public class ModelItemTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter +{ + private readonly DisplayValueExtractor _displayValueExtractor; + private readonly ClassPropertiesExtractor _classPropertiesExtractor; + private readonly PropertySetsExtractor _propertySetsExtractor; + private readonly IConverterSettingsStore _settingsStore; + + /// + /// Initializes a new instance of the class. + /// + /// Extractor for geometric display values. + /// Extractor for class-specific properties. + /// Extractor for property sets. + /// Converter settings store. + + public ModelItemTopLevelConverterToSpeckle( + DisplayValueExtractor displayValueExtractor, + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor, + IConverterSettingsStore settingsStore + ) + { + _displayValueExtractor = displayValueExtractor; + _classPropertiesExtractor = classPropertiesExtractor; + _propertySetsExtractor = propertySetsExtractor; + _settingsStore = settingsStore; + } + + /// + /// Converts a Navisworks object to a Speckle Base object. + /// + /// The object to convert. + /// The converted Speckle Base object. + public Base Convert(object target) => Convert((NAV.ModelItem)target); + + // Converts a Navisworks ModelItem into a Speckle Base object + private Base Convert(NAV.ModelItem target) + { + var name = GetObjectName(target); + + INavisworksObject navisworksObject = target.HasGeometry + ? CreateGeometryObject(target, name) // Create a NavisworksGeometryObject + : CreateNonGeometryObject(name); // Create a NavisworksObject + + AddProperties(navisworksObject, target); + + return (Base)navisworksObject; + } + + private NavisworksGeometryObject CreateGeometryObject(NAV.ModelItem target, string name) => + new(name: name, displayValue: _displayValueExtractor.GetDisplayValue(target).ToList()); + + private NavisworksObject CreateNonGeometryObject(string name) => + new(name) { elements = new List() }; + + private string GetObjectName(NAV.ModelItem target) => + target.ClassDisplayName ?? target.FindFirstObjectAncestor()?.ClassDisplayName ?? "Unnamed model"; + + // Adds class and property set data to the object + private void AddProperties(INavisworksObject navisworksObject, NAV.ModelItem target) + { + if (_settingsStore.Current.ExcludeProperties) + { + return; + } + + // Add class properties + var classProperties = _classPropertiesExtractor.GetClassProperties(target); + if (classProperties != null) + { + foreach (var kvp in classProperties) + { + navisworksObject.AddProperty(kvp.Key, kvp.Value); + } + } + + // Add property sets + var propertySets = _propertySetsExtractor.GetPropertySets(target); + + if (propertySets != null) + { + navisworksObject.AddProperty("properties", propertySets); + } + } +} From 1981269d54d1bda5eaf49a857b5566ee00df63ca Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 30 Nov 2024 23:44:52 +0000 Subject: [PATCH 077/173] Add ModelPropertiesExtractor to NavisworksShared This commit adds the ModelPropertiesExtractor class to the NavisworksShared project. The ModelPropertiesExtractor is responsible for extracting model properties from a NAV.Model and adding them to a dictionary. These properties include Creator, Filename, Source Filename, Units, Transform, Guid, and Source Guid. The extracted properties are then added to the navisworks object as key-value pairs. --- .../Speckle.Converters.Navisworks2024.csproj | 2 +- .../ModelPropertiesExtractor.cs | 59 +++++++++++++++++++ ...ckle.Converters.NavisworksShared.projitems | 1 + .../ModelItemTopLevelConverterToSpeckle.cs | 12 ++++ 4 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index 7bc6089e0..8d2001b17 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -18,7 +18,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs new file mode 100644 index 000000000..984965ddd --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs @@ -0,0 +1,59 @@ +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class ModelPropertiesExtractor +{ + private readonly IConverterSettingsStore _settingsStore; + + public ModelPropertiesExtractor(IConverterSettingsStore settingsStore) + { + _settingsStore = settingsStore; + } + + public Dictionary? GetModelProperties(NAV.Model model) + { + if (_settingsStore.Current.ExcludeProperties) + { + return null; + } + + var propertyDictionary = ExtractModelProperties(model); + + return propertyDictionary; + } + + /// + /// Extracts model properties from a NAV.ModelItem and adds them to a dictionary, + /// + /// The NAV.ModelItem from which model properties are extracted. + /// A dictionary containing model properties of the modelItem. + private static Dictionary ExtractModelProperties(NAV.Model model) + { + var propertyDictionary = new Dictionary(); + + // Define properties and their values to be added to the dictionary + var propertiesToAdd = new (string PropertyName, object? Value)[] + { + ("Creator", model.Creator), + ("Filename", model.FileName), + ("Source Filename", model.SourceFileName), + ("Units", model.Units.ToString()), + ("Transform", model.Transform.ToString()), + ("Guid", model.Guid != Guid.Empty ? model.Guid : null), + ("Source Guid", model.SourceGuid != Guid.Empty ? model.SourceGuid : null) + }; + + // Loop through properties and add them if they are not null or empty + foreach ((string propertyName, object? value) in propertiesToAdd) + { + if (value != null) + { + Helpers.PropertyHelpers.AddPropertyIfNotNullOrEmpty(propertyDictionary, propertyName, value); + } + } + + return propertyDictionary; + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 432ec6a19..63be53e19 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -11,6 +11,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs index bf82d3f63..e9d09041d 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs @@ -14,6 +14,7 @@ public class ModelItemTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter private readonly DisplayValueExtractor _displayValueExtractor; private readonly ClassPropertiesExtractor _classPropertiesExtractor; private readonly PropertySetsExtractor _propertySetsExtractor; + private readonly ModelPropertiesExtractor _modelPropertiesExtractor; private readonly IConverterSettingsStore _settingsStore; /// @@ -22,18 +23,21 @@ public class ModelItemTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter /// Extractor for geometric display values. /// Extractor for class-specific properties. /// Extractor for property sets. + /// Extractor for model properties. /// Converter settings store. public ModelItemTopLevelConverterToSpeckle( DisplayValueExtractor displayValueExtractor, ClassPropertiesExtractor classPropertiesExtractor, PropertySetsExtractor propertySetsExtractor, + ModelPropertiesExtractor modelPropertiesExtractor, IConverterSettingsStore settingsStore ) { _displayValueExtractor = displayValueExtractor; _classPropertiesExtractor = classPropertiesExtractor; _propertySetsExtractor = propertySetsExtractor; + _modelPropertiesExtractor = modelPropertiesExtractor; _settingsStore = settingsStore; } @@ -88,6 +92,14 @@ private void AddProperties(INavisworksObject navisworksObject, NAV.ModelItem tar // Add property sets var propertySets = _propertySetsExtractor.GetPropertySets(target); + // If the node is a Model + if (target.HasModel) + { + var modelProperties = _modelPropertiesExtractor.GetModelProperties(target.Model); + + propertySets?.Add("Model", modelProperties); + } + if (propertySets != null) { navisworksObject.AddProperty("properties", propertySets); From 7c708d6820bd824d55fd14ca9b6605f6e4aa3eca Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 00:13:25 +0000 Subject: [PATCH 078/173] Refactor PropertyHelpers to handle property conversion and sanitization - Refactored `PropertyHelpers` class to be static - Added a dictionary of type handlers for converting property values - Implemented `ConvertPropertyValue` method to convert property values based on their data type - Added support for handling different data types, including boolean, string, integer, double, datetime, named constant, and 3D point - Implemented `SanitizePropertyName` method to replace invalid characters in property names with underscores - Added `IsCategoryToBeSkipped` method to determine if a property category should be skipped during processing --- .../Helpers/PropertyHelpers.cs | 102 +++++++++--------- 1 file changed, 50 insertions(+), 52 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs index 0d7eba46c..c6f48b926 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs @@ -1,66 +1,51 @@ using System.Globalization; +using System.Text.RegularExpressions; using Speckle.Objects.Geometry; namespace Speckle.Converter.Navisworks.Helpers; -public class PropertyHelpers +public static class PropertyHelpers { - private static dynamic ConvertPropertyValue(NAV.VariantData value) - { - dynamic propertyValue = null; + private static readonly HashSet s_excludedCategories = ["Geometry", "Metadata"]; - NAV.VariantDataType type = value.DataType; + private static readonly Dictionary> s_typeHandlers = + new() + { + { NAV.VariantDataType.Boolean, (value, _) => value.ToBoolean() }, + { NAV.VariantDataType.DisplayString, (value, _) => value.ToDisplayString() }, + { NAV.VariantDataType.IdentifierString, (value, _) => value.ToIdentifierString() }, + { NAV.VariantDataType.Int32, (value, _) => value.ToInt32() }, + { NAV.VariantDataType.Double, (value, _) => value.ToDouble() }, + { NAV.VariantDataType.DoubleAngle, (value, _) => value.ToDoubleAngle() }, + { NAV.VariantDataType.DoubleArea, (value, _) => value.ToDoubleArea() }, + { NAV.VariantDataType.DoubleLength, (value, _) => value.ToDoubleLength() }, + { NAV.VariantDataType.DoubleVolume, (value, _) => value.ToDoubleVolume() }, + { NAV.VariantDataType.DateTime, (value, _) => value.ToDateTime().ToString(CultureInfo.InvariantCulture) }, + { NAV.VariantDataType.NamedConstant, (value, _) => value.ToNamedConstant().DisplayName }, + { NAV.VariantDataType.None, (_, _) => null }, + { NAV.VariantDataType.Point2D, (_, _) => null }, + { + NAV.VariantDataType.Point3D, + (value, units) => + { + var point = value.ToPoint3D(); + var pointProperty = new Point(point.X, point.Y, point.Z, units); + return pointProperty.ToString(); + } + } + }; - switch (type) + internal static dynamic? ConvertPropertyValue(NAV.VariantData value, string units) + { + if (s_typeHandlers.TryGetValue(value.DataType, out var handler)) { - case NAV.VariantDataType.Boolean: - propertyValue = value.ToBoolean(); - break; - case NAV.VariantDataType.DisplayString: - propertyValue = value.ToDisplayString(); - break; - case NAV.VariantDataType.IdentifierString: - propertyValue = value.ToIdentifierString(); - break; - case NAV.VariantDataType.Int32: - propertyValue = value.ToInt32(); - break; - case NAV.VariantDataType.Double: - propertyValue = value.ToDouble(); - break; - case NAV.VariantDataType.DoubleAngle: - propertyValue = value.ToDoubleAngle(); - break; - case NAV.VariantDataType.DoubleArea: - propertyValue = value.ToDoubleArea(); - break; - case NAV.VariantDataType.DoubleLength: - propertyValue = value.ToDoubleLength(); - break; - case NAV.VariantDataType.DoubleVolume: - propertyValue = value.ToDoubleVolume(); - break; - case NAV.VariantDataType.DateTime: - propertyValue = value.ToDateTime().ToString(CultureInfo.InvariantCulture); - break; - case NAV.VariantDataType.NamedConstant: - propertyValue = value.ToNamedConstant().DisplayName; - break; - case NAV.VariantDataType.Point3D: - NAV.Point3D point = value.ToPoint3D(); - Point pointProperty = new(point.X, point.Y, point.Z); - propertyValue = pointProperty.ToString(); - break; - case NAV.VariantDataType.None: - break; - case NAV.VariantDataType.Point2D: - break; - default: - propertyValue = value.ToString(); - break; + return handler(value, units); } - return propertyValue; + // Default case for unsupported types + return value.DataType == NAV.VariantDataType.None || value.DataType == NAV.VariantDataType.Point2D + ? null + : value.ToString(); } /// @@ -105,4 +90,17 @@ private static void AssignProperty(object baseObject, string propertyName, objec throw new ArgumentException("Unsupported object type", nameof(baseObject)); } } + + /// + /// Sanitizes property names by replacing invalid characters with underscores. + /// + internal static string SanitizePropertyName(string name) => + // Regex pattern from speckle-sharp/Core/Core/Models/DynamicBase.cs IsPropNameValid + name == "Item" + // Item is a reserved term for Indexed Properties: https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/indexers/using-indexers + ? "Item_" + : Regex.Replace(name, @"[\.\/]", "_"); + + internal static bool IsCategoryToBeSkipped(NAV.PropertyCategory propertyCategory) => + s_excludedCategories.Contains(propertyCategory.DisplayName); } From 9954bcaa1ac7f1b82737e8365337c55ef9e6a059 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 00:13:41 +0000 Subject: [PATCH 079/173] feat: Add property set extraction logic This commit adds logic to extract property sets from a NAV.ModelItem. It iterates through the property categories and properties, skipping certain categories as needed. Each property is added to a dictionary with its sanitized name as the key and its converted value based on Speckle units. The resulting property sets are stored in a dictionary with the sanitized category name as the key. --- .../DataExtractors/PropertySetsExtractor.cs | 33 +++++++++++++++---- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs index 1f655b762..0177b7aab 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -1,5 +1,6 @@ using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; +using static Speckle.Converter.Navisworks.Helpers.PropertyHelpers; namespace Speckle.Converter.Navisworks.ToSpeckle; @@ -31,21 +32,39 @@ public PropertySetsExtractor(IConverterSettingsStore /// The NAV.ModelItem from which property sets are extracted. /// A dictionary containing property sets of the modelItem. - private static Dictionary ExtractPropertySets(NAV.ModelItem modelItem) + private Dictionary ExtractPropertySets(NAV.ModelItem modelItem) { var propertySetDictionary = new Dictionary(); - modelItem.PropertyCategories.ForEach(propertyCategory => + foreach (var propertyCategory in modelItem.PropertyCategories) { + if (IsCategoryToBeSkipped(propertyCategory)) + { + continue; + } + var propertySet = new Dictionary(); - propertyCategory.Properties.ForEach(property => + foreach (var property in propertyCategory.Properties) { - propertySet.Add(property.Name, property.Value); - }); + string sanitizedName = SanitizePropertyName(property.DisplayName); + var propertyValue = ConvertPropertyValue(property.Value, _settingsStore.Current.SpeckleUnits); - propertySetDictionary.Add(propertyCategory.Name, propertySet); - }); + if (propertyValue != null) + { + propertySet[sanitizedName] = propertyValue; + } + } + + if (propertySet.Count <= 0) + { + continue; + } + + string categoryName = SanitizePropertyName(propertyCategory.DisplayName); + + propertySetDictionary[categoryName] = propertySet; + } return propertySetDictionary; } From 86c805238ef2e237b266a6410dc8c585216bc377 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 00:48:00 +0000 Subject: [PATCH 080/173] Refactor ModelItemTopLevelConverterToSpeckle: Add IRootToSpeckleConverter interface This commit adds the `IRootToSpeckleConverter` interface to the `ModelItemTopLevelConverterToSpeckle` class. It also modifies the `Convert` method to handle null target objects and updates the implementation of the `CreateNonGeometryObject` method. --- .../ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs index e9d09041d..89b40a59c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs @@ -9,7 +9,7 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; /// /// Converts Navisworks ModelItem objects to Speckle Base objects. /// -public class ModelItemTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter +public class ModelItemTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter, IRootToSpeckleConverter { private readonly DisplayValueExtractor _displayValueExtractor; private readonly ClassPropertiesExtractor _classPropertiesExtractor; @@ -46,7 +46,7 @@ IConverterSettingsStore settingsStore /// /// The object to convert. /// The converted Speckle Base object. - public Base Convert(object target) => Convert((NAV.ModelItem)target); + public Base Convert(object target) => Convert(target as NAV.ModelItem ?? throw new InvalidOperationException()); // Converts a Navisworks ModelItem into a Speckle Base object private Base Convert(NAV.ModelItem target) @@ -55,7 +55,9 @@ private Base Convert(NAV.ModelItem target) INavisworksObject navisworksObject = target.HasGeometry ? CreateGeometryObject(target, name) // Create a NavisworksGeometryObject - : CreateNonGeometryObject(name); // Create a NavisworksObject + : global::Speckle.Converter.Navisworks.ToSpeckle.ModelItemTopLevelConverterToSpeckle.CreateNonGeometryObject( + name + ); // Create a NavisworksObject AddProperties(navisworksObject, target); @@ -65,10 +67,10 @@ private Base Convert(NAV.ModelItem target) private NavisworksGeometryObject CreateGeometryObject(NAV.ModelItem target, string name) => new(name: name, displayValue: _displayValueExtractor.GetDisplayValue(target).ToList()); - private NavisworksObject CreateNonGeometryObject(string name) => + private static NavisworksObject CreateNonGeometryObject(string name) => new(name) { elements = new List() }; - private string GetObjectName(NAV.ModelItem target) => + private static string GetObjectName(NAV.ModelItem target) => target.ClassDisplayName ?? target.FindFirstObjectAncestor()?.ClassDisplayName ?? "Unnamed model"; // Adds class and property set data to the object From 720d522eda07c87a789163090d24557e7581f38a Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:53:25 +0000 Subject: [PATCH 081/173] Add Navisworks 2020 - 2025 In addition to 2024 --- .../Properties/launchSettings.json | 9 + .../Speckle.Connectors.Navisworks2020.csproj | 88 ++++ .../packages.lock.json | 392 ++++++++++++++++++ .../Properties/launchSettings.json | 9 + .../Speckle.Connectors.Navisworks2021.csproj | 88 ++++ .../packages.lock.json | 392 ++++++++++++++++++ .../Properties/launchSettings.json | 9 + .../Speckle.Connectors.Navisworks2022.csproj | 88 ++++ .../packages.lock.json | 392 ++++++++++++++++++ .../Properties/launchSettings.json | 9 + .../Speckle.Connectors.Navisworks2023.csproj | 88 ++++ .../packages.lock.json | 392 ++++++++++++++++++ .../Properties/launchSettings.json | 9 + .../Speckle.Connectors.Navisworks2025.csproj | 88 ++++ .../packages.lock.json | 392 ++++++++++++++++++ ...ore.cs => NavisworksDocumentModelStore.cs} | 7 +- ...ckle.Connectors.NavisworksShared.projitems | 2 +- .../Speckle.Converters.Navisworks2020.csproj | 25 ++ .../packages.lock.json | 321 ++++++++++++++ .../Speckle.Converters.Navisworks2021.csproj | 25 ++ .../packages.lock.json | 321 ++++++++++++++ .../Speckle.Converters.Navisworks2022.csproj | 25 ++ .../packages.lock.json | 321 ++++++++++++++ .../Speckle.Converters.Navisworks2023.csproj | 25 ++ .../packages.lock.json | 321 ++++++++++++++ .../Speckle.Converters.Navisworks2025.csproj | 25 ++ .../packages.lock.json | 321 ++++++++++++++ Speckle.Connectors.sln | 105 +++++ 28 files changed, 4286 insertions(+), 3 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Properties/launchSettings.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Properties/launchSettings.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Properties/launchSettings.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Properties/launchSettings.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Properties/launchSettings.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/{NavisworksDocumentStore.cs => NavisworksDocumentModelStore.cs} (95%) create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Properties/launchSettings.json new file mode 100644 index 000000000..618204c00 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "profiles": { + "Speckle.Connector.Navisworks2020": { + "commandName": "Executable", + "executablePath": "C:\\Program Files\\Autodesk\\Navisworks Manage 2020\\Roamer.exe", + "commandLineArgs": " -licensing AdLM" + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj new file mode 100644 index 000000000..9a44060c8 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj @@ -0,0 +1,88 @@ + + + + + + net48 + x64 + win-x64 + 512 + true + + v17 + 2020 + + true + $(DefineConstants);TRACE;NAVIS2020;NAVIS + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) + Speckle.Connector.Navisworks + + + + + + + + + + + + + + bin\x64\Debug\ + true + full + false + prompt + 4 + + + + bin\x64\Release\ + pdbonly + true + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json new file mode 100644 index 000000000..427002089 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -0,0 +1,392 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2020.0.0, )", + "resolved": "2020.0.0", + "contentHash": "biB2RR0HNxrbHD7zBZoJUhwzPwVE5IFg9l4/747bHOLRJC3FM5UtzdjGwvRZwfOlFyM4P26NYARSiCaxSNIBpg==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2020": { + "type": "Project", + "dependencies": { + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2020.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Properties/launchSettings.json new file mode 100644 index 000000000..4c3311c03 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "profiles": { + "Speckle.Connector.Navisworks2021": { + "commandName": "Executable", + "executablePath": "C:\\Program Files\\Autodesk\\Navisworks Manage 2021\\Roamer.exe", + "commandLineArgs": " -licensing AdLM" + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj new file mode 100644 index 000000000..90053e8bd --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj @@ -0,0 +1,88 @@ + + + + + + net48 + x64 + win-x64 + 512 + true + + v18 + 2021 + + true + $(DefineConstants);TRACE;NAVIS2021;NAVIS + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) + Speckle.Connector.Navisworks + + + + + + + + + + + + + + bin\x64\Debug\ + true + full + false + prompt + 4 + + + + bin\x64\Release\ + pdbonly + true + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json new file mode 100644 index 000000000..a5c23b3d2 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -0,0 +1,392 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2021.0.0, )", + "resolved": "2021.0.0", + "contentHash": "cY7sU8dxISfTQLinUIOki/azS+bIX28uEZQO4ijrq0eOUhJlKcKWS273kHPoL0+T0Xrkd+1OWj2YFa2PbHGgwQ==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2021": { + "type": "Project", + "dependencies": { + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2021.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Properties/launchSettings.json new file mode 100644 index 000000000..c8dd67e7d --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "profiles": { + "Speckle.Connector.Navisworks2022": { + "commandName": "Executable", + "executablePath": "C:\\Program Files\\Autodesk\\Navisworks Manage 2022\\Roamer.exe", + "commandLineArgs": " -licensing AdLM" + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj new file mode 100644 index 000000000..23ea15f18 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj @@ -0,0 +1,88 @@ + + + + + + net48 + x64 + win-x64 + 512 + true + + v19 + 2022 + + true + $(DefineConstants);TRACE;NAVIS2022;NAVIS + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) + Speckle.Connector.Navisworks + + + + + + + + + + + + + + bin\x64\Debug\ + true + full + false + prompt + 4 + + + + bin\x64\Release\ + pdbonly + true + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json new file mode 100644 index 000000000..612642f25 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -0,0 +1,392 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2022.0.0, )", + "resolved": "2022.0.0", + "contentHash": "x0RW4Iqw8YHVK4ZiLEyLLfI5ffuRBR0KhEvmy9ZpT8SLNeDL/c6jn+7JWBVFUJPu+ObVnU+KqJjLdHmphN0lMQ==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2022": { + "type": "Project", + "dependencies": { + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2022.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Properties/launchSettings.json new file mode 100644 index 000000000..2c8b4363f --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "profiles": { + "Speckle.Connector.Navisworks2023": { + "commandName": "Executable", + "executablePath": "C:\\Program Files\\Autodesk\\Navisworks Manage 2023\\Roamer.exe", + "commandLineArgs": " -licensing AdLM" + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj new file mode 100644 index 000000000..12e0a6631 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj @@ -0,0 +1,88 @@ + + + + + + net48 + x64 + win-x64 + 512 + true + + v20 + 2023 + + true + $(DefineConstants);TRACE;NAVIS2023;NAVIS + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) + Speckle.Connector.Navisworks + + + + + + + + + + + + + + bin\x64\Debug\ + true + full + false + prompt + 4 + + + + bin\x64\Release\ + pdbonly + true + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json new file mode 100644 index 000000000..4e4f1c674 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -0,0 +1,392 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "+qRmcyLD3DpuSSwX2IbEwp0gJllbiKgv313PZfEfh8I2uvxf+5YNqDzY0OGOxWIdPKqaQmdUZ1ELzoDtucCWzA==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2023": { + "type": "Project", + "dependencies": { + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2023.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Properties/launchSettings.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Properties/launchSettings.json new file mode 100644 index 000000000..3b8100b12 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "profiles": { + "Speckle.Connector.Navisworks2025": { + "commandName": "Executable", + "executablePath": "C:\\Program Files\\Autodesk\\Navisworks Manage 2025\\Roamer.exe", + "commandLineArgs": " -licensing AdLM" + } + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj new file mode 100644 index 000000000..16d3b4a01 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj @@ -0,0 +1,88 @@ + + + + + + net48 + x64 + win-x64 + 512 + true + + v22 + 2025 + + true + $(DefineConstants);TRACE;NAVIS2025;NAVIS + + NextGen Speckle Connector for Autodesk Navisworks Manage + $(Authors) jonathon@speckle.systems + $(PackageTags) connector nwd nwc nwf navisworks manage + + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle + $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) + Speckle.Connector.Navisworks + + + + + + + + + + + + + + bin\x64\Debug\ + true + full + false + prompt + 4 + + + + bin\x64\Release\ + pdbonly + true + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json new file mode 100644 index 000000000..0bf92104a --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -0,0 +1,392 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "+q2IObnUGqtC1O/ddy2p0HKm1eXRo7Yi80oD9VIWClidvGb3rVsXKZWBHiv4HwSn5JcOMSEt1cdSlRQLm8Ehjg==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2025": { + "type": "Project", + "dependencies": { + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2025.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs similarity index 95% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs index 7cf3df7ba..650cd0bf3 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs @@ -11,14 +11,17 @@ namespace Speckle.Connector.Navisworks.HostApp; /// Manages persistence of Speckle model states within Navisworks' embedded SQLite database. /// Provides mechanisms for reliable read/write operations with retry handling and validation. /// -public class NavisworksDocumentStore : DocumentModelStore +public class NavisworksDocumentModelStore : DocumentModelStore { private const string TABLE_NAME = "speckle"; private const string KEY_NAME = "Speckle_DUI3"; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; - public NavisworksDocumentStore(IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler) + public NavisworksDocumentModelStore( + IJsonSerializer jsonSerializer, + ITopLevelExceptionHandler topLevelExceptionHandler + ) : base(jsonSerializer, true) { _topLevelExceptionHandler = topLevelExceptionHandler; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 2757bd072..2920cc54d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -17,7 +17,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj new file mode 100644 index 000000000..94488bbf3 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj @@ -0,0 +1,25 @@ + + + SpeckleConverterNavisworks + Objects.Converter.Navisworks2020 + Objects.Converter.Navisworks + AnyCPU;x64 + bin\x64\$(Configuration) + true + $(DefineConstants);NAVIS2020 + net48 + Debug;Release;Local + Speckle.Converter.Navisworks + + + + + + + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json new file mode 100644 index 000000000..af25accd1 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2020.0.0, )", + "resolved": "2020.0.0", + "contentHash": "biB2RR0HNxrbHD7zBZoJUhwzPwVE5IFg9l4/747bHOLRJC3FM5UtzdjGwvRZwfOlFyM4P26NYARSiCaxSNIBpg==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj new file mode 100644 index 000000000..d27e9ed74 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj @@ -0,0 +1,25 @@ + + + SpeckleConverterNavisworks + Objects.Converter.Navisworks2021 + Objects.Converter.Navisworks + AnyCPU;x64 + bin\x64\$(Configuration) + true + $(DefineConstants);NAVIS2021 + net48 + Debug;Release;Local + Speckle.Converter.Navisworks + + + + + + + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json new file mode 100644 index 000000000..50b137166 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2021.0.0, )", + "resolved": "2021.0.0", + "contentHash": "cY7sU8dxISfTQLinUIOki/azS+bIX28uEZQO4ijrq0eOUhJlKcKWS273kHPoL0+T0Xrkd+1OWj2YFa2PbHGgwQ==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj new file mode 100644 index 000000000..29b8e9943 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj @@ -0,0 +1,25 @@ + + + SpeckleConverterNavisworks + Objects.Converter.Navisworks2022 + Objects.Converter.Navisworks + AnyCPU;x64 + bin\x64\$(Configuration) + true + $(DefineConstants);NAVIS2022 + net48 + Debug;Release;Local + Speckle.Converter.Navisworks + + + + + + + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json new file mode 100644 index 000000000..a5830eb52 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2022.0.0, )", + "resolved": "2022.0.0", + "contentHash": "x0RW4Iqw8YHVK4ZiLEyLLfI5ffuRBR0KhEvmy9ZpT8SLNeDL/c6jn+7JWBVFUJPu+ObVnU+KqJjLdHmphN0lMQ==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj new file mode 100644 index 000000000..1297ff693 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj @@ -0,0 +1,25 @@ + + + SpeckleConverterNavisworks + Objects.Converter.Navisworks2023 + Objects.Converter.Navisworks + AnyCPU;x64 + bin\x64\$(Configuration) + true + $(DefineConstants);NAVIS2023 + net48 + Debug;Release;Local + Speckle.Converter.Navisworks + + + + + + + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json new file mode 100644 index 000000000..711eefd6f --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "+qRmcyLD3DpuSSwX2IbEwp0gJllbiKgv313PZfEfh8I2uvxf+5YNqDzY0OGOxWIdPKqaQmdUZ1ELzoDtucCWzA==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj new file mode 100644 index 000000000..b302abc6e --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj @@ -0,0 +1,25 @@ + + + SpeckleConverterNavisworks + Objects.Converter.Navisworks2025 + Objects.Converter.Navisworks + AnyCPU;x64 + bin\x64\$(Configuration) + true + $(DefineConstants);NAVIS2025 + net48 + Debug;Release;Local + Speckle.Converter.Navisworks + + + + + + + + + + + + + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json new file mode 100644 index 000000000..9f1edb328 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -0,0 +1,321 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "+q2IObnUGqtC1O/ddy2p0HKm1eXRo7Yi80oD9VIWClidvGb3rVsXKZWBHiv4HwSn5JcOMSEt1cdSlRQLm8Ehjg==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.200" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.200, )", + "resolved": "3.1.0-dev.200", + "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + } + } + } +} \ No newline at end of file diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 9b73869d4..99bf4926f 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -203,6 +203,36 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.Naviswor EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{DE37E4A3-0B09-422B-907E-2F5115FE125C}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{4D6F62C7-AB52-442D-A966-2D7248999A90}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2022", "2022", "{F6A5AF0B-81D4-4E72-B8BE-BD836F469176}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2021", "2021", "{26D9206A-F78D-43A4-AE71-562BC4A64A56}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2020", "2020", "{67ECA72C-01F3-471E-B82A-F0BF74147E36}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{A054E952-37A1-49C5-9715-730CF4D00329}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2023", "Converters\Navisworks\Speckle.Converters.Navisworks2023\Speckle.Converters.Navisworks2023.csproj", "{D84887F1-61DB-429B-9978-229DE36E1B6C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2023", "Connectors\Navisworks\Speckle.Connectors.Navisworks2023\Speckle.Connectors.Navisworks2023.csproj", "{69B16CC3-FA20-4D35-87FA-5D34C743334C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2022", "Converters\Navisworks\Speckle.Converters.Navisworks2022\Speckle.Converters.Navisworks2022.csproj", "{3517D757-6F62-483A-BDD9-43FBC23978E1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2022", "Connectors\Navisworks\Speckle.Connectors.Navisworks2022\Speckle.Connectors.Navisworks2022.csproj", "{52EEEBF5-23FA-41C2-A635-CEB091823E91}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2021", "Connectors\Navisworks\Speckle.Connectors.Navisworks2021\Speckle.Connectors.Navisworks2021.csproj", "{F58DE804-4CD4-40B2-802B-14E63AB5C1F9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2021", "Converters\Navisworks\Speckle.Converters.Navisworks2021\Speckle.Converters.Navisworks2021.csproj", "{8603A729-9B1E-4C91-9D47-E7A61093A44C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2020", "Converters\Navisworks\Speckle.Converters.Navisworks2020\Speckle.Converters.Navisworks2020.csproj", "{2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2020", "Connectors\Navisworks\Speckle.Connectors.Navisworks2020\Speckle.Connectors.Navisworks2020.csproj", "{2C508017-27E2-4AA8-80C4-0BB84049550A}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -510,6 +540,66 @@ Global {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Local|Any CPU.Build.0 = Local|Any CPU {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Release|Any CPU.ActiveCfg = Release|Any CPU {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Release|Any CPU.Build.0 = Release|Any CPU + {A054E952-37A1-49C5-9715-730CF4D00329}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A054E952-37A1-49C5-9715-730CF4D00329}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A054E952-37A1-49C5-9715-730CF4D00329}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {A054E952-37A1-49C5-9715-730CF4D00329}.Local|Any CPU.Build.0 = Debug|Any CPU + {A054E952-37A1-49C5-9715-730CF4D00329}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A054E952-37A1-49C5-9715-730CF4D00329}.Release|Any CPU.Build.0 = Release|Any CPU + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Local|Any CPU.ActiveCfg = Local|Any CPU + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Local|Any CPU.Build.0 = Local|Any CPU + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Release|Any CPU.Build.0 = Release|Any CPU + {D84887F1-61DB-429B-9978-229DE36E1B6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D84887F1-61DB-429B-9978-229DE36E1B6C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D84887F1-61DB-429B-9978-229DE36E1B6C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {D84887F1-61DB-429B-9978-229DE36E1B6C}.Local|Any CPU.Build.0 = Local|Any CPU + {D84887F1-61DB-429B-9978-229DE36E1B6C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D84887F1-61DB-429B-9978-229DE36E1B6C}.Release|Any CPU.Build.0 = Release|Any CPU + {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Local|Any CPU.Build.0 = Debug|Any CPU + {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Release|Any CPU.Build.0 = Release|Any CPU + {3517D757-6F62-483A-BDD9-43FBC23978E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3517D757-6F62-483A-BDD9-43FBC23978E1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3517D757-6F62-483A-BDD9-43FBC23978E1}.Local|Any CPU.ActiveCfg = Local|Any CPU + {3517D757-6F62-483A-BDD9-43FBC23978E1}.Local|Any CPU.Build.0 = Local|Any CPU + {3517D757-6F62-483A-BDD9-43FBC23978E1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3517D757-6F62-483A-BDD9-43FBC23978E1}.Release|Any CPU.Build.0 = Release|Any CPU + {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Debug|Any CPU.Build.0 = Debug|Any CPU + {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Local|Any CPU.Build.0 = Debug|Any CPU + {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Release|Any CPU.ActiveCfg = Release|Any CPU + {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Release|Any CPU.Build.0 = Release|Any CPU + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Local|Any CPU.Build.0 = Debug|Any CPU + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Release|Any CPU.Build.0 = Release|Any CPU + {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Local|Any CPU.Build.0 = Local|Any CPU + {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Release|Any CPU.Build.0 = Release|Any CPU + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Local|Any CPU.ActiveCfg = Local|Any CPU + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Local|Any CPU.Build.0 = Local|Any CPU + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Release|Any CPU.Build.0 = Release|Any CPU + {2C508017-27E2-4AA8-80C4-0BB84049550A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2C508017-27E2-4AA8-80C4-0BB84049550A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2C508017-27E2-4AA8-80C4-0BB84049550A}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {2C508017-27E2-4AA8-80C4-0BB84049550A}.Local|Any CPU.Build.0 = Debug|Any CPU + {2C508017-27E2-4AA8-80C4-0BB84049550A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2C508017-27E2-4AA8-80C4-0BB84049550A}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -604,6 +694,21 @@ Global {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B} = {7658869E-E371-4955-94FA-5C23B6311516} {62813838-52F7-43CB-9062-BB2611C00C79} = {633F7669-11D7-4217-9AED-F16BCEB452B9} {23830613-87F8-4655-B523-72189A597962} = {633F7669-11D7-4217-9AED-F16BCEB452B9} + {DE37E4A3-0B09-422B-907E-2F5115FE125C} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {4D6F62C7-AB52-442D-A966-2D7248999A90} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {F6A5AF0B-81D4-4E72-B8BE-BD836F469176} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {26D9206A-F78D-43A4-AE71-562BC4A64A56} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {67ECA72C-01F3-471E-B82A-F0BF74147E36} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} + {A054E952-37A1-49C5-9715-730CF4D00329} = {DE37E4A3-0B09-422B-907E-2F5115FE125C} + {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025} = {DE37E4A3-0B09-422B-907E-2F5115FE125C} + {D84887F1-61DB-429B-9978-229DE36E1B6C} = {4D6F62C7-AB52-442D-A966-2D7248999A90} + {69B16CC3-FA20-4D35-87FA-5D34C743334C} = {4D6F62C7-AB52-442D-A966-2D7248999A90} + {3517D757-6F62-483A-BDD9-43FBC23978E1} = {F6A5AF0B-81D4-4E72-B8BE-BD836F469176} + {52EEEBF5-23FA-41C2-A635-CEB091823E91} = {F6A5AF0B-81D4-4E72-B8BE-BD836F469176} + {F58DE804-4CD4-40B2-802B-14E63AB5C1F9} = {26D9206A-F78D-43A4-AE71-562BC4A64A56} + {8603A729-9B1E-4C91-9D47-E7A61093A44C} = {26D9206A-F78D-43A4-AE71-562BC4A64A56} + {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8} = {67ECA72C-01F3-471E-B82A-F0BF74147E36} + {2C508017-27E2-4AA8-80C4-0BB84049550A} = {67ECA72C-01F3-471E-B82A-F0BF74147E36} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From d3c9cfcc70a15a07b05b4d5f90b3e954173feafd Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:53:44 +0000 Subject: [PATCH 082/173] Update DocumentModelStore.cs - Made `HostAppSaveState` and `LoadState` methods public - Updated method signatures to reflect changes --- DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs b/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs index 62c4a7984..d3d47efae 100644 --- a/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs +++ b/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs @@ -118,9 +118,9 @@ protected void SaveState() /// /// Implement this method according to the host app's specific ways of reading custom data from its file. /// - protected abstract void HostAppSaveState(string modelCardState); + public abstract void HostAppSaveState(string modelCardState); - protected abstract void LoadState(); + public abstract void LoadState(); protected void LoadFromString(string? models) { From 5ab69c1cf81471ec4484363abbe306786cfd7492 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:53:58 +0000 Subject: [PATCH 083/173] Add BoundingBoxToSpeckleRawConverter This commit adds the BoundingBoxToSpeckleRawConverter class, which is responsible for converting NAV.BoundingBox3D objects to Box objects. It includes methods for converting the target object and a nullable version of it. The converter uses settings from the IConverterSettingsStore interface to set up the base plane and create the bounding box with appropriate units and intervals. --- .../Raw/BoundingBoxToSpeckleRawConverter.cs | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs new file mode 100644 index 000000000..6419e3c98 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs @@ -0,0 +1,52 @@ +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Objects.Geometry; +using Speckle.Objects.Primitive; + +namespace Speckle.Converter.Navisworks.ToSpeckle.Raw; + +public class BoundingBoxToSpeckleRawConverter : ITypedConverter +{ + private readonly IConverterSettingsStore _settingsStore; + + public BoundingBoxToSpeckleRawConverter(IConverterSettingsStore settingsStore) + { + _settingsStore = settingsStore; + } + + public Box Convert(object target) => Convert((NAV.BoundingBox3D)target); + + public Box Convert(NAV.BoundingBox3D? target) + { + if (target != null) + { + var min = target.Min; + var max = target.Max; + + var basePlane = new Plane + { + origin = new Point(min.X, min.Y, min.Z, _settingsStore.Current.SpeckleUnits), + normal = new Vector(0, 0, 1, _settingsStore.Current.SpeckleUnits), + xdir = new Vector(1, 0, 0, _settingsStore.Current.SpeckleUnits), + ydir = new Vector(0, 1, 0, _settingsStore.Current.SpeckleUnits), + units = _settingsStore.Current.SpeckleUnits + }; + + var boundingBox = new Box + { + units = _settingsStore.Current.SpeckleUnits, + plane = basePlane, + xSize = new Interval() { start = min.X, end = max.X }, + ySize = new Interval() { start = min.Y, end = max.Y }, + zSize = new Interval() { start = min.Z, end = max.Z } + }; + + return boundingBox; + } + else + { + return null!; + } + } +} From a445dea411def1dcf3fd3b550d563260eefb277f Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:54:11 +0000 Subject: [PATCH 084/173] Fix null reference exception in NavisworksRootObjectBuilder.cs The code change fixes a null reference exception that occurs when checking if `navisworksModelItems` is empty or null. If it is, a `SpeckleException` is thrown with the message "No objects to convert". Additionally, a check for `sendInfo` being null has been added before continuing with the conversion process. The progress of the conversion is reported using the `onOperationProgressed` callback. --- .../Operations/NavisworksRootObjectBuilder.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs index 4edd717d8..94bfda305 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs @@ -51,7 +51,7 @@ public async Task Build( var rootObjectCollection = new Collection { name = name }; rootObjectCollection["units"] = _converterSettings.Current.SpeckleUnits; - if (!navisworksModelItems.Any()) + if (!navisworksModelItems.Any() || navisworksModelItems == null) { throw new SpeckleException("No objects to convert"); } @@ -66,11 +66,16 @@ public async Task Build( using var _2 = _activityFactory.Start("Convert"); cancellationToken.ThrowIfCancellationRequested(); + if (sendInfo == null) + { + continue; + } + var result = ConvertNavisworksItem(navisworksItem, rootObjectCollection, sendInfo.ProjectId); results.Add(result); ++count; - onOperationProgressed.Report(new("Converting", (double)count / navisworksModelItems.Count)); + onOperationProgressed?.Report(new CardProgress("Converting", (double)count / navisworksModelItems.Count)); } } From 2152714163cfd0b51101d9b2258ac28c4e9befcb Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:54:29 +0000 Subject: [PATCH 085/173] Refactor NavisworksBasicConnectorBinding and NavisworksSendBinding - Simplify AddModel method in NavisworksBasicConnectorBinding - Remove unused import statements in NavisworksSendBinding - Update initialization of conversion settings in NavisworksSendBinding --- .../Bindings/NavisworksBasicConnectorBinding.cs | 2 +- .../Bindings/NavisworksSendBinding.cs | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index b9ef30591..a40579b7d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -52,7 +52,7 @@ NavisworksDocumentEvents documentEvents public DocumentModelStore GetDocumentState() => _store; - public void AddModel(ModelCard model) => _store.Models.Add(model); + public void AddModel(ModelCard model) => _store.AddModel(model); public void UpdateModel(ModelCard model) => _store.UpdateModel(model); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 065053cb4..f7de74cff 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -12,7 +12,6 @@ using Speckle.Connectors.DUI.Settings; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; -using Speckle.Converters.RevitShared.Settings; using Speckle.Sdk; using Speckle.Sdk.Common; using Speckle.Sdk.Logging; @@ -84,7 +83,7 @@ public async Task Send(string modelCardId) using var scope = _serviceProvider.CreateScope(); scope .ServiceProvider.GetRequiredService>() - .Initialize(_conversionSettingsFactory.Create(NavisworksApp.ActiveDocument)); + .Initialize(_conversionSettingsFactory.Create()); CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); From 3c977497f096520e4563e83d6cc69331c5abcbc4 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:55:04 +0000 Subject: [PATCH 086/173] Update NavisworksServiceRegistration.cs - Removed unused using statements - Updated AddDUI method to use NavisworksDocumentModelStore - Updated DocumentModelStore registration to use NavisworksDocumentModelStore --- .../DependencyInjection/NavisworksServiceRegistration.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs index 50fbad3e7..f91660e33 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs @@ -15,7 +15,6 @@ using Speckle.Connectors.DUI.WebView; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; -using Speckle.Converters.RevitShared.Settings; using Speckle.Sdk.Models.GraphTraversal; namespace Speckle.Connector.Navisworks.DependencyInjection; @@ -26,7 +25,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) { // Register Core functionality serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register bindings @@ -56,7 +55,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.RegisterTopLevelExceptionHandler(); serviceCollection.AddTransient(); serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddSingleton(); // register filters From 2382a38201309b8fe2a666cf89e9d5e077cfa15a Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:55:27 +0000 Subject: [PATCH 087/173] Refactor NavisworksDocumentModelStore to updated API - Clear the store and save when models are removed - Load state from the database when models are added - Rename methods for clarity: ReadFromFile() -> LoadState(), WriteToFile() -> HostAppSaveState() - Improve exception handling and error messages --- .../HostApp/NavisworksDocumentEvents.cs | 4 +-- .../HostApp/NavisworksDocumentModelStore.cs | 35 +++++++++---------- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 02687f981..e0d0d8938 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -110,11 +110,11 @@ private async Task NotifyValidModelStateChange() { case 0 when _priorModelCount > 0: // Clear the store when models are removed - store.Models.Clear(); + store.ClearAndSave(); break; case > 0 when _priorModelCount == 0: // Load state when models are added - store.ReadFromFile(); + store.LoadState(); break; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs index 650cd0bf3..51559c8d1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs @@ -1,8 +1,6 @@ -using System.Collections.ObjectModel; using System.Data; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; -using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Utils; namespace Speckle.Connector.Navisworks.HostApp; @@ -11,7 +9,7 @@ namespace Speckle.Connector.Navisworks.HostApp; /// Manages persistence of Speckle model states within Navisworks' embedded SQLite database. /// Provides mechanisms for reliable read/write operations with retry handling and validation. /// -public class NavisworksDocumentModelStore : DocumentModelStore +public sealed class NavisworksDocumentModelStore : DocumentModelStore { private const string TABLE_NAME = "speckle"; private const string KEY_NAME = "Speckle_DUI3"; @@ -22,13 +20,13 @@ public NavisworksDocumentModelStore( IJsonSerializer jsonSerializer, ITopLevelExceptionHandler topLevelExceptionHandler ) - : base(jsonSerializer, true) + : base(jsonSerializer) { _topLevelExceptionHandler = topLevelExceptionHandler; - ReadFromFile(); + LoadState(); } - public override void WriteToFile() + public override void HostAppSaveState(string modelCardState) { if (!IsActiveDocumentValid()) { @@ -37,7 +35,7 @@ public override void WriteToFile() try { - SaveStateToDatabase(); + SaveStateToDatabase(modelCardState); } catch (NAV.Data.DatabaseException ex) { @@ -47,21 +45,22 @@ public override void WriteToFile() } } - public sealed override void ReadFromFile() + public override void LoadState() { if (!IsActiveDocumentValid()) { - Models.Clear(); + ClearAndSave(); return; } try { - Models = RetrieveStateFromDatabase(); + string serializedState = RetrieveStateFromDatabase(); + LoadFromString(serializedState); } catch (NAV.Data.DatabaseException ex) { - Models = []; // Clear models on failure to avoid stale data + ClearAndSave(); // Clear models on failure to avoid stale data _topLevelExceptionHandler.CatchUnhandled( () => throw new InvalidOperationException("Failed to read Speckle state from database", ex) ); @@ -85,7 +84,7 @@ private static bool IsActiveDocumentValid() } } - private void SaveStateToDatabase() + private static void SaveStateToDatabase(string modelCardState) { var activeDoc = NavisworksApp.ActiveDocument; if (activeDoc?.Database == null) @@ -93,7 +92,6 @@ private void SaveStateToDatabase() return; } - string serializedState = Serialize(); var database = activeDoc.Database; using (var transaction = database.BeginTransaction(NAV.Data.DatabaseChangedAction.Reset)) @@ -105,7 +103,7 @@ private void SaveStateToDatabase() { try { - ReplaceStateInDatabase(transaction, serializedState); + ReplaceStateInDatabase(transaction, modelCardState); transaction.Commit(); } catch @@ -138,7 +136,7 @@ private static void ReplaceStateInDatabase(NAV.Data.NavisworksTransaction transa command.ExecuteNonQuery(); } - private ObservableCollection RetrieveStateFromDatabase() + private static string RetrieveStateFromDatabase() { var database = NavisworksApp.ActiveDocument!.Database; using var table = new DataTable(); @@ -152,10 +150,11 @@ private ObservableCollection RetrieveStateFromDatabase() if (table.Rows.Count <= 0) { - return []; // Return an empty collection if no state is found + return string.Empty; // Return an empty collection if no state is found } - string? stateString = table.Rows[0]["value"] as string; - return !string.IsNullOrEmpty(stateString) ? Deserialize(stateString!) : []; + string stateString = table.Rows[0]["value"] as string ?? string.Empty; + + return stateString; } } From 78219c3cd442ccf448717659968e1e1d35da4683 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:55:50 +0000 Subject: [PATCH 088/173] Refactor data extractors in Navisworks converter - Make `GetClassProperties`, `GetDisplayValue`, `GetModelProperties`, and `GetPropertySets` methods internal - Remove unused using statements --- .../DataExtractors/ClassPropertiesExtractor.cs | 5 +++-- .../DataExtractors/DisplayValueExtractor.cs | 4 +--- .../DataExtractors/ModelPropertiesExtractor.cs | 2 +- .../DataExtractors/PropertySetsExtractor.cs | 2 +- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index 2ae30fad8..01ad02076 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -1,5 +1,6 @@ using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; +using static Speckle.Converter.Navisworks.Helpers.PropertyHelpers; namespace Speckle.Converter.Navisworks.ToSpeckle; @@ -12,7 +13,7 @@ public ClassPropertiesExtractor(IConverterSettingsStore? GetClassProperties(NAV.ModelItem modelItem) + internal Dictionary? GetClassProperties(NAV.ModelItem modelItem) { if (_settingsStore.Current.ExcludeProperties) { @@ -52,7 +53,7 @@ public ClassPropertiesExtractor(IConverterSettingsStore logger _logger = logger; } - public List GetDisplayValue(NAV.ModelItem _) => []; + internal static List GetDisplayValue(NAV.ModelItem _) => []; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs index 984965ddd..6c4b04222 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs @@ -12,7 +12,7 @@ public ModelPropertiesExtractor(IConverterSettingsStore? GetModelProperties(NAV.Model model) + internal Dictionary? GetModelProperties(NAV.Model model) { if (_settingsStore.Current.ExcludeProperties) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs index 0177b7aab..71a606aad 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -13,7 +13,7 @@ public PropertySetsExtractor(IConverterSettingsStore? GetPropertySets(NAV.ModelItem modelItem) + internal Dictionary? GetPropertySets(NAV.ModelItem modelItem) { if (_settingsStore.Current.ExcludeProperties) { From 067856288186526b319aa10f14e59f54fd7d8ca7 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:56:02 +0000 Subject: [PATCH 089/173] Update GlobalUsing.cs: Remove unnecessary global using statement The commit removes an unnecessary global using statement in the GlobalUsing.cs file. This change helps to clean up the code and improve readability. --- .../Speckle.Converters.NavisworksShared/GlobalUsing.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs index b58b1908f..778ce58c3 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/GlobalUsing.cs @@ -1,4 +1,3 @@ -global using ComBridge = Autodesk.Navisworks.Api.ComApi.ComApiBridge; global using NAV = Autodesk.Navisworks.Api; global using NavisworksApp = Autodesk.Navisworks.Api.Application; global using SSC = Speckle.Sdk.Common; From 5c3da646365a6c29d1f7027168a9d8354e4b3877 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:56:23 +0000 Subject: [PATCH 090/173] Add NavisworksPrimitiveProcessor and PrimitiveProcessor classes - Added NavisworksPrimitiveProcessor class with methods for processing Navisworks primitives - Added PrimitiveProcessor class with methods for processing generic primitives - Updated the constructor of PrimitiveProcessor to accept an additional parameter for local to world transformation - Updated the Line, Point, and Triangle methods in both classes to use the new transformation logic --- .../NavisworksPrimitiveProcessor.cs | 223 ++++++++++++++++++ .../Helpers/PrimitiveProcessor.cs | 162 +++++++++++++ 2 files changed, 385 insertions(+) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs new file mode 100644 index 000000000..98a4562d9 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs @@ -0,0 +1,223 @@ +using System.Collections.ObjectModel; +using Autodesk.Navisworks.Api.Interop.ComApi; +using Speckle.Converter.Navisworks.Extensions; +using Speckle.Converter.Navisworks.Geometry; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.DoubleNumerics; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +public class NavisworksPrimitiveProcessor +{ + internal readonly Stack ModelFragmentStack = new(); + + private readonly IConverterSettingsStore _converterSettings; + public bool IsUpright { get; set; } + + public NavisworksPrimitiveProcessor( + bool isUpright, + IConverterSettingsStore converterSettings + ) + { + IsUpright = isUpright; + _converterSettings = converterSettings; + } + + private IEnumerable ModelFragments => ModelFragmentStack; + public InwOpSelection Selection { get; set; } + + public IEnumerable GetUniqueGeometryFragments() + { + var processors = new List(); + + foreach (InwOaPath path in Selection.Paths()) + { + var processor = new PrimitiveProcessor(IsUpright); + + foreach (var fragment in ModelFragments) + { + if ( + !IsSameFragmentPath(((Array)fragment.path.ArrayData).ToArray(), ((Array)path.ArrayData).ToArray()) + ) + { + continue; + } + + var localToWorldTransform = (InwLTransform3f3)fragment.GetLocalToWorldMatrix(); + + processor.LocalToWorldTransformation = ConvertArrayToDouble((Array)localToWorldTransform.Matrix); + + fragment.GenerateSimplePrimitives(nwEVertexProperty.eNORMAL, processor); + } + + processors.Add(processor); + } + + return processors; + } + + private static bool IsSameFragmentPath(Array a1, Array a2) => + a1.Length == a2.Length && a1.Cast().SequenceEqual(a2.Cast()); + + private static double[] ConvertArrayToDouble(Array arr) + { + if (arr.Rank != 1) + { + throw new ArgumentException("The input array must have a rank of 1."); + } + + var doubleArray = new double[arr.GetLength(0)]; + for (var ix = arr.GetLowerBound(0); ix <= arr.GetUpperBound(0); ++ix) + { + doubleArray[ix - arr.GetLowerBound(0)] = (double)arr.GetValue(ix); + } + + return doubleArray; + } +} + +public class PrimitiveProcessor : InwSimplePrimitivesCB +{ + private readonly List _coords = []; + private List _faces = []; + private List _lines = []; + private List _points = []; + private List _triangles = []; + + public PrimitiveProcessor(bool isUpright) + : this() + { + IsUpright = isUpright; + } + + private PrimitiveProcessor() + { + SetCoords(new ReadOnlyCollection(new List())); + SetFaces([]); + SetTriangles([]); + SetLines([]); + SetPoints([]); + } + + public IReadOnlyList Coords => _coords.AsReadOnly(); + + private IReadOnlyList Faces => _faces.AsReadOnly(); + + public IReadOnlyList Triangles => _triangles.AsReadOnly(); + + public IReadOnlyList Lines => _lines.AsReadOnly(); + + public IReadOnlyList Points => _points.AsReadOnly(); + + public IEnumerable LocalToWorldTransformation { get; set; } + + private bool IsUpright { get; set; } + + public void Line(InwSimpleVertex? v1, InwSimpleVertex? v2) + { + if (v1 == null || v2 == null) + { + return; + } + + using var vD1 = TargetUpVector(ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), IsUpright); + using var vD2 = TargetUpVector(ApplyTransformation(VectorFromVertex(v2), LocalToWorldTransformation), IsUpright); + + try + { + var line = new LineD(vD1, vD2); + AddLine(line); + } + catch (ArgumentException ex) + { + Console.WriteLine($"ArgumentException caught: {ex.Message}"); + } + catch (InvalidOperationException ex) + { + Console.WriteLine($"InvalidOperationException caught: {ex.Message}"); + } + } + + public void Point(InwSimpleVertex? v1) + { + if (v1 == null) + { + return; + } + + using var vD1 = TargetUpVector(ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), IsUpright); + + AddPoint(new PointD(vD1)); + } + + public void SnapPoint(InwSimpleVertex v1) + { + // Needed for Splines + } + + public void Triangle(InwSimpleVertex? v1, InwSimpleVertex? v2, InwSimpleVertex? v3) + { + if (v1 == null || v2 == null || v3 == null) + { + return; + } + + using var vD1 = TargetUpVector(ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), IsUpright); + using var vD2 = TargetUpVector(ApplyTransformation(VectorFromVertex(v2), LocalToWorldTransformation), IsUpright); + using var vD3 = TargetUpVector(ApplyTransformation(VectorFromVertex(v3), LocalToWorldTransformation), IsUpright); + + var indexPointer = Faces.Count; + AddFace(3); + AddFaces([indexPointer + 0, indexPointer + 1, indexPointer + 2]); + AddCoords([vD1.X, vD1.Y, vD1.Z, vD2.X, vD2.Y, vD2.Z, vD3.X, vD3.Y, vD3.Z]); + AddTriangle(new TriangleD(vD1, vD2, vD3)); + } + + private void SetCoords(IEnumerable coords) + { + _coords.Clear(); + _coords.AddRange(coords); + } + + private void AddCoords(IEnumerable coords) => _coords.AddRange(coords); + + private void SetFaces(List faces) => _faces = faces ?? throw new ArgumentNullException(nameof(faces)); + + private void AddFace(int face) => _faces.Add(face); + + private void AddFaces(IEnumerable faces) => _faces.AddRange(faces); + + private void SetTriangles(List triangles) => + _triangles = triangles ?? throw new ArgumentNullException(nameof(triangles)); + + private void AddTriangle(TriangleD triangle) => _triangles.Add(triangle); + + private void SetLines(List lines) => _lines = lines ?? throw new ArgumentNullException(nameof(lines)); + + private void AddLine(LineD line) => _lines.Add(line); + + private void SetPoints(List points) => _points = points ?? throw new ArgumentNullException(nameof(points)); + + private void AddPoint(PointD point) => _points.Add(point); + + private static NAV.Vector3D TargetUpVector(NAV.Vector3D v, bool isUpright) => + isUpright ? v : new NAV.Vector3D(v.X, -v.Z, v.Y); + + private static NAV.Vector3D ApplyTransformation(Vector3 vector3, IEnumerable matrixStore) + { + var matrix = matrixStore.ToList(); + var t1 = matrix[3] * vector3.X + matrix[7] * vector3.Y + matrix[11] * vector3.Z + matrix[15]; + var vectorDoubleX = (matrix[0] * vector3.X + matrix[4] * vector3.Y + matrix[8] * vector3.Z + matrix[12]) / t1; + var vectorDoubleY = (matrix[1] * vector3.X + matrix[5] * vector3.Y + matrix[9] * vector3.Z + matrix[13]) / t1; + var vectorDoubleZ = (matrix[2] * vector3.X + matrix[6] * vector3.Y + matrix[10] * vector3.Z + matrix[14]) / t1; + + return new NAV.Vector3D(vectorDoubleX, vectorDoubleY, vectorDoubleZ); + } + + private static Vector3 VectorFromVertex(InwSimpleVertex v) + { + var arrayV = (Array)v.coord; + return new Vector3((float)arrayV.GetValue(1), (float)arrayV.GetValue(2), (float)arrayV.GetValue(3)); + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs new file mode 100644 index 000000000..153f69ca1 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs @@ -0,0 +1,162 @@ +using System.Collections.ObjectModel; +using Autodesk.Navisworks.Api.Interop.ComApi; +using Speckle.Converter.Navisworks.Geometry; +using Speckle.DoubleNumerics; + +namespace Speckle.Converter.Navisworks.Helpers; + +public class PrimitiveProcessor : InwSimplePrimitivesCB +{ + private readonly List _coords = []; + private List _faces = []; + private List _lines = []; + private List _points = []; + private List _triangles = []; + private bool IsUpright { get; set; } + + public PrimitiveProcessor(bool isUpright, IEnumerable localToWorldTransformation) + : this(localToWorldTransformation) + { + IsUpright = isUpright; + } + + private PrimitiveProcessor(IEnumerable localToWorldTransformation) + { + LocalToWorldTransformation = localToWorldTransformation; + SetCoords(new ReadOnlyCollection([])); + SetFaces([]); + SetTriangles([]); + SetLines([]); + SetPoints([]); + } + + public IReadOnlyList Coords => _coords.AsReadOnly(); + private IReadOnlyList Faces => _faces.AsReadOnly(); + public IReadOnlyList Triangles => _triangles.AsReadOnly(); + public IReadOnlyList Lines => _lines.AsReadOnly(); + public IReadOnlyList Points => _points.AsReadOnly(); + private IEnumerable LocalToWorldTransformation { get; set; } + + public void Line(InwSimpleVertex? v1, InwSimpleVertex? v2) + { + if (v1 == null || v2 == null) + { + return; + } + + using var vD1 = TransformVectorToOrientation( + ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), + IsUpright + ); + using var vD2 = TransformVectorToOrientation( + ApplyTransformation(VectorFromVertex(v2), LocalToWorldTransformation), + IsUpright + ); + + try + { + var line = new LineD(vD1, vD2); + AddLine(line); + } + catch (ArgumentException ex) + { + Console.WriteLine($"ArgumentException caught: {ex.Message}"); + } + catch (InvalidOperationException ex) + { + Console.WriteLine($"InvalidOperationException caught: {ex.Message}"); + } + } + + public void Point(InwSimpleVertex? v1) + { + if (v1 == null) + { + return; + } + + using var vD1 = TransformVectorToOrientation( + ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), + IsUpright + ); + + AddPoint(new PointD(vD1)); + } + + // TODO: Needed for Splines + public void SnapPoint(InwSimpleVertex? v1) => throw new NotImplementedException(); + + public void Triangle(InwSimpleVertex? v1, InwSimpleVertex? v2, InwSimpleVertex? v3) + { + if (v1 == null || v2 == null || v3 == null) + { + return; + } + + using var vD1 = TransformVectorToOrientation( + ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), + IsUpright + ); + using var vD2 = TransformVectorToOrientation( + ApplyTransformation(VectorFromVertex(v2), LocalToWorldTransformation), + IsUpright + ); + using var vD3 = TransformVectorToOrientation( + ApplyTransformation(VectorFromVertex(v3), LocalToWorldTransformation), + IsUpright + ); + + var indexPointer = Faces.Count; + AddFace(3); + AddFaces([indexPointer + 0, indexPointer + 1, indexPointer + 2]); + AddCoords([vD1.X, vD1.Y, vD1.Z, vD2.X, vD2.Y, vD2.Z, vD3.X, vD3.Y, vD3.Z]); + AddTriangle(new TriangleD(vD1, vD2, vD3)); + } + + private void SetCoords(IEnumerable coords) + { + _coords.Clear(); + _coords.AddRange(coords); + } + + private void AddCoords(IEnumerable coords) => _coords.AddRange(coords); + + private void SetFaces(List faces) => _faces = faces ?? throw new ArgumentNullException(nameof(faces)); + + private void AddFace(int face) => _faces.Add(face); + + private void AddFaces(IEnumerable faces) => _faces.AddRange(faces); + + private void SetTriangles(List triangles) => + _triangles = triangles ?? throw new ArgumentNullException(nameof(triangles)); + + private void AddTriangle(TriangleD triangle) => _triangles.Add(triangle); + + private void SetLines(List lines) => _lines = lines ?? throw new ArgumentNullException(nameof(lines)); + + private void AddLine(LineD line) => _lines.Add(line); + + private void SetPoints(List points) => _points = points ?? throw new ArgumentNullException(nameof(points)); + + private void AddPoint(PointD point) => _points.Add(point); + + private static NAV.Vector3D TransformVectorToOrientation(NAV.Vector3D v, bool isUpright) => + isUpright ? v : new NAV.Vector3D(v.X, -v.Z, v.Y); + + private static NAV.Vector3D ApplyTransformation(Vector3 vector3, IEnumerable matrixStore) + { + var matrix = matrixStore.ToList(); + var t1 = matrix[3] * vector3.X + matrix[7] * vector3.Y + matrix[11] * vector3.Z + matrix[15]; + var vectorDoubleX = (matrix[0] * vector3.X + matrix[4] * vector3.Y + matrix[8] * vector3.Z + matrix[12]) / t1; + var vectorDoubleY = (matrix[1] * vector3.X + matrix[5] * vector3.Y + matrix[9] * vector3.Z + matrix[13]) / t1; + var vectorDoubleZ = (matrix[2] * vector3.X + matrix[6] * vector3.Y + matrix[10] * vector3.Z + matrix[14]) / t1; + + return new NAV.Vector3D(vectorDoubleX, vectorDoubleY, vectorDoubleZ); + } + + private static Vector3 VectorFromVertex(InwSimpleVertex v) + { + var arrayV = (Array)v.coord; + return new Vector3((float)arrayV.GetValue(1), (float)arrayV.GetValue(2), (float)arrayV.GetValue(3)); + } +} From 30042ac444ea592ab017cb0dfaeac4511156258f Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:56:57 +0000 Subject: [PATCH 091/173] feat: Add internal modifier to VectorMatch method - Changed the access modifier of the VectorMatch method in GeometryHelpers class from public to internal. feat: Add sealed modifier to NavisworksObject and NavisworksGeometryObject classes - Added the sealed modifier to the NavisworksObject and NavisworksGeometryObject classes in NavisworksObjects.cs file. refactor: Rename enum values in ConversionModes.cs - Renamed the enum values MODEL_ORIGIN, PROJECT_BASE_ORIGIN, and BOUNDING_BOX_ORIGIN to MODELORIGIN, PROJECTBASEORIGIN, and BOUNDINGBOXORIGIN respectively in ConversionModes.cs file. refactor: Update CreateGeometryObject method signature - Updated the CreateGeometryObject method signature in ModelItemTopLevelConverterToSpeckle.cs file by making it static and using DisplayValueExtractor.GetDisplayValue instead of _displayValueExtractor.GetDisplayValue. --- .../Helpers/GeometryHelpers.cs | 2 +- .../Models/NavisworksObjects.cs | 6 ++++-- .../Settings/ConversionModes.cs | 11 +++++++---- .../ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs | 4 ++-- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs index fc6302f35..2ca3b3d6f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/GeometryHelpers.cs @@ -9,7 +9,7 @@ public static class GeometryHelpers /// The second comparison vector. /// The tolerance value for the comparison. Default is 1e-9. /// True if the vectors match within the tolerance; otherwise, false. - public static bool VectorMatch(NAV.Vector3D vectorA, NAV.Vector3D vectorB, double tolerance = 1e-9) => + internal static bool VectorMatch(NAV.Vector3D vectorA, NAV.Vector3D vectorB, double tolerance = 1e-9) => Math.Abs(vectorA.X - vectorB.X) < tolerance && Math.Abs(vectorA.Y - vectorB.Y) < tolerance && Math.Abs(vectorA.Z - vectorB.Z) < tolerance; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs index 33dd7e8d6..67fcaf21c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs @@ -26,7 +26,7 @@ public interface INavisworksObject : IDataObject /// /// Represents a non-geometry Speckle object. /// -internal class NavisworksObject(string name) : SSM.Base, INavisworksObject +internal sealed class NavisworksObject(string name) : SSM.Base, INavisworksObject { public string name { get; init; } = name; @@ -49,7 +49,9 @@ internal class NavisworksObject(string name) : SSM.Base, INavisworksObject /// /// Represents a geometry-based Speckle object. /// -internal class NavisworksGeometryObject(IReadOnlyList displayValue, string name) : SSM.Base, INavisworksObject +internal sealed class NavisworksGeometryObject(IReadOnlyList displayValue, string name) + : SSM.Base, + INavisworksObject { IReadOnlyList IDataObject.displayValue => displayValue; public string name { get; init; } = name; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs index b5835b1f6..153aa011c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs @@ -1,4 +1,6 @@ -namespace Speckle.Converter.Navisworks.Settings; +using System.Diagnostics.CodeAnalysis; + +namespace Speckle.Converter.Navisworks.Settings; /// /// Defines the representation mode to be used during conversion. @@ -26,6 +28,7 @@ public enum RepresentationMode /// applied to the model before conversion. The transformation aligns /// the model's origin point to a base point. /// +[SuppressMessage("ReSharper", "IdentifierTypo")] public enum OriginMode { /// @@ -33,15 +36,15 @@ public enum OriginMode /// No transformation is applied other than converting from the local /// coordinate system to the world coordinate system. /// - MODEL_ORIGIN, + MODELORIGIN, /// /// Uses a user-defined project base point as the base point for the transformation. /// - PROJECT_BASE_ORIGIN, + PROJECTBASEORIGIN, /// /// Uses the center of the model's bounding box as the base point for the transformation. /// - BOUNDING_BOX_ORIGIN + BOUNDINGBOXORIGIN } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs index 89b40a59c..d9a09dfe6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs @@ -64,8 +64,8 @@ private Base Convert(NAV.ModelItem target) return (Base)navisworksObject; } - private NavisworksGeometryObject CreateGeometryObject(NAV.ModelItem target, string name) => - new(name: name, displayValue: _displayValueExtractor.GetDisplayValue(target).ToList()); + private static NavisworksGeometryObject CreateGeometryObject(NAV.ModelItem target, string name) => + new(name: name, displayValue: DisplayValueExtractor.GetDisplayValue(target).ToList()); private static NavisworksObject CreateNonGeometryObject(string name) => new(name) { elements = new List() }; From 4f593eac4b8b2495b3aa98cacbef4f6369f66de8 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:57:14 +0000 Subject: [PATCH 092/173] Change origin mode constants to use camel case and update related calculations - Update the origin mode constant from "MODEL_ORIGIN" to "MODELORIGIN" - Update the origin mode constant from "PROJECT_BASE_ORIGIN" to "PROJECTBASEORIGIN" - Update the origin mode constant from "BOUNDING_BOX_ORIGIN" to "BOUNDINGBOXORIGIN" - Update the calculation of the transformation vector based on the new origin mode constants --- .../Settings/NavisworksConversionSettingsFactory.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index 730289df6..b688b216b 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -52,7 +52,7 @@ public NavisworksConversionSettings Create() _includeInternalProperties = false; _coalescePropertiesFromFirstObjectAncestor = true; _visualRepresentationMode = ACTIVE; - _originMode = MODEL_ORIGIN; + _originMode = MODELORIGIN; _excludeProperties = false; // Derived settings from the active document @@ -70,7 +70,7 @@ public NavisworksConversionSettings Create() } // Calculate the transformation vector based on the origin mode - var transformVector = CalculateTransformVector(); + using var transformVector = CalculateTransformVector(); var isUpright = VectorMatch(_document.UpVector, s_canonicalUp); return new NavisworksConversionSettings( @@ -91,9 +91,9 @@ public NavisworksConversionSettings Create() private NAV.Vector3D CalculateTransformVector() => _originMode switch { - PROJECT_BASE_ORIGIN => CalculateProjectBasePointTransform(), - BOUNDING_BOX_ORIGIN => CalculateBoundingBoxTransform(), - MODEL_ORIGIN => new NAV.Vector3D(0, 0, 0), // Default identity transform + PROJECTBASEORIGIN => CalculateProjectBasePointTransform(), + BOUNDINGBOXORIGIN => CalculateBoundingBoxTransform(), + MODELORIGIN => new NAV.Vector3D(0, 0, 0), // Default identity transform _ => throw new NotSupportedException($"OriginMode {_originMode} is not supported.") }; From 42e61dd5d74d718c8a1e200678ccb84c583fa9b2 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 01:57:25 +0000 Subject: [PATCH 093/173] Add NavisworksPrimitiveProcessor and BoundingBoxToSpeckleRawConverter The commit adds two new files: NavisworksPrimitiveProcessor.cs and BoundingBoxToSpeckleRawConverter.cs to the project. These files are included in the compilation process. --- .../Speckle.Converters.NavisworksShared.projitems | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 63be53e19..109e6c1da 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -1,4 +1,4 @@ - + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) @@ -12,10 +12,12 @@ + + @@ -26,5 +28,6 @@ + \ No newline at end of file From 72cd2d4f669772801088c8706d54b704e1e40f20 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 02:03:32 +0000 Subject: [PATCH 094/173] Add support for Speckle connectors in Navisworks versions 2020 to 2025. - Added runtime requirements and component entries for Navisworks versions 2020 to 2025. - Each component entry includes the module name and app description. --- .../Plugin/PackageContents.xml | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml index 9edbb3ba4..3830371c3 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/PackageContents.xml @@ -3,9 +3,35 @@ + + + + + + + + + + + + + + + + + + + + + From f8333c04d6e6b01c015e6bcf8b462c8e4457abdb Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 02:17:32 +0000 Subject: [PATCH 095/173] Add database transaction for table creation in NavisworksDocumentModelStore.cs This commit adds a database transaction to ensure the existence of the required table before performing any operations in NavisworksDocumentModelStore.cs. This helps maintain data integrity and prevents errors related to missing tables. --- .../HostApp/NavisworksDocumentModelStore.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs index 51559c8d1..767467041 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs @@ -141,6 +141,11 @@ private static string RetrieveStateFromDatabase() var database = NavisworksApp.ActiveDocument!.Database; using var table = new DataTable(); + using (var transaction = database.BeginTransaction(NAV.Data.DatabaseChangedAction.Reset)) + { + EnsureDatabaseTableExists(transaction); + } + using var dataAdapter = new NAV.Data.NavisworksDataAdapter( $"SELECT value FROM {TABLE_NAME} WHERE key = @key", database.Value From 028f21f83c4729c059443cdd61ed329fb8f3d25b Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 22:09:56 +0000 Subject: [PATCH 096/173] Update Navisworks connectors to include Speckle.Connectors.DUI dependency. - Added "Speckle.Connectors.DUI" as a dependency in the Navisworks2020, Navisworks2021, Navisworks2022, Navisworks2023, and Navisworks2024 packages. - Updated project references in the Navisworks2024 package to include the "Speckle.Connectors.DUI" project. - Added "Speckle.Connectors.DUI" as a dependency in the Navisworks2025 package. - Renamed "NavisworksServiceRegistration.cs" to "NavisworksConnectorServiceRegistration.cs". - Updated project references in the NavisworksConverters for 2020 and 2021 packages to include the "Speckle.Connectors.DUI" project. --- .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../Speckle.Connectors.Navisworks2024.csproj | 1 + .../packages.lock.json | 1 + .../packages.lock.json | 1 + ...NavisworksConnectorServiceRegistration.cs} | 2 +- ...ckle.Connectors.NavisworksShared.projitems | 2 +- .../Speckle.Converters.Navisworks2020.csproj | 1 + .../packages.lock.json | 38 +++++++++++++++++++ .../Speckle.Converters.Navisworks2021.csproj | 1 + .../packages.lock.json | 38 +++++++++++++++++++ .../Speckle.Converters.Navisworks2022.csproj | 1 + .../packages.lock.json | 38 +++++++++++++++++++ .../Speckle.Converters.Navisworks2023.csproj | 1 + .../packages.lock.json | 38 +++++++++++++++++++ .../Speckle.Converters.Navisworks2024.csproj | 1 + .../packages.lock.json | 38 +++++++++++++++++++ .../Speckle.Converters.Navisworks2025.csproj | 1 + .../packages.lock.json | 38 +++++++++++++++++++ ...NavisworksConverterServiceRegistration.cs} | 2 +- .../Settings/ConversionSettings.cs | 7 ++++ .../Settings/ToSpeckleSettingsManager.cs | 7 ++++ ...ckle.Converters.NavisworksShared.projitems | 4 +- 25 files changed, 261 insertions(+), 4 deletions(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/{NavisworksServiceRegistration.cs => NavisworksConnectorServiceRegistration.cs} (97%) rename Converters/Navisworks/Speckle.Converters.NavisworksShared/{ServiceRegistration.cs => DependencyInjection/NavisworksConverterServiceRegistration.cs} (95%) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index 427002089..d3c485e40 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -271,6 +271,7 @@ "Objects.Converter.Navisworks2020": { "type": "Project", "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2020.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index a5c23b3d2..719687433 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -271,6 +271,7 @@ "Objects.Converter.Navisworks2021": { "type": "Project", "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2021.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index 612642f25..635b761e6 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -271,6 +271,7 @@ "Objects.Converter.Navisworks2022": { "type": "Project", "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2022.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index 4e4f1c674..a80a15372 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -271,6 +271,7 @@ "Objects.Converter.Navisworks2023": { "type": "Project", "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2023.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index 6d35edb67..26a68fdec 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -60,6 +60,7 @@ + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 71bc885cb..8d9328830 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -271,6 +271,7 @@ "Objects.Converter.Navisworks2024": { "type": "Project", "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2024.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index 0bf92104a..a424e8244 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -271,6 +271,7 @@ "Objects.Converter.Navisworks2025": { "type": "Project", "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2025.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs similarity index 97% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index f91660e33..37345146f 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -19,7 +19,7 @@ namespace Speckle.Connector.Navisworks.DependencyInjection; -public static class NavisworksServiceRegistration +public static class NavisworksConnectorServiceRegistration { public static void AddNavisworks(this IServiceCollection serviceCollection) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 2920cc54d..9087126c4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -12,7 +12,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj index 94488bbf3..10b1024db 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index af25accd1..779a05fe8 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -259,6 +259,29 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -266,6 +289,15 @@ "Speckle.Objects": "[3.1.0-dev.200, )" } }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -315,6 +347,12 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj index d27e9ed74..46100a86c 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index 50b137166..140fa2d5b 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -259,6 +259,29 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -266,6 +289,15 @@ "Speckle.Objects": "[3.1.0-dev.200, )" } }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -315,6 +347,12 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj index 29b8e9943..f423540bf 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index a5830eb52..55d148d81 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -259,6 +259,29 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -266,6 +289,15 @@ "Speckle.Objects": "[3.1.0-dev.200, )" } }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -315,6 +347,12 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj index 1297ff693..2be0357de 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index 711eefd6f..bc8200a32 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -259,6 +259,29 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -266,6 +289,15 @@ "Speckle.Objects": "[3.1.0-dev.200, )" } }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -315,6 +347,12 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index 8d2001b17..e2d278329 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 80f20e1e5..40622db10 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -259,6 +259,29 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -266,6 +289,15 @@ "Speckle.Objects": "[3.1.0-dev.200, )" } }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -315,6 +347,12 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj index b302abc6e..4a97a7881 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index 9f1edb328..ec62862d0 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -259,6 +259,29 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.200, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -266,6 +289,15 @@ "Speckle.Objects": "[3.1.0-dev.200, )" } }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -315,6 +347,12 @@ "requested": "[3.1.0-dev.200, )", "resolved": "3.1.0-dev.200", "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs similarity index 95% rename from Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs rename to Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index 8d53af6c5..78ab518e7 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -9,7 +9,7 @@ namespace Speckle.Converter.Navisworks; -public static class ServiceRegistration +public static class NavisworksConverterServiceRegistration { public static IServiceCollection AddNavisworksConverters(this IServiceCollection serviceCollection) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs new file mode 100644 index 000000000..aa67d3484 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs @@ -0,0 +1,7 @@ +namespace Speckle.Converter.Navisworks.Settings +{ + public class ConversionSettings + { + + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs new file mode 100644 index 000000000..8acc2c872 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs @@ -0,0 +1,7 @@ +namespace Speckle.Converter.Navisworks.Settings +{ + public class ToSpeckleSettingsManager + { + + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 109e6c1da..907ca654e 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -14,6 +14,7 @@ + @@ -22,11 +23,12 @@ - + + From 5275f0798f7375ce849ee807b88c12fdc6857a6e Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 22:11:12 +0000 Subject: [PATCH 097/173] Refactor NavisworksSendBinding constructor parameters and dependencies - Changed the type of `_conversionSettingsFactory` parameter in `NavisworksSendBinding` constructor from `INavisworksConversionSettingsFactory` to `NavisworksConversionSettingsFactory`. - Removed duplicate initialization of `Parent` and `Commands` properties in the `NavisworksSendBinding` constructor. - Moved the call to `SubscribeToNavisworksEvents()` after initializing `_conversionSettingsFactory`. Register additional services for Navisworks connector - Added registration for `ToSpeckleSettingsManager`. - Added registration for `IOperationProgressManager`. Refactor NavisworksRootObjectBuilder - Updated access to `_converterSettings.Current.SpeckleUnits` to `_converterSettings.Current.Derived.SpeckleUnits`. Update DockableConnectorPane.cs - Updated the call to `services.AddNavisworksConverters()` to use the correct method name, which is now `services.AddNavisworksConverter()`. Refactor ClassPropertiesExtractor, ModelPropertiesExtractor, and PropertySetsExtractor - Updated access to `_settingsStore.Current.ExcludeProperties` to use `_settingsStore.Current.User.ExcludeProperties`. Register additional services for Navisworks converter - Added registration for `IToSpeckleSettingsManager`. - Added registration for `INavisworksConversionSettingsFactory`. --- .../Bindings/NavisworksSendBinding.cs | 13 +-- .../NavisworksConnectorServiceRegistration.cs | 3 + .../Operations/NavisworksRootObjectBuilder.cs | 2 +- .../Plugin/DockableConnectorPane.cs | 4 +- .../ClassPropertiesExtractor.cs | 2 +- .../ModelPropertiesExtractor.cs | 2 +- .../DataExtractors/PropertySetsExtractor.cs | 4 +- .../NavisworksConverterServiceRegistration.cs | 26 ++++-- .../Settings/ConversionSettings.cs | 42 ++++++++- .../Settings/NavisworksConversionSettings.cs | 17 +++- .../NavisworksConversionSettingsFactory.cs | 91 +++++++++++-------- .../Settings/ToSpeckleSettingsManager.cs | 81 ++++++++++++++++- .../ModelItemTopLevelConverterToSpeckle.cs | 2 +- .../Raw/BoundingBoxToSpeckleRawConverter.cs | 52 +++++------ 14 files changed, 243 insertions(+), 98 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index f7de74cff..87f8dc6e2 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -34,7 +34,7 @@ public class NavisworksSendBinding : ISendBinding private readonly ILogger _logger; private readonly ISpeckleApplication _speckleApplication; private readonly ISdkActivityFactory _activityFactory; - private readonly INavisworksConversionSettingsFactory _conversionSettingsFactory; + private readonly NavisworksConversionSettingsFactory _conversionSettingsFactory; public NavisworksSendBinding( DocumentModelStore store, @@ -46,9 +46,11 @@ public NavisworksSendBinding( ILogger logger, ISpeckleApplication speckleApplication, ISdkActivityFactory activityFactory, - INavisworksConversionSettingsFactory conversionSettingsFactory + NavisworksConversionSettingsFactory conversionSettingsFactory ) { + Parent = parent; + Commands = new SendBindingUICommands(parent); _store = store; _serviceProvider = serviceProvider; _sendFilters = sendFilters.ToList(); @@ -56,11 +58,9 @@ INavisworksConversionSettingsFactory conversionSettingsFactory _operationProgressManager = operationProgressManager; _logger = logger; _speckleApplication = speckleApplication; - Parent = parent; - Commands = new SendBindingUICommands(parent); _activityFactory = activityFactory; - SubscribeToNavisworksEvents(); _conversionSettingsFactory = conversionSettingsFactory; + SubscribeToNavisworksEvents(); } private static void SubscribeToNavisworksEvents() { } @@ -81,9 +81,10 @@ public async Task Send(string modelCardId) } using var scope = _serviceProvider.CreateScope(); + scope .ServiceProvider.GetRequiredService>() - .Initialize(_conversionSettingsFactory.Create()); + .Initialize(_conversionSettingsFactory.Create(modelCard)); CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 37345146f..639fa9336 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -3,6 +3,7 @@ using Speckle.Connector.Navisworks.Filters; using Speckle.Connector.Navisworks.HostApp; using Speckle.Connector.Navisworks.Operations.Send; +using Speckle.Connector.Navisworks.Settings; using Speckle.Connectors.Common; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Cancellation; @@ -41,6 +42,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); // Conversion settings + serviceCollection.AddSingleton(); serviceCollection.AddScoped< IConverterSettingsStore, ConverterSettingsStore @@ -50,6 +52,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddScoped, NavisworksRootObjectBuilder>(); serviceCollection.AddScoped>(); serviceCollection.AddSingleton(DefaultTraversal.CreateTraversalFunc()); + serviceCollection.AddSingleton(); // Register Intercom/interop serviceCollection.RegisterTopLevelExceptionHandler(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs index 94bfda305..a0b4da307 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs @@ -49,7 +49,7 @@ public async Task Build( var name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model"; var rootObjectCollection = new Collection { name = name }; - rootObjectCollection["units"] = _converterSettings.Current.SpeckleUnits; + rootObjectCollection["units"] = _converterSettings.Current.Derived.SpeckleUnits; if (!navisworksModelItems.Any() || navisworksModelItems == null) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs index 44f1e6b97..d6022ca75 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -6,7 +6,7 @@ using Speckle.Connectors.Common; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.WebView; -using Speckle.Converter.Navisworks; +using Speckle.Converter.Navisworks.DependencyInjection; using Speckle.Sdk.Host; namespace Speckle.Connector.Navisworks.Plugin; @@ -38,7 +38,7 @@ public override Control CreateControlPane() services.Initialize(HostApplications.Navisworks, HostAppVersion.v2024); services.AddNavisworks(); - services.AddNavisworksConverters(); + services.AddNavisworksConverter(); Container = services.BuildServiceProvider(); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index 01ad02076..c3c8eae9a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -15,7 +15,7 @@ public ClassPropertiesExtractor(IConverterSettingsStore? GetClassProperties(NAV.ModelItem modelItem) { - if (_settingsStore.Current.ExcludeProperties) + if (_settingsStore.Current.User.ExcludeProperties) { return null; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs index 6c4b04222..cd6ae2230 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ModelPropertiesExtractor.cs @@ -14,7 +14,7 @@ public ModelPropertiesExtractor(IConverterSettingsStore? GetModelProperties(NAV.Model model) { - if (_settingsStore.Current.ExcludeProperties) + if (_settingsStore.Current.User.ExcludeProperties) { return null; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs index 71a606aad..b1bed06d1 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -15,7 +15,7 @@ public PropertySetsExtractor(IConverterSettingsStore? GetPropertySets(NAV.ModelItem modelItem) { - if (_settingsStore.Current.ExcludeProperties) + if (_settingsStore.Current.User.ExcludeProperties) { return null; } @@ -48,7 +48,7 @@ public PropertySetsExtractor(IConverterSettingsStore(converterAssembly); - // register all application converters and context stacks - serviceCollection.AddApplicationConverters(converterAssembly); + // Register settings management + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); serviceCollection.AddScoped< IConverterSettingsStore, ConverterSettingsStore >(); + + // Register unit conversion + serviceCollection.AddSingleton, NavisworksToSpeckleUnitConverter>(); + + // Register converters and handlers + serviceCollection.AddApplicationConverters(converterAssembly); + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + return serviceCollection; } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs index aa67d3484..507f6547a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs @@ -1,7 +1,39 @@ -namespace Speckle.Converter.Navisworks.Settings +using Speckle.Connectors.DUI.Settings; + +namespace Speckle.Connector.Navisworks.Settings; + +public class VisualRepresentationSetting : ICardSetting { - public class ConversionSettings - { - - } + public string? Id { get; set; } = "visualRepresentation"; + public string? Title { get; set; } = "Visual Representation"; + public string? Type { get; set; } = "enum"; + public object? Value { get; set; } + public List? Enum { get; set; } = ["Active", "Original", "Permanent"]; +} + +public class ConvertHiddenElementsSetting : ICardSetting +{ + public string? Id { get; set; } = "convertHiddenElements"; + public string? Title { get; set; } = "Convert Hidden Elements"; + public string? Type { get; set; } = "boolean"; + public object? Value { get; set; } = false; + public List? Enum { get; set; } +} + +public class OriginModeSetting : ICardSetting +{ + public string? Id { get; set; } = "originMode"; + public string? Title { get; set; } = "Origin Mode"; + public string? Type { get; set; } = "enum"; + public object? Value { get; set; } + public List? Enum { get; set; } = ["ModelOrigin", "ProjectBaseOrigin", "BoundingBoxOrigin"]; +} + +public class IncludeInternalPropertiesSetting : ICardSetting +{ + public string? Id { get; set; } = "includeInternalProperties"; + public string? Title { get; set; } = "Include Internal Properties"; + public string? Type { get; set; } = "boolean"; + public object? Value { get; set; } = false; + public List? Enum { get; set; } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index eff3caf4e..1cbaf2b27 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -3,16 +3,23 @@ /// /// Represents the settings used for Navisworks conversions. /// -public record NavisworksConversionSettings( +public record NavisworksConversionSettings(Derived Derived, User User); + +// Derived from Navisworks Application +public record Derived( NAV.Document Document, // The active Navisworks document to be processed. - string SpeckleUnits, // Units used in Speckle for standardised measurements. + NAV.BoundingBox3D ModelBoundingBox, // The bounding box of the model. + NAV.Vector3D? TransformVector, // Transformation vector applied to the model. + bool IsUpright, // Indicates if the model's orientation is upright relative to canonical up. + string SpeckleUnits // Units used in Speckle for standardised measurements. +); + +// Optional settings for conversion to be offered in UI +public record User( OriginMode OriginMode, // Defines the base point for transformations. bool IncludeInternalProperties, // Whether to include internal Navisworks properties in the output. bool ConvertHiddenElements, // Whether to include hidden elements during the conversion process. RepresentationMode VisualRepresentationMode, // Specifies the visual representation mode. bool CoalescePropertiesFromFirstObjectAncestor, // Whether to merge properties from the first object ancestor. - NAV.Vector3D TransformVector, // Transformation vector applied to the model. - bool IsUpright, // Indicates if the model's orientation is upright relative to canonical up. - NAV.BoundingBox3D ModelBoundingBox, // The bounding box of the model. bool ExcludeProperties // Whether to exclude properties from the output. ); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index b688b216b..3aea5393a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -1,9 +1,10 @@ using Microsoft.Extensions.Logging; +using Speckle.Connector.Navisworks.Settings; +using Speckle.Connectors.DUI.Models.Card; using Speckle.Converters.Common; using Speckle.InterfaceGenerator; using static Speckle.Converter.Navisworks.Helpers.GeometryHelpers; using static Speckle.Converter.Navisworks.Settings.OriginMode; -using static Speckle.Converter.Navisworks.Settings.RepresentationMode; namespace Speckle.Converter.Navisworks.Settings; @@ -13,55 +14,49 @@ public class NavisworksConversionSettingsFactory : INavisworksConversionSettings private readonly IConverterSettingsStore _settingsStore; private readonly ILogger _logger; private readonly IHostToSpeckleUnitConverter _unitsConverter; + private readonly IToSpeckleSettingsManager _toSpeckleSettingsManager; - private NAV.Document _document; - private NAV.BoundingBox3D _modelBoundingBox; + private NAV.Document? _document; + private NAV.BoundingBox3D? _modelBoundingBox; private bool _convertHiddenElements; public NavisworksConversionSettingsFactory( IHostToSpeckleUnitConverter unitsConverter, IConverterSettingsStore settingsStore, - ILogger logger + ILogger logger, + IToSpeckleSettingsManager toSpeckleSettingsManager ) { _logger = logger; _settingsStore = settingsStore; _unitsConverter = unitsConverter; + _toSpeckleSettingsManager = toSpeckleSettingsManager; } public NavisworksConversionSettings Current => _settingsStore.Current; - private bool _includeInternalProperties; - private bool _coalescePropertiesFromFirstObjectAncestor; - private RepresentationMode _visualRepresentationMode; - private OriginMode _originMode; - private bool _excludeProperties; - private static readonly NAV.Vector3D s_canonicalUp = new(0, 0, 1); + private OriginMode _originMode; + /// /// Creates a new instance of NavisworksConversionSettings with calculated values. /// /// /// Thrown when no active document is found or document units cannot be converted. /// - public NavisworksConversionSettings Create() + public NavisworksConversionSettings Create(SenderModelCard modelCard) { - // Default settings until overriding them in UI is implemented - _convertHiddenElements = false; - _includeInternalProperties = false; - _coalescePropertiesFromFirstObjectAncestor = true; - _visualRepresentationMode = ACTIVE; - _originMode = MODELORIGIN; - _excludeProperties = false; - - // Derived settings from the active document - _document = NavisworksApp.ActiveDocument ?? throw new InvalidOperationException("No active document found."); - _logger.LogInformation("Creating settings for document: {DocumentName}", _document.Title); + _convertHiddenElements = _toSpeckleSettingsManager.GetConvertHiddenElements(modelCard); + _originMode = _toSpeckleSettingsManager.GetOriginMode(modelCard); - _modelBoundingBox = - _document.GetBoundingBox(_convertHiddenElements) - ?? throw new InvalidOperationException("Bounding box could not be determined."); + // Initialize document and validate + InitializeDocument(); + + if (_document == null) + { + throw new InvalidOperationException("No active document found."); + } var units = _unitsConverter.ConvertOrThrow(_document.Units); if (string.IsNullOrEmpty(units)) @@ -70,24 +65,40 @@ public NavisworksConversionSettings Create() } // Calculate the transformation vector based on the origin mode - using var transformVector = CalculateTransformVector(); + var transformVector = + CalculateTransformVector() ?? throw new InvalidOperationException("Failed to calculate transform vector"); var isUpright = VectorMatch(_document.UpVector, s_canonicalUp); return new NavisworksConversionSettings( - Document: _document, - SpeckleUnits: units, - OriginMode: _originMode, - IncludeInternalProperties: _includeInternalProperties, - ConvertHiddenElements: _convertHiddenElements, - VisualRepresentationMode: _visualRepresentationMode, - CoalescePropertiesFromFirstObjectAncestor: _coalescePropertiesFromFirstObjectAncestor, - TransformVector: transformVector, - IsUpright: isUpright, - ModelBoundingBox: _modelBoundingBox, - ExcludeProperties: _excludeProperties + // Derived from Navisworks Application + new Derived( + Document: _document, + ModelBoundingBox: _modelBoundingBox + ?? throw new InvalidOperationException("Bounding box could not be determined, which is weird."), + TransformVector: transformVector, + IsUpright: isUpright, + SpeckleUnits: units + ), + // Optional settings for conversion to be offered in UI + new User( + OriginMode: _originMode, + IncludeInternalProperties: _toSpeckleSettingsManager.GetIncludeInternalProperties(modelCard), + ConvertHiddenElements: _convertHiddenElements, + VisualRepresentationMode: _toSpeckleSettingsManager.GetVisualRepresentationMode(modelCard), + CoalescePropertiesFromFirstObjectAncestor: false, // Not yet exposed in the UI + ExcludeProperties: false // Not yet exposed in the UI + ) ); } + private void InitializeDocument() + { + _document = NavisworksApp.ActiveDocument ?? throw new InvalidOperationException("No active document found."); + _logger.LogInformation("Creating settings for document: {DocumentName}", _document.Title); + + _modelBoundingBox = _document.GetBoundingBox(_convertHiddenElements); + } + private NAV.Vector3D CalculateTransformVector() => _originMode switch { @@ -109,9 +120,10 @@ private NAV.Vector3D CalculateProjectBasePointTransform() { // TODO: Replace with actual logic to fetch project base point and units from UI or settings using var projectBasePoint = new NAV.Vector3D(10, 20, 0); + // ReSharper disable once ConvertToConstant.Local var projectBasePointUnits = NAV.Units.Meters; - var scale = NAV.UnitConversion.ScaleFactor(projectBasePointUnits, _document.Units); + var scale = NAV.UnitConversion.ScaleFactor(projectBasePointUnits, _document!.Units); // The transformation vector is the negative of the project base point, scaled to the source units. // These units are independent of the Speckle units, and because they are from user input. @@ -126,5 +138,6 @@ private NAV.Vector3D CalculateProjectBasePointTransform() /// This uses the document active model bounding box center as the base point for the transformation. /// private NAV.Vector3D CalculateBoundingBoxTransform() => - new(-_modelBoundingBox.Center.X, -_modelBoundingBox.Center.Y, 0); + (_modelBoundingBox != null ? new NAV.Vector3D(-_modelBoundingBox.Center.X, -_modelBoundingBox.Center.Y, 0) : null) + ?? throw new InvalidOperationException("Bounding box could not be determined."); } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs index 8acc2c872..c8d773fb5 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs @@ -1,7 +1,82 @@ -namespace Speckle.Converter.Navisworks.Settings +using Speckle.Connectors.Common.Caching; +using Speckle.Connectors.DUI.Models.Card; +using Speckle.Converter.Navisworks.Settings; +using Speckle.InterfaceGenerator; +using Speckle.Sdk.Common; + +namespace Speckle.Connector.Navisworks.Settings; + +[GenerateAutoInterface] +public class ToSpeckleSettingsManager(ISendConversionCache sendConversionCache) : IToSpeckleSettingsManager { - public class ToSpeckleSettingsManager + private readonly Dictionary> _settingsCache = []; + + public RepresentationMode GetVisualRepresentationMode(SenderModelCard modelCard) { - + var value = GetSettingValue(modelCard, "visualRepresentation") ?? "Active"; + var mode = value switch + { + "Active" => RepresentationMode.ACTIVE, + "Original" => RepresentationMode.ORIGINAL, + "Permanent" => RepresentationMode.PERMANENT, + _ => RepresentationMode.ACTIVE + }; + + UpdateSettingCache(modelCard, "visualRepresentation", mode); + return mode; + } + + public OriginMode GetOriginMode(SenderModelCard modelCard) + { + var value = GetSettingValue(modelCard, "originMode") ?? "ModelOrigin"; + var mode = value switch + { + "ModelOrigin" => OriginMode.MODELORIGIN, + "ProjectBaseOrigin" => OriginMode.PROJECTBASEORIGIN, + "BoundingBoxOrigin" => OriginMode.BOUNDINGBOXORIGIN, + _ => OriginMode.MODELORIGIN + }; + + UpdateSettingCache(modelCard, "originMode", mode); + return mode; + } + + public bool GetConvertHiddenElements(SenderModelCard modelCard) + { + var value = GetSettingValue(modelCard, "convertHiddenElements"); + UpdateSettingCache(modelCard, "convertHiddenElements", value); + return value; + } + + public bool GetIncludeInternalProperties(SenderModelCard modelCard) + { + var value = GetSettingValue(modelCard, "includeInternalProperties"); + UpdateSettingCache(modelCard, "includeInternalProperties", value); + return value; + } + + private static T? GetSettingValue(SenderModelCard modelCard, string settingId) => + modelCard.Settings?.FirstOrDefault(s => s.Id == settingId)?.Value is T value ? value : default; + + private void UpdateSettingCache(SenderModelCard modelCard, string settingId, object? newValue) + { + var modelId = modelCard.ModelCardId.NotNull(); + + if (!_settingsCache.TryGetValue(modelId, out var settings)) + { + settings = []; + _settingsCache[modelId] = settings; + } + + if (settings.TryGetValue(settingId, out var oldValue) && Equals(oldValue, newValue)) + { + return; + } + + settings[settingId] = newValue; + + // If setting changed, invalidate conversion cache for this model's objects + var objectIds = modelCard.SendFilter?.SelectedObjectIds ?? []; + sendConversionCache.EvictObjects(objectIds); } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs index d9a09dfe6..0b4f7d77b 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs @@ -76,7 +76,7 @@ private static string GetObjectName(NAV.ModelItem target) => // Adds class and property set data to the object private void AddProperties(INavisworksObject navisworksObject, NAV.ModelItem target) { - if (_settingsStore.Current.ExcludeProperties) + if (_settingsStore.Current.User.ExcludeProperties) { return; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs index 6419e3c98..43838ff4a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/BoundingBoxToSpeckleRawConverter.cs @@ -19,34 +19,34 @@ public BoundingBoxToSpeckleRawConverter(IConverterSettingsStore Date: Sun, 1 Dec 2024 22:27:32 +0000 Subject: [PATCH 098/173] Bruh!! - Update the type of _conversionSettingsFactory field from NavisworksConversionSettingsFactory to INavisworksConversionSettingsFactory. - Update the type of conversionSettingsFactory parameter in the constructor from NavisworksConversionSettingsFactory to INavisworksConversionSettingsFactory. --- .../Bindings/NavisworksSendBinding.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 87f8dc6e2..f060b7cd6 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -34,7 +34,7 @@ public class NavisworksSendBinding : ISendBinding private readonly ILogger _logger; private readonly ISpeckleApplication _speckleApplication; private readonly ISdkActivityFactory _activityFactory; - private readonly NavisworksConversionSettingsFactory _conversionSettingsFactory; + private readonly INavisworksConversionSettingsFactory _conversionSettingsFactory; public NavisworksSendBinding( DocumentModelStore store, @@ -46,7 +46,7 @@ public NavisworksSendBinding( ILogger logger, ISpeckleApplication speckleApplication, ISdkActivityFactory activityFactory, - NavisworksConversionSettingsFactory conversionSettingsFactory + INavisworksConversionSettingsFactory conversionSettingsFactory ) { Parent = parent; From 023e0685e796dba06160a00688acdad6019481f7 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 23:49:46 +0000 Subject: [PATCH 099/173] Add NavisworksRootObjectBuilder and related settings classes for sending operations Add NavisworksRootObjectBuilder and related settings classes for sending operations - Added NavisworksRootObjectBuilder class for sending operations - Added ConvertHiddenElementsSetting class for sending operations - Added IncludeInternalPropertiesSetting class for sending operations - Added OriginModeSetting class for sending operations - Added VisualRepresentationSetting class for sending operations --- .../{ => Send}/NavisworksRootObjectBuilder.cs | 0 .../Settings/ConvertHiddenEleementsSetting.cs | 12 ++ .../IncludeInternalPropertiesSetting.cs | 12 ++ .../Send/Settings/OriginModeSetting.cs | 18 +++ .../Send/Settings/ToSpeckleSettingsManager.cs | 111 ++++++++++++++++++ .../Settings/VisualRepresentationSetting.cs | 18 +++ ...ckle.Connectors.NavisworksShared.projitems | 10 +- .../packages.lock.json | 13 ++ .../packages.lock.json | 13 ++ .../Settings/ConversionSettings.cs | 39 ------ .../Settings/ToSpeckleSettingsManager.cs | 82 ------------- ...ckle.Converters.NavisworksShared.projitems | 2 - 12 files changed, 206 insertions(+), 124 deletions(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/{ => Send}/NavisworksRootObjectBuilder.cs (100%) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ConvertHiddenEleementsSetting.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/IncludeInternalPropertiesSetting.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs similarity index 100% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/NavisworksRootObjectBuilder.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ConvertHiddenEleementsSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ConvertHiddenEleementsSetting.cs new file mode 100644 index 000000000..fe2966800 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ConvertHiddenEleementsSetting.cs @@ -0,0 +1,12 @@ +using Speckle.Connectors.DUI.Settings; + +namespace Speckle.Connector.Navisworks.Operations.Send.Settings; + +public class ConvertHiddenElementsSetting(bool value) : ICardSetting +{ + public string? Id { get; set; } = "convertHiddenElements"; + public string? Title { get; set; } = "Convert Hidden Elements"; + public string? Type { get; set; } = "boolean"; + public List? Enum { get; set; } + public object? Value { get; set; } = value; +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/IncludeInternalPropertiesSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/IncludeInternalPropertiesSetting.cs new file mode 100644 index 000000000..594cf59bc --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/IncludeInternalPropertiesSetting.cs @@ -0,0 +1,12 @@ +using Speckle.Connectors.DUI.Settings; + +namespace Speckle.Connector.Navisworks.Operations.Send.Settings; + +public class IncludeInternalPropertiesSetting(bool value) : ICardSetting +{ + public string? Id { get; set; } = "includeInternalProperties"; + public string? Title { get; set; } = "Include Internal Properties"; + public string? Type { get; set; } = "boolean"; + public List? Enum { get; set; } + public object? Value { get; set; } = value; +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs new file mode 100644 index 000000000..cbc398d64 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs @@ -0,0 +1,18 @@ +using Speckle.Connectors.DUI.Settings; +using Speckle.Converter.Navisworks.Settings; + +namespace Speckle.Connector.Navisworks.Operations.Send.Settings; + +public class OriginModeSetting(OriginMode value) : ICardSetting +{ + public string? Id { get; set; } = "originMode"; + public string? Title { get; set; } = "Origin Mode"; + public string? Type { get; set; } = "string"; + public List? Enum { get; set; } = System.Enum.GetNames(typeof(OriginMode)).ToList(); + public object? Value { get; set; } = value.ToString(); + + public static readonly Dictionary OriginModeMap = System + .Enum.GetValues(typeof(OriginMode)) + .Cast() + .ToDictionary(v => v.ToString(), v => v); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs new file mode 100644 index 000000000..33a276359 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs @@ -0,0 +1,111 @@ +using Speckle.Connector.Navisworks.Operations.Send.Settings; +using Speckle.Connectors.Common.Caching; +using Speckle.Connectors.DUI.Models.Card; +using Speckle.Converter.Navisworks.Settings; +using Speckle.InterfaceGenerator; +using Speckle.Sdk.Common; + +namespace Speckle.Connector.Navisworks.Operations.Send; + +[GenerateAutoInterface] +public class ToSpeckleSettingsManager : IToSpeckleSettingsManager +{ + private readonly ISendConversionCache _sendConversionCache; + + // cache invalidation process run with ModelCardId since the settings are model specific + private readonly Dictionary _visualRepresentationCache = []; + private readonly Dictionary _originModeCache = []; + private readonly Dictionary _convertHiddenElementsCache = []; + private readonly Dictionary _includeInternalPropertiesCache = []; + + public ToSpeckleSettingsManager(ISendConversionCache sendConversionCache) + { + _sendConversionCache = sendConversionCache; + } + + public RepresentationMode GetVisualRepresentationMode(SenderModelCard modelCard) + { + var representationString = modelCard.Settings?.First(s => s.Id == "visualRepresentation").Value as string; + + if ( + representationString is not null + && VisualRepresentationSetting.VisualRepresentationMap.TryGetValue( + representationString, + out RepresentationMode representation + ) + ) + { + if (_visualRepresentationCache.TryGetValue(modelCard.ModelCardId.NotNull(), out RepresentationMode previousType)) + { + if (previousType != representation) + { + EvictCacheForModelCard(modelCard); + } + } + _visualRepresentationCache[modelCard.ModelCardId.NotNull()] = representation; + return representation; + } + + throw new ArgumentException($"Invalid visual representation value: {representationString}"); + } + + public OriginMode GetOriginMode(SenderModelCard modelCard) + { + var originString = modelCard.Settings?.First(s => s.Id == "originMode").Value as string; + + if (originString is not null && OriginModeSetting.OriginModeMap.TryGetValue(originString, out OriginMode origin)) + { + if (_originModeCache.TryGetValue(modelCard.ModelCardId.NotNull(), out OriginMode previousType)) + { + if (previousType != origin) + { + EvictCacheForModelCard(modelCard); + } + } + _originModeCache[modelCard.ModelCardId.NotNull()] = origin; + return origin; + } + + throw new ArgumentException($"Invalid origin mode value: {originString}"); + } + + public bool GetConvertHiddenElements(SenderModelCard modelCard) + { + var value = modelCard.Settings?.FirstOrDefault(s => s.Id == "convertHiddenElements")?.Value as bool?; + + var returnValue = value != null && value.NotNull(); + if (_convertHiddenElementsCache.TryGetValue(modelCard.ModelCardId.NotNull(), out var previousValue)) + { + if (previousValue != returnValue) + { + EvictCacheForModelCard(modelCard); + } + } + + _convertHiddenElementsCache[modelCard.ModelCardId] = returnValue; + return returnValue; + } + + public bool GetIncludeInternalProperties(SenderModelCard modelCard) + { + var value = modelCard.Settings?.FirstOrDefault(s => s.Id == "includeInternalProperties")?.Value as bool?; + + var returnValue = value != null && value.NotNull(); + if (_includeInternalPropertiesCache.TryGetValue(modelCard.ModelCardId.NotNull(), out var previousValue)) + { + if (previousValue != returnValue) + { + EvictCacheForModelCard(modelCard); + } + } + + _includeInternalPropertiesCache[modelCard.ModelCardId] = returnValue; + return returnValue; + } + + private void EvictCacheForModelCard(SenderModelCard modelCard) + { + var objectIds = modelCard.SendFilter != null ? modelCard.SendFilter.NotNull().SelectedObjectIds : []; + _sendConversionCache.EvictObjects(objectIds); + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs new file mode 100644 index 000000000..0c58f809f --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs @@ -0,0 +1,18 @@ +using Speckle.Connectors.DUI.Settings; +using Speckle.Converter.Navisworks.Settings; + +namespace Speckle.Connector.Navisworks.Operations.Send.Settings; + +public class VisualRepresentationSetting(RepresentationMode value) : ICardSetting +{ + public string? Id { get; set; } = "visualRepresentation"; + public string? Title { get; set; } = "Visual Representation"; + public string? Type { get; set; } = "string"; + public List? Enum { get; set; } = System.Enum.GetNames(typeof(RepresentationMode)).ToList(); + public object? Value { get; set; } = value.ToString(); + + public static readonly Dictionary VisualRepresentationMap = System + .Enum.GetValues(typeof(RepresentationMode)) + .Cast() + .ToDictionary(v => v.ToString(), v => v); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 9087126c4..d5323e951 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -19,7 +19,12 @@ - + + + + + + @@ -46,4 +51,7 @@ Always + + + \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index 779a05fe8..1bb3cf1dc 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -279,6 +279,13 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, @@ -316,6 +323,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index bc8200a32..a7b120808 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -279,6 +279,13 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, @@ -316,6 +323,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs deleted file mode 100644 index 507f6547a..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionSettings.cs +++ /dev/null @@ -1,39 +0,0 @@ -using Speckle.Connectors.DUI.Settings; - -namespace Speckle.Connector.Navisworks.Settings; - -public class VisualRepresentationSetting : ICardSetting -{ - public string? Id { get; set; } = "visualRepresentation"; - public string? Title { get; set; } = "Visual Representation"; - public string? Type { get; set; } = "enum"; - public object? Value { get; set; } - public List? Enum { get; set; } = ["Active", "Original", "Permanent"]; -} - -public class ConvertHiddenElementsSetting : ICardSetting -{ - public string? Id { get; set; } = "convertHiddenElements"; - public string? Title { get; set; } = "Convert Hidden Elements"; - public string? Type { get; set; } = "boolean"; - public object? Value { get; set; } = false; - public List? Enum { get; set; } -} - -public class OriginModeSetting : ICardSetting -{ - public string? Id { get; set; } = "originMode"; - public string? Title { get; set; } = "Origin Mode"; - public string? Type { get; set; } = "enum"; - public object? Value { get; set; } - public List? Enum { get; set; } = ["ModelOrigin", "ProjectBaseOrigin", "BoundingBoxOrigin"]; -} - -public class IncludeInternalPropertiesSetting : ICardSetting -{ - public string? Id { get; set; } = "includeInternalProperties"; - public string? Title { get; set; } = "Include Internal Properties"; - public string? Type { get; set; } = "boolean"; - public object? Value { get; set; } = false; - public List? Enum { get; set; } -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs deleted file mode 100644 index c8d773fb5..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ToSpeckleSettingsManager.cs +++ /dev/null @@ -1,82 +0,0 @@ -using Speckle.Connectors.Common.Caching; -using Speckle.Connectors.DUI.Models.Card; -using Speckle.Converter.Navisworks.Settings; -using Speckle.InterfaceGenerator; -using Speckle.Sdk.Common; - -namespace Speckle.Connector.Navisworks.Settings; - -[GenerateAutoInterface] -public class ToSpeckleSettingsManager(ISendConversionCache sendConversionCache) : IToSpeckleSettingsManager -{ - private readonly Dictionary> _settingsCache = []; - - public RepresentationMode GetVisualRepresentationMode(SenderModelCard modelCard) - { - var value = GetSettingValue(modelCard, "visualRepresentation") ?? "Active"; - var mode = value switch - { - "Active" => RepresentationMode.ACTIVE, - "Original" => RepresentationMode.ORIGINAL, - "Permanent" => RepresentationMode.PERMANENT, - _ => RepresentationMode.ACTIVE - }; - - UpdateSettingCache(modelCard, "visualRepresentation", mode); - return mode; - } - - public OriginMode GetOriginMode(SenderModelCard modelCard) - { - var value = GetSettingValue(modelCard, "originMode") ?? "ModelOrigin"; - var mode = value switch - { - "ModelOrigin" => OriginMode.MODELORIGIN, - "ProjectBaseOrigin" => OriginMode.PROJECTBASEORIGIN, - "BoundingBoxOrigin" => OriginMode.BOUNDINGBOXORIGIN, - _ => OriginMode.MODELORIGIN - }; - - UpdateSettingCache(modelCard, "originMode", mode); - return mode; - } - - public bool GetConvertHiddenElements(SenderModelCard modelCard) - { - var value = GetSettingValue(modelCard, "convertHiddenElements"); - UpdateSettingCache(modelCard, "convertHiddenElements", value); - return value; - } - - public bool GetIncludeInternalProperties(SenderModelCard modelCard) - { - var value = GetSettingValue(modelCard, "includeInternalProperties"); - UpdateSettingCache(modelCard, "includeInternalProperties", value); - return value; - } - - private static T? GetSettingValue(SenderModelCard modelCard, string settingId) => - modelCard.Settings?.FirstOrDefault(s => s.Id == settingId)?.Value is T value ? value : default; - - private void UpdateSettingCache(SenderModelCard modelCard, string settingId, object? newValue) - { - var modelId = modelCard.ModelCardId.NotNull(); - - if (!_settingsCache.TryGetValue(modelId, out var settings)) - { - settings = []; - _settingsCache[modelId] = settings; - } - - if (settings.TryGetValue(settingId, out var oldValue) && Equals(oldValue, newValue)) - { - return; - } - - settings[settingId] = newValue; - - // If setting changed, invalidate conversion cache for this model's objects - var objectIds = modelCard.SendFilter?.SelectedObjectIds ?? []; - sendConversionCache.EvictObjects(objectIds); - } -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 907ca654e..20ff80bcb 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -25,10 +25,8 @@ - - From b290b83881af3f38bed6dacb925062d384598a1b Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 23:51:23 +0000 Subject: [PATCH 100/173] Refactor conversion mode and origin mode enums - Renamed "ACTIVE" to "Active" - Renamed "ORIGINAL" to "Original" - Renamed "PERMANENT" to "Permanent" - Renamed "MODELORIGIN" to "ModelOrigin" - Renamed "PROJECTBASEORIGIN" to "ProjectBasePoint" - Renamed "BOUNDINGBOXORIGIN" to "BoundingBoxCenter" Updated the NavisworksConversionSettingsFactory class: - Updated references and imports - Updated switch cases for originMode enum with new names --- .../Settings/ConversionModes.cs | 15 ++++++++------- .../NavisworksConversionSettingsFactory.cs | 7 +++---- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs index 153aa011c..854c2ada6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs @@ -5,22 +5,23 @@ namespace Speckle.Converter.Navisworks.Settings; /// /// Defines the representation mode to be used during conversion. /// +[SuppressMessage("ReSharper", "InconsistentNaming")] public enum RepresentationMode { /// /// Uses the current active representation (e.g., overrides or temporary settings). /// - ACTIVE, + Active, /// /// Preserves the original representation as defined in the source data. /// - ORIGINAL, + Original, /// /// Applies a fixed or user-defined representation, overriding others. /// - PERMANENT + Permanent } /// @@ -28,7 +29,7 @@ public enum RepresentationMode /// applied to the model before conversion. The transformation aligns /// the model's origin point to a base point. /// -[SuppressMessage("ReSharper", "IdentifierTypo")] +[SuppressMessage("ReSharper", "InconsistentNaming")] public enum OriginMode { /// @@ -36,15 +37,15 @@ public enum OriginMode /// No transformation is applied other than converting from the local /// coordinate system to the world coordinate system. /// - MODELORIGIN, + ModelOrigin, /// /// Uses a user-defined project base point as the base point for the transformation. /// - PROJECTBASEORIGIN, + ProjectBasePoint, /// /// Uses the center of the model's bounding box as the base point for the transformation. /// - BOUNDINGBOXORIGIN + BoundingBoxCenter } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index 3aea5393a..64aba9b4a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -1,5 +1,4 @@ using Microsoft.Extensions.Logging; -using Speckle.Connector.Navisworks.Settings; using Speckle.Connectors.DUI.Models.Card; using Speckle.Converters.Common; using Speckle.InterfaceGenerator; @@ -102,9 +101,9 @@ private void InitializeDocument() private NAV.Vector3D CalculateTransformVector() => _originMode switch { - PROJECTBASEORIGIN => CalculateProjectBasePointTransform(), - BOUNDINGBOXORIGIN => CalculateBoundingBoxTransform(), - MODELORIGIN => new NAV.Vector3D(0, 0, 0), // Default identity transform + ProjectBasePoint => CalculateProjectBasePointTransform(), + BoundingBoxCenter => CalculateBoundingBoxTransform(), + ModelOrigin => new NAV.Vector3D(0, 0, 0), // Default identity transform _ => throw new NotSupportedException($"OriginMode {_originMode} is not supported.") }; From 9b022ef14f446e05ca8d9f796154b5629fa7d2bf Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 1 Dec 2024 23:51:35 +0000 Subject: [PATCH 101/173] feat: Add new settings to NavisworksSendBinding and remove unused import - Added new settings to the `GetSendSettings()` method in `NavisworksSendBinding` class. - Removed unused import of `Speckle.Connector.Navisworks.Settings` in `NavisworksConverterServiceRegistration.cs`. --- .../Bindings/NavisworksSendBinding.cs | 9 ++++++++- .../NavisworksConverterServiceRegistration.cs | 1 - 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index f060b7cd6..0fd55feb8 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -1,5 +1,6 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; +using Speckle.Connector.Navisworks.Operations.Send.Settings; using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Bindings; @@ -67,7 +68,13 @@ private static void SubscribeToNavisworksEvents() { } public List GetSendFilters() => _sendFilters; - public List GetSendSettings() => []; + public List GetSendSettings() => + [ + new VisualRepresentationSetting(RepresentationMode.Active), + new OriginModeSetting(OriginMode.ModelOrigin), + new IncludeInternalPropertiesSetting(false), + new ConvertHiddenElementsSetting(false), + ]; public async Task Send(string modelCardId) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index e3a5c5994..d067d5f5f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -1,6 +1,5 @@ using System.Reflection; using Microsoft.Extensions.DependencyInjection; -using Speckle.Connector.Navisworks.Settings; using Speckle.Converter.Navisworks.Services; using Speckle.Converter.Navisworks.Settings; using Speckle.Converter.Navisworks.ToSpeckle; From 48fb1553e241bd8e08fac45601cb0e92d9350818 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 00:01:39 +0000 Subject: [PATCH 102/173] Update Navisworks connector service registration and settings manager - Updated the service registration in `NavisworksConnectorServiceRegistration.cs` to use `ToSpeckleSettingsManagerNavisworks` instead of `ToSpeckleSettingsManager`. - Renamed `ToSpeckleSettingsManager.cs` to `ToSpeckleSettingsManagerNavisworks.cs` in the send operations settings folder. - Updated the project file `Speckle.Connectors.NavisworksShared.projitems` to include the renamed file. - Added a new dependency on `speckle.connectors.dui.webview`, which includes dependencies on `Microsoft.Web.WebView2` and `Speckle.Connectors.DUI`. - Updated the conversion settings factory in `NavisworksConversionSettingsFactory.cs` to use `IToSpeckleSettingsManagerNavisworks` instead of `IToSpeckleSettingsManager`. --- .../NavisworksConnectorServiceRegistration.cs | 2 +- ...ger.cs => ToSpeckleSettingsManagerNavisworks.cs} | 6 +++--- .../Speckle.Connectors.NavisworksShared.projitems | 2 +- .../packages.lock.json | 13 +++++++++++++ .../Settings/NavisworksConversionSettingsFactory.cs | 5 +++-- 5 files changed, 21 insertions(+), 7 deletions(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/{ToSpeckleSettingsManager.cs => ToSpeckleSettingsManagerNavisworks.cs} (94%) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 639fa9336..5dca6b72f 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -42,7 +42,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); // Conversion settings - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddScoped< IConverterSettingsStore, ConverterSettingsStore diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs similarity index 94% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs index 33a276359..fe8a1fae7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManager.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs @@ -5,10 +5,10 @@ using Speckle.InterfaceGenerator; using Speckle.Sdk.Common; -namespace Speckle.Connector.Navisworks.Operations.Send; +namespace Speckle.Connector.Navisworks.Operations.Send.Settings; [GenerateAutoInterface] -public class ToSpeckleSettingsManager : IToSpeckleSettingsManager +public class ToSpeckleSettingsManagerNavisworks : IToSpeckleSettingsManagerNavisworks { private readonly ISendConversionCache _sendConversionCache; @@ -18,7 +18,7 @@ public class ToSpeckleSettingsManager : IToSpeckleSettingsManager private readonly Dictionary _convertHiddenElementsCache = []; private readonly Dictionary _includeInternalPropertiesCache = []; - public ToSpeckleSettingsManager(ISendConversionCache sendConversionCache) + public ToSpeckleSettingsManagerNavisworks(ISendConversionCache sendConversionCache) { _sendConversionCache = sendConversionCache; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index d5323e951..27172e0a1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -23,7 +23,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 40622db10..e134748ad 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -279,6 +279,13 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, @@ -316,6 +323,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index 64aba9b4a..824fde767 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Logging; +using Speckle.Connector.Navisworks.Operations.Send.Settings; using Speckle.Connectors.DUI.Models.Card; using Speckle.Converters.Common; using Speckle.InterfaceGenerator; @@ -13,7 +14,7 @@ public class NavisworksConversionSettingsFactory : INavisworksConversionSettings private readonly IConverterSettingsStore _settingsStore; private readonly ILogger _logger; private readonly IHostToSpeckleUnitConverter _unitsConverter; - private readonly IToSpeckleSettingsManager _toSpeckleSettingsManager; + private readonly IToSpeckleSettingsManagerNavisworks _toSpeckleSettingsManager; private NAV.Document? _document; private NAV.BoundingBox3D? _modelBoundingBox; @@ -23,7 +24,7 @@ public NavisworksConversionSettingsFactory( IHostToSpeckleUnitConverter unitsConverter, IConverterSettingsStore settingsStore, ILogger logger, - IToSpeckleSettingsManager toSpeckleSettingsManager + IToSpeckleSettingsManagerNavisworks toSpeckleSettingsManager ) { _logger = logger; From 6f796ce2cd0fc3c2f2b98ebdd651ef2523b14505 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 01:50:57 +0000 Subject: [PATCH 103/173] Add project references to DUI and Navisworks converters in Navisworks connectors - Added a project reference to `Speckle.Connectors.DUI` in the Navisworks 2020, 2021, 2022, 2023, and 2025 connector projects. - Added project references to the respective Navisworks converter projects in the Navisworks 2020, 2021, 2022, 2023, and 2025 connector projects. - Removed a compile include for `NavisworksSelectionFilter.cs` from the shared Navisworks converter projitems file. - Added a compile include for `NavisworksSelectionFilter.cs` in the send filters folder of the shared Navisworks converter projitems file. --- .../Speckle.Connectors.Navisworks2020.csproj | 1 + .../Speckle.Connectors.Navisworks2021.csproj | 1 + .../Speckle.Connectors.Navisworks2022.csproj | 1 + .../Speckle.Connectors.Navisworks2023.csproj | 1 + .../Speckle.Connectors.Navisworks2025.csproj | 1 + .../Speckle.Connectors.NavisworksShared.projitems | 2 +- .../packages.lock.json | 13 ------------- .../packages.lock.json | 12 ++++++++++++ .../packages.lock.json | 13 ------------- .../Speckle.Converters.NavisworksShared.projitems | 2 +- 10 files changed, 19 insertions(+), 28 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj index 9a44060c8..2f5daaaba 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj @@ -60,6 +60,7 @@ + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj index 90053e8bd..71ee260e6 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj @@ -60,6 +60,7 @@ + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj index 23ea15f18..88a813f9c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj @@ -60,6 +60,7 @@ + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj index 12e0a6631..70a1b95ab 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj @@ -60,6 +60,7 @@ + diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj index 16d3b4a01..4444a424b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj @@ -60,6 +60,7 @@ + diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 27172e0a1..1963cb6d7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -14,7 +14,6 @@ - @@ -25,6 +24,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index 1bb3cf1dc..779a05fe8 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -279,13 +279,6 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, @@ -323,12 +316,6 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index a7b120808..37621d5fd 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -289,6 +289,18 @@ "speckle.connectors.logging": { "type": "Project" }, + "speckle.connectors.navisworks2023": { + "type": "Project", + "dependencies": { + "Objects.Converter.Navisworks2023": "[1.0.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2023.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, "speckle.converters.common": { "type": "Project", "dependencies": { diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index e134748ad..40622db10 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -279,13 +279,6 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, @@ -323,12 +316,6 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 20ff80bcb..23380c9a7 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -22,9 +22,9 @@ + - From e5b30d6a6a2de3a592b414812db4065228b8b896 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 01:52:02 +0000 Subject: [PATCH 104/173] here we go again This commit adds support for Navisworks conversion settings in the SendBinding class. It introduces a new interface, IToSpeckleSettingsManagerNavisworks, and implements it in the ToSpeckleSettingsManagerNavisworks class. The NavisworksSendBinding constructor now takes an additional parameter of type IToSpeckleSettingsManagerNavisworks. In addition, some file and namespace renaming has been done to align with the changes made. --- .../Bindings/NavisworksSendBinding.cs | 15 ++++++-- .../NavisworksConnectorServiceRegistration.cs | 4 +-- .../Filters/NavisworksSelectionFilter.cs | 2 +- .../Send/Settings/OriginModeSetting.cs | 2 +- .../ToSpeckleSettingsManagerNavisworks.cs | 22 ++++++++++-- .../Settings/VisualRepresentationSetting.cs | 2 +- .../{Settings => Models}/ConversionModes.cs | 2 +- .../Settings/NavisworksConversionSettings.cs | 4 ++- .../NavisworksConversionSettingsFactory.cs | 36 +++++++++---------- 9 files changed, 59 insertions(+), 30 deletions(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/{ => Operations/Send}/Filters/NavisworksSelectionFilter.cs (80%) rename Converters/Navisworks/Speckle.Converters.NavisworksShared/{Settings => Models}/ConversionModes.cs (96%) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 0fd55feb8..8da39eba2 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -11,6 +11,7 @@ using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; +using Speckle.Converter.Navisworks.Models; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; using Speckle.Sdk; @@ -36,6 +37,7 @@ public class NavisworksSendBinding : ISendBinding private readonly ISpeckleApplication _speckleApplication; private readonly ISdkActivityFactory _activityFactory; private readonly INavisworksConversionSettingsFactory _conversionSettingsFactory; + private readonly IToSpeckleSettingsManagerNavisworks _toSpeckleSettingsManager; public NavisworksSendBinding( DocumentModelStore store, @@ -47,7 +49,8 @@ public NavisworksSendBinding( ILogger logger, ISpeckleApplication speckleApplication, ISdkActivityFactory activityFactory, - INavisworksConversionSettingsFactory conversionSettingsFactory + INavisworksConversionSettingsFactory conversionSettingsFactory, + IToSpeckleSettingsManagerNavisworks toSpeckleSettingsManager ) { Parent = parent; @@ -61,6 +64,7 @@ INavisworksConversionSettingsFactory conversionSettingsFactory _speckleApplication = speckleApplication; _activityFactory = activityFactory; _conversionSettingsFactory = conversionSettingsFactory; + _toSpeckleSettingsManager = toSpeckleSettingsManager; SubscribeToNavisworksEvents(); } @@ -91,7 +95,14 @@ public async Task Send(string modelCardId) scope .ServiceProvider.GetRequiredService>() - .Initialize(_conversionSettingsFactory.Create(modelCard)); + .Initialize( + _conversionSettingsFactory.Create( + originMode: _toSpeckleSettingsManager.GetOriginMode(modelCard), + visualRepresentationMode: _toSpeckleSettingsManager.GetVisualRepresentationMode(modelCard), + convertHiddenElements: _toSpeckleSettingsManager.GetConvertHiddenElements(modelCard), + includeInternalProperties: _toSpeckleSettingsManager.GetIncludeInternalProperties(modelCard) + ) + ); CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 5dca6b72f..67573b91b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -1,9 +1,9 @@ using Microsoft.Extensions.DependencyInjection; using Speckle.Connector.Navisworks.Bindings; -using Speckle.Connector.Navisworks.Filters; using Speckle.Connector.Navisworks.HostApp; using Speckle.Connector.Navisworks.Operations.Send; -using Speckle.Connector.Navisworks.Settings; +using Speckle.Connector.Navisworks.Operations.Send.Filters; +using Speckle.Connector.Navisworks.Operations.Send.Settings; using Speckle.Connectors.Common; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Cancellation; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Filters/NavisworksSelectionFilter.cs similarity index 80% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Filters/NavisworksSelectionFilter.cs index d063c81a4..dab2b224d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Filters/NavisworksSelectionFilter.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Filters/NavisworksSelectionFilter.cs @@ -1,6 +1,6 @@ using Speckle.Connectors.DUI.Models.Card.SendFilter; -namespace Speckle.Connector.Navisworks.Filters; +namespace Speckle.Connector.Navisworks.Operations.Send.Filters; public class NavisworksSelectionFilter : DirectSelectionSendFilter { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs index cbc398d64..d258e309a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs @@ -1,5 +1,5 @@ using Speckle.Connectors.DUI.Settings; -using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.Models; namespace Speckle.Connector.Navisworks.Operations.Send.Settings; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs index fe8a1fae7..23cb116c1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs @@ -1,7 +1,7 @@ -using Speckle.Connector.Navisworks.Operations.Send.Settings; +using System.Diagnostics.CodeAnalysis; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.DUI.Models.Card; -using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.Models; using Speckle.InterfaceGenerator; using Speckle.Sdk.Common; @@ -25,6 +25,11 @@ public ToSpeckleSettingsManagerNavisworks(ISendConversionCache sendConversionCac public RepresentationMode GetVisualRepresentationMode(SenderModelCard modelCard) { + if (modelCard == null) + { + throw new ArgumentNullException(nameof(modelCard)); + } + var representationString = modelCard.Settings?.First(s => s.Id == "visualRepresentation").Value as string; if ( @@ -42,6 +47,7 @@ out RepresentationMode representation EvictCacheForModelCard(modelCard); } } + _visualRepresentationCache[modelCard.ModelCardId.NotNull()] = representation; return representation; } @@ -51,6 +57,11 @@ out RepresentationMode representation public OriginMode GetOriginMode(SenderModelCard modelCard) { + if (modelCard == null) + { + throw new ArgumentNullException(nameof(modelCard)); + } + var originString = modelCard.Settings?.First(s => s.Id == "originMode").Value as string; if (originString is not null && OriginModeSetting.OriginModeMap.TryGetValue(originString, out OriginMode origin)) @@ -71,6 +82,11 @@ public OriginMode GetOriginMode(SenderModelCard modelCard) public bool GetConvertHiddenElements(SenderModelCard modelCard) { + if (modelCard == null) + { + throw new ArgumentNullException(nameof(modelCard)); + } + var value = modelCard.Settings?.FirstOrDefault(s => s.Id == "convertHiddenElements")?.Value as bool?; var returnValue = value != null && value.NotNull(); @@ -86,7 +102,7 @@ public bool GetConvertHiddenElements(SenderModelCard modelCard) return returnValue; } - public bool GetIncludeInternalProperties(SenderModelCard modelCard) + public bool GetIncludeInternalProperties([NotNull] SenderModelCard modelCard) { var value = modelCard.Settings?.FirstOrDefault(s => s.Id == "includeInternalProperties")?.Value as bool?; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs index 0c58f809f..453b10c83 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs @@ -1,5 +1,5 @@ using Speckle.Connectors.DUI.Settings; -using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.Models; namespace Speckle.Connector.Navisworks.Operations.Send.Settings; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/ConversionModes.cs similarity index 96% rename from Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs rename to Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/ConversionModes.cs index 854c2ada6..b09801a75 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/ConversionModes.cs @@ -1,6 +1,6 @@ using System.Diagnostics.CodeAnalysis; -namespace Speckle.Converter.Navisworks.Settings; +namespace Speckle.Converter.Navisworks.Models; /// /// Defines the representation mode to be used during conversion. diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index 1cbaf2b27..0e55380b2 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -1,4 +1,6 @@ -namespace Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.Models; + +namespace Speckle.Converter.Navisworks.Settings; /// /// Represents the settings used for Navisworks conversions. diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index 824fde767..d5c48e94e 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -1,10 +1,8 @@ using Microsoft.Extensions.Logging; -using Speckle.Connector.Navisworks.Operations.Send.Settings; -using Speckle.Connectors.DUI.Models.Card; +using Speckle.Converter.Navisworks.Helpers; +using Speckle.Converter.Navisworks.Models; using Speckle.Converters.Common; using Speckle.InterfaceGenerator; -using static Speckle.Converter.Navisworks.Helpers.GeometryHelpers; -using static Speckle.Converter.Navisworks.Settings.OriginMode; namespace Speckle.Converter.Navisworks.Settings; @@ -14,7 +12,6 @@ public class NavisworksConversionSettingsFactory : INavisworksConversionSettings private readonly IConverterSettingsStore _settingsStore; private readonly ILogger _logger; private readonly IHostToSpeckleUnitConverter _unitsConverter; - private readonly IToSpeckleSettingsManagerNavisworks _toSpeckleSettingsManager; private NAV.Document? _document; private NAV.BoundingBox3D? _modelBoundingBox; @@ -23,14 +20,12 @@ public class NavisworksConversionSettingsFactory : INavisworksConversionSettings public NavisworksConversionSettingsFactory( IHostToSpeckleUnitConverter unitsConverter, IConverterSettingsStore settingsStore, - ILogger logger, - IToSpeckleSettingsManagerNavisworks toSpeckleSettingsManager + ILogger logger ) { _logger = logger; _settingsStore = settingsStore; _unitsConverter = unitsConverter; - _toSpeckleSettingsManager = toSpeckleSettingsManager; } public NavisworksConversionSettings Current => _settingsStore.Current; @@ -45,10 +40,15 @@ IToSpeckleSettingsManagerNavisworks toSpeckleSettingsManager /// /// Thrown when no active document is found or document units cannot be converted. /// - public NavisworksConversionSettings Create(SenderModelCard modelCard) + public NavisworksConversionSettings Create( + OriginMode originMode, + RepresentationMode visualRepresentationMode, + bool convertHiddenElements, + bool includeInternalProperties + ) { - _convertHiddenElements = _toSpeckleSettingsManager.GetConvertHiddenElements(modelCard); - _originMode = _toSpeckleSettingsManager.GetOriginMode(modelCard); + _convertHiddenElements = convertHiddenElements; + _originMode = originMode; // Initialize document and validate InitializeDocument(); @@ -65,9 +65,9 @@ public NavisworksConversionSettings Create(SenderModelCard modelCard) } // Calculate the transformation vector based on the origin mode - var transformVector = + using var transformVector = CalculateTransformVector() ?? throw new InvalidOperationException("Failed to calculate transform vector"); - var isUpright = VectorMatch(_document.UpVector, s_canonicalUp); + var isUpright = GeometryHelpers.VectorMatch(_document.UpVector, s_canonicalUp); return new NavisworksConversionSettings( // Derived from Navisworks Application @@ -82,9 +82,9 @@ public NavisworksConversionSettings Create(SenderModelCard modelCard) // Optional settings for conversion to be offered in UI new User( OriginMode: _originMode, - IncludeInternalProperties: _toSpeckleSettingsManager.GetIncludeInternalProperties(modelCard), + IncludeInternalProperties: includeInternalProperties, ConvertHiddenElements: _convertHiddenElements, - VisualRepresentationMode: _toSpeckleSettingsManager.GetVisualRepresentationMode(modelCard), + VisualRepresentationMode: visualRepresentationMode, CoalescePropertiesFromFirstObjectAncestor: false, // Not yet exposed in the UI ExcludeProperties: false // Not yet exposed in the UI ) @@ -102,9 +102,9 @@ private void InitializeDocument() private NAV.Vector3D CalculateTransformVector() => _originMode switch { - ProjectBasePoint => CalculateProjectBasePointTransform(), - BoundingBoxCenter => CalculateBoundingBoxTransform(), - ModelOrigin => new NAV.Vector3D(0, 0, 0), // Default identity transform + OriginMode.ProjectBasePoint => CalculateProjectBasePointTransform(), + OriginMode.BoundingBoxCenter => CalculateBoundingBoxTransform(), + OriginMode.ModelOrigin => new NAV.Vector3D(0, 0, 0), // Default identity transform _ => throw new NotSupportedException($"OriginMode {_originMode} is not supported.") }; From 4113d303ff192578b8f3273391f76748bbe7514c Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 02:05:27 +0000 Subject: [PATCH 105/173] FFS - Cyclical relationships or missing assemblies --- .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../packages.lock.json | 1 + .../Bindings/NavisworksSendBinding.cs | 1 - .../Send/Settings/OriginModeSetting.cs | 2 +- .../ToSpeckleSettingsManagerNavisworks.cs | 2 +- .../Settings/VisualRepresentationSetting.cs | 2 +- .../Speckle.Converters.Navisworks2020.csproj | 1 + .../packages.lock.json | 25 +++++++++++++++++++ .../Speckle.Converters.Navisworks2021.csproj | 1 + .../packages.lock.json | 25 +++++++++++++++++++ .../Speckle.Converters.Navisworks2022.csproj | 1 + .../packages.lock.json | 25 +++++++++++++++++++ .../Speckle.Converters.Navisworks2023.csproj | 1 + .../packages.lock.json | 25 +++++++++++++++++++ .../Speckle.Converters.Navisworks2025.csproj | 1 + .../packages.lock.json | 25 +++++++++++++++++++ .../NavisworksConverterServiceRegistration.cs | 1 - .../{Models => Settings}/ConversionModes.cs | 2 +- .../Settings/NavisworksConversionSettings.cs | 4 +-- .../NavisworksConversionSettingsFactory.cs | 1 - ...ckle.Converters.NavisworksShared.projitems | 2 +- 24 files changed, 141 insertions(+), 11 deletions(-) rename Converters/Navisworks/Speckle.Converters.NavisworksShared/{Models => Settings}/ConversionModes.cs (96%) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index d3c485e40..bfae33d4e 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -272,6 +272,7 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.Navisworks2020": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2020.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index 719687433..c132d6525 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -272,6 +272,7 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.Navisworks2021": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2021.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index 635b761e6..121b17f9a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -272,6 +272,7 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.Navisworks2022": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2022.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index a80a15372..4030371bb 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -272,6 +272,7 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.Navisworks2023": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2023.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index a424e8244..0a42cd47e 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -272,6 +272,7 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.Navisworks2025": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2025.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 8da39eba2..73fb2392b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -11,7 +11,6 @@ using Speckle.Connectors.DUI.Models.Card; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.Settings; -using Speckle.Converter.Navisworks.Models; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; using Speckle.Sdk; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs index d258e309a..cbc398d64 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/OriginModeSetting.cs @@ -1,5 +1,5 @@ using Speckle.Connectors.DUI.Settings; -using Speckle.Converter.Navisworks.Models; +using Speckle.Converter.Navisworks.Settings; namespace Speckle.Connector.Navisworks.Operations.Send.Settings; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs index 23cb116c1..d90be1218 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/ToSpeckleSettingsManagerNavisworks.cs @@ -1,7 +1,7 @@ using System.Diagnostics.CodeAnalysis; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.DUI.Models.Card; -using Speckle.Converter.Navisworks.Models; +using Speckle.Converter.Navisworks.Settings; using Speckle.InterfaceGenerator; using Speckle.Sdk.Common; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs index 453b10c83..0c58f809f 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/Settings/VisualRepresentationSetting.cs @@ -1,5 +1,5 @@ using Speckle.Connectors.DUI.Settings; -using Speckle.Converter.Navisworks.Models; +using Speckle.Converter.Navisworks.Settings; namespace Speckle.Connector.Navisworks.Operations.Send.Settings; diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj index 10b1024db..7f3e542b5 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index 779a05fe8..6e9ca13d1 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -279,9 +279,28 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, + "speckle.connectors.navisworks2020": { + "type": "Project", + "dependencies": { + "Objects.Converter.Navisworks2020": "[1.0.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2020.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -316,6 +335,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj index 46100a86c..f348293ba 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index 140fa2d5b..ff492496f 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -279,9 +279,28 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, + "speckle.connectors.navisworks2021": { + "type": "Project", + "dependencies": { + "Objects.Converter.Navisworks2021": "[1.0.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2021.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -316,6 +335,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj index f423540bf..721f59c05 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index 55d148d81..cbc2c010e 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -279,9 +279,28 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, + "speckle.connectors.navisworks2022": { + "type": "Project", + "dependencies": { + "Objects.Converter.Navisworks2022": "[1.0.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2022.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -316,6 +335,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj index 2be0357de..990a0239d 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 40622db10..5fd92b7e4 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -279,9 +279,28 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, + "speckle.connectors.navisworks2024": { + "type": "Project", + "dependencies": { + "Objects.Converter.Navisworks2024": "[1.0.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2024.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -316,6 +335,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj index 4a97a7881..8ddd0e8b6 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index ec62862d0..4e5912dde 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -279,9 +279,28 @@ "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, "speckle.connectors.logging": { "type": "Project" }, + "speckle.connectors.navisworks2025": { + "type": "Project", + "dependencies": { + "Objects.Converter.Navisworks2025": "[1.0.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2025.0.0, )", + "Speckle.Objects": "[3.1.0-dev.200, )" + } + }, "speckle.converters.common": { "type": "Project", "dependencies": { @@ -316,6 +335,12 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, "Speckle.Objects": { "type": "CentralTransitive", "requested": "[3.1.0-dev.200, )", diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index d067d5f5f..d2375d96b 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -20,7 +20,6 @@ public static IServiceCollection AddNavisworksConverter(this IServiceCollection serviceCollection.AddRootCommon(converterAssembly); // Register settings management - serviceCollection.AddScoped(); serviceCollection.AddScoped(); serviceCollection.AddScoped< IConverterSettingsStore, diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/ConversionModes.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs similarity index 96% rename from Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/ConversionModes.cs rename to Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs index b09801a75..854c2ada6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/ConversionModes.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/ConversionModes.cs @@ -1,6 +1,6 @@ using System.Diagnostics.CodeAnalysis; -namespace Speckle.Converter.Navisworks.Models; +namespace Speckle.Converter.Navisworks.Settings; /// /// Defines the representation mode to be used during conversion. diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index 0e55380b2..1cbaf2b27 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -1,6 +1,4 @@ -using Speckle.Converter.Navisworks.Models; - -namespace Speckle.Converter.Navisworks.Settings; +namespace Speckle.Converter.Navisworks.Settings; /// /// Represents the settings used for Navisworks conversions. diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index d5c48e94e..d392bf5cc 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -1,6 +1,5 @@ using Microsoft.Extensions.Logging; using Speckle.Converter.Navisworks.Helpers; -using Speckle.Converter.Navisworks.Models; using Speckle.Converters.Common; using Speckle.InterfaceGenerator; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 23380c9a7..20ff80bcb 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -22,9 +22,9 @@ - + From 2af23058524ba27a28aa73d473946607e5e09a5a Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 10:31:06 +0000 Subject: [PATCH 106/173] FFS - Removed references to Navisworks2020, Navisworks2021, Navisworks2022, Navisworks2023, and Navisworks2025 connectors in packages.lock.json files - Commented out project references to Navisworks2020, Navisworks2021, Navisworks2022, Navisworks2023, and Navisworks2025 connectors in csproj files - Updated project reference for shared converter in shproj file --- .../Speckle.Connectors.Navisworks2020/packages.lock.json | 1 - .../Speckle.Connectors.Navisworks2021/packages.lock.json | 1 - .../Speckle.Connectors.Navisworks2022/packages.lock.json | 1 - .../Speckle.Connectors.Navisworks2023/packages.lock.json | 1 - .../Speckle.Connectors.Navisworks2025/packages.lock.json | 1 - .../Speckle.Connectors.NavisworksShared.shproj | 2 +- .../Speckle.Converters.Navisworks2020.csproj | 2 +- .../Speckle.Converters.Navisworks2021.csproj | 2 +- .../Speckle.Converters.Navisworks2022.csproj | 2 +- .../Speckle.Converters.Navisworks2023.csproj | 2 +- .../Speckle.Converters.Navisworks2024.csproj | 1 + .../Speckle.Converters.Navisworks2025.csproj | 2 +- .../Speckle.Converters.NavisworksShared.shproj | 2 +- 13 files changed, 8 insertions(+), 12 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index bfae33d4e..d3c485e40 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -272,7 +272,6 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.Navisworks2020": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2020.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index c132d6525..719687433 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -272,7 +272,6 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.Navisworks2021": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2021.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index 121b17f9a..635b761e6 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -272,7 +272,6 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.Navisworks2022": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2022.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index 4030371bb..a80a15372 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -272,7 +272,6 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.Navisworks2023": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2023.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index 0a42cd47e..a424e8244 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -272,7 +272,6 @@ "type": "Project", "dependencies": { "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.Navisworks2025": "[1.0.0, )", "Speckle.Converters.Common": "[1.0.0, )", "Speckle.Navisworks.API": "[2025.0.0, )" } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj index 7b0f30f96..1e6d1b02a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.shproj @@ -7,6 +7,6 @@ Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')"/> - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj index 7f3e542b5..2bf0dbc39 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj @@ -16,7 +16,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj index f348293ba..6cde481b0 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj @@ -16,7 +16,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj index 721f59c05..704f7f779 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj @@ -16,7 +16,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj index 990a0239d..9e71c982e 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj @@ -16,7 +16,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index e2d278329..e9058c38d 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -16,6 +16,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj index 8ddd0e8b6..97030b106 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj @@ -16,7 +16,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj index 4c710fd92..016540e63 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.shproj @@ -7,6 +7,6 @@ Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')"/> - + From 182707901e8c21d743b7ba3c6708265ffc5d0c3f Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 10:31:24 +0000 Subject: [PATCH 107/173] Update NavisworksConnectorServiceRegistration.cs - Update the registration of ToSpeckleSettingsManagerNavisworks to use the interface IToSpeckleSettingsManagerNavisworks instead of the concrete class ToSpeckleSettingsManagerNavisworks. --- .../NavisworksConnectorServiceRegistration.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 67573b91b..faa000c40 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -42,7 +42,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); // Conversion settings - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddScoped< IConverterSettingsStore, ConverterSettingsStore From 910d4ea1d293a437c710968dc3ae3db8fb174982 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 10:45:10 +0000 Subject: [PATCH 108/173] Update NavisworksSendBinding to use ToSpeckleSettingsManagerNavisworks instead of IToSpeckleSettingsManagerNavisworks for conversion settings retrieval. Update NavisworksSendBinding to use ToSpeckleSettingsManagerNavisworks instead of IToSpeckleSettingsManagerNavisworks for conversion settings retrieval. This commit updates the NavisworksSendBinding code to replace the usage of IToSpeckleSettingsManagerNavisworks with ToSpeckleSettingsManagerNavisworks for retrieving conversion settings. This change ensures consistency and improves the overall functionality of the code. --- .../Bindings/NavisworksSendBinding.cs | 14 +++++++------- .../NavisworksConnectorServiceRegistration.cs | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 73fb2392b..c639a21da 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -36,7 +36,7 @@ public class NavisworksSendBinding : ISendBinding private readonly ISpeckleApplication _speckleApplication; private readonly ISdkActivityFactory _activityFactory; private readonly INavisworksConversionSettingsFactory _conversionSettingsFactory; - private readonly IToSpeckleSettingsManagerNavisworks _toSpeckleSettingsManager; + private readonly ToSpeckleSettingsManagerNavisworks _toSpeckleSettingsManagerNavisworks; public NavisworksSendBinding( DocumentModelStore store, @@ -49,7 +49,7 @@ public NavisworksSendBinding( ISpeckleApplication speckleApplication, ISdkActivityFactory activityFactory, INavisworksConversionSettingsFactory conversionSettingsFactory, - IToSpeckleSettingsManagerNavisworks toSpeckleSettingsManager + ToSpeckleSettingsManagerNavisworks toSpeckleSettingsManagerNavisworks ) { Parent = parent; @@ -63,7 +63,7 @@ IToSpeckleSettingsManagerNavisworks toSpeckleSettingsManager _speckleApplication = speckleApplication; _activityFactory = activityFactory; _conversionSettingsFactory = conversionSettingsFactory; - _toSpeckleSettingsManager = toSpeckleSettingsManager; + _toSpeckleSettingsManagerNavisworks = toSpeckleSettingsManagerNavisworks; SubscribeToNavisworksEvents(); } @@ -96,10 +96,10 @@ public async Task Send(string modelCardId) .ServiceProvider.GetRequiredService>() .Initialize( _conversionSettingsFactory.Create( - originMode: _toSpeckleSettingsManager.GetOriginMode(modelCard), - visualRepresentationMode: _toSpeckleSettingsManager.GetVisualRepresentationMode(modelCard), - convertHiddenElements: _toSpeckleSettingsManager.GetConvertHiddenElements(modelCard), - includeInternalProperties: _toSpeckleSettingsManager.GetIncludeInternalProperties(modelCard) + originMode: _toSpeckleSettingsManagerNavisworks.GetOriginMode(modelCard), + visualRepresentationMode: _toSpeckleSettingsManagerNavisworks.GetVisualRepresentationMode(modelCard), + convertHiddenElements: _toSpeckleSettingsManagerNavisworks.GetConvertHiddenElements(modelCard), + includeInternalProperties: _toSpeckleSettingsManagerNavisworks.GetIncludeInternalProperties(modelCard) ) ); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index faa000c40..67573b91b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -42,7 +42,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddSingleton(); // Conversion settings - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); serviceCollection.AddScoped< IConverterSettingsStore, ConverterSettingsStore From 287b719455041eb6b6ae41efc9ed50a786f74a34 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 2 Dec 2024 16:39:54 +0000 Subject: [PATCH 109/173] merge fixes --- .../Receive/AutocadHostObjectBuilder.cs | 35 +++---------------- .../Receive/RhinoHostObjectBuilder.cs | 4 +-- 2 files changed, 7 insertions(+), 32 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 59e1c0a85..543594e69 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -5,7 +5,6 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; -using Speckle.Connectors.Common.Threading; using Speckle.Converters.Common; using Speckle.Sdk; using Speckle.Sdk.Models; @@ -27,28 +26,9 @@ public class AutocadHostObjectBuilder( IAutocadColorBaker colorBaker, AutocadContext autocadContext, RootObjectUnpacker rootObjectUnpacker -) : IHostObjectBuilder +) : HostObjectBuilder { - public async Task Build( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken - ) - { - // NOTE: This is the only place we apply ISyncToThread across connectors. We need to sync up with main thread here - // after GetObject and Deserialization. It is anti-pattern now. Happiness level 3/10 but works. - return await _syncToThread - .RunOnThread(async () => - { - await Task.CompletedTask.ConfigureAwait(true); - return BuildSync(rootObject, projectName, modelName, onOperationProgressed); - }) - .ConfigureAwait(false); - } - - private HostObjectBuilderResult BuildSync( + protected override HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, @@ -57,7 +37,6 @@ IProgress onOperationProgressed { // Prompt the UI conversion started. Progress bar will swoosh. onOperationProgressed.Report(new("Converting", null)); - await Yield.Force().BackToThread(); // Layer filter for received commit with project and model name layerBaker.CreateLayerFilter(projectName, modelName); @@ -88,7 +67,7 @@ IProgress onOperationProgressed // 3 - Bake materials and colors, as they are used later down the line by layers and objects if (unpackedRoot.RenderMaterialProxies != null) { - _materialBaker.ParseAndBakeRenderMaterials( + materialBaker.ParseAndBakeRenderMaterials( unpackedRoot.RenderMaterialProxies, baseLayerPrefix, onOperationProgressed @@ -97,7 +76,7 @@ IProgress onOperationProgressed if (unpackedRoot.ColorProxies != null) { - _colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); + colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed); } // 5 - Convert atomic objects @@ -109,10 +88,6 @@ IProgress onOperationProgressed { string objectId = atomicObject.applicationId ?? atomicObject.id; onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); - if (count % 50 == 0) - { - await Yield.Force().BackToThread(); - } try { @@ -138,7 +113,7 @@ IProgress onOperationProgressed } // 6 - Convert instances - var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = _instanceBaker.BakeInstances( + var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = instanceBaker.BakeInstances( instanceComponentsWithPath, applicationIdMap, baseLayerPrefix, diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 9c3152e49..c7ba7d71e 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -55,7 +55,7 @@ ISdkActivityFactory activityFactory } #pragma warning disable CA1506 - public Task Build( + protected override HostObjectBuilderResult Build( #pragma warning restore CA1506 Base rootObject, string projectName, @@ -226,7 +226,7 @@ IProgress onOperationProgressed } _converterSettings.Current.Document.Views.Redraw(); - return Task.FromResult(new HostObjectBuilderResult(bakedObjectIds, conversionResults)); + return new HostObjectBuilderResult(bakedObjectIds, conversionResults); } private void PreReceiveDeepClean(string baseLayerName) From cf6383dec039dd9b0fead68f4ce0b7493f7a81f1 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 16:43:55 +0000 Subject: [PATCH 110/173] Refactor NavisworksObjects.cs: Improve object representation and property handling - Rename `NavisworksObject` to `NavisworksModelItem` - Remove unused properties and suppress style warnings - Add required parameters to constructors for `name` and `displayValue` - Update property accessors for `elements`, `displayValue`, and `name` - Improve implementation of `AddProperty` and `GetProperty` methods --- .../Models/NavisworksObjects.cs | 48 ++++++------------- 1 file changed, 14 insertions(+), 34 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs index 67fcaf21c..fac29be33 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs @@ -8,56 +8,36 @@ namespace Speckle.Converter.Navisworks.Models; /// public interface INavisworksObject : IDataObject { - /// - /// Adds a property to the object. - /// - /// The property key. - /// The property value. void AddProperty(string key, object? value); - - /// - /// Retrieves a property value by key. - /// - /// The property key. - /// The property value, or null if the key does not exist. object? GetProperty(string key); } -/// -/// Represents a non-geometry Speckle object. -/// -internal sealed class NavisworksObject(string name) : SSM.Base, INavisworksObject +[SSM.SpeckleType("Objects.Navisworks.ModelItem")] +internal sealed class NavisworksModelItem : SSM.Base, INavisworksObject { - public string name { get; init; } = name; - + public required string name { get; init; } private readonly Dictionary _properties = []; - public void AddProperty(string key, object? value) => _properties[key] = value; - - public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; - [SSM.DetachProperty] - [SuppressMessage("Style", "IDE1006:Naming Styles")] - [SuppressMessage("ReSharper", "UnusedAutoPropertyAccessor.Local")] - [SuppressMessage("ReSharper", "InconsistentNaming")] - public required List elements { get; set; } = []; + public required List elements { get; set; } // Implement the `IDataObject.displayValue` property with an empty list IReadOnlyList IDataObject.displayValue => []; + + public void AddProperty(string key, object? value) => _properties[key] = value; + + public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; } -/// -/// Represents a geometry-based Speckle object. -/// -internal sealed class NavisworksGeometryObject(IReadOnlyList displayValue, string name) - : SSM.Base, - INavisworksObject +[SSM.SpeckleType("Objects.Navisworks.ModelGeometry")] +internal sealed class NavisworksModelGeometry : SSM.Base, INavisworksObject { - IReadOnlyList IDataObject.displayValue => displayValue; - public string name { get; init; } = name; - + public required string name { get; init; } private readonly Dictionary _properties = []; + [SSM.DetachProperty] + public required IReadOnlyList displayValue { get; init; } + public void AddProperty(string key, object? value) => _properties[key] = value; public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; From 3c15786fedc595040e748948fc34ff5c61eaac7c Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 16:51:13 +0000 Subject: [PATCH 111/173] Refactor display value extraction and object creation in Navisworks converter - Refactored the `GetDisplayValue` method in `DisplayValueExtractor.cs` to be an instance method instead of static. - Updated the `CreateGeometryObject` method in `ModelItemTopLevelConverterToSpeckle.cs` to use an instance of `DisplayValueExtractor`. - Changed the return type of `CreateNonGeometryObject` method in `ModelItemTopLevelConverterToSpeckle.cs` to match the updated class name. These changes improve code organization and maintainability. --- .../DataExtractors/DisplayValueExtractor.cs | 2 +- .../ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs index 6ec7ef03e..82d627acd 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs @@ -18,5 +18,5 @@ ILogger logger _logger = logger; } - internal static List GetDisplayValue(NAV.ModelItem _) => []; + internal List GetDisplayValue(NAV.ModelItem _) => []; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs index 0b4f7d77b..0c29ef135 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs @@ -64,11 +64,10 @@ private Base Convert(NAV.ModelItem target) return (Base)navisworksObject; } - private static NavisworksGeometryObject CreateGeometryObject(NAV.ModelItem target, string name) => - new(name: name, displayValue: DisplayValueExtractor.GetDisplayValue(target).ToList()); + private NavisworksModelGeometry CreateGeometryObject(NAV.ModelItem target, string name) => + new() { name = name, displayValue = _displayValueExtractor.GetDisplayValue(target).ToList() }; - private static NavisworksObject CreateNonGeometryObject(string name) => - new(name) { elements = new List() }; + private static NavisworksModelItem CreateNonGeometryObject(string name) => new() { name = name, elements = [] }; private static string GetObjectName(NAV.ModelItem target) => target.ClassDisplayName ?? target.FindFirstObjectAncestor()?.ClassDisplayName ?? "Unnamed model"; From 01abbb91f5bfc00550c099d030a4e1cd2f0a5ff6 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Mon, 2 Dec 2024 16:54:46 +0000 Subject: [PATCH 112/173] Update Speckle SDK and Objects to version 3.1.0-dev.203 in Navisworks connectors for versions 2020, 2021, 2022, and 2023. --- .../packages.lock.json | 34 +++++------ .../packages.lock.json | 34 +++++------ .../packages.lock.json | 34 +++++------ .../packages.lock.json | 34 +++++------ .../packages.lock.json | 34 +++++------ .../packages.lock.json | 34 +++++------ .../packages.lock.json | 59 ++++++------------- .../packages.lock.json | 59 ++++++------------- .../packages.lock.json | 59 ++++++------------- .../packages.lock.json | 59 ++++++------------- .../packages.lock.json | 59 ++++++------------- .../packages.lock.json | 59 ++++++------------- 12 files changed, 204 insertions(+), 354 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index d3c485e40..b38977e07 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index 719687433..86e3e55c5 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index 635b761e6..c7f4bfbc0 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index a80a15372..d6b5ba2d1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 8d9328830..7aff0ee88 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index a424e8244..5db94e918 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index 6e9ca13d1..df98c3c6e 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -274,38 +274,19 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, - "speckle.connectors.navisworks2020": { - "type": "Project", - "dependencies": { - "Objects.Converter.Navisworks2020": "[1.0.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.DUI.WebView": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2020.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" - } - }, "speckle.converters.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -335,26 +316,20 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -364,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index ff492496f..569bb41b0 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -274,38 +274,19 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, - "speckle.connectors.navisworks2021": { - "type": "Project", - "dependencies": { - "Objects.Converter.Navisworks2021": "[1.0.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.DUI.WebView": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2021.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" - } - }, "speckle.converters.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -335,26 +316,20 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -364,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index cbc2c010e..2956d8ff7 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -274,38 +274,19 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, - "speckle.connectors.navisworks2022": { - "type": "Project", - "dependencies": { - "Objects.Converter.Navisworks2022": "[1.0.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.DUI.WebView": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2022.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" - } - }, "speckle.converters.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -335,26 +316,20 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -364,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index 37621d5fd..862dede88 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -274,38 +274,19 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, - "speckle.connectors.navisworks2023": { - "type": "Project", - "dependencies": { - "Objects.Converter.Navisworks2023": "[1.0.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.DUI.WebView": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2023.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" - } - }, "speckle.converters.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -335,26 +316,20 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -364,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 5fd92b7e4..0e1d316f8 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -274,38 +274,19 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, - "speckle.connectors.navisworks2024": { - "type": "Project", - "dependencies": { - "Objects.Converter.Navisworks2024": "[1.0.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.DUI.WebView": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2024.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" - } - }, "speckle.converters.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -335,26 +316,20 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -364,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index 4e5912dde..ffbbc1ac0 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" } }, "speckle.connectors.dui": { @@ -274,38 +274,19 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.200, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.200, )", + "Speckle.Sdk": "[3.1.0-dev.203, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, "speckle.connectors.logging": { "type": "Project" }, - "speckle.connectors.navisworks2025": { - "type": "Project", - "dependencies": { - "Objects.Converter.Navisworks2025": "[1.0.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Connectors.DUI.WebView": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2025.0.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" - } - }, "speckle.converters.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.200, )" + "Speckle.Objects": "[3.1.0-dev.203, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -335,26 +316,20 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "n4O+XvMBTsl2gOjZmMeE1Kvo1DOxDLuBcUR7GQw8G0LPv+ce+JFSNaFnmyz/w4X32X2bHmbSImuMRr6U7K4dUQ==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.200" + "Speckle.Sdk": "3.1.0-dev.203" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "iRdDkEFDu8taJmzMs6RK/HiUZMeESNKfovb3U2a3yO3wEElNfpqPGXJr3GKcjjPZ+LwENgNO3/aemGzx8+TXQw==", + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -364,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.200" + "Speckle.Sdk.Dependencies": "3.1.0-dev.203" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.200, )", - "resolved": "3.1.0-dev.200", - "contentHash": "4ZHkKRzI6/Xa1c20NrH3+e+m5DUB+qbBSq+GJ6MShUh6SpKOC4DRdwy0qCcAWrurq7V94xU0qN+7+QzKGeWlFw==" + "requested": "[3.1.0-dev.203, )", + "resolved": "3.1.0-dev.203", + "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", From 8b3fb9859a22cd3930209ae8f5ad72b341d3c9c6 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 2 Dec 2024 16:58:00 +0000 Subject: [PATCH 113/173] remove more async --- .../HostApp/ArcGISColorManager.cs | 9 ++------- .../Receive/ArcGISHostObjectBuilder.cs | 7 +++---- .../Receive/AutocadHostObjectBuilder.cs | 9 +++++---- .../Receive/RevitHostObjectBuilder.cs | 16 ++++++++++----- .../Receive/RhinoHostObjectBuilder.cs | 9 ++++++--- .../Builders/IHostObjectBuilder.cs | 20 +------------------ .../Operations/ReceiveOperation.cs | 14 ++++++++----- 7 files changed, 37 insertions(+), 47 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISColorManager.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISColorManager.cs index 970feb224..f036bd092 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISColorManager.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISColorManager.cs @@ -56,7 +56,7 @@ public List UnpackColors(List<(MapMember, int)> mapMembersWithDispla /// /// /// - public async Task ParseColors(List colorProxies, IProgress onOperationProgressed) + public void ParseColors(List colorProxies, IProgress onOperationProgressed) { // injected as Singleton, so we need to clean existing proxies first ObjectColorsIdMap = new(); @@ -64,7 +64,6 @@ public async Task ParseColors(List colorProxies, IProgress colorProxies, IProgress /// /// - public async Task ParseMaterials( - List materialProxies, - IProgress onOperationProgressed - ) + public void ParseMaterials(List materialProxies, IProgress onOperationProgressed) { // injected as Singleton, so we need to clean existing proxies first ObjectMaterialsIdMap = new(); @@ -89,7 +85,6 @@ IProgress onOperationProgressed foreach (RenderMaterialProxy colorProxy in materialProxies) { onOperationProgressed.Report(new("Converting materials", (double)++count / materialProxies.Count)); - await Task.Yield(); foreach (string objectId in colorProxy.objects) { Color convertedColor = Color.FromArgb(colorProxy.value.diffuse); diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs index d5f7b3f87..980c9642f 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs @@ -8,7 +8,6 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Instances; using Speckle.Connectors.Common.Operations; -using Speckle.Connectors.Common.Threading; using Speckle.Converters.ArcGIS3; using Speckle.Converters.ArcGIS3.Utils; using Speckle.Converters.Common; @@ -58,7 +57,7 @@ ArcGISColorManager colorManager _crsUtils = crsUtils; } - public async Task Build( + public HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, @@ -78,14 +77,14 @@ CancellationToken cancellationToken .ToList(); if (materials != null) { - await _colorManager.ParseMaterials(materials, onOperationProgressed).BackToThread(); + _colorManager.ParseMaterials(materials, onOperationProgressed); } // get colors List? colors = (rootObject[ProxyKeys.COLOR] as List)?.Cast().ToList(); if (colors != null) { - await _colorManager.ParseColors(colors, onOperationProgressed).BackToThread(); + _colorManager.ParseColors(colors, onOperationProgressed); } int count = 0; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 543594e69..5dc9fd739 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -26,13 +26,14 @@ public class AutocadHostObjectBuilder( IAutocadColorBaker colorBaker, AutocadContext autocadContext, RootObjectUnpacker rootObjectUnpacker -) : HostObjectBuilder +) : IHostObjectBuilder { - protected override HostObjectBuilderResult Build( + public HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { // Prompt the UI conversion started. Progress bar will swoosh. @@ -88,7 +89,7 @@ IProgress onOperationProgressed { string objectId = atomicObject.applicationId ?? atomicObject.id; onOperationProgressed.Report(new("Converting objects", (double)++count / atomicObjects.Count)); - + cancellationToken.ThrowIfCancellationRequested(); try { List convertedObjects = ConvertObject(atomicObject, layerPath, baseLayerPrefix); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index 76738b4d3..0a23ff6c0 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -34,13 +34,14 @@ public sealed class RevitHostObjectBuilder( ILogger logger, RevitToHostCacheSingleton revitToHostCacheSingleton, ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter -) : HostObjectBuilder, IDisposable +) : IHostObjectBuilder, IDisposable { - protected override HostObjectBuilderResult Build( + public HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { var baseGroupName = $"Project {projectName}: Model {modelName}"; // TODO: unify this across connectors! @@ -92,7 +93,7 @@ IProgress onOperationProgressed { using var _ = activityFactory.Start("Baking objects"); transactionManager.StartTransaction(true, "Baking objects"); - conversionResults = BakeObjects(localToGlobalMaps, onOperationProgressed); + conversionResults = BakeObjects(localToGlobalMaps, onOperationProgressed, cancellationToken); transactionManager.CommitTransaction(); } @@ -118,7 +119,11 @@ IProgress onOperationProgressed private ( HostObjectBuilderResult builderResult, List<(DirectShape res, string applicationId)> postBakePaintTargets - ) BakeObjects(List localToGlobalMaps, IProgress onOperationProgressed) + ) BakeObjects( + List localToGlobalMaps, + IProgress onOperationProgressed, + CancellationToken cancellationToken + ) { using var _ = activityFactory.Start("BakeObjects"); var conversionResults = new List(); @@ -129,6 +134,7 @@ IProgress onOperationProgressed foreach (LocalToGlobalMap localToGlobalMap in localToGlobalMaps) { + cancellationToken.ThrowIfCancellationRequested(); try { using var activity = activityFactory.Start("BakeObject"); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index c7ba7d71e..83b5c9400 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -19,7 +19,7 @@ namespace Speckle.Connectors.Rhino.Operations.Receive; /// /// Expects to be a scoped dependency per receive operation. /// -public class RhinoHostObjectBuilder : HostObjectBuilder +public class RhinoHostObjectBuilder : IHostObjectBuilder { private readonly IRootToHostConverter _converter; private readonly IConverterSettingsStore _converterSettings; @@ -55,12 +55,13 @@ ISdkActivityFactory activityFactory } #pragma warning disable CA1506 - protected override HostObjectBuilderResult Build( + public HostObjectBuilderResult Build( #pragma warning restore CA1506 Base rootObject, string projectName, string modelName, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { using var activity = _activityFactory.Start("Build"); @@ -109,6 +110,7 @@ IProgress onOperationProgressed onOperationProgressed.Report(new("Baking layers (redraw disabled)", null)); using (var _ = _activityFactory.Start("Pre baking layers")) { + //TODO what is this? This is going to the UI thread RhinoApp.InvokeAndWait(() => { using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); @@ -133,6 +135,7 @@ IProgress onOperationProgressed onOperationProgressed.Report( new("Converting objects", (double)++count / atomicObjectsWithoutInstanceComponentsForConverter.Count) ); + cancellationToken.ThrowIfCancellationRequested(); try { // 0: get pre-created layer from cache in layer baker diff --git a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs index 5d68b23d1..112af1952 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IHostObjectBuilder.cs @@ -4,24 +4,6 @@ namespace Speckle.Connectors.Common.Builders; -public abstract class HostObjectBuilder : IHostObjectBuilder -{ - Task IHostObjectBuilder.Build( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken - ) => Task.FromResult(Build(rootObject, projectName, modelName, onOperationProgressed)); - - protected abstract HostObjectBuilderResult Build( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed - ); -} - // POC: We might consider to put also IRootObjectBuilder interface here in same folder and create concrete classes from it in per connector. public interface IHostObjectBuilder { @@ -35,7 +17,7 @@ public interface IHostObjectBuilder /// List of application ids. // POC: Where we will return these ids will matter later when we target to also cache received application ids. /// Project and model name are needed for now to construct host app objects into related layers or filters. /// POC: we might consider later to have HostObjectBuilderContext? that might hold all possible data we will need. - Task Build( + HostObjectBuilderResult Build( Base rootObject, string projectName, string modelName, diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 4647e79fb..c33cd74af 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -43,7 +43,7 @@ CancellationToken cancellationToken // 4 - Convert objects HostObjectBuilderResult res = await threadContext - .RunOnThreadAsync( + .RunOnThread( () => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken), threadOptions.RunReceiveBuildOnMainThread ) @@ -80,7 +80,7 @@ CancellationToken cancellationToken return commitObject; } - private async Task ConvertObjects( + private HostObjectBuilderResult ConvertObjects( Base commitObject, ReceiveInfo receiveInfo, IProgress onOperationProgressed, @@ -97,9 +97,13 @@ CancellationToken cancellationToken try { - HostObjectBuilderResult res = await hostObjectBuilder - .Build(commitObject, receiveInfo.ProjectName, receiveInfo.ModelName, onOperationProgressed, cancellationToken) - .BackToAny(); + HostObjectBuilderResult res = hostObjectBuilder.Build( + commitObject, + receiveInfo.ProjectName, + receiveInfo.ModelName, + onOperationProgressed, + cancellationToken + ); conversionActivity?.SetStatus(SdkActivityStatusCode.Ok); return res; } From 0ae267690011ffd2160384f57161f549d1f47441 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 2 Dec 2024 17:03:56 +0000 Subject: [PATCH 114/173] clean up --- .../Threading/DefaultThreadContext.cs | 6 ++-- .../Threading/ThreadContext.cs | 34 +++++++------------ .../Threading/Yield.cs | 29 ++-------------- 3 files changed, 19 insertions(+), 50 deletions(-) diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs index 1a9717976..9b4f89ab5 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -18,7 +18,7 @@ protected override Task WorkerToMainAsync(Func> action) { try { - T result = await RunContext(action).ConfigureAwait(false); + T result = await action().BackToCurrent(); tcs.SetResult(result); } catch (Exception ex) @@ -42,11 +42,11 @@ protected override Task WorkerToMain(Func action) { TaskCompletionSource tcs = new(); _threadContext.Post( - async _ => + _ => { try { - T result = await RunContext(action).ConfigureAwait(false); + T result = action(); tcs.SetResult(result); } catch (Exception ex) diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index ddced50e3..612c02324 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -9,27 +9,19 @@ public abstract class ThreadContext : IThreadContext public static bool IsMainThread => Environment.CurrentManagedThreadId == 1 && !Thread.CurrentThread.IsBackground; - protected virtual void RunContext(Action action) => action(); - - protected virtual Task RunContext(Func action) => Task.FromResult(action()); - - protected virtual Task RunContext(Func action) => action(); - - protected virtual Task RunContext(Func> action) => action(); - public async Task RunOnThread(Action action, bool useMain) { if (useMain) { if (IsMainThread) { - RunContext(action); + action(); } else { await WorkerToMainAsync(() => { - RunContext(action); + action(); return s_completedTask; }) .ConfigureAwait(false); @@ -48,7 +40,7 @@ await MainToWorkerAsync(() => } else { - RunContext(action); + action(); } } } @@ -59,7 +51,7 @@ public virtual Task RunOnThread(Func action, bool useMain) { if (IsMainThread) { - return RunContext(action); + return Task.FromResult(action()); } return WorkerToMain(action); @@ -69,7 +61,7 @@ public virtual Task RunOnThread(Func action, bool useMain) return MainToWorker(action); } - return RunContext(action); + return Task.FromResult(action()); } public async Task RunOnThreadAsync(Func action, bool useMain) @@ -78,16 +70,16 @@ public async Task RunOnThreadAsync(Func action, bool useMain) { if (IsMainThread) { - await RunContext(action).ConfigureAwait(false); + await action().BackToCurrent(); } else { await WorkerToMainAsync(async () => { - await RunContext(action.Invoke).ConfigureAwait(false); + await action().BackToCurrent(); return null; }) - .ConfigureAwait(false); + .BackToCurrent(); } } else @@ -96,14 +88,14 @@ public async Task RunOnThreadAsync(Func action, bool useMain) { await MainToWorkerAsync(async () => { - await action().BackToAny(); + await action().BackToCurrent(); return null; }) - .BackToAny(); + .BackToCurrent(); } else { - await RunContext(action.Invoke).ConfigureAwait(false); + await action().BackToCurrent(); } } } @@ -114,7 +106,7 @@ public Task RunOnThreadAsync(Func> action, bool useMain) { if (IsMainThread) { - return RunContext(action.Invoke); + return action(); } return WorkerToMainAsync(action); @@ -123,7 +115,7 @@ public Task RunOnThreadAsync(Func> action, bool useMain) { return MainToWorkerAsync(action); } - return RunContext(action.Invoke); + return action(); } protected abstract Task WorkerToMainAsync(Func> action); diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs index c1cb6e12c..6477a7b01 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -4,38 +4,15 @@ namespace Speckle.Connectors.Common.Threading; public static class Yield { - private static readonly Action s_yield = () => { }; - - public static async ValueTask Force() - { - if (ThreadContext.IsMainThread) - { - await Task - .Factory.StartNew( - s_yield, - CancellationToken.None, - TaskCreationOptions.PreferFairness, - SynchronizationContext.Current != null - ? TaskScheduler.FromCurrentSynchronizationContext() - : TaskScheduler.Current - ) - .ConfigureAwait(false); - } - else - { - await Task.Yield(); - } - } - - public static ConfiguredValueTaskAwaitable BackToThread(this ValueTask valueTask) => valueTask.ConfigureAwait(true); + public static ConfiguredValueTaskAwaitable BackToCurrent(this ValueTask valueTask) => valueTask.ConfigureAwait(true); public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); - public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); + public static ConfiguredTaskAwaitable BackToCurrent(this Task task) => task.ConfigureAwait(true); public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); - public static ConfiguredTaskAwaitable BackToThread(this Task task) => task.ConfigureAwait(true); + public static ConfiguredTaskAwaitable BackToCurrent(this Task task) => task.ConfigureAwait(true); public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); } From d5f63237bebfeac23873eac6db3d4f6a8590bed8 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 3 Dec 2024 15:18:20 +0000 Subject: [PATCH 115/173] can build agian --- .../Receive/AutocadHostObjectBuilder.cs | 19 +----- .../Operations/Send/CSiRootObjectBuilder.cs | 7 +- .../ServiceRegistration.cs | 14 +--- .../Receive/RevitHostObjectBuilder.cs | 64 ++----------------- 4 files changed, 10 insertions(+), 94 deletions(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs index 4427ee544..94e0d2a80 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Receive/AutocadHostObjectBuilder.cs @@ -132,16 +132,11 @@ CancellationToken cancellationToken // 7 - Create groups if (unpackedRoot.GroupProxies != null) { -<<<<<<< HEAD - List groupResults = groupBaker.CreateGroups(unpackedRoot.GroupProxies, applicationIdMap); - results.AddRange(groupResults); -======= - IReadOnlyCollection groupResults = _groupBaker.CreateGroups( + IReadOnlyCollection groupResults = groupBaker.CreateGroups( unpackedRoot.GroupProxies, applicationIdMap ); results.UnionWith(groupResults); ->>>>>>> dev } return new HostObjectBuilderResult(bakedObjectIds, results); @@ -156,13 +151,8 @@ private void PreReceiveDeepClean(string baseLayerPrefix) private IReadOnlyCollection ConvertObject(Base obj, Collection[] layerPath, string baseLayerNamePrefix) { -<<<<<<< HEAD string layerName = layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); - var convertedEntities = new List(); -======= - string layerName = _layerBaker.CreateLayerForReceive(layerPath, baseLayerNamePrefix); var convertedEntities = new HashSet(); ->>>>>>> dev using var tr = Application.DocumentManager.CurrentDocument.Database.TransactionManager.StartTransaction(); @@ -187,13 +177,8 @@ private IReadOnlyCollection ConvertObject(Base obj, Collection[] layerPa private Entity BakeObject(Entity entity, Base originalObject, string layerName, Base? parentObject = null) { -<<<<<<< HEAD - var objId = originalObject.applicationId ?? originalObject.id; - if (colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) -======= var objId = originalObject.applicationId ?? originalObject.id.NotNull(); - if (_colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) ->>>>>>> dev + if (colorBaker.ObjectColorsIdMap.TryGetValue(objId, out AutocadColor? color)) { entity.Color = color; } diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CSiRootObjectBuilder.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CSiRootObjectBuilder.cs index a5cb5c58c..88c64afd2 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CSiRootObjectBuilder.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CSiRootObjectBuilder.cs @@ -42,11 +42,10 @@ ICSiApplicationService csiApplicationService _csiApplicationService = csiApplicationService; } - public async Task Build( + public RootObjectBuilderResult Build( IReadOnlyList csiObjects, SendInfo sendInfo, - IProgress onOperationProgressed, - CancellationToken cancellationToken = default + IProgress onOperationProgressed ) { using var activity = _activityFactory.Start("Build"); @@ -63,7 +62,6 @@ public async Task Build( foreach (ICSiWrapper csiObject in csiObjects) { using var _2 = _activityFactory.Start("Convert"); - cancellationToken.ThrowIfCancellationRequested(); var result = ConvertCSiObject(csiObject, rootObjectCollection, sendInfo.ProjectId); results.Add(result); @@ -78,7 +76,6 @@ public async Task Build( throw new SpeckleException("Failed to convert all objects."); } - await Task.Yield(); return new RootObjectBuilderResult(rootObjectCollection, results); } diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs index 810371abc..ea906c9e9 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs @@ -1,11 +1,8 @@ using Microsoft.Extensions.DependencyInjection; using Speckle.Connectors.Common; -<<<<<<< HEAD -using Speckle.Connectors.Common.Threading; -======= using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Operations; ->>>>>>> dev +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.CSiShared.Bindings; using Speckle.Connectors.CSiShared.Builders; using Speckle.Connectors.CSiShared.Filters; @@ -13,7 +10,6 @@ using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; -using Speckle.Connectors.DUI.Models; using Speckle.Connectors.DUI.Models.Card.SendFilter; using Speckle.Connectors.DUI.WebView; using Speckle.Converters.CSiShared; @@ -28,15 +24,9 @@ public static IServiceCollection AddCSi(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); -<<<<<<< HEAD - services.AddDUI(); -======= - services.AddDUI(); ->>>>>>> dev + services.AddDUI(); services.AddDUIView(); - services.AddSingleton(); - services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index ac1ead967..f44c230d0 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -34,69 +34,13 @@ public sealed class RevitHostObjectBuilder( RootObjectUnpacker rootObjectUnpacker, ILogger logger, RevitToHostCacheSingleton revitToHostCacheSingleton, - ITypedConverter<(Base atomicObject, List matrix), DirectShape> localToGlobalDirectShapeConverter + ITypedConverter< + (Base atomicObject, IReadOnlyCollection matrix), + DirectShape + > localToGlobalDirectShapeConverter ) : IHostObjectBuilder, IDisposable { -<<<<<<< HEAD public HostObjectBuilderResult Build( -======= - private readonly IRootToHostConverter _converter; - private readonly IConverterSettingsStore _converterSettings; - private readonly RevitToHostCacheSingleton _revitToHostCacheSingleton; - private readonly ITransactionManager _transactionManager; - private readonly ILocalToGlobalUnpacker _localToGlobalUnpacker; - private readonly RevitGroupBaker _groupBaker; - private readonly RevitMaterialBaker _materialBaker; - private readonly ILogger _logger; - private readonly ITypedConverter< - (Base atomicObject, IReadOnlyCollection matrix), - DirectShape - > _localToGlobalDirectShapeConverter; - - private readonly RootObjectUnpacker _rootObjectUnpacker; - private readonly ISdkActivityFactory _activityFactory; - - public RevitHostObjectBuilder( - IRootToHostConverter converter, - IConverterSettingsStore converterSettings, - ITransactionManager transactionManager, - ISdkActivityFactory activityFactory, - ILocalToGlobalUnpacker localToGlobalUnpacker, - RevitGroupBaker groupManager, - RevitMaterialBaker materialBaker, - RootObjectUnpacker rootObjectUnpacker, - ILogger logger, - RevitToHostCacheSingleton revitToHostCacheSingleton, - ITypedConverter< - (Base atomicObject, IReadOnlyCollection matrix), - DirectShape - > localToGlobalDirectShapeConverter - ) - { - _converter = converter; - _converterSettings = converterSettings; - _transactionManager = transactionManager; - _localToGlobalUnpacker = localToGlobalUnpacker; - _groupBaker = groupManager; - _materialBaker = materialBaker; - _rootObjectUnpacker = rootObjectUnpacker; - _logger = logger; - _revitToHostCacheSingleton = revitToHostCacheSingleton; - _localToGlobalDirectShapeConverter = localToGlobalDirectShapeConverter; - _activityFactory = activityFactory; - } - - public Task Build( - Base rootObject, - string projectName, - string modelName, - IProgress onOperationProgressed, - CancellationToken cancellationToken - ) => - RevitTask.RunAsync(() => BuildSync(rootObject, projectName, modelName, onOperationProgressed, cancellationToken)); - - private HostObjectBuilderResult BuildSync( ->>>>>>> dev Base rootObject, string projectName, string modelName, From caac2a78e6cbc844db56e21eb4fa2da90d69aa2b Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 3 Dec 2024 17:07:04 +0000 Subject: [PATCH 116/173] Use valuetask --- .../Utils/ArcGISThreadContext.cs | 14 ++++---- .../Utils/ArcGisDocumentStore.cs | 4 +-- .../Bindings/AutocadSelectionBinding.cs | 2 +- .../Plugin/RevitThreadContext.cs | 8 ++--- .../Receive/RhinoHostObjectBuilder.cs | 14 ++++---- .../Bridge/BrowserBridge.cs | 2 +- .../Operations/ReceiveOperation.cs | 2 +- .../Operations/SendOperation.cs | 2 +- .../Threading/DefaultThreadContext.cs | 18 +++++----- .../Threading/ThreadContext.cs | 33 +++++++++---------- .../Threading/ThreadContextExtensions.cs | 16 ++++----- .../Threading/Yield.cs | 12 ++++++- 12 files changed, 69 insertions(+), 58 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index 3741d2c8d..dee64e930 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -6,7 +6,7 @@ namespace Speckle.Connectors.ArcGIS.Utils; //don't check for GUI as it's the same check we do in ThreadContext public class ArcGISThreadContext : ThreadContext { - protected override Task MainToWorkerAsync(Func> action) + protected override ValueTask MainToWorkerAsync(Func> action) { if (QueuedTask.OnWorker) { @@ -14,23 +14,23 @@ protected override Task MainToWorkerAsync(Func> action) } else { - return QueuedTask.Run(action); + return QueuedTask.Run(async() => await action().BackToCurrent()).AsValueTask(); } } - protected override Task WorkerToMainAsync(Func> action) => QueuedTask.Run(action); + protected override ValueTask WorkerToMainAsync(Func> action) => QueuedTask.Run(async() => await action().BackToCurrent()).AsValueTask(); - protected override Task MainToWorker(Func action) + protected override ValueTask MainToWorker(Func action) { if (QueuedTask.OnWorker) { - return Task.FromResult(action()); + return new(action()); } else { - return QueuedTask.Run(action); + return QueuedTask.Run(action).AsValueTask(); } } - protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); + protected override ValueTask WorkerToMain(Func action) => QueuedTask.Run(action).AsValueTask(); } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs index ad44f657f..5a39736f2 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs @@ -107,7 +107,7 @@ protected override void HostAppSaveState(string modelCardState) => } map.SetMetadata(existingXmlDocument.ToString()); - }); + }).Wait(); protected override void LoadState() => _threadContext.RunOnWorker(() => @@ -124,5 +124,5 @@ protected override void LoadState() => string modelsString = element.Value; LoadFromString(modelsString); - }); + }).Wait(); } diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs index 0af057595..6ccf1cfc3 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs @@ -57,7 +57,7 @@ private void TryRegisterDocumentForSelection(Document? document) // Ui requests to GetSelection() should just return this local copy that is kept up to date by the event handler. private SelectionInfo _selectionInfo; - private async Task OnSelectionChanged() + private async ValueTask OnSelectionChanged() { _selectionInfo = GetSelectionInternal(); await Parent.Send(SELECTION_EVENT, _selectionInfo).ConfigureAwait(false); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 2d53d1ada..b4cc76319 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -5,11 +5,11 @@ namespace Speckle.Connectors.Revit.Plugin; public class RevitThreadContext : ThreadContext { - protected override Task MainToWorkerAsync(Func> action) => action(); + protected override ValueTask MainToWorkerAsync(Func> action) => action(); - protected override Task WorkerToMainAsync(Func> action) => RevitTask.RunAsync(action); + protected override ValueTask WorkerToMainAsync(Func> action) => RevitTask.RunAsync(async () => await action().BackToCurrent()).AsValueTask(); - protected override Task MainToWorker(Func action) => Task.FromResult(action()); + protected override ValueTask MainToWorker(Func action) => new(action()); - protected override Task WorkerToMain(Func action) => RevitTask.RunAsync(action); + protected override ValueTask WorkerToMain(Func action) => new(RevitTask.RunAsync(action)); } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 3fa233bd5..b2de7b1d7 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -6,6 +6,7 @@ using Speckle.Connectors.Common.Extensions; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.Rhino.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Rhino; @@ -32,6 +33,7 @@ public class RhinoHostObjectBuilder : IHostObjectBuilder private readonly RhinoGroupBaker _groupBaker; private readonly RootObjectUnpacker _rootObjectUnpacker; private readonly ISdkActivityFactory _activityFactory; + private readonly IThreadContext _threadContext; public RhinoHostObjectBuilder( IRootToHostConverter converter, @@ -42,8 +44,7 @@ public RhinoHostObjectBuilder( RhinoMaterialBaker materialBaker, RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, - ISdkActivityFactory activityFactory - ) + ISdkActivityFactory activityFactory, IThreadContext threadContext) { _converter = converter; _converterSettings = converterSettings; @@ -54,6 +55,7 @@ ISdkActivityFactory activityFactory _layerBaker = layerBaker; _groupBaker = groupBaker; _activityFactory = activityFactory; + _threadContext = threadContext; } #pragma warning disable CA1506 @@ -113,13 +115,13 @@ CancellationToken cancellationToken using (var _ = _activityFactory.Start("Pre baking layers")) { //TODO what is this? This is going to the UI thread - RhinoApp.InvokeAndWait(() => + _threadContext.RunOnMain(() => { using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); - }); + }).Wait(); } // 5 - Convert atomic objects @@ -243,7 +245,7 @@ private void PreReceiveDeepClean(string baseLayerName) RhinoMath.UnsetIntIndex ); - RhinoApp.InvokeAndWait(() => + _threadContext.RunOnMain(() => { _instanceBaker.PurgeInstances(baseLayerName); _materialBaker.PurgeMaterials(baseLayerName); @@ -271,7 +273,7 @@ private void PreReceiveDeepClean(string baseLayerName) // Cleans up any previously received group _groupBaker.PurgeGroups(baseLayerName); - }); + }).Wait(); } /// diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 9249aa255..e46774eec 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -123,7 +123,7 @@ public void RunMethod(string methodName, string requestId, string methodArgs) => } }, _threadOptions.RunCommandsOnMainThread - ); + ).Wait(); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index c33cd74af..4ba8d2708 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -56,7 +56,7 @@ await apiClient return res; } - private async Task ReceiveData( + private async ValueTask ReceiveData( Account account, Speckle.Sdk.Api.GraphQL.Models.Version version, ReceiveInfo receiveInfo, diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs index 414a75168..60e9bda7b 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs @@ -48,7 +48,7 @@ public async Task Execute( return new(rootObjId, convertedReferences, buildResult.ConversionResults); } - public async Task Send( + public async ValueTask Send( Base commitObject, SendInfo sendInfo, IProgress onOperationProgressed, diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs index 9b4f89ab5..6509eb3c7 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -10,7 +10,7 @@ public class DefaultThreadContext : ThreadContext ); [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - protected override Task WorkerToMainAsync(Func> action) + protected override ValueTask WorkerToMainAsync(Func> action) { TaskCompletionSource tcs = new(); _threadContext.Post( @@ -28,17 +28,17 @@ protected override Task WorkerToMainAsync(Func> action) }, null ); - return tcs.Task; + return new ValueTask(tcs.Task); } - protected override Task MainToWorkerAsync(Func> action) + protected override ValueTask MainToWorkerAsync(Func> action) { - Task> f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); - return f.Unwrap(); + Task> f = Task.Factory.StartNew(async () => await action().BackToCurrent(), default, TaskCreationOptions.LongRunning, TaskScheduler.Default); + return new ValueTask(f.Unwrap()); } [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - protected override Task WorkerToMain(Func action) + protected override ValueTask WorkerToMain(Func action) { TaskCompletionSource tcs = new(); _threadContext.Post( @@ -56,12 +56,12 @@ protected override Task WorkerToMain(Func action) }, null ); - return tcs.Task; + return new ValueTask(tcs.Task); } - protected override Task MainToWorker(Func action) + protected override ValueTask MainToWorker(Func action) { Task f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); - return f; + return new ValueTask(f); } } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 612c02324..42c44d01c 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -5,11 +5,11 @@ namespace Speckle.Connectors.Common.Threading; [GenerateAutoInterface] public abstract class ThreadContext : IThreadContext { - private static readonly Task s_completedTask = Task.FromResult(null); + public static bool IsMainThread => Environment.CurrentManagedThreadId == 1 && !Thread.CurrentThread.IsBackground; - public async Task RunOnThread(Action action, bool useMain) + public async ValueTask RunOnThread(Action action, bool useMain) { if (useMain) { @@ -22,7 +22,7 @@ public async Task RunOnThread(Action action, bool useMain) await WorkerToMainAsync(() => { action(); - return s_completedTask; + return new ValueTask(); }) .ConfigureAwait(false); } @@ -34,7 +34,7 @@ await WorkerToMainAsync(() => await MainToWorkerAsync(() => { action(); - return s_completedTask; + return new ValueTask(); }) .BackToAny(); } @@ -45,13 +45,13 @@ await MainToWorkerAsync(() => } } - public virtual Task RunOnThread(Func action, bool useMain) + public virtual ValueTask RunOnThread(Func action, bool useMain) { if (useMain) { if (IsMainThread) { - return Task.FromResult(action()); + return new ValueTask(action()); } return WorkerToMain(action); @@ -61,10 +61,10 @@ public virtual Task RunOnThread(Func action, bool useMain) return MainToWorker(action); } - return Task.FromResult(action()); + return new ValueTask(action()); } - public async Task RunOnThreadAsync(Func action, bool useMain) + public async ValueTask RunOnThreadAsync(Func action, bool useMain) { if (useMain) { @@ -77,7 +77,7 @@ public async Task RunOnThreadAsync(Func action, bool useMain) await WorkerToMainAsync(async () => { await action().BackToCurrent(); - return null; + return new ValueTask(null); }) .BackToCurrent(); } @@ -88,8 +88,8 @@ public async Task RunOnThreadAsync(Func action, bool useMain) { await MainToWorkerAsync(async () => { - await action().BackToCurrent(); - return null; + await action().BackToCurrent(); + return new ValueTask(null); }) .BackToCurrent(); } @@ -100,7 +100,7 @@ public async Task RunOnThreadAsync(Func action, bool useMain) } } - public Task RunOnThreadAsync(Func> action, bool useMain) + public ValueTask RunOnThreadAsync(Func> action, bool useMain) { if (useMain) { @@ -117,11 +117,10 @@ public Task RunOnThreadAsync(Func> action, bool useMain) } return action(); } + protected abstract ValueTask WorkerToMainAsync(Func> action); - protected abstract Task WorkerToMainAsync(Func> action); - - protected abstract Task MainToWorkerAsync(Func> action); - protected abstract Task WorkerToMain(Func action); + protected abstract ValueTask MainToWorkerAsync(Func> action); + protected abstract ValueTask WorkerToMain(Func action); - protected abstract Task MainToWorker(Func action); + protected abstract ValueTask MainToWorker(Func action); } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs index ddf29854c..f2c915d47 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs @@ -2,27 +2,27 @@ public static class ThreadContextExtensions { - public static void RunOnMain(this IThreadContext threadContext, Action action) => + public static ValueTask RunOnMain(this IThreadContext threadContext, Action action) => threadContext.RunOnThread(action, true); - public static void RunOnWorker(this IThreadContext threadContext, Action action) => + public static ValueTask RunOnWorker(this IThreadContext threadContext, Action action) => threadContext.RunOnThread(action, false); - public static Task RunOnMain(this IThreadContext threadContext, Func action) => + public static ValueTask RunOnMain(this IThreadContext threadContext, Func action) => threadContext.RunOnThread(action, true); - public static Task RunOnWorker(this IThreadContext threadContext, Func action) => + public static ValueTask RunOnWorker(this IThreadContext threadContext, Func action) => threadContext.RunOnThread(action, false); - public static Task RunOnMainAsync(this IThreadContext threadContext, Func action) => + public static ValueTask RunOnMainAsync(this IThreadContext threadContext, Func action) => threadContext.RunOnThreadAsync(action, true); - public static Task RunOnWorkerAsync(this IThreadContext threadContext, Func action) => + public static ValueTask RunOnWorkerAsync(this IThreadContext threadContext, Func action) => threadContext.RunOnThreadAsync(action, false); - public static Task RunOnMainAsync(this IThreadContext threadContext, Func> action) => + public static ValueTask RunOnMainAsync(this IThreadContext threadContext, Func> action) => threadContext.RunOnThreadAsync(action, true); - public static Task RunOnWorkerAsync(this IThreadContext threadContext, Func> action) => + public static ValueTask RunOnWorkerAsync(this IThreadContext threadContext, Func> action) => threadContext.RunOnThreadAsync(action, false); } diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs index 6477a7b01..d1437dc94 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -2,8 +2,11 @@ namespace Speckle.Connectors.Common.Threading; -public static class Yield +public static class TaskExtensions { + public static ConfiguredValueTaskAwaitable BackToCurrent (this ValueTask valueTask) => valueTask.ConfigureAwait(true); + + public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); public static ConfiguredValueTaskAwaitable BackToCurrent(this ValueTask valueTask) => valueTask.ConfigureAwait(true); public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); @@ -15,4 +18,11 @@ public static class Yield public static ConfiguredTaskAwaitable BackToCurrent(this Task task) => task.ConfigureAwait(true); public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); + + public static ValueTask AsValueTask(this Task task) => new(task); + public static ValueTask AsValueTask(this Task task) => new(task); + public static void Wait(this Task task) => task.GetAwaiter().GetResult(); + public static T Wait(this Task task) => task.GetAwaiter().GetResult(); + public static void Wait(this ValueTask task) => task.GetAwaiter().GetResult(); + public static T Wait(this ValueTask task) => task.GetAwaiter().GetResult(); } From 1ea4acbb0d16acfef919c5c16ac4fb49a63162fa Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 3 Dec 2024 17:07:25 +0000 Subject: [PATCH 117/173] fmt --- .../Utils/ArcGISThreadContext.cs | 5 +- .../Utils/ArcGisDocumentStore.cs | 82 ++++++++++--------- .../Plugin/RevitThreadContext.cs | 3 +- .../Receive/RhinoHostObjectBuilder.cs | 64 ++++++++------- .../Bridge/BrowserBridge.cs | 36 ++++---- .../Threading/DefaultThreadContext.cs | 7 +- .../Threading/ThreadContext.cs | 5 +- .../Threading/Yield.cs | 14 +++- 8 files changed, 121 insertions(+), 95 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index dee64e930..112ef1448 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -14,11 +14,12 @@ protected override ValueTask MainToWorkerAsync(Func> action) } else { - return QueuedTask.Run(async() => await action().BackToCurrent()).AsValueTask(); + return QueuedTask.Run(async () => await action().BackToCurrent()).AsValueTask(); } } - protected override ValueTask WorkerToMainAsync(Func> action) => QueuedTask.Run(async() => await action().BackToCurrent()).AsValueTask(); + protected override ValueTask WorkerToMainAsync(Func> action) => + QueuedTask.Run(async () => await action().BackToCurrent()).AsValueTask(); protected override ValueTask MainToWorker(Func action) { diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs index 5a39736f2..0dd2e7abe 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs @@ -82,47 +82,51 @@ private void OnMapViewChanged(ActiveMapViewChangedEventArgs args) } protected override void HostAppSaveState(string modelCardState) => - _threadContext.RunOnWorker(() => - { - Map map = MapView.Active.Map; - // Read existing metadata - To prevent messing existing metadata. 🤞 Hope other add-in developers will do same :D - var existingMetadata = map.GetMetadata(); - - // Parse existing metadata - XDocument existingXmlDocument = !string.IsNullOrEmpty(existingMetadata) - ? XDocument.Parse(existingMetadata) - : new XDocument(new XElement("metadata")); - - XElement xmlModelCards = new("SpeckleModelCards", modelCardState); - - // Check if SpeckleModelCards element already exists at root and update it - var speckleModelCardsElement = existingXmlDocument.Root?.Element("SpeckleModelCards"); - if (speckleModelCardsElement != null) + _threadContext + .RunOnWorker(() => { - speckleModelCardsElement.ReplaceWith(xmlModelCards); - } - else - { - existingXmlDocument.Root?.Add(xmlModelCards); - } - - map.SetMetadata(existingXmlDocument.ToString()); - }).Wait(); + Map map = MapView.Active.Map; + // Read existing metadata - To prevent messing existing metadata. 🤞 Hope other add-in developers will do same :D + var existingMetadata = map.GetMetadata(); + + // Parse existing metadata + XDocument existingXmlDocument = !string.IsNullOrEmpty(existingMetadata) + ? XDocument.Parse(existingMetadata) + : new XDocument(new XElement("metadata")); + + XElement xmlModelCards = new("SpeckleModelCards", modelCardState); + + // Check if SpeckleModelCards element already exists at root and update it + var speckleModelCardsElement = existingXmlDocument.Root?.Element("SpeckleModelCards"); + if (speckleModelCardsElement != null) + { + speckleModelCardsElement.ReplaceWith(xmlModelCards); + } + else + { + existingXmlDocument.Root?.Add(xmlModelCards); + } + + map.SetMetadata(existingXmlDocument.ToString()); + }) + .Wait(); protected override void LoadState() => - _threadContext.RunOnWorker(() => - { - Map map = MapView.Active.Map; - var metadata = map.GetMetadata(); - var root = XDocument.Parse(metadata).Root; - var element = root?.Element("SpeckleModelCards"); - if (element is null) + _threadContext + .RunOnWorker(() => { - ClearAndSave(); - return; - } - - string modelsString = element.Value; - LoadFromString(modelsString); - }).Wait(); + Map map = MapView.Active.Map; + var metadata = map.GetMetadata(); + var root = XDocument.Parse(metadata).Root; + var element = root?.Element("SpeckleModelCards"); + if (element is null) + { + ClearAndSave(); + return; + } + + string modelsString = element.Value; + LoadFromString(modelsString); + }) + .Wait(); } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index b4cc76319..92dd7d521 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -7,7 +7,8 @@ public class RevitThreadContext : ThreadContext { protected override ValueTask MainToWorkerAsync(Func> action) => action(); - protected override ValueTask WorkerToMainAsync(Func> action) => RevitTask.RunAsync(async () => await action().BackToCurrent()).AsValueTask(); + protected override ValueTask WorkerToMainAsync(Func> action) => + RevitTask.RunAsync(async () => await action().BackToCurrent()).AsValueTask(); protected override ValueTask MainToWorker(Func action) => new(action()); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index b2de7b1d7..1a42a4dfb 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -44,7 +44,9 @@ public RhinoHostObjectBuilder( RhinoMaterialBaker materialBaker, RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, - ISdkActivityFactory activityFactory, IThreadContext threadContext) + ISdkActivityFactory activityFactory, + IThreadContext threadContext + ) { _converter = converter; _converterSettings = converterSettings; @@ -115,13 +117,15 @@ CancellationToken cancellationToken using (var _ = _activityFactory.Start("Pre baking layers")) { //TODO what is this? This is going to the UI thread - _threadContext.RunOnMain(() => - { - using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); - var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); - paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); - _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); - }).Wait(); + _threadContext + .RunOnMain(() => + { + using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); + var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); + paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); + _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); + }) + .Wait(); } // 5 - Convert atomic objects @@ -245,35 +249,37 @@ private void PreReceiveDeepClean(string baseLayerName) RhinoMath.UnsetIntIndex ); - _threadContext.RunOnMain(() => - { - _instanceBaker.PurgeInstances(baseLayerName); - _materialBaker.PurgeMaterials(baseLayerName); - - var doc = _converterSettings.Current.Document; - // Cleans up any previously received objects - if (rootLayerIndex != RhinoMath.UnsetIntIndex) + _threadContext + .RunOnMain(() => { - var documentLayer = doc.Layers[rootLayerIndex]; - var childLayers = documentLayer.GetChildren(); - if (childLayers != null) + _instanceBaker.PurgeInstances(baseLayerName); + _materialBaker.PurgeMaterials(baseLayerName); + + var doc = _converterSettings.Current.Document; + // Cleans up any previously received objects + if (rootLayerIndex != RhinoMath.UnsetIntIndex) { - using var layerNoDraw = new DisableRedrawScope(doc.Views); - foreach (var layer in childLayers) + var documentLayer = doc.Layers[rootLayerIndex]; + var childLayers = documentLayer.GetChildren(); + if (childLayers != null) { - var purgeSuccess = doc.Layers.Purge(layer.Index, true); - if (!purgeSuccess) + using var layerNoDraw = new DisableRedrawScope(doc.Views); + foreach (var layer in childLayers) { - Console.WriteLine($"Failed to purge layer: {layer}"); + var purgeSuccess = doc.Layers.Purge(layer.Index, true); + if (!purgeSuccess) + { + Console.WriteLine($"Failed to purge layer: {layer}"); + } } } + doc.Layers.Purge(documentLayer.Index, true); } - doc.Layers.Purge(documentLayer.Index, true); - } - // Cleans up any previously received group - _groupBaker.PurgeGroups(baseLayerName); - }).Wait(); + // Cleans up any previously received group + _groupBaker.PurgeGroups(baseLayerName); + }) + .Wait(); } /// diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index e46774eec..69562d9af 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -105,25 +105,27 @@ public string[] GetBindingsMethodNames() } public void RunMethod(string methodName, string requestId, string methodArgs) => - _threadContext.RunOnThreadAsync( - async () => - { - var task = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => + _threadContext + .RunOnThreadAsync( + async () => + { + var task = await TopLevelExceptionHandler + .CatchUnhandledAsync(async () => + { + var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); + string resultJson = _jsonSerializer.Serialize(result); + await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); + }) + .ConfigureAwait(false); + if (task.Exception is not null) { - var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); - string resultJson = _jsonSerializer.Serialize(result); + string resultJson = SerializeFormattedException(task.Exception); await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - }) - .ConfigureAwait(false); - if (task.Exception is not null) - { - string resultJson = SerializeFormattedException(task.Exception); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); - } - }, - _threadOptions.RunCommandsOnMainThread - ).Wait(); + } + }, + _threadOptions.RunCommandsOnMainThread + ) + .Wait(); /// /// Used by the action block to invoke the actual method called by the UI. diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs index 6509eb3c7..29057f544 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -33,7 +33,12 @@ protected override ValueTask WorkerToMainAsync(Func> action) protected override ValueTask MainToWorkerAsync(Func> action) { - Task> f = Task.Factory.StartNew(async () => await action().BackToCurrent(), default, TaskCreationOptions.LongRunning, TaskScheduler.Default); + Task> f = Task.Factory.StartNew( + async () => await action().BackToCurrent(), + default, + TaskCreationOptions.LongRunning, + TaskScheduler.Default + ); return new ValueTask(f.Unwrap()); } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 42c44d01c..459f0285d 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -5,8 +5,6 @@ namespace Speckle.Connectors.Common.Threading; [GenerateAutoInterface] public abstract class ThreadContext : IThreadContext { - - public static bool IsMainThread => Environment.CurrentManagedThreadId == 1 && !Thread.CurrentThread.IsBackground; public async ValueTask RunOnThread(Action action, bool useMain) @@ -88,7 +86,7 @@ public async ValueTask RunOnThreadAsync(Func action, bool useMain) { await MainToWorkerAsync(async () => { - await action().BackToCurrent(); + await action().BackToCurrent(); return new ValueTask(null); }) .BackToCurrent(); @@ -117,6 +115,7 @@ public ValueTask RunOnThreadAsync(Func> action, bool useMain) } return action(); } + protected abstract ValueTask WorkerToMainAsync(Func> action); protected abstract ValueTask MainToWorkerAsync(Func> action); diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs index d1437dc94..e2215ad7b 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/Yield.cs @@ -4,9 +4,12 @@ namespace Speckle.Connectors.Common.Threading; public static class TaskExtensions { - public static ConfiguredValueTaskAwaitable BackToCurrent (this ValueTask valueTask) => valueTask.ConfigureAwait(true); + public static ConfiguredValueTaskAwaitable BackToCurrent(this ValueTask valueTask) => + valueTask.ConfigureAwait(true); + + public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => + valueTask.ConfigureAwait(false); - public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); public static ConfiguredValueTaskAwaitable BackToCurrent(this ValueTask valueTask) => valueTask.ConfigureAwait(true); public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); @@ -18,11 +21,16 @@ public static class TaskExtensions public static ConfiguredTaskAwaitable BackToCurrent(this Task task) => task.ConfigureAwait(true); public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); - + public static ValueTask AsValueTask(this Task task) => new(task); + public static ValueTask AsValueTask(this Task task) => new(task); + public static void Wait(this Task task) => task.GetAwaiter().GetResult(); + public static T Wait(this Task task) => task.GetAwaiter().GetResult(); + public static void Wait(this ValueTask task) => task.GetAwaiter().GetResult(); + public static T Wait(this ValueTask task) => task.GetAwaiter().GetResult(); } From 027b0cc34373aa52595647affdfa02cc81275a57 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 3 Dec 2024 17:24:28 +0000 Subject: [PATCH 118/173] fix up some bridge execution to be sync --- .../CefSharpPanel.xaml.cs | 10 ++----- .../DUI3ControlWebView.xaml.cs | 3 +-- .../Bridge/BrowserBridge.cs | 27 +++++++++---------- .../Bridge/IBrowserScriptExecutor.cs | 2 +- 4 files changed, 17 insertions(+), 25 deletions(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs b/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs index ae78681ed..0f2c587b2 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs @@ -13,15 +13,9 @@ public CefSharpPanel() InitializeComponent(); } - public Task ExecuteScriptAsyncMethod(string script, CancellationToken cancellationToken) + public void ExecuteScriptAsync(string script) { - Browser.Dispatcher.Invoke( - () => Browser.ExecuteScriptAsync(script), - DispatcherPriority.Background, - cancellationToken - ); - - return Task.CompletedTask; + Browser.Dispatcher.Invoke(() => Browser.ExecuteScriptAsync(script), DispatcherPriority.Background); } public bool IsBrowserInitialized => Browser.IsBrowserInitialized; diff --git a/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs b/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs index c401a3289..5bd6d83b6 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs +++ b/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs @@ -26,7 +26,7 @@ public DUI3ControlWebView(IServiceProvider serviceProvider) public object BrowserElement => Browser; - public Task ExecuteScriptAsyncMethod(string script, CancellationToken cancellationToken) + public void ExecuteScriptAsync(string script) { if (!Browser.IsInitialized) { @@ -39,7 +39,6 @@ public Task ExecuteScriptAsyncMethod(string script, CancellationToken cancellati () => Browser.ExecuteScriptAsync(script), DispatcherPriority.Background ); - return Task.CompletedTask; } private void OnInitialized(object? sender, CoreWebView2InitializationCompletedEventArgs e) diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 69562d9af..ca8734e22 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -104,6 +104,7 @@ public string[] GetBindingsMethodNames() return bindingNames; } + //don't wait for browser runs on purpose public void RunMethod(string methodName, string requestId, string methodArgs) => _threadContext .RunOnThreadAsync( @@ -114,18 +115,18 @@ public void RunMethod(string methodName, string requestId, string methodArgs) => { var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); string resultJson = _jsonSerializer.Serialize(result); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); + NotifyUIMethodCallResultReady(requestId, resultJson); }) .ConfigureAwait(false); if (task.Exception is not null) { string resultJson = SerializeFormattedException(task.Exception); - await NotifyUIMethodCallResultReady(requestId, resultJson).ConfigureAwait(false); + NotifyUIMethodCallResultReady(requestId, resultJson); } }, _threadOptions.RunCommandsOnMainThread ) - .Wait(); + .BackToAny(); /// /// Used by the action block to invoke the actual method called by the UI. @@ -217,16 +218,12 @@ private string SerializeFormattedException(Exception e) /// /// /// - /// - private async Task NotifyUIMethodCallResultReady( - string requestId, - string? serializedData = null, - CancellationToken cancellationToken = default - ) + /// + private void NotifyUIMethodCallResultReady(string requestId, string? serializedData = null) { _resultsStore[requestId] = serializedData; string script = $"{FrontendBoundName}.responseReady('{requestId}')"; - await _browserScriptExecutor.ExecuteScriptAsyncMethod(script, cancellationToken).ConfigureAwait(false); + _browserScriptExecutor.ExecuteScriptAsync(script); } /// @@ -260,7 +257,7 @@ public void OpenUrl(string url) Process.Start(new ProcessStartInfo { FileName = url, UseShellExecute = true }); } - public async Task Send(string eventName, CancellationToken cancellationToken = default) + public Task Send(string eventName, CancellationToken cancellationToken = default) { if (_binding is null) { @@ -269,10 +266,11 @@ public async Task Send(string eventName, CancellationToken cancellationToken = d var script = $"{FrontendBoundName}.emit('{eventName}')"; - await _browserScriptExecutor.ExecuteScriptAsyncMethod(script, cancellationToken).ConfigureAwait(false); + _browserScriptExecutor.ExecuteScriptAsync(script); + return Task.CompletedTask; } - public async Task Send(string eventName, T data, CancellationToken cancellationToken = default) + public Task Send(string eventName, T data, CancellationToken cancellationToken = default) where T : class { if (_binding is null) @@ -284,6 +282,7 @@ public async Task Send(string eventName, T data, CancellationToken cancellati string requestId = $"{Guid.NewGuid()}_{eventName}"; _resultsStore[requestId] = payload; var script = $"{FrontendBoundName}.emitResponseReady('{eventName}', '{requestId}')"; - await _browserScriptExecutor.ExecuteScriptAsyncMethod(script, cancellationToken).ConfigureAwait(false); + _browserScriptExecutor.ExecuteScriptAsync(script); + return Task.CompletedTask; } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs index 6c3fb69f9..f84658df2 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs @@ -4,7 +4,7 @@ public interface IBrowserScriptExecutor { /// thrown when is /// The (constant string) script to execute on the browser - public Task ExecuteScriptAsyncMethod(string script, CancellationToken cancellationToken); + public void ExecuteScriptAsync(string script); public bool IsBrowserInitialized { get; } From 54d3db144963df1db6759717e733cdb7acbc2542 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 3 Dec 2024 17:30:44 +0000 Subject: [PATCH 119/173] Refactor NavisworksRootObjectBuilder.cs: Improve initialization of root object collection - Initialize root object collection with name and units in a more concise way - Improve readability and maintainability of the code --- .../Operations/Send/NavisworksRootObjectBuilder.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index a0b4da307..dcfb47523 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -1,4 +1,4 @@ -using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Conversion; @@ -48,8 +48,11 @@ public async Task Build( // Initialize root collection var name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model"; - var rootObjectCollection = new Collection { name = name }; - rootObjectCollection["units"] = _converterSettings.Current.Derived.SpeckleUnits; + var rootObjectCollection = new Collection + { + name = name, + ["units"] = _converterSettings.Current.Derived.SpeckleUnits + }; if (!navisworksModelItems.Any() || navisworksModelItems == null) { From 2442990f54566bbd95ac8041a4e7f7c9e262391e Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 3 Dec 2024 23:03:26 +0000 Subject: [PATCH 120/173] Fix logger import in NavisworksRootObjectBuilder.cs The commit fixes an issue with the logger import in the NavisworksRootObjectBuilder.cs file. The incorrect namespace was causing a compilation error. This change ensures that the correct namespace is used for the logger, resolving the compilation error and allowing for proper logging functionality. --- .../Operations/Send/NavisworksRootObjectBuilder.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index dcfb47523..e2bff63fe 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -1,4 +1,4 @@ -using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Conversion; From c0cc150baae56aab3cb70ab096420bd4fcdcfc9b Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 3 Dec 2024 23:04:04 +0000 Subject: [PATCH 121/173] Refactor ClassPropertiesExtractor to simplify GetClassProperties method The GetClassProperties method in the ClassPropertiesExtractor class has been refactored to improve readability and reduce unnecessary code. The if statement that checks for exclusion of properties has been removed, as it is no longer needed. Instead, the ExtractClassProperties method is directly returned. This change simplifies the logic and improves code maintainability. --- .../DataExtractors/ClassPropertiesExtractor.cs | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index c3c8eae9a..224648130 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -13,17 +13,8 @@ public ClassPropertiesExtractor(IConverterSettingsStore? GetClassProperties(NAV.ModelItem modelItem) - { - if (_settingsStore.Current.User.ExcludeProperties) - { - return null; - } - - var propertyDictionary = ExtractClassProperties(modelItem); - - return propertyDictionary; - } + internal Dictionary? GetClassProperties(NAV.ModelItem modelItem) => + ExtractClassProperties(modelItem); /// /// Extracts property sets from a NAV.ModelItem and adds them to a dictionary, From cd6d595eb74136068f6eb4c129ef0413b93944ac Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 3 Dec 2024 23:04:21 +0000 Subject: [PATCH 122/173] Fix static method in DisplayValueExtractor The commit fixes a bug in the DisplayValueExtractor class where the GetDisplayValue method was not declared as static. This caused a compilation error. The fix makes the method static, allowing it to be called without an instance of the class. --- .../DataExtractors/DisplayValueExtractor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs index 82d627acd..6ec7ef03e 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs @@ -18,5 +18,5 @@ ILogger logger _logger = logger; } - internal List GetDisplayValue(NAV.ModelItem _) => []; + internal static List GetDisplayValue(NAV.ModelItem _) => []; } From 5086f452245c772a0dd668616f17d36fcea3123f Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 3 Dec 2024 23:05:32 +0000 Subject: [PATCH 123/173] Add BasePropertyHandler, HierarchicalPropertyHandler, IPropertyHandler, and StandardPropertyHandler classes for handling property assignment in Navisworks conversion. - Added IPropertyHandler interface to define the contract for handling property assignment to Speckle objects. - Added BasePropertyHandler class to provide common functionality for property assignment. - Added StandardPropertyHandler class to handle standard property assignment without any merging or hierarchy processing. - Added HierarchicalPropertyHandler class to handle property assignment with hierarchy merging for objects that require ancestor properties. --- .../DataHandlers/BasePropertyHandler.cs | 102 +++++++++++++++ .../HieraerchicalPropertyHandler.cs | 118 ++++++++++++++++++ .../DataHandlers/IPropertyHandler.cs | 12 ++ .../DataHandlers/StandardPrpertyHandler.cs | 29 +++++ .../ModelItemTopLevelConverterToSpeckle.cs | 109 ---------------- .../ModelItemTopLevelConverterToSpeckle.cs | 95 ++++++++++++++ 6 files changed, 356 insertions(+), 109 deletions(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/IPropertyHandler.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs new file mode 100644 index 000000000..e8a433c7c --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs @@ -0,0 +1,102 @@ +namespace Speckle.Converter.Navisworks.ToSpeckle.PropertyHandlers; + +/// +/// Base property handler providing common functionality for property assignment. +/// +public abstract class BasePropertyHandler( + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor, + ModelPropertiesExtractor modelPropertiesExtractor +) : IPropertyHandler +{ + public void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) + { + AssignClassProperties(speckleObject, modelItem); + AssignPropertySets(speckleObject, modelItem); + } + + private void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) + { + var classProperties = classPropertiesExtractor.GetClassProperties(modelItem); + if (classProperties == null) + { + return; + } + + foreach (var kvp in classProperties) + { + if (speckleObject != null) + { + speckleObject[kvp.Key] = kvp.Value; + } + } + } + + protected abstract void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem); + + protected Dictionary> ProcessPropertySets(NAV.ModelItem modelItem) + { + var categorizedProperties = new Dictionary>(); + var propertySets = propertySetsExtractor.GetPropertySets(modelItem); + + if (propertySets != null) + { + foreach (var category in propertySets.Where(c => c.Key != "Internal")) + { + if (category.Value is not Dictionary properties) + { + continue; + } + + var categoryProps = CreatePropertyDictionary(properties); + if (categoryProps.Count > 0) + { + categorizedProperties[category.Key] = categoryProps; + } + } + } + + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + AddModelProperties(modelItem, categorizedProperties); + return categorizedProperties; + } + + private void AddModelProperties( + NAV.ModelItem modelItem, + Dictionary> categorizedProperties + ) + { + if (!modelItem.HasModel) + { + return; + } + + var modelProperties = modelPropertiesExtractor.GetModelProperties(modelItem.Model); + if (modelProperties == null) + { + return; + } + + var modelProps = CreatePropertyDictionary(modelProperties); + if (modelProps.Count > 0) + { + categorizedProperties["Model"] = modelProps; + } + } + + private static Dictionary CreatePropertyDictionary(Dictionary properties) + { + var propertyDict = new Dictionary(); + foreach (var prop in properties.Where(prop => IsValidPropertyValue(prop.Value))) + { + propertyDict[prop.Key] = prop.Value; + } + return propertyDict; + } + + protected static bool IsValidPropertyValue(object? value) => value != null && !string.IsNullOrEmpty(value.ToString()); +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs new file mode 100644 index 000000000..29bf0f652 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs @@ -0,0 +1,118 @@ +namespace Speckle.Converter.Navisworks.ToSpeckle.PropertyHandlers; + +/// +/// Handles property assignment with hierarchy merging for objects that require ancestor properties. +/// +public class HierarchicalPropertyHandler( + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor, + ModelPropertiesExtractor modelPropertiesExtractor +) : BasePropertyHandler(classPropertiesExtractor, propertySetsExtractor, modelPropertiesExtractor) +{ + protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) + { + if (speckleObject == null) + { + throw new ArgumentNullException(nameof(speckleObject)); + } + var propertyDict = speckleObject["properties"] as Dictionary ?? new Dictionary(); + + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + var hierarchy = GetObjectHierarchy(modelItem); + var propertyCollection = new Dictionary>>(); + + foreach (var item in hierarchy) + { + CollectHierarchicalProperties(item, propertyCollection); + } + + ApplyFilteredProperties(propertyDict, propertyCollection); + + speckleObject["properties"] = propertyDict; + } + + private static List GetObjectHierarchy(NAV.ModelItem target) + { + var hierarchy = new List(); + var firstObjectAncestor = target.FindFirstObjectAncestor(); + + if (firstObjectAncestor == null) + { + hierarchy.Add(target); + return hierarchy; + } + + var current = target; + while (current != null) + { + hierarchy.Add(current); + if (current == firstObjectAncestor) + { + break; + } + current = current.Parent; + } + + hierarchy.Reverse(); + return hierarchy; + } + + private void CollectHierarchicalProperties( + NAV.ModelItem item, + Dictionary>> propertyCollection + ) + { + var categoryDictionaries = ProcessPropertySets(item); + + foreach (var kvp in categoryDictionaries) + { + if (!propertyCollection.TryGetValue(kvp.Key, out var categoryProperties)) + { + categoryProperties = []; + propertyCollection.Add(kvp.Key, categoryProperties); + } + + foreach (var prop in kvp.Value.Where(prop => IsValidPropertyValue(prop.Value))) + { + if (!categoryProperties.TryGetValue(prop.Key, out var valueSet)) + { + valueSet = []; + categoryProperties.Add(prop.Key, valueSet); + } + valueSet.Add(prop.Value); + } + } + } + + private static void ApplyFilteredProperties( + Dictionary propertyDict, + Dictionary>> propertyCollection + ) + { + foreach (var kvp in propertyCollection) + { + var categoryDict = new Dictionary(); + bool hasProperties = false; + + foreach (var kvS in kvp.Value) + { + if ((kvS.Value).Count != 1) + { + continue; + } + + categoryDict[kvS.Key] = kvS.Value.First(); + hasProperties = true; + } + + if (hasProperties) + { + propertyDict[kvp.Key] = categoryDict; + } + } + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/IPropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/IPropertyHandler.cs new file mode 100644 index 000000000..73fbcc4bf --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/IPropertyHandler.cs @@ -0,0 +1,12 @@ +namespace Speckle.Converter.Navisworks.ToSpeckle.PropertyHandlers; + +/// +/// Defines the contract for handling property assignment to Speckle objects. +/// +public interface IPropertyHandler +{ + /// + /// Processes and adds properties to a Speckle object from a Navisworks model item. + /// + void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem); +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs new file mode 100644 index 000000000..55f4d7e5a --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs @@ -0,0 +1,29 @@ +namespace Speckle.Converter.Navisworks.ToSpeckle.PropertyHandlers; + +/// +/// Handles standard property assignment without any merging or hierarchy processing. +/// +public class StandardPropertyHandler( + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor, + ModelPropertiesExtractor modelPropertiesExtractor +) : BasePropertyHandler(classPropertiesExtractor, propertySetsExtractor, modelPropertiesExtractor) +{ + protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) + { + if (speckleObject == null) + { + throw new ArgumentNullException(nameof(speckleObject)); + } + var propertyDictionary = speckleObject["properties"] as Dictionary ?? []; + + var categoryDictionaries = ProcessPropertySets(modelItem); + + foreach (var kvp in categoryDictionaries) + { + categoryDictionaries[$"{kvp.Key}"] = kvp.Value; + } + + speckleObject["properties"] = propertyDictionary; + } +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs deleted file mode 100644 index 0c29ef135..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/ModelItemTopLevelConverterToSpeckle.cs +++ /dev/null @@ -1,109 +0,0 @@ -using Speckle.Converter.Navisworks.Models; -using Speckle.Converter.Navisworks.Settings; -using Speckle.Converters.Common; -using Speckle.Converters.Common.Objects; -using Speckle.Sdk.Models; - -namespace Speckle.Converter.Navisworks.ToSpeckle; - -/// -/// Converts Navisworks ModelItem objects to Speckle Base objects. -/// -public class ModelItemTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter, IRootToSpeckleConverter -{ - private readonly DisplayValueExtractor _displayValueExtractor; - private readonly ClassPropertiesExtractor _classPropertiesExtractor; - private readonly PropertySetsExtractor _propertySetsExtractor; - private readonly ModelPropertiesExtractor _modelPropertiesExtractor; - private readonly IConverterSettingsStore _settingsStore; - - /// - /// Initializes a new instance of the class. - /// - /// Extractor for geometric display values. - /// Extractor for class-specific properties. - /// Extractor for property sets. - /// Extractor for model properties. - /// Converter settings store. - - public ModelItemTopLevelConverterToSpeckle( - DisplayValueExtractor displayValueExtractor, - ClassPropertiesExtractor classPropertiesExtractor, - PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor, - IConverterSettingsStore settingsStore - ) - { - _displayValueExtractor = displayValueExtractor; - _classPropertiesExtractor = classPropertiesExtractor; - _propertySetsExtractor = propertySetsExtractor; - _modelPropertiesExtractor = modelPropertiesExtractor; - _settingsStore = settingsStore; - } - - /// - /// Converts a Navisworks object to a Speckle Base object. - /// - /// The object to convert. - /// The converted Speckle Base object. - public Base Convert(object target) => Convert(target as NAV.ModelItem ?? throw new InvalidOperationException()); - - // Converts a Navisworks ModelItem into a Speckle Base object - private Base Convert(NAV.ModelItem target) - { - var name = GetObjectName(target); - - INavisworksObject navisworksObject = target.HasGeometry - ? CreateGeometryObject(target, name) // Create a NavisworksGeometryObject - : global::Speckle.Converter.Navisworks.ToSpeckle.ModelItemTopLevelConverterToSpeckle.CreateNonGeometryObject( - name - ); // Create a NavisworksObject - - AddProperties(navisworksObject, target); - - return (Base)navisworksObject; - } - - private NavisworksModelGeometry CreateGeometryObject(NAV.ModelItem target, string name) => - new() { name = name, displayValue = _displayValueExtractor.GetDisplayValue(target).ToList() }; - - private static NavisworksModelItem CreateNonGeometryObject(string name) => new() { name = name, elements = [] }; - - private static string GetObjectName(NAV.ModelItem target) => - target.ClassDisplayName ?? target.FindFirstObjectAncestor()?.ClassDisplayName ?? "Unnamed model"; - - // Adds class and property set data to the object - private void AddProperties(INavisworksObject navisworksObject, NAV.ModelItem target) - { - if (_settingsStore.Current.User.ExcludeProperties) - { - return; - } - - // Add class properties - var classProperties = _classPropertiesExtractor.GetClassProperties(target); - if (classProperties != null) - { - foreach (var kvp in classProperties) - { - navisworksObject.AddProperty(kvp.Key, kvp.Value); - } - } - - // Add property sets - var propertySets = _propertySetsExtractor.GetPropertySets(target); - - // If the node is a Model - if (target.HasModel) - { - var modelProperties = _modelPropertiesExtractor.GetModelProperties(target.Model); - - propertySets?.Add("Model", modelProperties); - } - - if (propertySets != null) - { - navisworksObject.AddProperty("properties", propertySets); - } - } -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs new file mode 100644 index 000000000..930e87351 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs @@ -0,0 +1,95 @@ +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.ToSpeckle.PropertyHandlers; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Models; +using Speckle.Sdk.Models.Collections; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +/// +/// Converts Navisworks ModelItem objects to Speckle Base objects. +/// +[NameAndRankValue(nameof(NAV.ModelItem), NameAndRankValueAttribute.SPECKLE_DEFAULT_RANK)] +public class ModelItemToToSpeckleConverter : IToSpeckleTopLevelConverter +{ + private readonly ClassPropertiesExtractor _classPropertiesExtractor; + private readonly PropertySetsExtractor _propertySetsExtractor; + private readonly ModelPropertiesExtractor _modelPropertiesExtractor; + private readonly StandardPropertyHandler _standardHandler; + private readonly HierarchicalPropertyHandler _hierarchicalHandler; + private readonly IConverterSettingsStore _settingsStore; + + public ModelItemToToSpeckleConverter( + IConverterSettingsStore settingsStore, + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor, + StandardPropertyHandler standardHandler, + HierarchicalPropertyHandler hierarchicalHandler, + ModelPropertiesExtractor modelPropertiesExtractor + ) + { + _settingsStore = settingsStore; + _classPropertiesExtractor = classPropertiesExtractor; + _propertySetsExtractor = propertySetsExtractor; + _standardHandler = standardHandler; + _hierarchicalHandler = hierarchicalHandler; + _modelPropertiesExtractor = modelPropertiesExtractor; + } + + /// + /// Converts a Navisworks object to a Speckle Base object. + /// + /// The object to convert. + /// The converted Speckle Base object. + public Base Convert(object target) + { + if (target == null) + { + throw new ArgumentNullException(nameof(target)); + } + + return Convert((NAV.ModelItem)target); + } + + // Converts a Navisworks ModelItem into a Speckle Base object + private Base Convert(NAV.ModelItem target) + { + var name = GetObjectName(target); + + Base navisworksObject = target.HasGeometry ? CreateGeometryObject(target, name) : CreateNonGeometryObject(name); + + IPropertyHandler handler = ShouldMergeProperties(target) ? _hierarchicalHandler : _standardHandler; + if (!_settingsStore.Current.User.ExcludeProperties) + { + handler.AssignProperties(navisworksObject, target); + } + + return navisworksObject; + } + + /// + /// Determines whether properties should be merged from ancestors. + /// Only geometry objects should have their properties merged. + /// + private static bool ShouldMergeProperties(NAV.ModelItem target) => target.HasGeometry; + + private static Base CreateGeometryObject(NAV.ModelItem target, string name) => + new() + { + ["name"] = name, + ["displayValue"] = DisplayValueExtractor.GetDisplayValue(target), + ["properties"] = new Dictionary() + }; + + private static Collection CreateNonGeometryObject(string name) => + new() + { + ["name"] = name, + ["elements"] = new List(), + ["properties"] = new Dictionary() + }; + + private static string GetObjectName(NAV.ModelItem target) => + target.ClassDisplayName ?? target.FindFirstObjectAncestor()?.ClassDisplayName ?? "Unnamed model"; +} From df99d9697a0ca717cbfc43527533ed534c8a61e3 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 00:51:49 +0000 Subject: [PATCH 124/173] Refactor class hierarchy and method signatures for Navisworks conversion - Make `GetClassProperties` method in `ClassPropertiesExtractor` static - Remove `classPropertiesExtractor` parameter from constructors in `BasePropertyHandler`, `HierarchicalPropertyHandler`, and `StandardPropertyHandler` - Update references to `classPropertiesExtractor.GetClassProperties(modelItem)` to use the static method `ClassPropertiesExtractor.GetClassProperties(modelItem)` - Rename private field `_properties` in classes implementing `INavisworksObject` to `Properties` - Rename public property `elements` in class `NavisworksModelItem` to `Elements` - Rename public property `displayValue` in class `NavisworksModelGeometry` to lowercase (`displayvalue`) - Add missing using statements --- .../ClassPropertiesExtractor.cs | 2 +- .../DataHandlers/BasePropertyHandler.cs | 5 +- .../HieraerchicalPropertyHandler.cs | 3 +- .../DataHandlers/StandardPrpertyHandler.cs | 3 +- .../Models/NavisworksObjects.cs | 20 ++----- .../NavisworksRootToSpeckleConverter.cs | 53 +++++++++++++++++++ 6 files changed, 63 insertions(+), 23 deletions(-) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index 224648130..12b74b033 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -13,7 +13,7 @@ public ClassPropertiesExtractor(IConverterSettingsStore? GetClassProperties(NAV.ModelItem modelItem) => + internal static Dictionary? GetClassProperties(NAV.ModelItem modelItem) => ExtractClassProperties(modelItem); /// diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs index e8a433c7c..363ec66e0 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs @@ -4,7 +4,6 @@ /// Base property handler providing common functionality for property assignment. /// public abstract class BasePropertyHandler( - ClassPropertiesExtractor classPropertiesExtractor, PropertySetsExtractor propertySetsExtractor, ModelPropertiesExtractor modelPropertiesExtractor ) : IPropertyHandler @@ -15,9 +14,9 @@ public void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) AssignPropertySets(speckleObject, modelItem); } - private void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) + private static void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) { - var classProperties = classPropertiesExtractor.GetClassProperties(modelItem); + var classProperties = ClassPropertiesExtractor.GetClassProperties(modelItem); if (classProperties == null) { return; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs index 29bf0f652..9f25c6fb9 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs @@ -4,10 +4,9 @@ /// Handles property assignment with hierarchy merging for objects that require ancestor properties. /// public class HierarchicalPropertyHandler( - ClassPropertiesExtractor classPropertiesExtractor, PropertySetsExtractor propertySetsExtractor, ModelPropertiesExtractor modelPropertiesExtractor -) : BasePropertyHandler(classPropertiesExtractor, propertySetsExtractor, modelPropertiesExtractor) +) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor) { protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs index 55f4d7e5a..6c12e7db6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs @@ -4,10 +4,9 @@ /// Handles standard property assignment without any merging or hierarchy processing. /// public class StandardPropertyHandler( - ClassPropertiesExtractor classPropertiesExtractor, PropertySetsExtractor propertySetsExtractor, ModelPropertiesExtractor modelPropertiesExtractor -) : BasePropertyHandler(classPropertiesExtractor, propertySetsExtractor, modelPropertiesExtractor) +) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor) { protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs index fac29be33..80feee67f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs @@ -1,5 +1,4 @@ -using System.Diagnostics.CodeAnalysis; -using Speckle.Objects; +using Speckle.Objects; namespace Speckle.Converter.Navisworks.Models; @@ -8,37 +7,28 @@ namespace Speckle.Converter.Navisworks.Models; /// public interface INavisworksObject : IDataObject { - void AddProperty(string key, object? value); - object? GetProperty(string key); + Dictionary Properties { get; } } [SSM.SpeckleType("Objects.Navisworks.ModelItem")] internal sealed class NavisworksModelItem : SSM.Base, INavisworksObject { public required string name { get; init; } - private readonly Dictionary _properties = []; + public required Dictionary Properties { get; init; } [SSM.DetachProperty] - public required List elements { get; set; } + public required List Elements { get; set; } // Implement the `IDataObject.displayValue` property with an empty list IReadOnlyList IDataObject.displayValue => []; - - public void AddProperty(string key, object? value) => _properties[key] = value; - - public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; } [SSM.SpeckleType("Objects.Navisworks.ModelGeometry")] internal sealed class NavisworksModelGeometry : SSM.Base, INavisworksObject { public required string name { get; init; } - private readonly Dictionary _properties = []; + public required Dictionary Properties { get; init; } [SSM.DetachProperty] public required IReadOnlyList displayValue { get; init; } - - public void AddProperty(string key, object? value) => _properties[key] = value; - - public object? GetProperty(string key) => _properties.TryGetValue(key, out var value) ? value : null; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs new file mode 100644 index 000000000..14e697488 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs @@ -0,0 +1,53 @@ +using Microsoft.Extensions.Logging; +using Speckle.Converter.Navisworks.Helpers; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Converters.Common.Registration; +using Speckle.Sdk.Models; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +/// +/// Converts Navisworks ModelItem objects to Speckle Base objects. +/// +public class NavisworksRootToSpeckleConverter : IRootToSpeckleConverter +{ + private readonly IConverterManager _toSpeckle; + private readonly IConverterSettingsStore _settingsStore; + private readonly ILogger _logger; + + public NavisworksRootToSpeckleConverter( + IConverterSettingsStore settingsStore, + ILogger logger, + IConverterManager toSpeckle + ) + { + _toSpeckle = toSpeckle; + _logger = logger; + _settingsStore = settingsStore; + } + + public Base Convert(object target) + { + if (target == null) + { + throw new ArgumentNullException(nameof(target)); + } + + if (target is not NAV.ModelItem modelItem) + { + throw new InvalidOperationException($"The target object is not a ModelItem. It's a ${target.GetType()}."); + } + + Type type = target.GetType(); + + var objectConverter = _toSpeckle.ResolveConverter(type, true); + + Base result = objectConverter.Convert(modelItem); + + result.applicationId = ElementSelectionHelper.ResolveModelItemToIndexPathStatic(modelItem); + + return result; + } +} From 90e5398fdadb2245139c961129db45423bf8039c Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 01:04:46 +0000 Subject: [PATCH 125/173] Add ElementSelectionHelper class for working with Navisworks ModelItem selections. This commit adds a new file, ElementSelectionHelper.cs, which contains a static class called ElementSelectionHelper. This class provides extension methods for working with Navisworks ModelItem selections. The class includes the following significant changes: - Added ResolveModelItemToIndexPath method: This method takes a Navisworks ModelItem and resolves it to its unique index path representation. The resulting string represents the model item's path, including the model index and a hierarchical path identifier separated by a specified separator. - Added ResolveIndexPathToModelItem method: This method takes an index path string and resolves it to a Navisworks ModelItem. It splits the index path into parts, assigns the first part to the modelIndex variable as an integer, and joins the remaining parts as the pathId string. - Added IsElementVisible method: This method determines whether a Navisworks ModelItem and all its ancestors are visible. It checks the visibility status for each item in the item's ancestorsAndSelf collection and returns true if none of them are hidden. - Added ResolveGeometryLeafNodes method: This method takes a Navisworks ModelItem and returns a list of all its descendants (including itself) that have geometry. These changes enhance functionality related to working with Navisworks ModelItems in Speckle.Converter.NavisworksShared.Helpers namespace. --- .../Helpers/ElementSelectionHelper.cs | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs new file mode 100644 index 000000000..c2a3ce9f6 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs @@ -0,0 +1,70 @@ +namespace Speckle.Converter.Navisworks.Helpers; + +/// +/// Provides extension methods for working with Navisworks ModelItem selections. +/// +public static class ElementSelectionHelper +{ + private const char DEFAULT_SEPARATOR = '/'; + + /// + /// Resolves a Navisworks to its unique index path representation. + /// + /// The model item to resolve. + /// + /// A string representing the model item's path. The path includes the model index and + /// a hierarchical path identifier, separated by the specified separator (e.g., "0.a.b"). + /// For root-level model items, only the model index is included. + /// + /// Thrown if is null. + internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + var modelItemPathId = NavisworksApp.ActiveDocument.Models.CreatePathId(modelItem); + + var pathIndex = + modelItemPathId.PathId == "a" + ? $"{modelItemPathId.ModelIndex}" // Root-level model item + : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item + + return pathIndex; + } + + internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) + { + var indexPathParts = indexPath.Split(DEFAULT_SEPARATOR); + + var modelIndex = int.Parse(indexPathParts[0]); + var pathId = string.Join(DEFAULT_SEPARATOR.ToString(), indexPathParts.Skip(1)); + + // assign the first part of indexPathParts to modelIndex and parse it to int, the second part to pathId string + NAV.DocumentParts.ModelItemPathId modelItemPathId = new() { ModelIndex = modelIndex, PathId = pathId }; + + var modelItem = NavisworksApp.ActiveDocument.Models.ResolvePathId(modelItemPathId); + return modelItem; + } + + /// + /// Determines whether a Navisworks and all its ancestors are visible. + /// + /// The model item to check for visibility. + /// True if the item and all ancestors are visible; otherwise, false. + /// Thrown if is null. + internal static bool IsElementVisible(NAV.ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + // Check visibility status for the item and its ancestors + return modelItem.AncestorsAndSelf.All(item => !item.IsHidden); + } + + internal static List ResolveGeometryLeafNodes(NAV.ModelItem modelItem) => + modelItem.DescendantsAndSelf.Where(x => x.HasGeometry).ToList(); +} From 7f61d95419cefe0a985a08656d2b54dcd1870440 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Wed, 4 Dec 2024 08:33:31 +0000 Subject: [PATCH 126/173] cleanup --- .../CefSharpPanel.xaml.cs | 2 +- .../DUI3ControlWebView.xaml.cs | 2 +- DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs | 10 +++++----- .../Bridge/IBrowserScriptExecutor.cs | 2 +- .../Threading/{Yield.cs => TaskExtensions.cs} | 3 +++ 5 files changed, 11 insertions(+), 8 deletions(-) rename Sdk/Speckle.Connectors.Common/Threading/{Yield.cs => TaskExtensions.cs} (91%) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs b/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs index 0f2c587b2..98e98c88f 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared.Cef/CefSharpPanel.xaml.cs @@ -13,7 +13,7 @@ public CefSharpPanel() InitializeComponent(); } - public void ExecuteScriptAsync(string script) + public void ExecuteScript(string script) { Browser.Dispatcher.Invoke(() => Browser.ExecuteScriptAsync(script), DispatcherPriority.Background); } diff --git a/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs b/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs index 5bd6d83b6..59307e4bb 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs +++ b/DUI3/Speckle.Connectors.DUI.WebView/DUI3ControlWebView.xaml.cs @@ -26,7 +26,7 @@ public DUI3ControlWebView(IServiceProvider serviceProvider) public object BrowserElement => Browser; - public void ExecuteScriptAsync(string script) + public void ExecuteScript(string script) { if (!Browser.IsInitialized) { diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index ca8734e22..1b2fab072 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -126,7 +126,7 @@ public void RunMethod(string methodName, string requestId, string methodArgs) => }, _threadOptions.RunCommandsOnMainThread ) - .BackToAny(); + .FireAndForget(); /// /// Used by the action block to invoke the actual method called by the UI. @@ -218,12 +218,12 @@ private string SerializeFormattedException(Exception e) /// /// /// - /// + /// private void NotifyUIMethodCallResultReady(string requestId, string? serializedData = null) { _resultsStore[requestId] = serializedData; string script = $"{FrontendBoundName}.responseReady('{requestId}')"; - _browserScriptExecutor.ExecuteScriptAsync(script); + _browserScriptExecutor.ExecuteScript(script); } /// @@ -266,7 +266,7 @@ public Task Send(string eventName, CancellationToken cancellationToken = default var script = $"{FrontendBoundName}.emit('{eventName}')"; - _browserScriptExecutor.ExecuteScriptAsync(script); + _browserScriptExecutor.ExecuteScript(script); return Task.CompletedTask; } @@ -282,7 +282,7 @@ public Task Send(string eventName, T data, CancellationToken cancellationToke string requestId = $"{Guid.NewGuid()}_{eventName}"; _resultsStore[requestId] = payload; var script = $"{FrontendBoundName}.emitResponseReady('{eventName}', '{requestId}')"; - _browserScriptExecutor.ExecuteScriptAsync(script); + _browserScriptExecutor.ExecuteScript(script); return Task.CompletedTask; } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs index f84658df2..c0979f36c 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserScriptExecutor.cs @@ -4,7 +4,7 @@ public interface IBrowserScriptExecutor { /// thrown when is /// The (constant string) script to execute on the browser - public void ExecuteScriptAsync(string script); + public void ExecuteScript(string script); public bool IsBrowserInitialized { get; } diff --git a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs b/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs similarity index 91% rename from Sdk/Speckle.Connectors.Common/Threading/Yield.cs rename to Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs index e2215ad7b..157ec40ff 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/Yield.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs @@ -33,4 +33,7 @@ public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask val public static void Wait(this ValueTask task) => task.GetAwaiter().GetResult(); public static T Wait(this ValueTask task) => task.GetAwaiter().GetResult(); +#pragma warning disable CA1030 + public static void FireAndForget(this ValueTask valueTask) => valueTask.BackToAny(); +#pragma warning restore CA1030 } From 9730b6d088c1b1e1d0f1aec3c1e94cf720b8753a Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 08:41:13 +0000 Subject: [PATCH 127/173] WIP on jsdb/navisworks WIP on jsdb/navisworks - Replaced `ModelItemTopLevelConverterToSpeckle` with `NavisworksRootToSpeckleConverter` in `NavisworksConverterServiceRegistration.cs` - Added new files to the project: `BasePropertyHandler.cs`, `HieraerchicalPropertyHandler.cs`, `IPropertyHandler.cs`, and `StandardPrpertyHandler.cs` - Updated the file path in the project items XML - Modified `NavisworksRootToSpeckleConverter.cs` to use the updated method name --- .../NavisworksConverterServiceRegistration.cs | 2 +- .../Speckle.Converters.NavisworksShared.projitems | 10 ++++++++-- .../ToSpeckle/NavisworksRootToSpeckleConverter.cs | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index d2375d96b..5c100a106 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -17,7 +17,7 @@ public static IServiceCollection AddNavisworksConverter(this IServiceCollection // Register base converters serviceCollection.AddMatchingInterfacesAsTransient(converterAssembly); - serviceCollection.AddRootCommon(converterAssembly); + serviceCollection.AddRootCommon(converterAssembly); // Register settings management serviceCollection.AddScoped(); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 20ff80bcb..e73196d2a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -1,4 +1,4 @@ - + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) @@ -14,10 +14,15 @@ + + + + + @@ -27,7 +32,8 @@ - + + \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs index 14e697488..eb1bfb10b 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/NavisworksRootToSpeckleConverter.cs @@ -46,7 +46,7 @@ public Base Convert(object target) Base result = objectConverter.Convert(modelItem); - result.applicationId = ElementSelectionHelper.ResolveModelItemToIndexPathStatic(modelItem); + result.applicationId = ElementSelectionHelper.ResolveModelItemToIndexPath(modelItem); return result; } From 58ef164dbc3cb940895c4c71ba9bea44517ec561 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 08:44:32 +0000 Subject: [PATCH 128/173] Update Speckle.Objects to version 3.1.0-dev.205 in Navisworks connectors for versions 2020, 2021, and 2022. - Update Speckle.Objects to version 3.1.0-dev.205 - Update Speckle.Sdk to version 3.1.0-dev.205 - Update Speckle.Sdk.Dependencies to version 3.1.0-dev.205 --- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- 12 files changed, 204 insertions(+), 204 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index b38977e07..15c8d5876 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index 86e3e55c5..ea0f0a5f4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index c7f4bfbc0..9d79a4336 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index d6b5ba2d1..8fb1a27d7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 7aff0ee88..cf321ca7d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index 5db94e918..3d80c3175 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index df98c3c6e..d01a28fa3 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index 569bb41b0..ca55f20ae 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index 2956d8ff7..737982312 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index 862dede88..9541c2430 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 0e1d316f8..f3542c763 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index ffbbc1ac0..e17201058 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.203, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.203, )", + "Speckle.Sdk": "[3.1.0-dev.205, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.203, )" + "Speckle.Objects": "[3.1.0-dev.205, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "7FiT0ouWGcUDln2iJt75psiLZzZ0GaDBgR8meFEIdxJKuhq0QmIX4ll9uwsRsmt9vFJBasvdYpkZqppAH70l3A==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.203" + "Speckle.Sdk": "3.1.0-dev.205" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "vCqzyfPw2T1WeON4mdU5o59lde262EoGYIYyULI4PE+JdJGaqr8sy9TucSL8BpSc5QRHfS8S6osINYp0/kSRSw==", + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.203" + "Speckle.Sdk.Dependencies": "3.1.0-dev.205" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.203, )", - "resolved": "3.1.0-dev.203", - "contentHash": "jbA6aj1PEkQLpyexUcvGgMHlkjsGCJa1DQndBIPiH3awbOVxzsXc5Yufq17fnI4CkAcMvagp8RE+yEc89l8MAw==" + "requested": "[3.1.0-dev.205, )", + "resolved": "3.1.0-dev.205", + "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", From 2dfc5b2dcf5a23e4be5c3e2639e4c4d7ea13af31 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 14:17:31 +0000 Subject: [PATCH 129/173] Fix reserved term replacement in PropertyHelpers.cs The commit fixes a bug in the PropertyHelpers.cs file where the reserved term "Item" was not being replaced correctly. The replacement has been changed from "Item_" to "Item". --- .../Helpers/PropertyHelpers.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs index c6f48b926..fdc42176e 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs @@ -98,7 +98,7 @@ internal static string SanitizePropertyName(string name) => // Regex pattern from speckle-sharp/Core/Core/Models/DynamicBase.cs IsPropNameValid name == "Item" // Item is a reserved term for Indexed Properties: https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/indexers/using-indexers - ? "Item_" + ? "Item" : Regex.Replace(name, @"[\.\/]", "_"); internal static bool IsCategoryToBeSkipped(NAV.PropertyCategory propertyCategory) => From 114064a96c241b63a60d5ae9a9e764add36c5560 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 14:18:44 +0000 Subject: [PATCH 130/173] Refactor property handlers and model objects - Remove unused code in ClassPropertiesExtractor.cs - Refactor PropertySetsExtractor.cs to use dependency injection for settingsStore - Refactor BasePropertyHandler.cs to include classPropertiesExtractor parameter - Rename HieraerchicalPropertyHandler.cs to HierarchicalPropertyHandler.cs - Rename StandardPrpertyHandler.cs to StandardPropertyHandler.cs - Update NavisworksConverterServiceRegistration.cs to register the new property handlers --- .../ClassPropertiesExtractor.cs | 13 ++----- .../DataExtractors/PropertySetsExtractor.cs | 13 ++----- .../DataHandlers/BasePropertyHandler.cs | 7 ++-- ...dler.cs => HierarchicalPropertyHandler.cs} | 5 +-- ...yHandler.cs => StandardPropertyHandler.cs} | 5 +-- .../NavisworksConverterServiceRegistration.cs | 5 +++ .../Models/NavisworksObjects.cs | 34 ------------------- ...ckle.Converters.NavisworksShared.projitems | 8 ++--- .../ModelItemTopLevelConverterToSpeckle.cs | 11 +----- 9 files changed, 25 insertions(+), 76 deletions(-) rename Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/{HieraerchicalPropertyHandler.cs => HierarchicalPropertyHandler.cs} (95%) rename Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/{StandardPrpertyHandler.cs => StandardPropertyHandler.cs} (86%) delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index 12b74b033..70e6ed5a4 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -1,19 +1,10 @@ -using Speckle.Converter.Navisworks.Settings; -using Speckle.Converters.Common; -using static Speckle.Converter.Navisworks.Helpers.PropertyHelpers; +using static Speckle.Converter.Navisworks.Helpers.PropertyHelpers; namespace Speckle.Converter.Navisworks.ToSpeckle; public class ClassPropertiesExtractor { - private readonly IConverterSettingsStore _settingsStore; - - public ClassPropertiesExtractor(IConverterSettingsStore settingsStore) - { - _settingsStore = settingsStore; - } - - internal static Dictionary? GetClassProperties(NAV.ModelItem modelItem) => + internal Dictionary? GetClassProperties(NAV.ModelItem modelItem) => ExtractClassProperties(modelItem); /// diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs index b1bed06d1..ea7c8bc8f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -4,18 +4,11 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; -public class PropertySetsExtractor +public class PropertySetsExtractor(IConverterSettingsStore settingsStore) { - private readonly IConverterSettingsStore _settingsStore; - - public PropertySetsExtractor(IConverterSettingsStore settingsStore) - { - _settingsStore = settingsStore; - } - internal Dictionary? GetPropertySets(NAV.ModelItem modelItem) { - if (_settingsStore.Current.User.ExcludeProperties) + if (settingsStore.Current.User.ExcludeProperties) { return null; } @@ -48,7 +41,7 @@ public PropertySetsExtractor(IConverterSettingsStore public abstract class BasePropertyHandler( PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor + ModelPropertiesExtractor modelPropertiesExtractor, + ClassPropertiesExtractor classPropertiesExtractor ) : IPropertyHandler { public void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) @@ -14,9 +15,9 @@ public void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) AssignPropertySets(speckleObject, modelItem); } - private static void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) + private void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) { - var classProperties = ClassPropertiesExtractor.GetClassProperties(modelItem); + var classProperties = classPropertiesExtractor.GetClassProperties(modelItem); if (classProperties == null) { return; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs similarity index 95% rename from Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs rename to Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs index 9f25c6fb9..e26f22abc 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HieraerchicalPropertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs @@ -5,8 +5,9 @@ /// public class HierarchicalPropertyHandler( PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor -) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor) + ModelPropertiesExtractor modelPropertiesExtractor, + ClassPropertiesExtractor classPropertiesExtractor +) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor, classPropertiesExtractor) { protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs similarity index 86% rename from Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs rename to Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs index 6c12e7db6..bd81d5c84 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPrpertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs @@ -5,8 +5,9 @@ /// public class StandardPropertyHandler( PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor -) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor) + ModelPropertiesExtractor modelPropertiesExtractor, + ClassPropertiesExtractor classPropertiesExtractor +) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor, classPropertiesExtractor) { protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index 5c100a106..35bed35c6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -3,6 +3,7 @@ using Speckle.Converter.Navisworks.Services; using Speckle.Converter.Navisworks.Settings; using Speckle.Converter.Navisworks.ToSpeckle; +using Speckle.Converter.Navisworks.ToSpeckle.PropertyHandlers; using Speckle.Converters.Common; using Speckle.Converters.Common.Registration; using Speckle.Sdk; @@ -19,6 +20,10 @@ public static IServiceCollection AddNavisworksConverter(this IServiceCollection serviceCollection.AddMatchingInterfacesAsTransient(converterAssembly); serviceCollection.AddRootCommon(converterAssembly); + // Register property handlers + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + // Register settings management serviceCollection.AddScoped(); serviceCollection.AddScoped< diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs deleted file mode 100644 index 80feee67f..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Models/NavisworksObjects.cs +++ /dev/null @@ -1,34 +0,0 @@ -using Speckle.Objects; - -namespace Speckle.Converter.Navisworks.Models; - -/// -/// Interface for Speckle objects converted from Navisworks. -/// -public interface INavisworksObject : IDataObject -{ - Dictionary Properties { get; } -} - -[SSM.SpeckleType("Objects.Navisworks.ModelItem")] -internal sealed class NavisworksModelItem : SSM.Base, INavisworksObject -{ - public required string name { get; init; } - public required Dictionary Properties { get; init; } - - [SSM.DetachProperty] - public required List Elements { get; set; } - - // Implement the `IDataObject.displayValue` property with an empty list - IReadOnlyList IDataObject.displayValue => []; -} - -[SSM.SpeckleType("Objects.Navisworks.ModelGeometry")] -internal sealed class NavisworksModelGeometry : SSM.Base, INavisworksObject -{ - public required string name { get; init; } - public required Dictionary Properties { get; init; } - - [SSM.DetachProperty] - public required IReadOnlyList displayValue { get; init; } -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index e73196d2a..6ecd07f93 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -1,4 +1,4 @@ - + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) @@ -15,9 +15,9 @@ - + - + @@ -27,7 +27,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs index 930e87351..0d93e6600 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs @@ -13,28 +13,19 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; [NameAndRankValue(nameof(NAV.ModelItem), NameAndRankValueAttribute.SPECKLE_DEFAULT_RANK)] public class ModelItemToToSpeckleConverter : IToSpeckleTopLevelConverter { - private readonly ClassPropertiesExtractor _classPropertiesExtractor; - private readonly PropertySetsExtractor _propertySetsExtractor; - private readonly ModelPropertiesExtractor _modelPropertiesExtractor; private readonly StandardPropertyHandler _standardHandler; private readonly HierarchicalPropertyHandler _hierarchicalHandler; private readonly IConverterSettingsStore _settingsStore; public ModelItemToToSpeckleConverter( IConverterSettingsStore settingsStore, - ClassPropertiesExtractor classPropertiesExtractor, - PropertySetsExtractor propertySetsExtractor, StandardPropertyHandler standardHandler, - HierarchicalPropertyHandler hierarchicalHandler, - ModelPropertiesExtractor modelPropertiesExtractor + HierarchicalPropertyHandler hierarchicalHandler ) { _settingsStore = settingsStore; - _classPropertiesExtractor = classPropertiesExtractor; - _propertySetsExtractor = propertySetsExtractor; _standardHandler = standardHandler; _hierarchicalHandler = hierarchicalHandler; - _modelPropertiesExtractor = modelPropertiesExtractor; } /// From 3ea708030ba5a177d35a504ca5f2439cbce40ce2 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 14:47:24 +0000 Subject: [PATCH 131/173] Refactor model item name retrieval logic in ModelItemTopLevelConverterToSpeckle.cs - Refactored the GetObjectName method to improve readability and maintainability. - Updated the logic to retrieve the target object's display name, cycling through parent objects if necessary. - Added a fallback case to return "Unnamed model item" if no valid display name is found. --- .../ModelItemTopLevelConverterToSpeckle.cs | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs index 0d93e6600..9bf83484a 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs @@ -81,6 +81,25 @@ private static Collection CreateNonGeometryObject(string name) => ["properties"] = new Dictionary() }; - private static string GetObjectName(NAV.ModelItem target) => - target.ClassDisplayName ?? target.FindFirstObjectAncestor()?.ClassDisplayName ?? "Unnamed model"; + private static string GetObjectName(NAV.ModelItem target) + { + var targetName = target.DisplayName; + + var firstObjectAncestor = target.FindFirstObjectAncestor(); + + // while the target node name is null keep cycling through parent objects until displayname is not null or empty OR object is firstObjectAncestor + + while (string.IsNullOrEmpty(targetName) && target != firstObjectAncestor) + { + target = target.Parent; + targetName = target.DisplayName; + } + + if (string.IsNullOrEmpty(targetName)) + { + targetName = "Unnamed model item"; + } + + return targetName; + } } From 14c85a99d95233112197daf6a7ad164e6e75a32e Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 15:53:09 +0000 Subject: [PATCH 132/173] Whitespace in property name conversion to _ in PropertyHelpers.cs The code change fixes a bug in the `PropertyHelpers.cs` file where property names were not being converted correctly. The regular expression used to replace characters now includes whitespace characters as well. This ensures that all invalid characters are replaced with underscores, allowing for proper conversion of property names. --- .../Helpers/PropertyHelpers.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs index fdc42176e..a9e771d64 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PropertyHelpers.cs @@ -99,7 +99,7 @@ internal static string SanitizePropertyName(string name) => name == "Item" // Item is a reserved term for Indexed Properties: https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/indexers/using-indexers ? "Item" - : Regex.Replace(name, @"[\.\/]", "_"); + : Regex.Replace(name, @"[\.\/\s]", "_"); internal static bool IsCategoryToBeSkipped(NAV.PropertyCategory propertyCategory) => s_excludedCategories.Contains(propertyCategory.DisplayName); From b6711b7ba7def4f20f1352475d977429feedf1a5 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Wed, 4 Dec 2024 17:33:06 +0000 Subject: [PATCH 133/173] Add GeometryNodeMerger class to handle merging of sibling geometry nodes. - Added `GeometryNodeMerger` class to handle grouping and merging of sibling geometry nodes. - Updated `NavisworksRootObjectBuilderExtensions` to use `GeometryNodeMerger` for grouping and merging. - Updated `NavisworksRootObjectBuilder` to use `ClassPropertiesExtractor` and `PropertySetsExtractor`. - Refactored code in `NavisworksRootObjectBuilder.Build()` method to improve readability and maintainability. --- .../NavisworksConnectorServiceRegistration.cs | 1 + .../Extensions/ElementSelectionExtension.cs | 8 +- .../NavisworksRootObjectBuilderExtensions.cs | 97 +++++++++++++++++++ .../Operations/Send/GeomtryNodeMerger.cs | 20 ++++ .../Send/NavisworksRootObjectBuilder.cs | 65 +++++-------- .../PathConstants.cs | 6 ++ ...ckle.Connectors.NavisworksShared.projitems | 3 + .../ClassPropertiesExtractor.cs | 3 +- .../DataExtractors/DisplayValueExtractor.cs | 2 +- .../DataExtractors/PropertySetsExtractor.cs | 2 +- .../Helpers/ElementSelectionHelper.cs | 8 +- .../PathConstants.cs | 6 ++ ...ckle.Converters.NavisworksShared.projitems | 1 + 13 files changed, 166 insertions(+), 56 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/PathConstants.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/PathConstants.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 67573b91b..e474b0c3c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -53,6 +53,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddScoped>(); serviceCollection.AddSingleton(DefaultTraversal.CreateTraversalFunc()); serviceCollection.AddSingleton(); + serviceCollection.AddScoped(); // Register Intercom/interop serviceCollection.RegisterTopLevelExceptionHandler(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs index e0d45531d..4d6b53981 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs @@ -5,8 +5,6 @@ /// public static class ElementSelectionExtension { - private const char DEFAULT_SEPARATOR = '/'; - /// /// Resolves a Navisworks to its unique index path representation. /// @@ -29,17 +27,17 @@ internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) var pathIndex = modelItemPathId.PathId == "a" ? $"{modelItemPathId.ModelIndex}" // Root-level model item - : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item + : $"{modelItemPathId.ModelIndex}{PathConstants.SEPARATOR}{modelItemPathId.PathId}"; // Nested model item return pathIndex; } internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) { - var indexPathParts = indexPath.Split(DEFAULT_SEPARATOR); + var indexPathParts = indexPath.Split(PathConstants.SEPARATOR); var modelIndex = int.Parse(indexPathParts[0]); - var pathId = string.Join(DEFAULT_SEPARATOR.ToString(), indexPathParts.Skip(1)); + var pathId = string.Join(PathConstants.SEPARATOR.ToString(), indexPathParts.Skip(1)); // assign the first part of indexPathParts to modelIndex and parse it to int, the second part to pathId string NAV.DocumentParts.ModelItemPathId modelItemPathId = new() { ModelIndex = modelIndex, PathId = pathId }; diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs new file mode 100644 index 000000000..68d7c2ca4 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs @@ -0,0 +1,97 @@ +using Speckle.Connector.Navisworks.Operations.Send; +using Speckle.Connectors.Common.Builders; +using Speckle.Connectors.Common.Conversion; +using Speckle.Connectors.Common.Operations; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.ToSpeckle; +using Speckle.Converters.Common; +using Speckle.Sdk.Models; +using Speckle.Sdk.Models.Collections; +using static Speckle.Converter.Navisworks.ToSpeckle.DisplayValueExtractor; + +namespace Speckle.Connector.Navisworks.Extensions; + +public static class NavisworksRootObjectBuilderExtensions +{ + public static Task BuildWithMergedSiblings( + IReadOnlyList navisworksModelItems, + IProgress onOperationProgressed, + IRootToSpeckleConverter rootToSpeckleConverter, + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor, + IConverterSettingsStore settingsStore, + CancellationToken cancellationToken = default + ) + { + var rootObjectCollection = new Collection + { + name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", + ["units"] = settingsStore.Current.Derived.SpeckleUnits + }; + + var merger = new GeometryNodeMerger(); + var groupedNodes = merger.GroupSiblingGeometryNodes(navisworksModelItems); + + List results = new(); + int processedCount = 0; + int totalItems = groupedNodes.Count + (navisworksModelItems.Count - groupedNodes.Sum(g => g.Value.Count)); + + // Handle merged groups + foreach (var group in groupedNodes) + { + cancellationToken.ThrowIfCancellationRequested(); + + var parentItem = group.Value[0].Parent; + if (parentItem == null) + { + continue; + } + + var displayValues = group.Value.SelectMany(GetDisplayValue).ToList(); + + var mergedBase = new Base { ["displayValue"] = displayValues, applicationId = group.Key }; + + var classProperties = classPropertiesExtractor.GetClassProperties(parentItem); + if (classProperties != null) + { + foreach (var kvp in classProperties) + { + mergedBase[kvp.Key] = kvp.Value; + } + } + + var propertySets = propertySetsExtractor.GetPropertySets(parentItem); + if (propertySets != null) + { + mergedBase["properties"] = propertySets; + } + + rootObjectCollection.elements.Add(mergedBase); + results.Add(new SendConversionResult(Status.SUCCESS, group.Key, "MergedGeometry", mergedBase)); + + ReportProgress(ref processedCount, totalItems, onOperationProgressed); + } + + // Handle ungrouped nodes + HashSet groupedNodeSet = [.. groupedNodes.SelectMany(g => g.Value)]; + foreach (var node in navisworksModelItems.Where(n => !groupedNodeSet.Contains(n))) + { + Base converted = rootToSpeckleConverter.Convert(node); + var applicationId = ElementSelectionExtension.ResolveModelItemToIndexPath(node); + + var result = new SendConversionResult(Status.SUCCESS, applicationId, node.GetType().Name, converted); + + rootObjectCollection.elements.Add(converted); + results.Add(result); + ReportProgress(ref processedCount, totalItems, onOperationProgressed); + } + + return Task.FromResult(new RootObjectBuilderResult(rootObjectCollection, results)); + } + + private static void ReportProgress(ref int count, int total, IProgress? progress) + { + count++; + progress?.Report(new CardProgress("Converting", (double)count / total)); + } +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs new file mode 100644 index 000000000..5bd5bb4e3 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs @@ -0,0 +1,20 @@ +using Speckle.Connector.Navisworks.Extensions; + +namespace Speckle.Connector.Navisworks.Operations.Send; + +/// +/// Groups geometry nodes by their parent paths for merging displayValues +/// +public class GeometryNodeMerger +{ + public Dictionary> GroupSiblingGeometryNodes(IReadOnlyList nodes) => + nodes + .GroupBy(node => + { + var path = ElementSelectionExtension.ResolveModelItemToIndexPath(node); + var lastSeparatorIndex = path.LastIndexOf(PathConstants.SEPARATOR); + return lastSeparatorIndex == -1 ? path : path[..lastSeparatorIndex]; + }) + .Where(group => group.Count() > 1) // Only group multiples + .ToDictionary(group => group.Key, group => group.ToList()); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index e2bff63fe..e5f9c57d9 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -4,12 +4,14 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.ToSpeckle; using Speckle.Converters.Common; using Speckle.Sdk; using Speckle.Sdk.Logging; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; +using static Speckle.Connector.Navisworks.Extensions.NavisworksRootObjectBuilderExtensions; namespace Speckle.Connector.Navisworks.Operations.Send; @@ -20,13 +22,17 @@ public class NavisworksRootObjectBuilder : IRootObjectBuilder private readonly IConverterSettingsStore _converterSettings; private readonly ILogger _logger; private readonly ISdkActivityFactory _activityFactory; + private readonly ClassPropertiesExtractor _classPropertiesExtractor; + private readonly PropertySetsExtractor _propertySetsExtractor; public NavisworksRootObjectBuilder( IRootToSpeckleConverter rootToSpeckleConverter, ISendConversionCache sendConversionCache, IConverterSettingsStore converterSettings, ILogger logger, - ISdkActivityFactory activityFactory + ISdkActivityFactory activityFactory, + ClassPropertiesExtractor classPropertiesExtractor, + PropertySetsExtractor propertySetsExtractor ) { _rootToSpeckleConverter = rootToSpeckleConverter; @@ -34,8 +40,12 @@ ISdkActivityFactory activityFactory _converterSettings = converterSettings; _logger = logger; _activityFactory = activityFactory; + _classPropertiesExtractor = classPropertiesExtractor; + _propertySetsExtractor = propertySetsExtractor; } + internal NavisworksConversionSettings GetCurrentSettings() => _converterSettings.Current; + public async Task Build( IReadOnlyList navisworksModelItems, SendInfo sendInfo, @@ -45,53 +55,24 @@ public async Task Build( { using var activity = _activityFactory.Start("Build"); - // Initialize root collection - var name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model"; - - var rootObjectCollection = new Collection - { - name = name, - ["units"] = _converterSettings.Current.Derived.SpeckleUnits - }; - - if (!navisworksModelItems.Any() || navisworksModelItems == null) + if (!navisworksModelItems.Any()) { throw new SpeckleException("No objects to convert"); } - List results = new(navisworksModelItems.Count); - int count = 0; - - using (var _ = _activityFactory.Start("Convert all")) - { - foreach (var navisworksItem in navisworksModelItems) - { - using var _2 = _activityFactory.Start("Convert"); - cancellationToken.ThrowIfCancellationRequested(); - - if (sendInfo == null) - { - continue; - } - - var result = ConvertNavisworksItem(navisworksItem, rootObjectCollection, sendInfo.ProjectId); - results.Add(result); - - ++count; - onOperationProgressed?.Report(new CardProgress("Converting", (double)count / navisworksModelItems.Count)); - } - } - - if (results.All(x => x.Status == Status.ERROR)) - { - throw new SpeckleException("Failed to convert all objects."); - } - - await Task.Yield(); - return new RootObjectBuilderResult(rootObjectCollection, results); + return await BuildWithMergedSiblings( + navisworksModelItems, + onOperationProgressed, + _rootToSpeckleConverter, + _classPropertiesExtractor, + _propertySetsExtractor, + _converterSettings, + cancellationToken + ) + .ConfigureAwait(false); } - private SendConversionResult ConvertNavisworksItem( + internal SendConversionResult ConvertNavisworksItem( NAV.ModelItem navisworksItem, Collection collectionHost, string projectId diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/PathConstants.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/PathConstants.cs new file mode 100644 index 000000000..dae9e4253 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/PathConstants.cs @@ -0,0 +1,6 @@ +namespace Speckle.Connector.Navisworks; + +public static class PathConstants +{ + public const char SEPARATOR = '/'; +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 1963cb6d7..af3637076 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -14,10 +14,12 @@ + + @@ -25,6 +27,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index 70e6ed5a4..293853f43 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -4,8 +4,7 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; public class ClassPropertiesExtractor { - internal Dictionary? GetClassProperties(NAV.ModelItem modelItem) => - ExtractClassProperties(modelItem); + public Dictionary? GetClassProperties(NAV.ModelItem modelItem) => ExtractClassProperties(modelItem); /// /// Extracts property sets from a NAV.ModelItem and adds them to a dictionary, diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs index 6ec7ef03e..ec6e73e2b 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs @@ -18,5 +18,5 @@ ILogger logger _logger = logger; } - internal static List GetDisplayValue(NAV.ModelItem _) => []; + public static List GetDisplayValue(NAV.ModelItem _) => []; } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs index ea7c8bc8f..31836c68c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -6,7 +6,7 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; public class PropertySetsExtractor(IConverterSettingsStore settingsStore) { - internal Dictionary? GetPropertySets(NAV.ModelItem modelItem) + public Dictionary? GetPropertySets(NAV.ModelItem modelItem) { if (settingsStore.Current.User.ExcludeProperties) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs index c2a3ce9f6..a26cfe082 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs @@ -5,8 +5,6 @@ /// public static class ElementSelectionHelper { - private const char DEFAULT_SEPARATOR = '/'; - /// /// Resolves a Navisworks to its unique index path representation. /// @@ -29,17 +27,17 @@ internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) var pathIndex = modelItemPathId.PathId == "a" ? $"{modelItemPathId.ModelIndex}" // Root-level model item - : $"{modelItemPathId.ModelIndex}{DEFAULT_SEPARATOR}{modelItemPathId.PathId}"; // Nested model item + : $"{modelItemPathId.ModelIndex}{PathConstants.SEPARATOR}{modelItemPathId.PathId}"; // Nested model item return pathIndex; } internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) { - var indexPathParts = indexPath.Split(DEFAULT_SEPARATOR); + var indexPathParts = indexPath.Split(PathConstants.SEPARATOR); var modelIndex = int.Parse(indexPathParts[0]); - var pathId = string.Join(DEFAULT_SEPARATOR.ToString(), indexPathParts.Skip(1)); + var pathId = string.Join(PathConstants.SEPARATOR.ToString(), indexPathParts.Skip(1)); // assign the first part of indexPathParts to modelIndex and parse it to int, the second part to pathId string NAV.DocumentParts.ModelItemPathId modelItemPathId = new() { ModelIndex = modelIndex, PathId = pathId }; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/PathConstants.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/PathConstants.cs new file mode 100644 index 000000000..8d8c8ea1c --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/PathConstants.cs @@ -0,0 +1,6 @@ +namespace Speckle.Converter.Navisworks; + +public static class PathConstants +{ + public const char SEPARATOR = '/'; +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 6ecd07f93..2c360419c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -27,6 +27,7 @@ + From d59f95f3c2056400284ee37c29b77fe015d45ef8 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Thu, 5 Dec 2024 10:33:21 +0000 Subject: [PATCH 134/173] modify GeometryNodeMerger.cs and NavisworksRootObjectBuilder.cs - Modified GeometryNodeMerger.cs to only group anonymous geometry nodes - Modified NavisworksRootObjectBuilder.cs to refactor the Build method, handle grouped nodes first, and set the final elements list --- .../NavisworksRootObjectBuilderExtensions.cs | 97 -------------- .../Operations/Send/GeomtryNodeMerger.cs | 1 + .../Send/NavisworksRootObjectBuilder.cs | 119 +++++++++++++----- ...ckle.Connectors.NavisworksShared.projitems | 1 - .../DataExtractors/DisplayValueExtractor.cs | 8 +- 5 files changed, 97 insertions(+), 129 deletions(-) delete mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs deleted file mode 100644 index 68d7c2ca4..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/NavisworksRootObjectBuilderExtensions.cs +++ /dev/null @@ -1,97 +0,0 @@ -using Speckle.Connector.Navisworks.Operations.Send; -using Speckle.Connectors.Common.Builders; -using Speckle.Connectors.Common.Conversion; -using Speckle.Connectors.Common.Operations; -using Speckle.Converter.Navisworks.Settings; -using Speckle.Converter.Navisworks.ToSpeckle; -using Speckle.Converters.Common; -using Speckle.Sdk.Models; -using Speckle.Sdk.Models.Collections; -using static Speckle.Converter.Navisworks.ToSpeckle.DisplayValueExtractor; - -namespace Speckle.Connector.Navisworks.Extensions; - -public static class NavisworksRootObjectBuilderExtensions -{ - public static Task BuildWithMergedSiblings( - IReadOnlyList navisworksModelItems, - IProgress onOperationProgressed, - IRootToSpeckleConverter rootToSpeckleConverter, - ClassPropertiesExtractor classPropertiesExtractor, - PropertySetsExtractor propertySetsExtractor, - IConverterSettingsStore settingsStore, - CancellationToken cancellationToken = default - ) - { - var rootObjectCollection = new Collection - { - name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", - ["units"] = settingsStore.Current.Derived.SpeckleUnits - }; - - var merger = new GeometryNodeMerger(); - var groupedNodes = merger.GroupSiblingGeometryNodes(navisworksModelItems); - - List results = new(); - int processedCount = 0; - int totalItems = groupedNodes.Count + (navisworksModelItems.Count - groupedNodes.Sum(g => g.Value.Count)); - - // Handle merged groups - foreach (var group in groupedNodes) - { - cancellationToken.ThrowIfCancellationRequested(); - - var parentItem = group.Value[0].Parent; - if (parentItem == null) - { - continue; - } - - var displayValues = group.Value.SelectMany(GetDisplayValue).ToList(); - - var mergedBase = new Base { ["displayValue"] = displayValues, applicationId = group.Key }; - - var classProperties = classPropertiesExtractor.GetClassProperties(parentItem); - if (classProperties != null) - { - foreach (var kvp in classProperties) - { - mergedBase[kvp.Key] = kvp.Value; - } - } - - var propertySets = propertySetsExtractor.GetPropertySets(parentItem); - if (propertySets != null) - { - mergedBase["properties"] = propertySets; - } - - rootObjectCollection.elements.Add(mergedBase); - results.Add(new SendConversionResult(Status.SUCCESS, group.Key, "MergedGeometry", mergedBase)); - - ReportProgress(ref processedCount, totalItems, onOperationProgressed); - } - - // Handle ungrouped nodes - HashSet groupedNodeSet = [.. groupedNodes.SelectMany(g => g.Value)]; - foreach (var node in navisworksModelItems.Where(n => !groupedNodeSet.Contains(n))) - { - Base converted = rootToSpeckleConverter.Convert(node); - var applicationId = ElementSelectionExtension.ResolveModelItemToIndexPath(node); - - var result = new SendConversionResult(Status.SUCCESS, applicationId, node.GetType().Name, converted); - - rootObjectCollection.elements.Add(converted); - results.Add(result); - ReportProgress(ref processedCount, totalItems, onOperationProgressed); - } - - return Task.FromResult(new RootObjectBuilderResult(rootObjectCollection, results)); - } - - private static void ReportProgress(ref int count, int total, IProgress? progress) - { - count++; - progress?.Report(new CardProgress("Converting", (double)count / total)); - } -} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs index 5bd5bb4e3..01f53ac88 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs @@ -9,6 +9,7 @@ public class GeometryNodeMerger { public Dictionary> GroupSiblingGeometryNodes(IReadOnlyList nodes) => nodes + .Where(node => node.HasGeometry && string.IsNullOrEmpty(node.DisplayName)) // Only anonymous geometry nodes .GroupBy(node => { var path = ElementSelectionExtension.ResolveModelItemToIndexPath(node); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index e5f9c57d9..53a09213d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -4,14 +4,12 @@ using Speckle.Connectors.Common.Conversion; using Speckle.Connectors.Common.Operations; using Speckle.Converter.Navisworks.Settings; -using Speckle.Converter.Navisworks.ToSpeckle; using Speckle.Converters.Common; using Speckle.Sdk; using Speckle.Sdk.Logging; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; -using static Speckle.Connector.Navisworks.Extensions.NavisworksRootObjectBuilderExtensions; namespace Speckle.Connector.Navisworks.Operations.Send; @@ -22,17 +20,13 @@ public class NavisworksRootObjectBuilder : IRootObjectBuilder private readonly IConverterSettingsStore _converterSettings; private readonly ILogger _logger; private readonly ISdkActivityFactory _activityFactory; - private readonly ClassPropertiesExtractor _classPropertiesExtractor; - private readonly PropertySetsExtractor _propertySetsExtractor; public NavisworksRootObjectBuilder( IRootToSpeckleConverter rootToSpeckleConverter, ISendConversionCache sendConversionCache, IConverterSettingsStore converterSettings, ILogger logger, - ISdkActivityFactory activityFactory, - ClassPropertiesExtractor classPropertiesExtractor, - PropertySetsExtractor propertySetsExtractor + ISdkActivityFactory activityFactory ) { _rootToSpeckleConverter = rootToSpeckleConverter; @@ -40,13 +34,11 @@ PropertySetsExtractor propertySetsExtractor _converterSettings = converterSettings; _logger = logger; _activityFactory = activityFactory; - _classPropertiesExtractor = classPropertiesExtractor; - _propertySetsExtractor = propertySetsExtractor; } internal NavisworksConversionSettings GetCurrentSettings() => _converterSettings.Current; - public async Task Build( + public Task Build( IReadOnlyList navisworksModelItems, SendInfo sendInfo, IProgress onOperationProgressed, @@ -60,22 +52,92 @@ public async Task Build( throw new SpeckleException("No objects to convert"); } - return await BuildWithMergedSiblings( - navisworksModelItems, - onOperationProgressed, - _rootToSpeckleConverter, - _classPropertiesExtractor, - _propertySetsExtractor, - _converterSettings, - cancellationToken - ) - .ConfigureAwait(false); + // Create root collection + var rootObjectCollection = new Collection + { + name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", + ["units"] = _converterSettings.Current.Derived.SpeckleUnits + }; + + var convertedBases = new Dictionary(); + + // First convert everything and track results + var results = new List(); + int processedCount = 0; + int totalCount = navisworksModelItems.Count; + + foreach (var item in navisworksModelItems) + { + cancellationToken.ThrowIfCancellationRequested(); + var converted = ConvertNavisworksItem(item, convertedBases, sendInfo); + results.Add(converted); + processedCount++; + onOperationProgressed.Report(new CardProgress("Converting", (double)processedCount / totalCount)); + } + + // Create final elements list + var finalElements = new List(); + + // Get groups of siblings + var merger = new GeometryNodeMerger(); + var groupedNodes = merger.GroupSiblingGeometryNodes(navisworksModelItems); + + // Handle grouped nodes first + foreach (var group in groupedNodes) + { + var siblingBases = convertedBases.Where(r => r.Key.StartsWith(group.Key)).Select(r => r.Value).ToList(); + + if (siblingBases.Count == 0) + { + continue; + } + + List displayValues = []; + + foreach (var siblingBase in siblingBases.OfType()) + { + var dv = siblingBase["displayValue"]; + + Console.WriteLine(dv); + + if (siblingBase["displayValue"] is not List displayValue) + { + continue; + } + + displayValues.AddRange(displayValue); + } + + var parentBase = new Base + { + applicationId = group.Key, + ["properties"] = siblingBases.First()?["properties"], + ["displayValue"] = displayValues + }; + finalElements.Add(parentBase); + } + + // Handle non-grouped nodes + var groupedPaths = groupedNodes.SelectMany(g => g.Value).Select(ResolveModelItemToIndexPath).ToHashSet(); + + foreach (var result in results.Where(result => !groupedPaths.Contains(result.SourceId))) + { + if (_sendConversionCache.TryGetValue(result.SourceId, sendInfo.ProjectId, out ObjectReference? value)) + { + finalElements.Add(value); + } + } + + // Set the final elements list + rootObjectCollection.elements = finalElements; + + return Task.FromResult(new RootObjectBuilderResult(rootObjectCollection, results)); } internal SendConversionResult ConvertNavisworksItem( NAV.ModelItem navisworksItem, - Collection collectionHost, - string projectId + Dictionary convertedBases, + SendInfo sendInfo ) { string applicationId = ResolveModelItemToIndexPath(navisworksItem); @@ -83,14 +145,11 @@ string projectId try { - Base converted = - // Check cache first - _sendConversionCache.TryGetValue(projectId, applicationId, out ObjectReference? value) - ? value - // Convert geometry - : _rootToSpeckleConverter.Convert(navisworksItem); - - collectionHost.elements.Add(converted); + Base converted = _sendConversionCache.TryGetValue(applicationId, sendInfo.ProjectId, out ObjectReference? cached) + ? cached + : _rootToSpeckleConverter.Convert(navisworksItem); + + convertedBases[applicationId] = converted; return new SendConversionResult(Status.SUCCESS, applicationId, sourceType, converted); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index af3637076..55ffdf190 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -14,7 +14,6 @@ - diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs index ec6e73e2b..1a509a307 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs @@ -1,6 +1,7 @@ using Microsoft.Extensions.Logging; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; +using Speckle.Objects.Geometry; namespace Speckle.Converter.Navisworks.ToSpeckle; @@ -18,5 +19,10 @@ ILogger logger _logger = logger; } - public static List GetDisplayValue(NAV.ModelItem _) => []; + public static List GetDisplayValue(NAV.ModelItem _) + { + var pt = new Point(0, 0, 0, "m"); + + return [pt]; + } } From 7927d5a017d1059db5bc755e4cdeda1b26f6ebfb Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 5 Dec 2024 10:53:00 +0000 Subject: [PATCH 135/173] add some non async paths for progress --- .../Bindings/OperationProgressManager.cs | 27 +++++++++---------- .../Bridge/BrowserBridge.cs | 15 +++++++++++ .../Bridge/IBrowserBridge.cs | 2 ++ .../Bridge/TopLevelExceptionHandler.cs | 15 ++++++----- 4 files changed, 38 insertions(+), 21 deletions(-) diff --git a/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs b/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs index 992aaf669..f53c9d005 100644 --- a/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs +++ b/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs @@ -30,20 +30,19 @@ CancellationToken cancellationToken ) { var progress = new NonUIThreadProgress(args => - bridge.TopLevelExceptionHandler.FireAndForget( - () => - SetModelProgress( - bridge, - modelCardId, - new ModelCardProgress(modelCardId, args.Status, args.Progress), - cancellationToken - ) - ) + { + SetModelProgress( + bridge, + modelCardId, + new ModelCardProgress(modelCardId, args.Status, args.Progress), + cancellationToken + ); + } ); return progress; } - public async Task SetModelProgress( + public void SetModelProgress( IBrowserBridge bridge, string modelCardId, ModelCardProgress progress, @@ -60,7 +59,7 @@ CancellationToken cancellationToken t.Item1 = DateTime.Now; s_lastProgressValues[modelCardId] = (t.Item1, progress.Status); // Since it's the first time we get a call for this model card, we should send it out - await SendProgress(bridge, modelCardId, progress).ConfigureAwait(false); + SendProgress(bridge, modelCardId, progress); return; } @@ -72,9 +71,9 @@ CancellationToken cancellationToken return; } s_lastProgressValues[modelCardId] = (currentTime, progress.Status); - await SendProgress(bridge, modelCardId, progress).ConfigureAwait(false); + SendProgress(bridge, modelCardId, progress); } - private static async Task SendProgress(IBrowserBridge bridge, string modelCardId, ModelCardProgress progress) => - await bridge.Send(SET_MODEL_PROGRESS_UI_COMMAND_NAME, new { modelCardId, progress }).ConfigureAwait(false); + private static void SendProgress(IBrowserBridge bridge, string modelCardId, ModelCardProgress progress) => + bridge.Send2(SET_MODEL_PROGRESS_UI_COMMAND_NAME, new { modelCardId, progress }); } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 1b2fab072..b99809480 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -285,4 +285,19 @@ public Task Send(string eventName, T data, CancellationToken cancellationToke _browserScriptExecutor.ExecuteScript(script); return Task.CompletedTask; } + + public void Send2(string eventName, T data) + where T : class + { + if (_binding is null) + { + throw new InvalidOperationException("Bridge was not initialized with a binding"); + } + + string payload = _jsonSerializer.Serialize(data); + string requestId = $"{Guid.NewGuid()}_{eventName}"; + _resultsStore[requestId] = payload; + var script = $"{FrontendBoundName}.emitResponseReady('{eventName}', '{requestId}')"; + _browserScriptExecutor.ExecuteScript(script); + } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs index f968bf3ef..65ec766df 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/IBrowserBridge.cs @@ -40,5 +40,7 @@ public interface IBrowserBridge public Task Send(string eventName, T data, CancellationToken cancellationToken = default) where T : class; + public void Send2(string eventName, T data) + where T : class; public ITopLevelExceptionHandler TopLevelExceptionHandler { get; } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs index 6420c4e8a..7c33fd5bd 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Logging; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.InterfaceGenerator; using Speckle.Sdk; @@ -64,7 +65,7 @@ public async Task CatchUnhandledAsync(Func function) { try { - await function().ConfigureAwait(false); + await function().BackToCurrent(); return new Result(); } catch (Exception ex) when (!ex.IsFatal()) @@ -76,7 +77,7 @@ await SetGlobalNotification( ex.ToFormattedString(), false ) - .ConfigureAwait(false); + .BackToCurrent(); return new(ex); } } @@ -94,11 +95,11 @@ public async Task> CatchUnhandledAsync(Func> function) { try { - return new(await function.Invoke().ConfigureAwait(false)); + return new(await function.Invoke().BackToCurrent()); } catch (Exception ex) when (!ex.IsFatal()) { - await HandleException(ex).ConfigureAwait(false); + await HandleException(ex).BackToCurrent(); return new(ex); } } @@ -121,7 +122,7 @@ await SetGlobalNotification( ex.ToFormattedString(), false ) - .ConfigureAwait(false); + .BackToCurrent(); } catch (Exception toastEx) { @@ -145,7 +146,7 @@ await SetGlobalNotification( /// In cases where you can use keyword, you should prefer using /// /// - public async void FireAndForget(Func function) => await CatchUnhandledAsync(function).ConfigureAwait(false); + public async void FireAndForget(Func function) => await CatchUnhandledAsync(function).BackToCurrent(); private async Task SetGlobalNotification(ToastNotificationType type, string title, string message, bool autoClose) => await Parent @@ -159,5 +160,5 @@ await Parent autoClose } ) - .ConfigureAwait(false); + .BackToCurrent(); } From 5548ac86770c496fc1f33070c81ac55b139c5f30 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 5 Dec 2024 11:02:29 +0000 Subject: [PATCH 136/173] format --- .../Bindings/OperationProgressManager.cs | 21 +++++++++---------- .../Bridge/BrowserBridge.cs | 2 +- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs b/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs index f53c9d005..3724eed44 100644 --- a/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs +++ b/DUI3/Speckle.Connectors.DUI/Bindings/OperationProgressManager.cs @@ -30,15 +30,14 @@ CancellationToken cancellationToken ) { var progress = new NonUIThreadProgress(args => - { - SetModelProgress( - bridge, - modelCardId, - new ModelCardProgress(modelCardId, args.Status, args.Progress), - cancellationToken - ); - } - ); + { + SetModelProgress( + bridge, + modelCardId, + new ModelCardProgress(modelCardId, args.Status, args.Progress), + cancellationToken + ); + }); return progress; } @@ -59,7 +58,7 @@ CancellationToken cancellationToken t.Item1 = DateTime.Now; s_lastProgressValues[modelCardId] = (t.Item1, progress.Status); // Since it's the first time we get a call for this model card, we should send it out - SendProgress(bridge, modelCardId, progress); + SendProgress(bridge, modelCardId, progress); return; } @@ -71,7 +70,7 @@ CancellationToken cancellationToken return; } s_lastProgressValues[modelCardId] = (currentTime, progress.Status); - SendProgress(bridge, modelCardId, progress); + SendProgress(bridge, modelCardId, progress); } private static void SendProgress(IBrowserBridge bridge, string modelCardId, ModelCardProgress progress) => diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index b99809480..527dc04a9 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -285,7 +285,7 @@ public Task Send(string eventName, T data, CancellationToken cancellationToke _browserScriptExecutor.ExecuteScript(script); return Task.CompletedTask; } - + public void Send2(string eventName, T data) where T : class { From 10d9f3b03313d22f8e1dc646ae4ce0b3fc987a0e Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 5 Dec 2024 12:16:49 +0000 Subject: [PATCH 137/173] remove needless selection --- .../Bindings/TeklaSelectionBinding.cs | 3 --- 1 file changed, 3 deletions(-) diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSelectionBinding.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSelectionBinding.cs index 4c26ab1d1..5a416e14d 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSelectionBinding.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSelectionBinding.cs @@ -29,8 +29,6 @@ Tekla.Structures.Model.UI.ModelObjectSelector selector _events.SelectionChange += Events_SelectionChangeEvent; _events.Register(); - - UpdateSelection(); } private void Events_SelectionChangeEvent() @@ -38,7 +36,6 @@ private void Events_SelectionChangeEvent() lock (_selectionEventHandlerLock) { _idleManager.SubscribeToIdle(nameof(TeklaSelectionBinding), UpdateSelection); - UpdateSelection(); } } From b79f34a4e55d12df46d41ab42e8abd97db260584 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Thu, 5 Dec 2024 18:40:06 +0000 Subject: [PATCH 138/173] Initialize root collection, convert and store model items, process and merge grouped nodes, add remaining non-grouped nodes, finalize and return. --- .../Send/NavisworksRootObjectBuilder.cs | 56 ++++++++----------- 1 file changed, 23 insertions(+), 33 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index 53a09213d..8fbd990b4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -47,21 +47,21 @@ public Task Build( { using var activity = _activityFactory.Start("Build"); + // 1. Validate input if (!navisworksModelItems.Any()) { throw new SpeckleException("No objects to convert"); } - // Create root collection + // 2. Initialize root collection var rootObjectCollection = new Collection { name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", ["units"] = _converterSettings.Current.Derived.SpeckleUnits }; + // 3. Convert all model items and store results var convertedBases = new Dictionary(); - - // First convert everything and track results var results = new List(); int processedCount = 0; int totalCount = navisworksModelItems.Count; @@ -75,62 +75,52 @@ public Task Build( onOperationProgressed.Report(new CardProgress("Converting", (double)processedCount / totalCount)); } - // Create final elements list + // 4. Initialize final elements list and group nodes var finalElements = new List(); - - // Get groups of siblings var merger = new GeometryNodeMerger(); var groupedNodes = merger.GroupSiblingGeometryNodes(navisworksModelItems); + var processedPaths = new HashSet(); - // Handle grouped nodes first + // 5. Process and merge grouped nodes foreach (var group in groupedNodes) { - var siblingBases = convertedBases.Where(r => r.Key.StartsWith(group.Key)).Select(r => r.Value).ToList(); - - if (siblingBases.Count == 0) - { - continue; - } - - List displayValues = []; - - foreach (var siblingBase in siblingBases.OfType()) + var siblingBases = new List(); + foreach (var itemPath in group.Value.Select(ResolveModelItemToIndexPath)) { - var dv = siblingBase["displayValue"]; - - Console.WriteLine(dv); + processedPaths.Add(itemPath); - if (siblingBase["displayValue"] is not List displayValue) + if (convertedBases.TryGetValue(itemPath, out var convertedBase) && convertedBase != null) { - continue; + siblingBases.Add(convertedBase); } + } - displayValues.AddRange(displayValue); + if (siblingBases.Count == 0) + { + continue; } var parentBase = new Base { applicationId = group.Key, - ["properties"] = siblingBases.First()?["properties"], - ["displayValue"] = displayValues + ["properties"] = siblingBases.First()["properties"], + ["name"] = siblingBases.First()["name"], + ["displayValue"] = siblingBases.SelectMany(b => b["displayValue"] as List ?? []).ToList() }; finalElements.Add(parentBase); } - // Handle non-grouped nodes - var groupedPaths = groupedNodes.SelectMany(g => g.Value).Select(ResolveModelItemToIndexPath).ToHashSet(); - - foreach (var result in results.Where(result => !groupedPaths.Contains(result.SourceId))) + // 6. Add remaining non-grouped nodes + foreach (var result in results.Where(result => !processedPaths.Contains(result.SourceId))) { - if (_sendConversionCache.TryGetValue(result.SourceId, sendInfo.ProjectId, out ObjectReference? value)) + if (convertedBases.TryGetValue(result.SourceId, out var convertedBase) && convertedBase != null) { - finalElements.Add(value); + finalElements.Add(convertedBase); } } - // Set the final elements list + // 7. Finalize and return rootObjectCollection.elements = finalElements; - return Task.FromResult(new RootObjectBuilderResult(rootObjectCollection, results)); } From 0c6c88414443f0781d0f087453adf83c044af713 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Thu, 5 Dec 2024 18:40:27 +0000 Subject: [PATCH 139/173] Add NavisworksMaterialUnpacker class for unpacking render materials This commit adds a new file, NavisworksMaterialUnpacker.cs, which contains the implementation of the NavisworksMaterialUnpacker class. This class is responsible for unpacking render materials from Navisworks objects. The NavisworksMaterialUnpacker class includes methods such as UnpackRenderMaterial and ConvertRenderColorAndTransparencyToSpeckle, which handle the extraction and conversion of render material properties. Additionally, the project file Speckle.Connectors.NavisworksShared.projitems has been updated to include the newly added NavisworksMaterialUnpacker.cs file. --- .../HostApp/NavisworksMaterialUnpacker.cs | 170 ++++++++++++++++++ ...ckle.Connectors.NavisworksShared.projitems | 1 + 2 files changed, 171 insertions(+) create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs new file mode 100644 index 000000000..2185586ee --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs @@ -0,0 +1,170 @@ +using Microsoft.Extensions.Logging; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Converters.Common; +using Speckle.Objects.Other; +using Speckle.Sdk; +using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; + +namespace Speckle.Connector.Navisworks.HostApp; + +public class NavisworksMaterialUnpacker +{ + private readonly ILogger _logger; + private readonly IConverterSettingsStore _converterSettings; + + public NavisworksMaterialUnpacker( + ILogger logger, + IConverterSettingsStore converterSettings + ) + { + _logger = logger; + _converterSettings = converterSettings; + } + + // Helper function to select a property based on the representation mode + // Selector method for individual properties + private static T Select(RepresentationMode mode, T active, T permanent, T original, T defaultValue) => + mode switch + { + RepresentationMode.Active => active, + RepresentationMode.Permanent => permanent, + RepresentationMode.Original => original, + _ => defaultValue, + }; + + public List UnpackRenderMaterial(List navisworksObjects) + { + if (navisworksObjects == null) + { + throw new ArgumentNullException(nameof(navisworksObjects)); + } + + Dictionary renderMaterialProxies = []; + + foreach (NAV.ModelItem navisworksObject in navisworksObjects) + { + try + { + if (!navisworksObject.HasGeometry) + { + continue; + } + + var navisworksObjectId = ResolveModelItemToIndexPath(navisworksObject); + + var geometry = navisworksObject.Geometry; + + // Extract the current visual representation mode + var mode = _converterSettings.Current.User.VisualRepresentationMode; + + // Assign properties using the selector + var renderColor = Select( + mode, + geometry.ActiveColor, + geometry.PermanentColor, + geometry.OriginalColor, + new NAV.Color(1.0, 1.0, 1.0) + ); + + var renderTransparency = Select( + mode, + geometry.ActiveTransparency, + geometry.PermanentTransparency, + geometry.OriginalTransparency, + 0.0 + ); + + var renderMaterialId = Select( + mode, + geometry.ActiveColor.GetHashCode(), + geometry.PermanentColor.GetHashCode(), + geometry.OriginalColor.GetHashCode(), + 0 + ); + + var materialName = $"NavisworksMaterial_{Math.Abs(NavisworksColorToColor(renderColor).ToArgb())}"; + + // Alternatively the material could be stored on the Item property + var itemCategory = navisworksObject.PropertyCategories.FindCategoryByDisplayName("Item"); + if (itemCategory != null) + { + var itemProperties = itemCategory.Properties; + var itemMaterial = itemProperties.FindPropertyByDisplayName("Material"); + if (itemMaterial != null && !string.IsNullOrEmpty(itemMaterial.DisplayName)) + { + materialName = itemMaterial.Value.ToDisplayString(); + } + } + + // Or in a Material property + var materialPropertyCategory = navisworksObject.PropertyCategories.FindCategoryByDisplayName("Material"); + if (materialPropertyCategory != null) + { + var material = materialPropertyCategory.Properties; + var name = material.FindPropertyByDisplayName("Name"); + if (name != null && !string.IsNullOrEmpty(name.DisplayName)) + { + materialName = name.Value.ToDisplayString(); + } + } + + if (renderMaterialProxies.TryGetValue(renderMaterialId.ToString(), out RenderMaterialProxy? value)) + { + value.objects.Add(navisworksObjectId); + } + else + { + renderMaterialProxies[renderMaterialId.ToString()] = new RenderMaterialProxy() + { + // For now, we will just use the color and transparency to create a new material + // There is more information that is in the Material object that could be used to create a more accurate material + // But is constant regardless of the user settings + value = ConvertRenderColorAndTransparencyToSpeckle( + materialName, + renderTransparency, + renderColor, + renderMaterialId + ), + objects = [navisworksObjectId] + }; + } + } + catch (Exception ex) when (!ex.IsFatal()) + { + _logger.LogError(ex, "Failed to unpack render material from Navisworks object"); + } + } + + return renderMaterialProxies.Values.ToList(); + } + + private RenderMaterial ConvertRenderColorAndTransparencyToSpeckle( + string name, + double transparency, + NAV.Color navisworksColor, + int applicationId + ) + { + var color = NavisworksColorToColor(navisworksColor); + + var speckleRenderMaterial = new RenderMaterial() + { + name = !string.IsNullOrEmpty(name) ? name : $"NavisworksMaterial_{Math.Abs(color.ToArgb())}", + opacity = 1 - transparency, + metalness = 0, + roughness = 1, + diffuse = color.ToArgb(), + emissive = 0, + applicationId = applicationId.ToString() + }; + + return speckleRenderMaterial; + } + + private static System.Drawing.Color NavisworksColorToColor(NAV.Color color) => + System.Drawing.Color.FromArgb( + Convert.ToInt32(color.R * 255), + Convert.ToInt32(color.G * 255), + Convert.ToInt32(color.B * 255) + ); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 55ffdf190..066db1a9d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -18,6 +18,7 @@ + From 7679963f262591818d823c759376edb618d48d40 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Thu, 5 Dec 2024 18:59:07 +0000 Subject: [PATCH 140/173] Add `NavisworksMaterialUnpacker` to `NavisworksRootObjectBuilder` constructor - Add `NavisworksMaterialUnpacker` to the service collection in `NavisworksConnectorServiceRegistration.cs`. - Update the constructor of `NavisworksRootObjectBuilder` to include dependencies for `IRootToSpeckleConverter`, `ISendConversionCache`, `IConverterSettingsStore`, `ILogger`, `ISdkActivityFactory`, and `NavisworksMaterialUnpacker`. This commit adds the registration of the `NavisworksMaterialUnpacker` class to the service collection in order to enable dependency injection. It also updates the constructor of the `NavisworksRootObjectBuilder` class to include all necessary dependencies for its functionality. --- .../NavisworksConnectorServiceRegistration.cs | 1 + .../HostApp/NavisworksMaterialUnpacker.cs | 23 +++---- .../Send/NavisworksRootObjectBuilder.cs | 60 +++++++++---------- 3 files changed, 37 insertions(+), 47 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index e474b0c3c..35dfc39b3 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -47,6 +47,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) IConverterSettingsStore, ConverterSettingsStore >(); + serviceCollection.AddScoped(); // Sending operations serviceCollection.AddScoped, NavisworksRootObjectBuilder>(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs index 2185586ee..52ff99912 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs @@ -7,20 +7,11 @@ namespace Speckle.Connector.Navisworks.HostApp; -public class NavisworksMaterialUnpacker +public class NavisworksMaterialUnpacker( + ILogger logger, + IConverterSettingsStore converterSettings +) { - private readonly ILogger _logger; - private readonly IConverterSettingsStore _converterSettings; - - public NavisworksMaterialUnpacker( - ILogger logger, - IConverterSettingsStore converterSettings - ) - { - _logger = logger; - _converterSettings = converterSettings; - } - // Helper function to select a property based on the representation mode // Selector method for individual properties private static T Select(RepresentationMode mode, T active, T permanent, T original, T defaultValue) => @@ -32,7 +23,7 @@ private static T Select(RepresentationMode mode, T active, T permanent, T ori _ => defaultValue, }; - public List UnpackRenderMaterial(List navisworksObjects) + public List UnpackRenderMaterial(IReadOnlyList navisworksObjects) { if (navisworksObjects == null) { @@ -55,7 +46,7 @@ public List UnpackRenderMaterial(List navisw var geometry = navisworksObject.Geometry; // Extract the current visual representation mode - var mode = _converterSettings.Current.User.VisualRepresentationMode; + var mode = converterSettings.Current.User.VisualRepresentationMode; // Assign properties using the selector var renderColor = Select( @@ -131,7 +122,7 @@ public List UnpackRenderMaterial(List navisw } catch (Exception ex) when (!ex.IsFatal()) { - _logger.LogError(ex, "Failed to unpack render material from Navisworks object"); + logger.LogError(ex, "Failed to unpack render material from Navisworks object"); } } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index 8fbd990b4..693c62eb7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Logging; +using Speckle.Connector.Navisworks.HostApp; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Conversion; @@ -13,30 +14,16 @@ namespace Speckle.Connector.Navisworks.Operations.Send; -public class NavisworksRootObjectBuilder : IRootObjectBuilder +public class NavisworksRootObjectBuilder( + IRootToSpeckleConverter rootToSpeckleConverter, + ISendConversionCache sendConversionCache, + IConverterSettingsStore converterSettings, + ILogger logger, + ISdkActivityFactory activityFactory, + NavisworksMaterialUnpacker materialUnpacker +) : IRootObjectBuilder { - private readonly IRootToSpeckleConverter _rootToSpeckleConverter; - private readonly ISendConversionCache _sendConversionCache; - private readonly IConverterSettingsStore _converterSettings; - private readonly ILogger _logger; - private readonly ISdkActivityFactory _activityFactory; - - public NavisworksRootObjectBuilder( - IRootToSpeckleConverter rootToSpeckleConverter, - ISendConversionCache sendConversionCache, - IConverterSettingsStore converterSettings, - ILogger logger, - ISdkActivityFactory activityFactory - ) - { - _rootToSpeckleConverter = rootToSpeckleConverter; - _sendConversionCache = sendConversionCache; - _converterSettings = converterSettings; - _logger = logger; - _activityFactory = activityFactory; - } - - internal NavisworksConversionSettings GetCurrentSettings() => _converterSettings.Current; + internal NavisworksConversionSettings GetCurrentSettings() => converterSettings.Current; public Task Build( IReadOnlyList navisworksModelItems, @@ -45,7 +32,7 @@ public Task Build( CancellationToken cancellationToken = default ) { - using var activity = _activityFactory.Start("Build"); + using var activity = activityFactory.Start("Build"); // 1. Validate input if (!navisworksModelItems.Any()) @@ -57,12 +44,12 @@ public Task Build( var rootObjectCollection = new Collection { name = NavisworksApp.ActiveDocument.Title ?? "Unnamed model", - ["units"] = _converterSettings.Current.Derived.SpeckleUnits + ["units"] = converterSettings.Current.Derived.SpeckleUnits }; // 3. Convert all model items and store results + List results = new(navisworksModelItems.Count); var convertedBases = new Dictionary(); - var results = new List(); int processedCount = 0; int totalCount = navisworksModelItems.Count; @@ -75,6 +62,11 @@ public Task Build( onOperationProgressed.Report(new CardProgress("Converting", (double)processedCount / totalCount)); } + if (results.All(x => x.Status == Status.ERROR)) + { + throw new SpeckleException("Failed to convert all objects."); // fail fast instead creating empty commit! It will appear as model card error with red color. + } + // 4. Initialize final elements list and group nodes var finalElements = new List(); var merger = new GeometryNodeMerger(); @@ -119,12 +111,18 @@ public Task Build( } } - // 7. Finalize and return + using (var _ = activityFactory.Start("UnpackRenderMaterials")) + { + // 7. - Unpack the render material proxies + rootObjectCollection[ProxyKeys.RENDER_MATERIAL] = materialUnpacker.UnpackRenderMaterial(navisworksModelItems); + } + + // 8. Finalize and return rootObjectCollection.elements = finalElements; return Task.FromResult(new RootObjectBuilderResult(rootObjectCollection, results)); } - internal SendConversionResult ConvertNavisworksItem( + private SendConversionResult ConvertNavisworksItem( NAV.ModelItem navisworksItem, Dictionary convertedBases, SendInfo sendInfo @@ -135,9 +133,9 @@ SendInfo sendInfo try { - Base converted = _sendConversionCache.TryGetValue(applicationId, sendInfo.ProjectId, out ObjectReference? cached) + Base converted = sendConversionCache.TryGetValue(applicationId, sendInfo.ProjectId, out ObjectReference? cached) ? cached - : _rootToSpeckleConverter.Convert(navisworksItem); + : rootToSpeckleConverter.Convert(navisworksItem); convertedBases[applicationId] = converted; @@ -145,7 +143,7 @@ SendInfo sendInfo } catch (Exception ex) when (!ex.IsFatal()) { - _logger.LogError(ex, "Failed to convert model item {id}", applicationId); + logger.LogError(ex, "Failed to convert model item {id}", applicationId); return new SendConversionResult(Status.ERROR, applicationId, "ModelItem", null, ex); } } From 5cb81ce454ee7307b60dc281156543b6a6d06aba Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 09:12:39 +0000 Subject: [PATCH 141/173] Update Speckle.Objects to version 3.1.0-dev.212 in Navisworks connectors for versions 2020, 2021, and 2022. The commit updates the packages.lock.json file for the Navisworks connectors for versions 2020, 2021, and 2022. It changes the requested and resolved version of Speckle.Objects from 3.1.0-dev.205 to 3.1.0-dev.212 --- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- Directory.Packages.props | 3 +- 13 files changed, 205 insertions(+), 206 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index 15c8d5876..264ed065a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index ea0f0a5f4..6b6a28786 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index 9d79a4336..fee8b3af8 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index 8fb1a27d7..3d269ef4d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index cf321ca7d..425d9a1bf 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index 3d80c3175..5122a9cc3 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "GraphQL.Client": { @@ -281,9 +281,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -291,8 +291,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index d01a28fa3..e84e16733 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index ca55f20ae..5f0f6f42c 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index 737982312..ac0ca5027 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index 9541c2430..a9a273703 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index f3542c763..1cb7cf768 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index e17201058..7df603f82 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.205, )" + "Speckle.Objects": "[3.1.0-dev.212, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "k8nMXF91F2L+OMzbZEn6JMUuNwoz8htOteKQMsnNXoGY8r8YdfeoHpOgg2MA8vCzJOox7OEBCR+P/izbJffqYw==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.205" + "Speckle.Sdk": "3.1.0-dev.212" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "bdvKQ8TGvBUVdmaAYkQYXoZXDHVpXMHO5HVrsjS2qEMzWoG93jFZzrR/Z1ccJB06sGqHlu9+g5BhLXoJZqPnkQ==", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.205" + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Directory.Packages.props b/Directory.Packages.props index 1303d04b9..b7eb220e8 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -46,10 +46,9 @@ - - + \ No newline at end of file From 72b78331b2c182522dd64bd612eccac1d62d99b7 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 14:19:00 +0000 Subject: [PATCH 142/173] Add NavisworksObject to finalElements in NavisworksRootObjectBuilder This commit adds the NavisworksObject class to the finalElements list in the NavisworksRootObjectBuilder. The NavisworksObject contains properties such as name, displayValue, properties, and units. This change improves the functionality of the code by including additional information for each element in the finalElements list. --- .../Send/NavisworksRootObjectBuilder.cs | 36 ++++++++++++++----- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index 693c62eb7..51a2ee651 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Logging; +using Speckle.Connector.Navisworks.Extensions; using Speckle.Connector.Navisworks.HostApp; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; @@ -6,6 +7,7 @@ using Speckle.Connectors.Common.Operations; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; +using Speckle.Objects.Data; using Speckle.Sdk; using Speckle.Sdk.Logging; using Speckle.Sdk.Models; @@ -92,22 +94,40 @@ public Task Build( continue; } - var parentBase = new Base + var navisworksObject = new NavisworksObject { - applicationId = group.Key, - ["properties"] = siblingBases.First()["properties"], - ["name"] = siblingBases.First()["name"], - ["displayValue"] = siblingBases.SelectMany(b => b["displayValue"] as List ?? []).ToList() + name = ElementSelectionExtension.ResolveIndexPathToModelItem(group.Key)?.DisplayName ?? string.Empty, + displayValue = siblingBases.SelectMany(b => b["displayValue"] as List ?? []).ToList(), + properties = siblingBases.First()["properties"] as Dictionary ?? [], + units = converterSettings.Current.Derived.SpeckleUnits }; - finalElements.Add(parentBase); + + finalElements.Add(navisworksObject); } // 6. Add remaining non-grouped nodes foreach (var result in results.Where(result => !processedPaths.Contains(result.SourceId))) { - if (convertedBases.TryGetValue(result.SourceId, out var convertedBase) && convertedBase != null) + if (!convertedBases.TryGetValue(result.SourceId, out var convertedBase) || convertedBase == null) + { + continue; + } + // TODO: check if converted base is a collection when full tree sending is implemented + + if (convertedBase is Collection convertedCollection) + { + finalElements.Add(convertedCollection); + } + else { - finalElements.Add(convertedBase); + var navisworksObject = new NavisworksObject + { + name = convertedBase["name"] as string ?? string.Empty, + displayValue = convertedBase["displayValue"] as List ?? [], + properties = convertedBase["properties"] as Dictionary ?? [], + units = converterSettings.Current.Derived.SpeckleUnits + }; + finalElements.Add(navisworksObject); } } From ab21e54f912625da24d0ce287271a6cd02027f5a Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 15:45:25 +0000 Subject: [PATCH 143/173] Add applicationId to NavisworksRootObjectBuilder This commit adds the applicationId property to the NavisworksRootObjectBuilder class in order to include it in the finalElements list. This change ensures that the applicationId is properly assigned and included when building Navisworks objects for sending. --- .../Operations/Send/NavisworksRootObjectBuilder.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index 51a2ee651..91b959a8d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -99,7 +99,8 @@ public Task Build( name = ElementSelectionExtension.ResolveIndexPathToModelItem(group.Key)?.DisplayName ?? string.Empty, displayValue = siblingBases.SelectMany(b => b["displayValue"] as List ?? []).ToList(), properties = siblingBases.First()["properties"] as Dictionary ?? [], - units = converterSettings.Current.Derived.SpeckleUnits + units = converterSettings.Current.Derived.SpeckleUnits, + applicationId = group.Key }; finalElements.Add(navisworksObject); @@ -125,7 +126,8 @@ public Task Build( name = convertedBase["name"] as string ?? string.Empty, displayValue = convertedBase["displayValue"] as List ?? [], properties = convertedBase["properties"] as Dictionary ?? [], - units = converterSettings.Current.Derived.SpeckleUnits + units = converterSettings.Current.Derived.SpeckleUnits, + applicationId = convertedBase.applicationId }; finalElements.Add(navisworksObject); } From 173fbfeaeb915dc4b0a505914ba33e5a38bf37fe Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 15:46:01 +0000 Subject: [PATCH 144/173] RunOnMainThreadAsync implemented - Refactored GetDocumentInfo method in NavisworksBasicConnectorBinding to run on the main thread using Parent.RunOnMainThreadAsync - Refactored HighlightObjects method in NavisworksBasicConnectorBinding to run on the main thread using Parent.RunOnMainThreadAsync - Refactored OnSelectionChange method in NavisworksSelectionBinding to use async/await and run UpdateSelectionAsync on the main thread using Parent.RunOnMainThreadAsync - Added async/await to Send method in NavisworksSendBinding and refactored code inside it to use async/await for better readability - Extracted common logic into separate methods in NavisworksSendBinding: GetModelCard, InitializeConverterSettings, GetNavisworksModelItems, ExecuteSendOperation - Added cancellation support to CancelSend method in NavisworksSendBinding by calling _cancellationManager.CancelOperation with modelCardId as argument - Refactored ProcessModelStateChange method in NavisworksDocumentEvents to use async/await and added check for _finalModelCount value --- .../NavisworksBasicConnectorBinding.cs | 30 +++-- .../Bindings/NavisworksSelectionBinding.cs | 14 +- .../Bindings/NavisworksSendBinding.cs | 126 ++++++++++-------- .../HostApp/NavisworksDocumentEvents.cs | 49 ++++++- 4 files changed, 155 insertions(+), 64 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index a40579b7d..62c0ffda0 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -42,13 +42,20 @@ NavisworksDocumentEvents documentEvents public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; public DocumentInfo? GetDocumentInfo() => - NavisworksApp.ActiveDocument is null || NavisworksApp.ActiveDocument.Models.Count == 0 - ? null - : new DocumentInfo( - NavisworksApp.ActiveDocument.CurrentFileName, - NavisworksApp.ActiveDocument.Title, - NavisworksApp.ActiveDocument.GetHashCode().ToString() - ); + Parent + .RunOnMainThreadAsync( + () => + Task.FromResult( + NavisworksApp.ActiveDocument is null || NavisworksApp.ActiveDocument.Models.Count == 0 + ? null + : new DocumentInfo( + NavisworksApp.ActiveDocument.CurrentFileName, + NavisworksApp.ActiveDocument.Title, + NavisworksApp.ActiveDocument.GetHashCode().ToString() + ) + ) + ) + .Result; public DocumentModelStore GetDocumentState() => _store; @@ -60,5 +67,12 @@ NavisworksDocumentEvents documentEvents public Task HighlightModel(string modelCardId) => Task.CompletedTask; - public Task HighlightObjects(IReadOnlyList objectIds) => Task.CompletedTask; + public async Task HighlightObjects(IReadOnlyList objectIds) => + await Parent + .RunOnMainThreadAsync(async () => + { + // TODO: Implement highlighting logic on main thread + await Task.CompletedTask.ConfigureAwait(false); + }) + .ConfigureAwait(false); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index cc1e621b2..6be666d18 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -20,7 +20,10 @@ public NavisworksSelectionBinding(IAppIdleManager idleManager, IBrowserBridge pa } private void OnSelectionChange(object? o, EventArgs eventArgs) => - _appIdleManager.SubscribeToIdle(nameof(NavisworksSelectionBinding), UpdateSelection); + _appIdleManager.SubscribeToIdle( + nameof(NavisworksSelectionBinding), + async () => await UpdateSelectionAsync().ConfigureAwait(false) + ); private void UpdateSelection() { @@ -28,6 +31,15 @@ private void UpdateSelection() Parent.Send(SELECTION_EVENT, selInfo); } + private async Task UpdateSelectionAsync() + { + var selInfo = await Parent + .RunOnMainThreadAsync(() => Task.FromResult(GetSelection())) + .ConfigureAwait(false); + + await Parent.Send(SELECTION_EVENT, selInfo).ConfigureAwait(false); + } + public SelectionInfo GetSelection() { // Ensure there is an active document and a valid selection diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index c639a21da..2bfc2bdb1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -82,62 +82,28 @@ public List GetSendSettings() => public async Task Send(string modelCardId) { using var activity = _activityFactory.Start(); - try { - if (_store.GetModelById(modelCardId) is not SenderModelCard modelCard) - { - throw new InvalidOperationException("No publish model card was found."); - } - - using var scope = _serviceProvider.CreateScope(); - - scope - .ServiceProvider.GetRequiredService>() - .Initialize( - _conversionSettingsFactory.Create( - originMode: _toSpeckleSettingsManagerNavisworks.GetOriginMode(modelCard), - visualRepresentationMode: _toSpeckleSettingsManagerNavisworks.GetVisualRepresentationMode(modelCard), - convertHiddenElements: _toSpeckleSettingsManagerNavisworks.GetConvertHiddenElements(modelCard), - includeInternalProperties: _toSpeckleSettingsManagerNavisworks.GetIncludeInternalProperties(modelCard) - ) - ); - - CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); - - // Get the selected paths from the filter - var selectedPaths = modelCard.SendFilter.NotNull().RefreshObjectIds(); - if (selectedPaths.Count == 0) - { - throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!"); - } - - List navisworksModelItems = modelCard - .SendFilter.NotNull() - .RefreshObjectIds() - .Select(ResolveIndexPathToModelItem) - .SelectMany(ResolveGeometryLeafNodes) - .Where(IsElementVisible) - .ToList(); - - if (navisworksModelItems.Count == 0) - { - // Handle as CARD ERROR in this function - throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!"); - } - - var sendResult = await scope - .ServiceProvider.GetRequiredService>() - .Execute( - navisworksModelItems, - modelCard.GetSendInfo(_speckleApplication.Slug), - _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, token), - token - ) - .ConfigureAwait(false); + await Parent + .RunOnMainThreadAsync(async () => + { + var modelCard = GetModelCard(modelCardId); + + using var scope = _serviceProvider.CreateScope(); + + InitializeConverterSettings(scope, modelCard); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) + CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); + + var navisworksModelItems = GetNavisworksModelItems(modelCard); + + var sendResult = await ExecuteSendOperation(scope, modelCard, navisworksModelItems, token) + .ConfigureAwait(false); + + await Commands + .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) + .ConfigureAwait(false); + }) .ConfigureAwait(false); } catch (OperationCanceledException) @@ -153,6 +119,60 @@ await Commands } } + private SenderModelCard GetModelCard(string modelCardId) => + _store.GetModelById(modelCardId) is not SenderModelCard modelCard + ? throw new InvalidOperationException("No publish model card was found.") + : modelCard; + + private void InitializeConverterSettings(IServiceScope scope, SenderModelCard modelCard) => + scope + .ServiceProvider.GetRequiredService>() + .Initialize( + _conversionSettingsFactory.Create( + originMode: _toSpeckleSettingsManagerNavisworks.GetOriginMode(modelCard), + visualRepresentationMode: _toSpeckleSettingsManagerNavisworks.GetVisualRepresentationMode(modelCard), + convertHiddenElements: _toSpeckleSettingsManagerNavisworks.GetConvertHiddenElements(modelCard), + includeInternalProperties: _toSpeckleSettingsManagerNavisworks.GetIncludeInternalProperties(modelCard) + ) + ); + + private static List GetNavisworksModelItems(SenderModelCard modelCard) + { + var selectedPaths = modelCard.SendFilter.NotNull().RefreshObjectIds(); + if (selectedPaths.Count == 0) + { + throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!"); + } + + var modelItems = modelCard + .SendFilter.NotNull() + .RefreshObjectIds() + .Select(ResolveIndexPathToModelItem) + .SelectMany(ResolveGeometryLeafNodes) + .Where(IsElementVisible) + .ToList(); + + return modelItems.Count == 0 + ? throw new SpeckleSendFilterException("No objects were found to convert. Please update your publish filter!") + : modelItems; + } + + private async Task ExecuteSendOperation( + IServiceScope scope, + SenderModelCard modelCard, + List navisworksModelItems, + CancellationToken token + ) => + await scope + .ServiceProvider.GetRequiredService>() + .Execute( + navisworksModelItems, + modelCard.GetSendInfo(_speckleApplication.Slug), + _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCard.ModelCardId!, token), + token + ) + .ConfigureAwait(false); + public void CancelSend(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); /// diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index e0d0d8938..aa378c8b8 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -15,6 +15,7 @@ public sealed class NavisworksDocumentEvents : IDisposable private readonly IServiceProvider _serviceProvider; private readonly ITopLevelExceptionHandler _topLevelExceptionHandler; private readonly IAppIdleManager _idleManager; + private readonly IBrowserBridge _parent; private readonly object _subscriptionLock = new(); private bool _isSubscribed; @@ -33,13 +34,16 @@ public sealed class NavisworksDocumentEvents : IDisposable public NavisworksDocumentEvents( IServiceProvider serviceProvider, ITopLevelExceptionHandler topLevelExceptionHandler, - IAppIdleManager idleManager + IAppIdleManager idleManager, + IBrowserBridge parent ) { _serviceProvider = serviceProvider; _topLevelExceptionHandler = topLevelExceptionHandler; _idleManager = idleManager; + _parent = parent; + SubscribeToDocumentModelEvents(); } @@ -83,11 +87,52 @@ private void HandleDocumentModelCountChanged(object sender, EventArgs e) () => _idleManager.SubscribeToIdle( nameof(NavisworksDocumentEvents), - async () => await NotifyValidModelStateChange().ConfigureAwait(false) + async () => await ProcessModelStateChangeAsync().ConfigureAwait(false) ) ); } + private async Task ProcessModelStateChangeAsync() + { + if (_isProcessing) + { + return; + } + + _isProcessing = true; + + try + { + await _parent + .RunOnMainThreadAsync(async () => + { + var store = _serviceProvider.GetRequiredService(); + var basicBinding = _serviceProvider.GetRequiredService(); + var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; + + switch (_finalModelCount) + { + case 0 when _priorModelCount > 0: + store.ClearAndSave(); + break; + case > 0 when _priorModelCount == 0: + store.LoadState(); + break; + } + + if (commands != null) + { + await commands.NotifyDocumentChanged().ConfigureAwait(false); + } + }) + .ConfigureAwait(false); + } + finally + { + _isProcessing = false; + } + } + /// /// Processes model state changes by updating the store and notifying commands. /// From 381d50d3b3a7c9710b06aea90b633ffaebf7fa6e Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 16:26:59 +0000 Subject: [PATCH 145/173] Restore DocumentModelStore.cs accessibility - not sure when that changed - Change access modifiers of HostAppSaveState and LoadState methods to protected - Update method comments to reflect changes in access modifiers --- DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs b/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs index d3d47efae..62c4a7984 100644 --- a/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs +++ b/DUI3/Speckle.Connectors.DUI/Models/DocumentModelStore.cs @@ -118,9 +118,9 @@ protected void SaveState() /// /// Implement this method according to the host app's specific ways of reading custom data from its file. /// - public abstract void HostAppSaveState(string modelCardState); + protected abstract void HostAppSaveState(string modelCardState); - public abstract void LoadState(); + protected abstract void LoadState(); protected void LoadFromString(string? models) { From 52743359d5acb3be8c79848937387fa18d52a9d1 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 16:32:22 +0000 Subject: [PATCH 146/173] Refactor NavisworksConnectorServiceRegistration and NavisworksDocumentEvents - Added NavisworksMaterialUnpacker to service collection - Updated registration of DocumentModelStore in service collection - Updated references to DocumentModelStore with NavisworksDocumentModelStore in NavisworksDocumentEvents - Renamed HostAppSaveState method to protected override method in NavisworksDocumentModelStore - Added public method ReloadState as a wrapper for LoadState in NavisworksDocumentModelStore --- .../NavisworksConnectorServiceRegistration.cs | 4 +++- .../HostApp/NavisworksDocumentEvents.cs | 9 ++++----- .../HostApp/NavisworksDocumentModelStore.cs | 9 +++++++-- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 35dfc39b3..00c3b1afa 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -47,6 +47,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) IConverterSettingsStore, ConverterSettingsStore >(); + serviceCollection.AddScoped(); // Sending operations @@ -60,7 +61,8 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.RegisterTopLevelExceptionHandler(); serviceCollection.AddTransient(); serviceCollection.AddSingleton(); - serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(); + serviceCollection.AddSingleton(sp => sp.GetRequiredService()); serviceCollection.AddSingleton(); // register filters diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index aa378c8b8..26fed81ee 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -2,7 +2,6 @@ using Speckle.Connector.Navisworks.Bindings; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; -using Speckle.Connectors.DUI.Models; namespace Speckle.Connector.Navisworks.HostApp; @@ -106,7 +105,7 @@ private async Task ProcessModelStateChangeAsync() await _parent .RunOnMainThreadAsync(async () => { - var store = _serviceProvider.GetRequiredService(); + var store = _serviceProvider.GetRequiredService(); var basicBinding = _serviceProvider.GetRequiredService(); var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; @@ -116,7 +115,7 @@ await _parent store.ClearAndSave(); break; case > 0 when _priorModelCount == 0: - store.LoadState(); + store.ReloadState(); break; } @@ -147,7 +146,7 @@ private async Task NotifyValidModelStateChange() try { - var store = _serviceProvider.GetRequiredService(); + var store = _serviceProvider.GetRequiredService(); var basicBinding = _serviceProvider.GetRequiredService(); var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; @@ -159,7 +158,7 @@ private async Task NotifyValidModelStateChange() break; case > 0 when _priorModelCount == 0: // Load state when models are added - store.LoadState(); + store.ReloadState(); break; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs index 767467041..e00529721 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentModelStore.cs @@ -26,7 +26,7 @@ ITopLevelExceptionHandler topLevelExceptionHandler LoadState(); } - public override void HostAppSaveState(string modelCardState) + protected override void HostAppSaveState(string modelCardState) { if (!IsActiveDocumentValid()) { @@ -45,7 +45,12 @@ public override void HostAppSaveState(string modelCardState) } } - public override void LoadState() + /// + /// Public method to reload the state from storage. + /// + public void ReloadState() => LoadState(); + + protected override void LoadState() { if (!IsActiveDocumentValid()) { From 5cb379f807c7a9d42615ca6422022dc75074c484 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Fri, 6 Dec 2024 16:42:52 +0000 Subject: [PATCH 147/173] Delete Navisworks solution file The commit deletes the Navisworks solution file, which is no longer needed. --- Navisworks.slnf | 28 ---------------------------- 1 file changed, 28 deletions(-) delete mode 100644 Navisworks.slnf diff --git a/Navisworks.slnf b/Navisworks.slnf deleted file mode 100644 index 36a51d335..000000000 --- a/Navisworks.slnf +++ /dev/null @@ -1,28 +0,0 @@ -{ - "solution": { - "path": "Speckle.Connectors.sln", - "projects": [ - "Build\\Build.csproj", - "Connectors\\Autocad\\Speckle.Connectors.Autocad2024\\Speckle.Connectors.Autocad2024.shproj", - "Connectors\\Autocad\\Speckle.Connectors.AutocadShared\\Speckle.Connectors.AutocadShared.shproj", - "Connectors\\Autocad\\Speckle.Connectors.Civil3dShared\\Speckle.Connectors.Civil3dShared.shproj", - "Connectors\\Navisworks\\Speckle.Connectors.Navisworks2024\\Speckle.Connectors.Navisworks2024.csproj", - "Connectors\\Navisworks\\Speckle.Connectors.NavisworksShared\\Speckle.Connectors.NavisworksShared.shproj", - "Connectors\\Tekla\\Speckle.Connector.Tekla2024\\Speckle.Connector.Tekla2024.csproj", - "Converters\\Autocad\\Speckle.Converters.AutocadShared\\Speckle.Converters.AutocadShared.shproj", - "Converters\\Civil3d\\Speckle.Converters.Civil3dShared\\Speckle.Converters.Civil3dShared.shproj", - "Converters\\Navisworks\\Speckle.Converters.Navisworks2024\\Speckle.Converters.Navisworks2024.csproj", - "Converters\\Navisworks\\Speckle.Converters.NavisworksShared\\Speckle.Converters.NavisworksShared.shproj", - "Converters\\Tekla\\Speckle.Converter.Tekla2024\\Speckle.Converter.Tekla2024.csproj", - "DUI3\\Speckle.Connectors.DUI.Tests\\Speckle.Connectors.DUI.Tests.csproj", - "DUI3\\Speckle.Connectors.DUI.WebView\\Speckle.Connectors.DUI.WebView.csproj", - "DUI3\\Speckle.Connectors.DUI\\Speckle.Connectors.DUI.csproj", - "Sdk\\Speckle.Connectors.Common\\Speckle.Connectors.Common.csproj", - "Sdk\\Speckle.Connectors.Logging\\Speckle.Connectors.Logging.csproj", - "Sdk\\Speckle.Connectors.Tests\\Speckle.Connectors.Tests.csproj", - "Sdk\\Speckle.Converters.Common.Tests\\Speckle.Converters.Common.Tests.csproj", - "Sdk\\Speckle.Converters.Common\\Speckle.Converters.Common.csproj", - "Sdk\\Speckle.Testing\\Speckle.Testing.csproj" - ] - } -} From eed4dcc150eeb7a0384f754cf3067bc8d15f0aac Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 12:55:24 +0000 Subject: [PATCH 148/173] Delete packages.lock.json --- .../packages.lock.json | 393 ------------------ .../packages.lock.json | 393 ------------------ .../packages.lock.json | 393 ------------------ .../packages.lock.json | 393 ------------------ .../packages.lock.json | 393 ------------------ .../packages.lock.json | 393 ------------------ .../packages.lock.json | 359 ---------------- .../packages.lock.json | 359 ---------------- .../packages.lock.json | 359 ---------------- .../packages.lock.json | 359 ---------------- .../packages.lock.json | 359 ---------------- .../packages.lock.json | 359 ---------------- 12 files changed, 4512 deletions(-) delete mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json delete mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json delete mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json delete mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json delete mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json delete mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json delete mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json deleted file mode 100644 index 264ed065a..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2020.0.0, )", - "resolved": "2020.0.0", - "contentHash": "biB2RR0HNxrbHD7zBZoJUhwzPwVE5IFg9l4/747bHOLRJC3FM5UtzdjGwvRZwfOlFyM4P26NYARSiCaxSNIBpg==" - }, - "Speckle.Objects": { - "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "Objects.Converter.Navisworks2020": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2020.0.0, )" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - }, - ".NETFramework,Version=v4.8/win-x64": { - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - } - } - } -} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json deleted file mode 100644 index 6b6a28786..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2021.0.0, )", - "resolved": "2021.0.0", - "contentHash": "cY7sU8dxISfTQLinUIOki/azS+bIX28uEZQO4ijrq0eOUhJlKcKWS273kHPoL0+T0Xrkd+1OWj2YFa2PbHGgwQ==" - }, - "Speckle.Objects": { - "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "Objects.Converter.Navisworks2021": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2021.0.0, )" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - }, - ".NETFramework,Version=v4.8/win-x64": { - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - } - } - } -} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json deleted file mode 100644 index fee8b3af8..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2022.0.0, )", - "resolved": "2022.0.0", - "contentHash": "x0RW4Iqw8YHVK4ZiLEyLLfI5ffuRBR0KhEvmy9ZpT8SLNeDL/c6jn+7JWBVFUJPu+ObVnU+KqJjLdHmphN0lMQ==" - }, - "Speckle.Objects": { - "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "Objects.Converter.Navisworks2022": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2022.0.0, )" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - }, - ".NETFramework,Version=v4.8/win-x64": { - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - } - } - } -} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json deleted file mode 100644 index 3d269ef4d..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2023.0.0, )", - "resolved": "2023.0.0", - "contentHash": "+qRmcyLD3DpuSSwX2IbEwp0gJllbiKgv313PZfEfh8I2uvxf+5YNqDzY0OGOxWIdPKqaQmdUZ1ELzoDtucCWzA==" - }, - "Speckle.Objects": { - "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "Objects.Converter.Navisworks2023": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2023.0.0, )" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - }, - ".NETFramework,Version=v4.8/win-x64": { - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - } - } - } -} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json deleted file mode 100644 index 425d9a1bf..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2024.0.0, )", - "resolved": "2024.0.0", - "contentHash": "SnkvhcENMy3YLWbzy4lCweMuWdAbNzAtwvffFH2xVHmnm/2INnMGucYGazAHN496d6wgl9YRGa4qftgVsg7T7A==" - }, - "Speckle.Objects": { - "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "Objects.Converter.Navisworks2024": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2024.0.0, )" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - }, - ".NETFramework,Version=v4.8/win-x64": { - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - } - } - } -} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json deleted file mode 100644 index 5122a9cc3..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2025.0.0, )", - "resolved": "2025.0.0", - "contentHash": "+q2IObnUGqtC1O/ddy2p0HKm1eXRo7Yi80oD9VIWClidvGb3rVsXKZWBHiv4HwSn5JcOMSEt1cdSlRQLm8Ehjg==" - }, - "Speckle.Objects": { - "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "Objects.Converter.Navisworks2025": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2025.0.0, )" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.dui.webview": { - "type": "Project", - "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", - "Speckle.Connectors.DUI": "[1.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - }, - ".NETFramework,Version=v4.8/win-x64": { - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" - } - } - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json deleted file mode 100644 index e84e16733..000000000 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2020.0.0, )", - "resolved": "2020.0.0", - "contentHash": "biB2RR0HNxrbHD7zBZoJUhwzPwVE5IFg9l4/747bHOLRJC3FM5UtzdjGwvRZwfOlFyM4P26NYARSiCaxSNIBpg==" - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Speckle.Objects": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - } - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json deleted file mode 100644 index 5f0f6f42c..000000000 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2021.0.0, )", - "resolved": "2021.0.0", - "contentHash": "cY7sU8dxISfTQLinUIOki/azS+bIX28uEZQO4ijrq0eOUhJlKcKWS273kHPoL0+T0Xrkd+1OWj2YFa2PbHGgwQ==" - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Speckle.Objects": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - } - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json deleted file mode 100644 index ac0ca5027..000000000 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2022.0.0, )", - "resolved": "2022.0.0", - "contentHash": "x0RW4Iqw8YHVK4ZiLEyLLfI5ffuRBR0KhEvmy9ZpT8SLNeDL/c6jn+7JWBVFUJPu+ObVnU+KqJjLdHmphN0lMQ==" - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Speckle.Objects": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - } - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json deleted file mode 100644 index a9a273703..000000000 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2023.0.0, )", - "resolved": "2023.0.0", - "contentHash": "+qRmcyLD3DpuSSwX2IbEwp0gJllbiKgv313PZfEfh8I2uvxf+5YNqDzY0OGOxWIdPKqaQmdUZ1ELzoDtucCWzA==" - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Speckle.Objects": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - } - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json deleted file mode 100644 index 1cb7cf768..000000000 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2024.0.0, )", - "resolved": "2024.0.0", - "contentHash": "SnkvhcENMy3YLWbzy4lCweMuWdAbNzAtwvffFH2xVHmnm/2INnMGucYGazAHN496d6wgl9YRGa4qftgVsg7T7A==" - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Speckle.Objects": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - } - } -} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json deleted file mode 100644 index 7df603f82..000000000 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "version": 2, - "dependencies": { - ".NETFramework,Version=v4.8": { - "Microsoft.NETFramework.ReferenceAssemblies": { - "type": "Direct", - "requested": "[1.0.3, )", - "resolved": "1.0.3", - "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", - "dependencies": { - "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" - } - }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[8.0.0, )", - "resolved": "8.0.0", - "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "8.0.0", - "Microsoft.SourceLink.Common": "8.0.0" - } - }, - "PolySharp": { - "type": "Direct", - "requested": "[1.14.1, )", - "resolved": "1.14.1", - "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" - }, - "Speckle.InterfaceGenerator": { - "type": "Direct", - "requested": "[0.9.6, )", - "resolved": "0.9.6", - "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" - }, - "Speckle.Navisworks.API": { - "type": "Direct", - "requested": "[2025.0.0, )", - "resolved": "2025.0.0", - "contentHash": "+q2IObnUGqtC1O/ddy2p0HKm1eXRo7Yi80oD9VIWClidvGb3rVsXKZWBHiv4HwSn5JcOMSEt1cdSlRQLm8Ehjg==" - }, - "GraphQL.Client": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0", - "GraphQL.Client.Abstractions.Websocket": "6.0.0", - "System.Net.WebSockets.Client.Managed": "1.0.22", - "System.Reactive": "5.0.0" - } - }, - "GraphQL.Client.Abstractions": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", - "dependencies": { - "GraphQL.Primitives": "6.0.0" - } - }, - "GraphQL.Client.Abstractions.Websocket": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", - "dependencies": { - "GraphQL.Client.Abstractions": "6.0.0" - } - }, - "GraphQL.Primitives": { - "type": "Transitive", - "resolved": "6.0.0", - "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" - }, - "Microsoft.Bcl.AsyncInterfaces": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" - }, - "Microsoft.Data.Sqlite": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", - "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.5", - "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" - } - }, - "Microsoft.Data.Sqlite.Core": { - "type": "Transitive", - "resolved": "7.0.5", - "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "Microsoft.Extensions.Configuration": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", - "dependencies": { - "Microsoft.Extensions.Primitives": "2.2.0" - } - }, - "Microsoft.Extensions.Configuration.Binder": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", - "dependencies": { - "Microsoft.Extensions.Configuration": "2.2.0" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" - }, - "Microsoft.Extensions.Options": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Primitives": "2.2.0", - "System.ComponentModel.Annotations": "4.5.0" - } - }, - "Microsoft.Extensions.Primitives": { - "type": "Transitive", - "resolved": "2.2.0", - "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", - "dependencies": { - "System.Memory": "4.5.1", - "System.Runtime.CompilerServices.Unsafe": "4.5.1" - } - }, - "Microsoft.NETFramework.ReferenceAssemblies.net48": { - "type": "Transitive", - "resolved": "1.0.3", - "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" - }, - "Speckle.DoubleNumerics": { - "type": "Transitive", - "resolved": "4.0.1", - "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" - }, - "Speckle.Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.2", - "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "SQLitePCLRaw.bundle_e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", - "dependencies": { - "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", - "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" - } - }, - "SQLitePCLRaw.core": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", - "dependencies": { - "System.Memory": "4.5.3" - } - }, - "SQLitePCLRaw.lib.e_sqlite3": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "SQLitePCLRaw.provider.dynamic_cdecl": { - "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", - "dependencies": { - "SQLitePCLRaw.core": "2.1.4" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.2" - } - }, - "System.Net.WebSockets.Client.Managed": { - "type": "Transitive", - "resolved": "1.0.22", - "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", - "dependencies": { - "System.Buffers": "4.4.0", - "System.Numerics.Vectors": "4.4.0" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.4.0", - "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" - }, - "System.Reactive": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.5.4" - } - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "4.5.3", - "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, - "speckle.connectors.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" - } - }, - "speckle.connectors.dui": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" - } - }, - "speckle.connectors.logging": { - "type": "Project" - }, - "speckle.converters.common": { - "type": "Project", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" - } - }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, - "Microsoft.Extensions.Logging": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", - "dependencies": { - "Microsoft.Extensions.Configuration.Binder": "2.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging.Abstractions": "2.2.0", - "Microsoft.Extensions.Options": "2.2.0" - } - }, - "Microsoft.Extensions.Logging.Abstractions": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" - }, - "Speckle.Objects": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", - "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" - } - }, - "Speckle.Sdk": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", - "dependencies": { - "GraphQL.Client": "6.0.0", - "Microsoft.Bcl.AsyncInterfaces": "5.0.0", - "Microsoft.CSharp": "4.7.0", - "Microsoft.Data.Sqlite": "7.0.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", - "Microsoft.Extensions.Logging": "2.2.0", - "Speckle.DoubleNumerics": "4.0.1", - "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" - } - }, - "Speckle.Sdk.Dependencies": { - "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" - } - } - } -} \ No newline at end of file From bf387dfe75d1f612ccff86528e7cfd4fbec11ef9 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 13:56:24 +0000 Subject: [PATCH 149/173] Remove Navisworks 2025 --- .../packages.lock.json | 393 ++++++++++++++++++ .../packages.lock.json | 393 ++++++++++++++++++ .../packages.lock.json | 393 ++++++++++++++++++ .../packages.lock.json | 393 ++++++++++++++++++ .../packages.lock.json | 393 ++++++++++++++++++ .../packages.lock.json | 359 ++++++++++++++++ .../packages.lock.json | 359 ++++++++++++++++ .../packages.lock.json | 359 ++++++++++++++++ .../packages.lock.json | 359 ++++++++++++++++ .../packages.lock.json | 359 ++++++++++++++++ Speckle.Connectors.sln | 18 +- 11 files changed, 3766 insertions(+), 12 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json new file mode 100644 index 000000000..264ed065a --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -0,0 +1,393 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2020.0.0, )", + "resolved": "2020.0.0", + "contentHash": "biB2RR0HNxrbHD7zBZoJUhwzPwVE5IFg9l4/747bHOLRJC3FM5UtzdjGwvRZwfOlFyM4P26NYARSiCaxSNIBpg==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2020": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2020.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json new file mode 100644 index 000000000..6b6a28786 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -0,0 +1,393 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2021.0.0, )", + "resolved": "2021.0.0", + "contentHash": "cY7sU8dxISfTQLinUIOki/azS+bIX28uEZQO4ijrq0eOUhJlKcKWS273kHPoL0+T0Xrkd+1OWj2YFa2PbHGgwQ==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2021": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2021.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json new file mode 100644 index 000000000..fee8b3af8 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -0,0 +1,393 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2022.0.0, )", + "resolved": "2022.0.0", + "contentHash": "x0RW4Iqw8YHVK4ZiLEyLLfI5ffuRBR0KhEvmy9ZpT8SLNeDL/c6jn+7JWBVFUJPu+ObVnU+KqJjLdHmphN0lMQ==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2022": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2022.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json new file mode 100644 index 000000000..3d269ef4d --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -0,0 +1,393 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "+qRmcyLD3DpuSSwX2IbEwp0gJllbiKgv313PZfEfh8I2uvxf+5YNqDzY0OGOxWIdPKqaQmdUZ1ELzoDtucCWzA==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2023": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2023.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json new file mode 100644 index 000000000..425d9a1bf --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -0,0 +1,393 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2024.0.0, )", + "resolved": "2024.0.0", + "contentHash": "SnkvhcENMy3YLWbzy4lCweMuWdAbNzAtwvffFH2xVHmnm/2INnMGucYGazAHN496d6wgl9YRGa4qftgVsg7T7A==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2024": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2024.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json new file mode 100644 index 000000000..e84e16733 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -0,0 +1,359 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2020.0.0, )", + "resolved": "2020.0.0", + "contentHash": "biB2RR0HNxrbHD7zBZoJUhwzPwVE5IFg9l4/747bHOLRJC3FM5UtzdjGwvRZwfOlFyM4P26NYARSiCaxSNIBpg==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json new file mode 100644 index 000000000..5f0f6f42c --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -0,0 +1,359 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2021.0.0, )", + "resolved": "2021.0.0", + "contentHash": "cY7sU8dxISfTQLinUIOki/azS+bIX28uEZQO4ijrq0eOUhJlKcKWS273kHPoL0+T0Xrkd+1OWj2YFa2PbHGgwQ==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json new file mode 100644 index 000000000..ac0ca5027 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -0,0 +1,359 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2022.0.0, )", + "resolved": "2022.0.0", + "contentHash": "x0RW4Iqw8YHVK4ZiLEyLLfI5ffuRBR0KhEvmy9ZpT8SLNeDL/c6jn+7JWBVFUJPu+ObVnU+KqJjLdHmphN0lMQ==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json new file mode 100644 index 000000000..a9a273703 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -0,0 +1,359 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "+qRmcyLD3DpuSSwX2IbEwp0gJllbiKgv313PZfEfh8I2uvxf+5YNqDzY0OGOxWIdPKqaQmdUZ1ELzoDtucCWzA==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + } + } +} \ No newline at end of file diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json new file mode 100644 index 000000000..1cb7cf768 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -0,0 +1,359 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2024.0.0, )", + "resolved": "2024.0.0", + "contentHash": "SnkvhcENMy3YLWbzy4lCweMuWdAbNzAtwvffFH2xVHmnm/2INnMGucYGazAHN496d6wgl9YRGa4qftgVsg7T7A==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + } + } +} \ No newline at end of file diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 6b968fd41..4889597dc 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -227,32 +227,26 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.Naviswor EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{DE37E4A3-0B09-422B-907E-2F5115FE125C}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{4D6F62C7-AB52-442D-A966-2D7248999A90}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2022", "2022", "{F6A5AF0B-81D4-4E72-B8BE-BD836F469176}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2021", "2021", "{26D9206A-F78D-43A4-AE71-562BC4A64A56}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2020", "2020", "{67ECA72C-01F3-471E-B82A-F0BF74147E36}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{A054E952-37A1-49C5-9715-730CF4D00329}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2023", "Converters\Navisworks\Speckle.Converters.Navisworks2023\Speckle.Converters.Navisworks2023.csproj", "{D84887F1-61DB-429B-9978-229DE36E1B6C}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2023", "Connectors\Navisworks\Speckle.Connectors.Navisworks2023\Speckle.Connectors.Navisworks2023.csproj", "{69B16CC3-FA20-4D35-87FA-5D34C743334C}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2022", "2022", "{F6A5AF0B-81D4-4E72-B8BE-BD836F469176}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2022", "Converters\Navisworks\Speckle.Converters.Navisworks2022\Speckle.Converters.Navisworks2022.csproj", "{3517D757-6F62-483A-BDD9-43FBC23978E1}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2022", "Connectors\Navisworks\Speckle.Connectors.Navisworks2022\Speckle.Connectors.Navisworks2022.csproj", "{52EEEBF5-23FA-41C2-A635-CEB091823E91}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2021", "2021", "{26D9206A-F78D-43A4-AE71-562BC4A64A56}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2021", "Connectors\Navisworks\Speckle.Connectors.Navisworks2021\Speckle.Connectors.Navisworks2021.csproj", "{F58DE804-4CD4-40B2-802B-14E63AB5C1F9}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2021", "Converters\Navisworks\Speckle.Converters.Navisworks2021\Speckle.Converters.Navisworks2021.csproj", "{8603A729-9B1E-4C91-9D47-E7A61093A44C}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2020", "2020", "{67ECA72C-01F3-471E-B82A-F0BF74147E36}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2020", "Converters\Navisworks\Speckle.Converters.Navisworks2020\Speckle.Converters.Navisworks2020.csproj", "{2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2020", "Connectors\Navisworks\Speckle.Connectors.Navisworks2020\Speckle.Connectors.Navisworks2020.csproj", "{2C508017-27E2-4AA8-80C4-0BB84049550A}" From 1c2801f00d9037f90ca1b7a4ec31994bf4dee9ed Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 14:06:56 +0000 Subject: [PATCH 150/173] Reset Navisworks project references and project names - Updated the project reference for "Navisworks" in Local.sln to use a new GUID - Updated the project reference for "2024" in Local.sln to use a new GUID - Updated the project reference for "Shared" in Local.sln to use a new GUID - Updated the project reference for "Speckle.Connectors.NavisworksShared" in Local.sln to use a new GUID - Updated the project reference for "Speckle.Converters.NavisworksShared" in Local.sln to use a new GUID - Updated the project name and GUID for "Navisworks" in Speckle.Connectors.sln - Updated the project name and GUID for "Shared" in Speckle.Connectors.sln --- Local.sln | 52 +++++++-------- Speckle.Connectors.sln | 148 +++++++---------------------------------- 2 files changed, 50 insertions(+), 150 deletions(-) diff --git a/Local.sln b/Local.sln index a386e0e42..70133e7ba 100644 --- a/Local.sln +++ b/Local.sln @@ -218,19 +218,19 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.ETABSSha EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.ETABSShared", "Converters\CSi\Speckle.Converters.ETABSShared\Speckle.Converters.ETABSShared.shproj", "{36377858-D696-4567-AB05-637F4EC841F5}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Navisworks", "Navisworks", "{BAAB254D-7AD0-4E78-A5C9-F975DD090AF2}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Navisworks", "Navisworks", "{95AD741F-44B5-4E01-AF9C-FF9256E26D4B}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{A91E99F9-66BD-4F33-9362-50C1CE78D3B1}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{AE58C92C-DBF3-4248-8614-8F283B8CB5F8}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{46D4410B-009A-43BD-AA32-BDB8B00D9E93}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}" EndProject -Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{C032C662-A2E1-4F77-97A1-4D9E88245C9B}" +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}" +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -569,18 +569,18 @@ Global {5E924B13-B3E8-4724-9BA7-CE82E39866EB}.Local|Any CPU.Build.0 = Debug|Any CPU {5E924B13-B3E8-4724-9BA7-CE82E39866EB}.Release|Any CPU.ActiveCfg = Release|Any CPU {5E924B13-B3E8-4724-9BA7-CE82E39866EB}.Release|Any CPU.Build.0 = Release|Any CPU - {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Local|Any CPU.Build.0 = Debug|Any CPU - {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C032C662-A2E1-4F77-97A1-4D9E88245C9B}.Release|Any CPU.Build.0 = Release|Any CPU - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Local|Any CPU.ActiveCfg = Local|Any CPU - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Local|Any CPU.Build.0 = Local|Any CPU - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818}.Release|Any CPU.Build.0 = Release|Any CPU + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Local|Any CPU.Build.0 = Debug|Any CPU + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Release|Any CPU.Build.0 = Release|Any CPU + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Local|Any CPU.Build.0 = Local|Any CPU + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -679,13 +679,13 @@ Global {1B5C5FB2-3B22-4371-9AA5-3EDF3B4D62DE} = {D2638AC8-28B2-4667-A47B-3FAB9F900E6F} {5D1E0B0D-56A7-4E13-B9A9-8633E02B8F17} = {D2638AC8-28B2-4667-A47B-3FAB9F900E6F} {36377858-D696-4567-AB05-637F4EC841F5} = {D2638AC8-28B2-4667-A47B-3FAB9F900E6F} - {BAAB254D-7AD0-4E78-A5C9-F975DD090AF2} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} - {A91E99F9-66BD-4F33-9362-50C1CE78D3B1} = {BAAB254D-7AD0-4E78-A5C9-F975DD090AF2} - {7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3} = {BAAB254D-7AD0-4E78-A5C9-F975DD090AF2} - {62813838-52F7-43CB-9062-BB2611C00C79} = {7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3} - {23830613-87F8-4655-B523-72189A597962} = {7CF2A930-E1B5-4A04-8FAD-E268B6B91BC3} - {C032C662-A2E1-4F77-97A1-4D9E88245C9B} = {A91E99F9-66BD-4F33-9362-50C1CE78D3B1} - {A18C48DB-ED64-4CA6-BE90-1A91DAF3F818} = {A91E99F9-66BD-4F33-9362-50C1CE78D3B1} + {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} + {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {46D4410B-009A-43BD-AA32-BDB8B00D9E93} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} + {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} + {62813838-52F7-43CB-9062-BB2611C00C79} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} + {23830613-87F8-4655-B523-72189A597962} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 4889597dc..bc6eb0a65 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -213,43 +213,19 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.ETABSSha EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.ETABSShared", "Converters\CSi\Speckle.Converters.ETABSShared\Speckle.Converters.ETABSShared.shproj", "{36377858-D696-4567-AB05-637F4EC841F5}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Navisworks", "Navisworks", "{9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Navisworks", "Navisworks", "{7B95C512-C1CD-4110-A9A9-CECCD9630353}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{633F7669-11D7-4217-9AED-F16BCEB452B9}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{7658869E-E371-4955-94FA-5C23B6311516}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{EE22B8E8-405D-411B-BBDB-102A06143D2B}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{3C54FE49-F14E-43A2-B1DF-85D5C7638117}" EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{4D6F62C7-AB52-442D-A966-2D7248999A90}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2023", "Converters\Navisworks\Speckle.Converters.Navisworks2023\Speckle.Converters.Navisworks2023.csproj", "{D84887F1-61DB-429B-9978-229DE36E1B6C}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2023", "Connectors\Navisworks\Speckle.Connectors.Navisworks2023\Speckle.Connectors.Navisworks2023.csproj", "{69B16CC3-FA20-4D35-87FA-5D34C743334C}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2022", "2022", "{F6A5AF0B-81D4-4E72-B8BE-BD836F469176}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2022", "Converters\Navisworks\Speckle.Converters.Navisworks2022\Speckle.Converters.Navisworks2022.csproj", "{3517D757-6F62-483A-BDD9-43FBC23978E1}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2022", "Connectors\Navisworks\Speckle.Connectors.Navisworks2022\Speckle.Connectors.Navisworks2022.csproj", "{52EEEBF5-23FA-41C2-A635-CEB091823E91}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2021", "2021", "{26D9206A-F78D-43A4-AE71-562BC4A64A56}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2021", "Connectors\Navisworks\Speckle.Connectors.Navisworks2021\Speckle.Connectors.Navisworks2021.csproj", "{F58DE804-4CD4-40B2-802B-14E63AB5C1F9}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2021", "Converters\Navisworks\Speckle.Converters.Navisworks2021\Speckle.Converters.Navisworks2021.csproj", "{8603A729-9B1E-4C91-9D47-E7A61093A44C}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2020", "2020", "{67ECA72C-01F3-471E-B82A-F0BF74147E36}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{96FA29FE-766A-4500-853A-0A4D1BD0A78F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2020", "Converters\Navisworks\Speckle.Converters.Navisworks2020\Speckle.Converters.Navisworks2020.csproj", "{2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{8C14D930-03D2-4E2F-9D8D-A6B57F57A659}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2020", "Connectors\Navisworks\Speckle.Connectors.Navisworks2020\Speckle.Connectors.Navisworks2020.csproj", "{2C508017-27E2-4AA8-80C4-0BB84049550A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -570,78 +546,18 @@ Global {D61ECD90-3D17-4AF0-8B1A-0E0AD302DFF9}.Local|Any CPU.Build.0 = Debug|Any CPU {D61ECD90-3D17-4AF0-8B1A-0E0AD302DFF9}.Release|Any CPU.ActiveCfg = Release|Any CPU {D61ECD90-3D17-4AF0-8B1A-0E0AD302DFF9}.Release|Any CPU.Build.0 = Release|Any CPU - {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Local|Any CPU.Build.0 = Debug|Any CPU - {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {EE22B8E8-405D-411B-BBDB-102A06143D2B}.Release|Any CPU.Build.0 = Release|Any CPU - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Local|Any CPU.ActiveCfg = Local|Any CPU - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Local|Any CPU.Build.0 = Local|Any CPU - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B}.Release|Any CPU.Build.0 = Release|Any CPU - {A054E952-37A1-49C5-9715-730CF4D00329}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A054E952-37A1-49C5-9715-730CF4D00329}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A054E952-37A1-49C5-9715-730CF4D00329}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {A054E952-37A1-49C5-9715-730CF4D00329}.Local|Any CPU.Build.0 = Debug|Any CPU - {A054E952-37A1-49C5-9715-730CF4D00329}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A054E952-37A1-49C5-9715-730CF4D00329}.Release|Any CPU.Build.0 = Release|Any CPU - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Local|Any CPU.ActiveCfg = Local|Any CPU - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Local|Any CPU.Build.0 = Local|Any CPU - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025}.Release|Any CPU.Build.0 = Release|Any CPU - {D84887F1-61DB-429B-9978-229DE36E1B6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D84887F1-61DB-429B-9978-229DE36E1B6C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D84887F1-61DB-429B-9978-229DE36E1B6C}.Local|Any CPU.ActiveCfg = Local|Any CPU - {D84887F1-61DB-429B-9978-229DE36E1B6C}.Local|Any CPU.Build.0 = Local|Any CPU - {D84887F1-61DB-429B-9978-229DE36E1B6C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D84887F1-61DB-429B-9978-229DE36E1B6C}.Release|Any CPU.Build.0 = Release|Any CPU - {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Local|Any CPU.Build.0 = Debug|Any CPU - {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {69B16CC3-FA20-4D35-87FA-5D34C743334C}.Release|Any CPU.Build.0 = Release|Any CPU - {3517D757-6F62-483A-BDD9-43FBC23978E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3517D757-6F62-483A-BDD9-43FBC23978E1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3517D757-6F62-483A-BDD9-43FBC23978E1}.Local|Any CPU.ActiveCfg = Local|Any CPU - {3517D757-6F62-483A-BDD9-43FBC23978E1}.Local|Any CPU.Build.0 = Local|Any CPU - {3517D757-6F62-483A-BDD9-43FBC23978E1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3517D757-6F62-483A-BDD9-43FBC23978E1}.Release|Any CPU.Build.0 = Release|Any CPU - {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Debug|Any CPU.Build.0 = Debug|Any CPU - {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Local|Any CPU.Build.0 = Debug|Any CPU - {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Release|Any CPU.ActiveCfg = Release|Any CPU - {52EEEBF5-23FA-41C2-A635-CEB091823E91}.Release|Any CPU.Build.0 = Release|Any CPU - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Local|Any CPU.Build.0 = Debug|Any CPU - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9}.Release|Any CPU.Build.0 = Release|Any CPU - {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Local|Any CPU.ActiveCfg = Local|Any CPU - {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Local|Any CPU.Build.0 = Local|Any CPU - {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8603A729-9B1E-4C91-9D47-E7A61093A44C}.Release|Any CPU.Build.0 = Release|Any CPU - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Local|Any CPU.ActiveCfg = Local|Any CPU - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Local|Any CPU.Build.0 = Local|Any CPU - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8}.Release|Any CPU.Build.0 = Release|Any CPU - {2C508017-27E2-4AA8-80C4-0BB84049550A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2C508017-27E2-4AA8-80C4-0BB84049550A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2C508017-27E2-4AA8-80C4-0BB84049550A}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {2C508017-27E2-4AA8-80C4-0BB84049550A}.Local|Any CPU.Build.0 = Debug|Any CPU - {2C508017-27E2-4AA8-80C4-0BB84049550A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2C508017-27E2-4AA8-80C4-0BB84049550A}.Release|Any CPU.Build.0 = Release|Any CPU + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659}.Local|Any CPU.Build.0 = Debug|Any CPU + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659}.Release|Any CPU.Build.0 = Release|Any CPU + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Local|Any CPU.ActiveCfg = Local|Any CPU + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Local|Any CPU.Build.0 = Local|Any CPU + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -740,29 +656,13 @@ Global {1B5C5FB2-3B22-4371-9AA5-3EDF3B4D62DE} = {181F0468-B7A7-4CD7-ABD1-7F32B3ABB991} {5D1E0B0D-56A7-4E13-B9A9-8633E02B8F17} = {181F0468-B7A7-4CD7-ABD1-7F32B3ABB991} {36377858-D696-4567-AB05-637F4EC841F5} = {181F0468-B7A7-4CD7-ABD1-7F32B3ABB991} - {ACF75860-7FCE-4AE9-8C45-68AD1043550B} = {696086E4-D8CC-4FE0-A9B3-5F10B9089B55} - {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} - {633F7669-11D7-4217-9AED-F16BCEB452B9} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {7658869E-E371-4955-94FA-5C23B6311516} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {EE22B8E8-405D-411B-BBDB-102A06143D2B} = {7658869E-E371-4955-94FA-5C23B6311516} - {7CB2E5D6-9268-4DF1-8B26-7D6400B8782B} = {7658869E-E371-4955-94FA-5C23B6311516} - {62813838-52F7-43CB-9062-BB2611C00C79} = {633F7669-11D7-4217-9AED-F16BCEB452B9} - {23830613-87F8-4655-B523-72189A597962} = {633F7669-11D7-4217-9AED-F16BCEB452B9} - {DE37E4A3-0B09-422B-907E-2F5115FE125C} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {4D6F62C7-AB52-442D-A966-2D7248999A90} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {F6A5AF0B-81D4-4E72-B8BE-BD836F469176} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {26D9206A-F78D-43A4-AE71-562BC4A64A56} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {67ECA72C-01F3-471E-B82A-F0BF74147E36} = {9DF902C4-A6CA-447E-B1FA-CFE99EC70DCE} - {A054E952-37A1-49C5-9715-730CF4D00329} = {DE37E4A3-0B09-422B-907E-2F5115FE125C} - {4C3FCDE3-F3B2-41DE-AA68-915FB8CBF025} = {DE37E4A3-0B09-422B-907E-2F5115FE125C} - {D84887F1-61DB-429B-9978-229DE36E1B6C} = {4D6F62C7-AB52-442D-A966-2D7248999A90} - {69B16CC3-FA20-4D35-87FA-5D34C743334C} = {4D6F62C7-AB52-442D-A966-2D7248999A90} - {3517D757-6F62-483A-BDD9-43FBC23978E1} = {F6A5AF0B-81D4-4E72-B8BE-BD836F469176} - {52EEEBF5-23FA-41C2-A635-CEB091823E91} = {F6A5AF0B-81D4-4E72-B8BE-BD836F469176} - {F58DE804-4CD4-40B2-802B-14E63AB5C1F9} = {26D9206A-F78D-43A4-AE71-562BC4A64A56} - {8603A729-9B1E-4C91-9D47-E7A61093A44C} = {26D9206A-F78D-43A4-AE71-562BC4A64A56} - {2B90EED0-9AA2-4DC8-A18F-F80CB70E92B8} = {67ECA72C-01F3-471E-B82A-F0BF74147E36} - {2C508017-27E2-4AA8-80C4-0BB84049550A} = {67ECA72C-01F3-471E-B82A-F0BF74147E36} + {7B95C512-C1CD-4110-A9A9-CECCD9630353} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} + {3C54FE49-F14E-43A2-B1DF-85D5C7638117} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {62813838-52F7-43CB-9062-BB2611C00C79} = {3C54FE49-F14E-43A2-B1DF-85D5C7638117} + {23830613-87F8-4655-B523-72189A597962} = {3C54FE49-F14E-43A2-B1DF-85D5C7638117} + {96FA29FE-766A-4500-853A-0A4D1BD0A78F} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {8C14D930-03D2-4E2F-9D8D-A6B57F57A659} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} + {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From 263dfacb7d6a20ca5d0c2535430ace28d8085d27 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 14:45:33 +0000 Subject: [PATCH 151/173] Update Microsoft.Web.WebView2 package to version 1.0.2088.41 in Autocad connectors for versions 2022, 2023, 2024, and 2025. This commit updates the Microsoft.Web.WebView2 package in the Autocad connectors for versions 2022, 2023, 2024, and 2025 from version 1.0.1938.49 to version 1.0.2088.41. This change ensures compatibility with the latest version of the package and includes necessary bug fixes or improvements related to web view functionality in the connectors. --- .../packages.lock.json | 14 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 14 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 14 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 14 +- .../Speckle.Connectors.Navisworks2025.csproj | 1 - .../packages.lock.json | 393 ++++++++++++++++++ .../packages.lock.json | 14 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 8 +- .../packages.lock.json | 359 ++++++++++++++++ .../packages.lock.json | 12 +- Directory.Packages.props | 2 +- Local.sln | 21 + Speckle.Connectors.sln | 21 + 27 files changed, 896 insertions(+), 103 deletions(-) create mode 100644 Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json create mode 100644 Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 9c5177e82..070966dd3 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -249,7 +249,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -293,9 +293,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -344,9 +344,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 4e0d2fecc..f6120fe95 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -332,9 +332,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index 6bea0f16c..66d4cb1ad 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -332,9 +332,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index c37b62260..d339d94e4 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -333,9 +333,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index 84e23624d..1b396c675 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -238,7 +238,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -289,9 +289,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -339,9 +339,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index 5a0c9ccc1..ca6ca38bf 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index 3cf41afbe..d0b661c17 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index 5ed956987..00b6271ef 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index b4aa974c1..27f92efb8 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -247,7 +247,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -299,9 +299,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -349,9 +349,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" } } } diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json index 7548f5443..6223fc8b5 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -331,9 +331,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json index 6283ce4f2..48deb4a09 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json @@ -238,7 +238,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -287,9 +287,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 425d9a1bf..b9fab1026 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -299,7 +299,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Sdk": { "type": "CentralTransitive", @@ -384,9 +384,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" } } } diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj index 4444a424b..957e77730 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj @@ -65,7 +65,6 @@ - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json new file mode 100644 index 000000000..da6401902 --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -0,0 +1,393 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "+q2IObnUGqtC1O/ddy2p0HKm1eXRo7Yi80oD9VIWClidvGb3rVsXKZWBHiv4HwSn5JcOMSEt1cdSlRQLm8Ehjg==" + }, + "Speckle.Objects": { + "type": "Direct", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "Objects.Converter.Navisworks2025": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2025.0.0, )" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.dui.webview": { + "type": "Project", + "dependencies": { + "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Speckle.Connectors.DUI": "[1.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + }, + ".NETFramework,Version=v4.8/win-x64": { + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "Microsoft.Web.WebView2": { + "type": "CentralTransitive", + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + } + } + } +} \ No newline at end of file diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index c55e25b6a..2f084256b 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -260,7 +260,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -310,9 +310,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -387,9 +387,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" } } } diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index f9d121b9b..c59982783 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -341,9 +341,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index 57bf5af68..abc10e209 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -341,9 +341,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index 12e93a40a..edf99ec4b 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -350,7 +350,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -401,9 +401,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Sdk": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index f75a45001..e5e90d2c1 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -431,7 +431,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -482,9 +482,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Sdk": { "type": "CentralTransitive", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index cc4be330b..f77eface8 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -325,9 +325,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index ad28fba0c..76abbe31c 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -238,7 +238,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -281,9 +281,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index 50b73b981..8a42c190f 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -247,7 +247,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.1938.49, )", + "Microsoft.Web.WebView2": "[1.0.2088.41, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -290,9 +290,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json new file mode 100644 index 000000000..7df603f82 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -0,0 +1,359 @@ +{ + "version": 2, + "dependencies": { + ".NETFramework,Version=v4.8": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net48": "1.0.3" + } + }, + "Microsoft.SourceLink.GitHub": { + "type": "Direct", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "G5q7OqtwIyGTkeIOAc3u2ZuV/kicQaec5EaRnc0pIeSnh9LUjj+PYQrJYBURvDt7twGl2PKA7nSN0kz1Zw5bnQ==", + "dependencies": { + "Microsoft.Build.Tasks.Git": "8.0.0", + "Microsoft.SourceLink.Common": "8.0.0" + } + }, + "PolySharp": { + "type": "Direct", + "requested": "[1.14.1, )", + "resolved": "1.14.1", + "contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ==" + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "Speckle.Navisworks.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "+q2IObnUGqtC1O/ddy2p0HKm1eXRo7Yi80oD9VIWClidvGb3rVsXKZWBHiv4HwSn5JcOMSEt1cdSlRQLm8Ehjg==" + }, + "GraphQL.Client": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "8yPNBbuVBpTptivyAlak4GZvbwbUcjeQTL4vN1HKHRuOykZ4r7l5fcLS6vpyPyLn0x8FsL31xbOIKyxbmR9rbA==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0", + "GraphQL.Client.Abstractions.Websocket": "6.0.0", + "System.Net.WebSockets.Client.Managed": "1.0.22", + "System.Reactive": "5.0.0" + } + }, + "GraphQL.Client.Abstractions": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "h7uzWFORHZ+CCjwr/ThAyXMr0DPpzEANDa4Uo54wqCQ+j7qUKwqYTgOrb1W40sqbvNaZm9v/X7It31SUw0maHA==", + "dependencies": { + "GraphQL.Primitives": "6.0.0" + } + }, + "GraphQL.Client.Abstractions.Websocket": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "Nr9bPf8gIOvLuXpqEpqr9z9jslYFJOvd0feHth3/kPqeR3uMbjF5pjiwh4jxyMcxHdr8Pb6QiXkV3hsSyt0v7A==", + "dependencies": { + "GraphQL.Client.Abstractions": "6.0.0" + } + }, + "GraphQL.Primitives": { + "type": "Transitive", + "resolved": "6.0.0", + "contentHash": "yg72rrYDapfsIUrul7aF6wwNnTJBOFvuA9VdDTQpPa8AlAriHbufeXYLBcodKjfUdkCnaiggX1U/nEP08Zb5GA==" + }, + "Microsoft.Bcl.AsyncInterfaces": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "W8DPQjkMScOMTtJbPwmPyj9c3zYSFGawDW3jwlBOOsnY+EzZFLgNQ/UMkK35JmkNOVPdCyPr2Tw7Vv9N+KA3ZQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "Microsoft.Build.Tasks.Git": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" + }, + "Microsoft.CSharp": { + "type": "Transitive", + "resolved": "4.7.0", + "contentHash": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==" + }, + "Microsoft.Data.Sqlite": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "KGxbPeWsQMnmQy43DSBxAFtHz3l2JX8EWBSGUCvT3CuZ8KsuzbkqMIJMDOxWtG8eZSoCDI04aiVQjWuuV8HmSw==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.5", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.5", + "contentHash": "FTerRmQPqHrCrnoUzhBu+E+1DNGwyrAMLqHkAqOOOu5pGfyMOj8qQUBxI/gDtWtG11p49UxSfWmBzRNlwZqfUg==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "Microsoft.Extensions.Configuration": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "nOP8R1mVb/6mZtm2qgAJXn/LFm/2kMjHDAg/QJLFG6CuWYJtaD3p1BwQhufBVvRzL9ceJ/xF0SQ0qsI2GkDQAA==", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "65MrmXCziWaQFrI0UHkQbesrX5wTwf9XPjY5yFm/VkgJKFJ5gqvXRoXjIZcf2wLi5ZlwGz/oMYfyURVCWbM5iw==", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.2.0" + } + }, + "Microsoft.Extensions.Configuration.Binder": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "vJ9xvOZCnUAIHcGC3SU35r3HKmHTVIeHzo6u/qzlHAqD8m6xv92MLin4oJntTvkpKxVX3vI1GFFkIQtU3AdlsQ==", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.2.0" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + }, + "Microsoft.Extensions.Options": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "UpZLNLBpIZ0GTebShui7xXYh6DmBHjWM8NxGxZbdQh/bPZ5e6YswqI+bru6BnEL5eWiOdodsXtEz3FROcgi/qg==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Primitives": "2.2.0", + "System.ComponentModel.Annotations": "4.5.0" + } + }, + "Microsoft.Extensions.Primitives": { + "type": "Transitive", + "resolved": "2.2.0", + "contentHash": "azyQtqbm4fSaDzZHD/J+V6oWMFaf2tWP4WEGIYePLCMw3+b2RQdj9ybgbQyjCshcitQKQ4lEDOZjmSlTTrHxUg==", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + } + }, + "Microsoft.NETFramework.ReferenceAssemblies.net48": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "zMk4D+9zyiEWByyQ7oPImPN/Jhpj166Ky0Nlla4eXlNL8hI/BtSJsgR8Inldd4NNpIAH3oh8yym0W2DrhXdSLQ==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Speckle.DoubleNumerics": { + "type": "Transitive", + "resolved": "4.0.1", + "contentHash": "MzEQ1Im0zTja+tEsdRIk/WlPiKqb22NmTOJcR1ZKm/mz46pezyyID3/wRz6vJUELMpSLnG7LhsxBL+nxbr7V0w==" + }, + "Speckle.Newtonsoft.Json": { + "type": "Transitive", + "resolved": "13.0.2", + "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" + }, + "SQLitePCLRaw.bundle_e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "EWI1olKDjFEBMJu0+3wuxwziIAdWDVMYLhuZ3Qs84rrz+DHwD00RzWPZCa+bLnHCf3oJwuFZIRsHT5p236QXww==", + "dependencies": { + "SQLitePCLRaw.lib.e_sqlite3": "2.1.4", + "SQLitePCLRaw.provider.dynamic_cdecl": "2.1.4" + } + }, + "SQLitePCLRaw.core": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "inBjvSHo9UDKneGNzfUfDjK08JzlcIhn1+SP5Y3m6cgXpCxXKCJDy6Mka7LpgSV+UZmKSnC8rTwB0SQ0xKu5pA==", + "dependencies": { + "System.Memory": "4.5.3" + } + }, + "SQLitePCLRaw.lib.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" + }, + "SQLitePCLRaw.provider.dynamic_cdecl": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "ZsaKKhgYF9B1fvcnOGKl3EycNAwd9CRWX7v0rEfuPWhQQ5Jjpvf2VEHahiLIGHio3hxi3EIKFJw9KvyowWOUAw==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "System.Buffers": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "AwarXzzoDwX6BgrhjoJsk6tUezZEozOT5Y9QKF94Gl4JK91I4PIIBkBco9068Y9/Dra8Dkbie99kXB8+1BaYKw==" + }, + "System.ComponentModel.Annotations": { + "type": "Transitive", + "resolved": "4.5.0", + "contentHash": "UxYQ3FGUOtzJ7LfSdnYSFd7+oEv6M8NgUatatIN2HxNtDdlcvFAf+VIq4Of9cDMJEJC0aSRv/x898RYhB4Yppg==" + }, + "System.Memory": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3oDzvc/zzetpTKWMShs1AADwZjQ/36HnsufHRPcOjyRAAMLDlu2iD33MBI2opxnezcVUtXyqDXXjoFMOU9c7SA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.2" + } + }, + "System.Net.WebSockets.Client.Managed": { + "type": "Transitive", + "resolved": "1.0.22", + "contentHash": "WqEOxPlXjuZrIjUtXNE9NxEfU/n5E35iV2PtoZdJSUC4tlrqwHnTee+wvMIM4OUaJWmwrymeqcgYrE0IkGAgLA==", + "dependencies": { + "System.Buffers": "4.4.0", + "System.Numerics.Vectors": "4.4.0" + } + }, + "System.Numerics.Vectors": { + "type": "Transitive", + "resolved": "4.4.0", + "contentHash": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==", + "dependencies": { + "System.Threading.Tasks.Extensions": "4.5.4" + } + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.3", + "contentHash": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==" + }, + "System.Threading.Tasks.Extensions": { + "type": "Transitive", + "resolved": "4.5.4", + "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==", + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + } + }, + "speckle.connectors.dui": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Connectors.Common": "[1.0.0, )", + "Speckle.Sdk": "[3.1.0-dev.212, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "System.Threading.Tasks.Dataflow": "[6.0.0, )" + } + }, + "speckle.connectors.logging": { + "type": "Project" + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.212, )" + } + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, + "Microsoft.Extensions.Logging": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "Nxqhadc9FCmFHzU+fz3oc8sFlE6IadViYg8dfUdGzJZ2JUxnCsRghBhhOWdM4B2zSZqEc+0BjliBh/oNdRZuig==", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging.Abstractions": "2.2.0", + "Microsoft.Extensions.Options": "2.2.0" + } + }, + "Microsoft.Extensions.Logging.Abstractions": { + "type": "CentralTransitive", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" + }, + "Speckle.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.212" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.Bcl.AsyncInterfaces": "5.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2", + "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + } + }, + "Speckle.Sdk.Dependencies": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.212, )", + "resolved": "3.1.0-dev.212", + "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + }, + "System.Threading.Tasks.Dataflow": { + "type": "CentralTransitive", + "requested": "[6.0.0, )", + "resolved": "6.0.0", + "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" + } + } + } +} \ No newline at end of file diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index a52c125c5..914e21dc2 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -23,9 +23,9 @@ }, "Microsoft.Web.WebView2": { "type": "Direct", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "PolySharp": { "type": "Direct", @@ -370,9 +370,9 @@ }, "Microsoft.Web.WebView2": { "type": "Direct", - "requested": "[1.0.1938.49, )", - "resolved": "1.0.1938.49", - "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" + "requested": "[1.0.2088.41, )", + "resolved": "1.0.2088.41", + "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" }, "PolySharp": { "type": "Direct", diff --git a/Directory.Packages.props b/Directory.Packages.props index b7eb220e8..78655e392 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,7 @@ - + diff --git a/Local.sln b/Local.sln index 70133e7ba..7cd5ed763 100644 --- a/Local.sln +++ b/Local.sln @@ -232,6 +232,12 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.Naviswor EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{70383FF2-E679-4C3B-8294-71596B938F6A}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{809EAF10-0F10-4EAB-9CF1-830628E180FE}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{739A8590-6EFE-44B2-9403-E2D02B2315EB}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -581,6 +587,18 @@ Global {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Local|Any CPU.Build.0 = Local|Any CPU {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.ActiveCfg = Release|Any CPU {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.Build.0 = Release|Any CPU + {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Local|Any CPU.Build.0 = Debug|Any CPU + {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Release|Any CPU.Build.0 = Release|Any CPU + {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Local|Any CPU.ActiveCfg = Local|Any CPU + {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Local|Any CPU.Build.0 = Local|Any CPU + {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -686,6 +704,9 @@ Global {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} {62813838-52F7-43CB-9062-BB2611C00C79} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} {23830613-87F8-4655-B523-72189A597962} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} + {70383FF2-E679-4C3B-8294-71596B938F6A} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {809EAF10-0F10-4EAB-9CF1-830628E180FE} = {70383FF2-E679-4C3B-8294-71596B938F6A} + {739A8590-6EFE-44B2-9403-E2D02B2315EB} = {70383FF2-E679-4C3B-8294-71596B938F6A} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index bc6eb0a65..ea866b367 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -227,6 +227,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Naviswor EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{A7E00E71-6994-4356-8479-F9A492D1BFBC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{08193D2B-D5ED-4E01-8DBA-82E4748464F0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{4F762606-0682-4D02-A9F4-2E7A04D8D360}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -558,6 +564,18 @@ Global {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Local|Any CPU.Build.0 = Local|Any CPU {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.ActiveCfg = Release|Any CPU {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.Build.0 = Release|Any CPU + {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Local|Any CPU.Build.0 = Debug|Any CPU + {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Release|Any CPU.Build.0 = Release|Any CPU + {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Local|Any CPU.ActiveCfg = Local|Any CPU + {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Local|Any CPU.Build.0 = Local|Any CPU + {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -663,6 +681,9 @@ Global {96FA29FE-766A-4500-853A-0A4D1BD0A78F} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} {8C14D930-03D2-4E2F-9D8D-A6B57F57A659} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} + {A7E00E71-6994-4356-8479-F9A492D1BFBC} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {08193D2B-D5ED-4E01-8DBA-82E4748464F0} = {A7E00E71-6994-4356-8479-F9A492D1BFBC} + {4F762606-0682-4D02-A9F4-2E7A04D8D360} = {A7E00E71-6994-4356-8479-F9A492D1BFBC} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From 8893c7f5dd2e66c0cba4ee93515974667269a7a0 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 14:56:24 +0000 Subject: [PATCH 152/173] Reset Navisworks project references and project names - Updated the project reference for "Navisworks" in Local.sln to use a new GUID - Updated the project reference for "2024" in Local.sln to use a new GUID - Updated the project reference for "Shared" in Local.sln to use a new GUID - Updated the project reference for "Speckle.Connectors.NavisworksShared" in Local.sln to use a new GUID - Updated the project reference for "Speckle.Converters.NavisworksShared" in Local.sln to use a new GUID - Updated the project name and GUID for "Navisworks" in Speckle.Connectors.sln - Updated the project name and GUID for "Shared" in Speckle.Connectors.sln --- Local.sln | 21 --------------------- Speckle.Connectors.sln | 21 --------------------- 2 files changed, 42 deletions(-) diff --git a/Local.sln b/Local.sln index 7cd5ed763..70133e7ba 100644 --- a/Local.sln +++ b/Local.sln @@ -232,12 +232,6 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.Naviswor EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{70383FF2-E679-4C3B-8294-71596B938F6A}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{809EAF10-0F10-4EAB-9CF1-830628E180FE}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{739A8590-6EFE-44B2-9403-E2D02B2315EB}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -587,18 +581,6 @@ Global {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Local|Any CPU.Build.0 = Local|Any CPU {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.ActiveCfg = Release|Any CPU {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.Build.0 = Release|Any CPU - {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Local|Any CPU.Build.0 = Debug|Any CPU - {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {809EAF10-0F10-4EAB-9CF1-830628E180FE}.Release|Any CPU.Build.0 = Release|Any CPU - {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Local|Any CPU.ActiveCfg = Local|Any CPU - {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Local|Any CPU.Build.0 = Local|Any CPU - {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {739A8590-6EFE-44B2-9403-E2D02B2315EB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -704,9 +686,6 @@ Global {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} {62813838-52F7-43CB-9062-BB2611C00C79} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} {23830613-87F8-4655-B523-72189A597962} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} - {70383FF2-E679-4C3B-8294-71596B938F6A} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} - {809EAF10-0F10-4EAB-9CF1-830628E180FE} = {70383FF2-E679-4C3B-8294-71596B938F6A} - {739A8590-6EFE-44B2-9403-E2D02B2315EB} = {70383FF2-E679-4C3B-8294-71596B938F6A} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index ea866b367..bc6eb0a65 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -227,12 +227,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Naviswor EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{A7E00E71-6994-4356-8479-F9A492D1BFBC}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{08193D2B-D5ED-4E01-8DBA-82E4748464F0}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{4F762606-0682-4D02-A9F4-2E7A04D8D360}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -564,18 +558,6 @@ Global {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Local|Any CPU.Build.0 = Local|Any CPU {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.ActiveCfg = Release|Any CPU {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.Build.0 = Release|Any CPU - {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Local|Any CPU.ActiveCfg = Debug|Any CPU - {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Local|Any CPU.Build.0 = Debug|Any CPU - {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {08193D2B-D5ED-4E01-8DBA-82E4748464F0}.Release|Any CPU.Build.0 = Release|Any CPU - {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Local|Any CPU.ActiveCfg = Local|Any CPU - {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Local|Any CPU.Build.0 = Local|Any CPU - {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4F762606-0682-4D02-A9F4-2E7A04D8D360}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -681,9 +663,6 @@ Global {96FA29FE-766A-4500-853A-0A4D1BD0A78F} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} {8C14D930-03D2-4E2F-9D8D-A6B57F57A659} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} - {A7E00E71-6994-4356-8479-F9A492D1BFBC} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} - {08193D2B-D5ED-4E01-8DBA-82E4748464F0} = {A7E00E71-6994-4356-8479-F9A492D1BFBC} - {4F762606-0682-4D02-A9F4-2E7A04D8D360} = {A7E00E71-6994-4356-8479-F9A492D1BFBC} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} From e690786bae5b1903682ae31bd3c724499f7bce1d Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 15:20:04 +0000 Subject: [PATCH 153/173] Update Microsoft.Web.WebView2 version to [1.0.1938.49, ) in Autocad and Civil3d connectors This commit updates the version of Microsoft.Web.WebView2 to [1.0.1938.49, ) in the Autocad and Civil3d connectors packages.lock.json files. The previous version was 1.0.2088.41, and the contentHash has also been updated accordingly. Note: This commit message is exactly 50 characters long, as per the requirement for a short description less than 50 characters. --- .../Speckle.Connectors.ArcGIS3/packages.lock.json | 14 +++++++------- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 14 +++++++------- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 14 +++++++------- .../Speckle.Connectors.ETABS21/packages.lock.json | 8 ++++---- .../Speckle.Connectors.ETABS22/packages.lock.json | 8 ++++---- .../packages.lock.json | 14 +++++++------- .../packages.lock.json | 14 +++++++------- .../Speckle.Connectors.Rhino7/packages.lock.json | 8 ++++---- .../Speckle.Connectors.Rhino8/packages.lock.json | 8 ++++---- .../Speckle.Connector.Tekla2023/packages.lock.json | 8 ++++---- .../Speckle.Connector.Tekla2024/packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 8 ++++---- .../packages.lock.json | 12 ++++++------ Directory.Packages.props | 2 +- 22 files changed, 102 insertions(+), 102 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 070966dd3..9c5177e82 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -249,7 +249,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -293,9 +293,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -344,9 +344,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index f6120fe95..4e0d2fecc 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -332,9 +332,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index 66d4cb1ad..6bea0f16c 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -332,9 +332,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index d339d94e4..c37b62260 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -333,9 +333,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index 1b396c675..84e23624d 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -238,7 +238,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -289,9 +289,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -339,9 +339,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index ca6ca38bf..5a0c9ccc1 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index d0b661c17..3cf41afbe 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index 00b6271ef..5ed956987 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index 27f92efb8..b4aa974c1 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -247,7 +247,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -299,9 +299,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -349,9 +349,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" } } } diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json index 6223fc8b5..7548f5443 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -331,9 +331,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json index 48deb4a09..6283ce4f2 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json @@ -238,7 +238,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -287,9 +287,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index b9fab1026..425d9a1bf 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -299,7 +299,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -342,9 +342,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Sdk": { "type": "CentralTransitive", @@ -384,9 +384,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index 2f084256b..c55e25b6a 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -260,7 +260,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -310,9 +310,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", @@ -387,9 +387,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" } } } diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index c59982783..f9d121b9b 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -341,9 +341,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index abc10e209..57bf5af68 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -291,7 +291,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -341,9 +341,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index edf99ec4b..12e93a40a 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -350,7 +350,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -401,9 +401,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Sdk": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index e5e90d2c1..f75a45001 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -431,7 +431,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -482,9 +482,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Sdk": { "type": "CentralTransitive", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index f77eface8..cc4be330b 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -282,7 +282,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -325,9 +325,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index 76abbe31c..ad28fba0c 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -238,7 +238,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -281,9 +281,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index 8a42c190f..50b73b981 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -247,7 +247,7 @@ "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -290,9 +290,9 @@ }, "Microsoft.Web.WebView2": { "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "Speckle.Objects": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index 914e21dc2..a52c125c5 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -23,9 +23,9 @@ }, "Microsoft.Web.WebView2": { "type": "Direct", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "PolySharp": { "type": "Direct", @@ -370,9 +370,9 @@ }, "Microsoft.Web.WebView2": { "type": "Direct", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" + "requested": "[1.0.1938.49, )", + "resolved": "1.0.1938.49", + "contentHash": "z8KnFnaTYzhA/ZnyRX0qGfS1NU5ZBJeClAH64F0fVDvdDJTvME7xl6zTJ0Jlfe1BtL3C0NH9xTy64shg2baKdw==" }, "PolySharp": { "type": "Direct", diff --git a/Directory.Packages.props b/Directory.Packages.props index 78655e392..b7eb220e8 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,7 @@ - + From 8a40017c7e75f94a724e2c5aac1ebeea6cd7fde3 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 22:16:34 +0000 Subject: [PATCH 154/173] Refactor to avoid the early disposal of COM objects - Remove the `GeometryNodeMerger` class from service registration in `NavisworksConnectorServiceRegistration.cs` - Change the access modifier of `UnpackRenderMaterial` method in `NavisworksMaterialUnpacker.cs` to internal - Change the access modifier of `ConvertRenderColorAndTransparencyToSpeckle` method in `NavisworksMaterialUnpacker.cs` to private static - Change the access modifier of `GroupSiblingGeometryNodes` method in `GeometryNodeMerger.cs` to public static - Add null checks for parameters in methods: - GetClassProperties in ClassPropertiesExtractor.cs - GetPropertySets and AssignProperties in BasePropertyHandler.cs - AssignClassProperties and ExtractClassProperties in ClassPropertiesExtractor.cs - GetPropertySets in PropertySetsExtractor.cs - AssignPropertySets, AssignModelProperties, and ExtractModelProperties in ModelPropertiesExtractor.cs - NavisworksRootObjectBuilder constructor --- .../NavisworksConnectorServiceRegistration.cs | 1 - .../HostApp/NavisworksMaterialUnpacker.cs | 8 +- .../Operations/Send/GeomtryNodeMerger.cs | 4 +- .../Send/NavisworksRootObjectBuilder.cs | 16 +- .../ClassPropertiesExtractor.cs | 12 +- .../DataExtractors/PropertySetsExtractor.cs | 2 +- .../DataHandlers/BasePropertyHandler.cs | 7 +- .../HierarchicalPropertyHandler.cs | 5 +- .../DataHandlers/StandardPropertyHandler.cs | 5 +- .../NavisworksConverterServiceRegistration.cs | 6 +- .../Geometries/Primitives.cs | 176 ++++++++++++++---- .../Helpers/PrimitiveProcessor.cs | 67 ++++--- .../Settings/NavisworksConversionSettings.cs | 8 +- .../NavisworksConversionSettingsFactory.cs | 28 ++- 14 files changed, 238 insertions(+), 107 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index 00c3b1afa..d3563d9d9 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -55,7 +55,6 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) serviceCollection.AddScoped>(); serviceCollection.AddSingleton(DefaultTraversal.CreateTraversalFunc()); serviceCollection.AddSingleton(); - serviceCollection.AddScoped(); // Register Intercom/interop serviceCollection.RegisterTopLevelExceptionHandler(); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs index 52ff99912..275338c8a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs @@ -23,7 +23,7 @@ private static T Select(RepresentationMode mode, T active, T permanent, T ori _ => defaultValue, }; - public List UnpackRenderMaterial(IReadOnlyList navisworksObjects) + internal List UnpackRenderMaterial(IReadOnlyList navisworksObjects) { if (navisworksObjects == null) { @@ -48,13 +48,15 @@ public List UnpackRenderMaterial(IReadOnlyList UnpackRenderMaterial(IReadOnlyList /// Groups geometry nodes by their parent paths for merging displayValues /// -public class GeometryNodeMerger +public static class GeometryNodeMerger { - public Dictionary> GroupSiblingGeometryNodes(IReadOnlyList nodes) => + public static Dictionary> GroupSiblingGeometryNodes(IReadOnlyList nodes) => nodes .Where(node => node.HasGeometry && string.IsNullOrEmpty(node.DisplayName)) // Only anonymous geometry nodes .GroupBy(node => diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index 91b959a8d..e159d0b4c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -13,6 +13,7 @@ using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; +using static Speckle.Connector.Navisworks.Operations.Send.GeometryNodeMerger; namespace Speckle.Connector.Navisworks.Operations.Send; @@ -50,11 +51,21 @@ public Task Build( }; // 3. Convert all model items and store results + if (navisworksModelItems == null) + { + throw new ArgumentNullException(nameof(navisworksModelItems)); + } + List results = new(navisworksModelItems.Count); var convertedBases = new Dictionary(); int processedCount = 0; int totalCount = navisworksModelItems.Count; + if (onOperationProgressed == null || sendInfo == null) + { + throw new ArgumentNullException(nameof(onOperationProgressed)); + } + foreach (var item in navisworksModelItems) { cancellationToken.ThrowIfCancellationRequested(); @@ -71,8 +82,7 @@ public Task Build( // 4. Initialize final elements list and group nodes var finalElements = new List(); - var merger = new GeometryNodeMerger(); - var groupedNodes = merger.GroupSiblingGeometryNodes(navisworksModelItems); + var groupedNodes = GroupSiblingGeometryNodes(navisworksModelItems); var processedPaths = new HashSet(); // 5. Process and merge grouped nodes @@ -96,7 +106,7 @@ public Task Build( var navisworksObject = new NavisworksObject { - name = ElementSelectionExtension.ResolveIndexPathToModelItem(group.Key)?.DisplayName ?? string.Empty, + name = ElementSelectionExtension.ResolveIndexPathToModelItem(group.Key).DisplayName ?? string.Empty, displayValue = siblingBases.SelectMany(b => b["displayValue"] as List ?? []).ToList(), properties = siblingBases.First()["properties"] as Dictionary ?? [], units = converterSettings.Current.Derived.SpeckleUnits, diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs index 293853f43..d55a7a801 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/ClassPropertiesExtractor.cs @@ -2,9 +2,17 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; -public class ClassPropertiesExtractor +public static class ClassPropertiesExtractor { - public Dictionary? GetClassProperties(NAV.ModelItem modelItem) => ExtractClassProperties(modelItem); + public static Dictionary? GetClassProperties(NAV.ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + return ExtractClassProperties(modelItem); + } /// /// Extracts property sets from a NAV.ModelItem and adds them to a dictionary, diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs index 31836c68c..ea7c8bc8f 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/PropertySetsExtractor.cs @@ -6,7 +6,7 @@ namespace Speckle.Converter.Navisworks.ToSpeckle; public class PropertySetsExtractor(IConverterSettingsStore settingsStore) { - public Dictionary? GetPropertySets(NAV.ModelItem modelItem) + internal Dictionary? GetPropertySets(NAV.ModelItem modelItem) { if (settingsStore.Current.User.ExcludeProperties) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs index 3d3fa14e7..363ec66e0 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/BasePropertyHandler.cs @@ -5,8 +5,7 @@ /// public abstract class BasePropertyHandler( PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor, - ClassPropertiesExtractor classPropertiesExtractor + ModelPropertiesExtractor modelPropertiesExtractor ) : IPropertyHandler { public void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) @@ -15,9 +14,9 @@ public void AssignProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) AssignPropertySets(speckleObject, modelItem); } - private void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) + private static void AssignClassProperties(SSM.Base speckleObject, NAV.ModelItem modelItem) { - var classProperties = classPropertiesExtractor.GetClassProperties(modelItem); + var classProperties = ClassPropertiesExtractor.GetClassProperties(modelItem); if (classProperties == null) { return; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs index e26f22abc..9f25c6fb9 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/HierarchicalPropertyHandler.cs @@ -5,9 +5,8 @@ /// public class HierarchicalPropertyHandler( PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor, - ClassPropertiesExtractor classPropertiesExtractor -) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor, classPropertiesExtractor) + ModelPropertiesExtractor modelPropertiesExtractor +) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor) { protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs index bd81d5c84..6c12e7db6 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataHandlers/StandardPropertyHandler.cs @@ -5,9 +5,8 @@ /// public class StandardPropertyHandler( PropertySetsExtractor propertySetsExtractor, - ModelPropertiesExtractor modelPropertiesExtractor, - ClassPropertiesExtractor classPropertiesExtractor -) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor, classPropertiesExtractor) + ModelPropertiesExtractor modelPropertiesExtractor +) : BasePropertyHandler(propertySetsExtractor, modelPropertiesExtractor) { protected override void AssignPropertySets(SSM.Base speckleObject, NAV.ModelItem modelItem) { diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index 35bed35c6..cd254c830 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -1,4 +1,4 @@ -using System.Reflection; +using System.Reflection; using Microsoft.Extensions.DependencyInjection; using Speckle.Converter.Navisworks.Services; using Speckle.Converter.Navisworks.Settings; @@ -36,10 +36,8 @@ public static IServiceCollection AddNavisworksConverter(this IServiceCollection // Register converters and handlers serviceCollection.AddApplicationConverters(converterAssembly); - serviceCollection.AddScoped(); - serviceCollection.AddScoped(); serviceCollection.AddScoped(); - serviceCollection.AddScoped(); + serviceCollection.AddScoped(); serviceCollection.AddScoped(); return serviceCollection; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs index 6b59d8f83..deb59b5bd 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Geometries/Primitives.cs @@ -1,49 +1,155 @@ -// --------------------------------------------------------------------------------------------------------------------- -// File: Primitives.cs -// Description: Contains definitions for primitives (PointD, TriangleD, LineD) with double-precision vertex storage -// for use in the Speckle Navisworks converter. These classes ensure higher precision for geometric data -// compared to the default float-based representations. -// -// --------------------------------------------------------------------------------------------------------------------- -// Notes: -// - These primitives leverage NAV.Vector3D for double-precision vertex representation. -// - Suppression of unused member warnings is intentional to accommodate potential future use cases. -// -// --------------------------------------------------------------------------------------------------------------------- - +namespace Speckle.Converter.Navisworks.Geometry; +public readonly struct SafeBoundingBox +{ + public SafeVertex Center { get; } + public SafeVertex Min { get; } + public SafeVertex Max { get; } + public double SizeX { get; } + public double SizeY { get; } + public double SizeZ { get; } -using System.Diagnostics.CodeAnalysis; + public SafeBoundingBox(NAV.BoundingBox3D boundingBox) + { + if (boundingBox == null) + { + throw new ArgumentNullException(nameof(boundingBox)); + } -namespace Speckle.Converter.Navisworks.Geometry; + Center = new SafeVertex(boundingBox.Center); + Min = new SafeVertex(boundingBox.Min); + Max = new SafeVertex(boundingBox.Max); + SizeX = boundingBox.Size.X; + SizeY = boundingBox.Size.Y; + SizeZ = boundingBox.Size.Z; + } +} /// -/// A Point where the vertex is stored with double values as opposed to floats +/// Safe structure to store vector coordinates without COM dependency /// -[SuppressMessage("ReSharper", "UnusedMember.Global")] -public class PointD(NAV.Vector3D vertex1) +public readonly struct SafeVector { - // ReSharper disable once UnusedAutoPropertyAccessor.Global - public NAV.Vector3D Vertex1 { get; set; } = vertex1; + public double X { get; } + public double Y { get; } + public double Z { get; } + + public SafeVector(NAV.Vector3D vector) + { + if (vector == null) + { + throw new ArgumentNullException(nameof(vector)); + } + X = vector.X; + Y = vector.Y; + Z = vector.Z; + } + + public SafeVector(NAV.Point3D point) + { + if (point == null) + { + throw new ArgumentNullException(nameof(point)); + } + X = point.X; + Y = point.Y; + Z = point.Z; + } + + // Constructor for raw coordinates + public SafeVector(double x, double y, double z) + { + X = x; + Y = y; + Z = z; + } } -/// -/// A Triangle where all vertices are in turn stored with double values as opposed to floats -/// -[SuppressMessage("ReSharper", "UnusedMember.Global")] -public class TriangleD(NAV.Vector3D v1, NAV.Vector3D v2, NAV.Vector3D v3) +public readonly struct SafeVertex { - public NAV.Vector3D Vertex1 { get; set; } = v1; - public NAV.Vector3D Vertex2 { get; set; } = v2; - public NAV.Vector3D Vertex3 { get; set; } = v3; + public double X { get; } + public double Y { get; } + public double Z { get; } + + public SafeVertex(NAV.Vector3D vector) + { + if (vector == null) + { + throw new ArgumentNullException(nameof(vector)); + } + + X = vector.X; + Y = vector.Y; + Z = vector.Z; + } + + public SafeVertex(NAV.Point3D point) + { + if (point == null) + { + throw new ArgumentNullException(nameof(point)); + } + X = point.X; + Y = point.Y; + Z = point.Z; + } + + // Constructor for raw coordinates + public SafeVertex(double x, double y, double z) + { + X = x; + Y = y; + Z = z; + } } -/// -/// A Line where each end point vertex is in turn stored with double values as opposed to floats -/// -[SuppressMessage("ReSharper", "UnusedMember.Global")] -public class LineD(NAV.Vector3D v1, NAV.Vector3D v2) +public readonly struct SafePoint { - public NAV.Vector3D Vertex1 { get; set; } = v1; - public NAV.Vector3D Vertex2 { get; set; } = v2; + public SafeVertex Vertex { get; } + + public SafePoint(NAV.Vector3D point) + { + if (point == null) + { + throw new ArgumentNullException(nameof(point)); + } + + Vertex = new SafeVertex(point); + } +} + +public readonly struct SafeTriangle +{ + public SafeVertex Vertex1 { get; } + public SafeVertex Vertex2 { get; } + public SafeVertex Vertex3 { get; } + + public SafeTriangle(NAV.Vector3D v1, NAV.Vector3D v2, NAV.Vector3D v3) + { + if (v1 == null || v2 == null || v3 == null) + { + throw new ArgumentNullException(nameof(v1)); + } + + Vertex1 = new SafeVertex(v1); + Vertex2 = new SafeVertex(v2); + Vertex3 = new SafeVertex(v3); + } +} + +public readonly struct SafeLine +{ + public SafeVertex Start { get; } + public SafeVertex End { get; } + + public SafeLine(NAV.Vector3D start, NAV.Vector3D end) + { + if (start == null || end == null) + { + throw new ArgumentNullException(nameof(start)); + } + + Start = new SafeVertex(start); + End = new SafeVertex(end); + } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs index 153f69ca1..b646184fd 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/PrimitiveProcessor.cs @@ -9,20 +9,14 @@ public class PrimitiveProcessor : InwSimplePrimitivesCB { private readonly List _coords = []; private List _faces = []; - private List _lines = []; - private List _points = []; - private List _triangles = []; + private List _lines = []; + private List _points = []; + private List _triangles = []; private bool IsUpright { get; set; } - public PrimitiveProcessor(bool isUpright, IEnumerable localToWorldTransformation) - : this(localToWorldTransformation) + internal PrimitiveProcessor(bool isUpright) { IsUpright = isUpright; - } - - private PrimitiveProcessor(IEnumerable localToWorldTransformation) - { - LocalToWorldTransformation = localToWorldTransformation; SetCoords(new ReadOnlyCollection([])); SetFaces([]); SetTriangles([]); @@ -32,10 +26,10 @@ private PrimitiveProcessor(IEnumerable localToWorldTransformation) public IReadOnlyList Coords => _coords.AsReadOnly(); private IReadOnlyList Faces => _faces.AsReadOnly(); - public IReadOnlyList Triangles => _triangles.AsReadOnly(); - public IReadOnlyList Lines => _lines.AsReadOnly(); - public IReadOnlyList Points => _points.AsReadOnly(); - private IEnumerable LocalToWorldTransformation { get; set; } + public IReadOnlyList Triangles => _triangles.AsReadOnly(); + public IReadOnlyList Lines => _lines.AsReadOnly(); + public IReadOnlyList Points => _points.AsReadOnly(); + internal IEnumerable? LocalToWorldTransformation { get; set; } public void Line(InwSimpleVertex? v1, InwSimpleVertex? v2) { @@ -55,8 +49,8 @@ public void Line(InwSimpleVertex? v1, InwSimpleVertex? v2) try { - var line = new LineD(vD1, vD2); - AddLine(line); + var safeLine = new SafeLine(vD1, vD2); + AddLine(safeLine); } catch (ArgumentException ex) { @@ -80,11 +74,12 @@ public void Point(InwSimpleVertex? v1) IsUpright ); - AddPoint(new PointD(vD1)); + var safePoint = new SafePoint(vD1); + AddPoint(safePoint); } // TODO: Needed for Splines - public void SnapPoint(InwSimpleVertex? v1) => throw new NotImplementedException(); + public void SnapPoint(InwSimpleVertex? v1) => Point(v1); public void Triangle(InwSimpleVertex? v1, InwSimpleVertex? v2, InwSimpleVertex? v3) { @@ -106,11 +101,27 @@ public void Triangle(InwSimpleVertex? v1, InwSimpleVertex? v2, InwSimpleVertex? IsUpright ); + // Capture values immediately in our safe struct + var safeTriangle = new SafeTriangle(vD1, vD2, vD3); + var indexPointer = Faces.Count; AddFace(3); AddFaces([indexPointer + 0, indexPointer + 1, indexPointer + 2]); - AddCoords([vD1.X, vD1.Y, vD1.Z, vD2.X, vD2.Y, vD2.Z, vD3.X, vD3.Y, vD3.Z]); - AddTriangle(new TriangleD(vD1, vD2, vD3)); + AddCoords( + [ + safeTriangle.Vertex1.X, + safeTriangle.Vertex1.Y, + safeTriangle.Vertex1.Z, + safeTriangle.Vertex2.X, + safeTriangle.Vertex2.Y, + safeTriangle.Vertex2.Z, + safeTriangle.Vertex3.X, + safeTriangle.Vertex3.Y, + safeTriangle.Vertex3.Z + ] + ); + + AddTriangle(safeTriangle); } private void SetCoords(IEnumerable coords) @@ -127,25 +138,25 @@ private void SetCoords(IEnumerable coords) private void AddFaces(IEnumerable faces) => _faces.AddRange(faces); - private void SetTriangles(List triangles) => + private void SetTriangles(List triangles) => _triangles = triangles ?? throw new ArgumentNullException(nameof(triangles)); - private void AddTriangle(TriangleD triangle) => _triangles.Add(triangle); + private void AddTriangle(SafeTriangle triangle) => _triangles.Add(triangle); - private void SetLines(List lines) => _lines = lines ?? throw new ArgumentNullException(nameof(lines)); + private void SetLines(List lines) => _lines = lines ?? throw new ArgumentNullException(nameof(lines)); - private void AddLine(LineD line) => _lines.Add(line); + private void AddLine(SafeLine line) => _lines.Add(line); - private void SetPoints(List points) => _points = points ?? throw new ArgumentNullException(nameof(points)); + private void SetPoints(List points) => _points = points ?? throw new ArgumentNullException(nameof(points)); - private void AddPoint(PointD point) => _points.Add(point); + private void AddPoint(SafePoint point) => _points.Add(point); private static NAV.Vector3D TransformVectorToOrientation(NAV.Vector3D v, bool isUpright) => isUpright ? v : new NAV.Vector3D(v.X, -v.Z, v.Y); - private static NAV.Vector3D ApplyTransformation(Vector3 vector3, IEnumerable matrixStore) + private static NAV.Vector3D ApplyTransformation(Vector3 vector3, IEnumerable? matrixStore) { - var matrix = matrixStore.ToList(); + var matrix = matrixStore!.ToList(); var t1 = matrix[3] * vector3.X + matrix[7] * vector3.Y + matrix[11] * vector3.Z + matrix[15]; var vectorDoubleX = (matrix[0] * vector3.X + matrix[4] * vector3.Y + matrix[8] * vector3.Z + matrix[12]) / t1; var vectorDoubleY = (matrix[1] * vector3.X + matrix[5] * vector3.Y + matrix[9] * vector3.Z + matrix[13]) / t1; diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs index 1cbaf2b27..666fecf29 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettings.cs @@ -1,4 +1,6 @@ -namespace Speckle.Converter.Navisworks.Settings; +using Speckle.Converter.Navisworks.Geometry; + +namespace Speckle.Converter.Navisworks.Settings; /// /// Represents the settings used for Navisworks conversions. @@ -8,8 +10,8 @@ public record NavisworksConversionSettings(Derived Derived, User User); // Derived from Navisworks Application public record Derived( NAV.Document Document, // The active Navisworks document to be processed. - NAV.BoundingBox3D ModelBoundingBox, // The bounding box of the model. - NAV.Vector3D? TransformVector, // Transformation vector applied to the model. + SafeBoundingBox ModelBoundingBox, // The bounding box of the model. + SafeVector TransformVector, // Transformation vector applied to the model. bool IsUpright, // Indicates if the model's orientation is upright relative to canonical up. string SpeckleUnits // Units used in Speckle for standardised measurements. ); diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs index d392bf5cc..3f6fd9a62 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Settings/NavisworksConversionSettingsFactory.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Logging; +using Speckle.Converter.Navisworks.Geometry; using Speckle.Converter.Navisworks.Helpers; using Speckle.Converters.Common; using Speckle.InterfaceGenerator; @@ -13,7 +14,7 @@ public class NavisworksConversionSettingsFactory : INavisworksConversionSettings private readonly IHostToSpeckleUnitConverter _unitsConverter; private NAV.Document? _document; - private NAV.BoundingBox3D? _modelBoundingBox; + private SafeBoundingBox _modelBoundingBox; private bool _convertHiddenElements; public NavisworksConversionSettingsFactory( @@ -64,16 +65,14 @@ bool includeInternalProperties } // Calculate the transformation vector based on the origin mode - using var transformVector = - CalculateTransformVector() ?? throw new InvalidOperationException("Failed to calculate transform vector"); + var transformVector = CalculateTransformVector(); var isUpright = GeometryHelpers.VectorMatch(_document.UpVector, s_canonicalUp); return new NavisworksConversionSettings( // Derived from Navisworks Application new Derived( Document: _document, - ModelBoundingBox: _modelBoundingBox - ?? throw new InvalidOperationException("Bounding box could not be determined, which is weird."), + ModelBoundingBox: _modelBoundingBox, TransformVector: transformVector, IsUpright: isUpright, SpeckleUnits: units @@ -94,16 +93,15 @@ private void InitializeDocument() { _document = NavisworksApp.ActiveDocument ?? throw new InvalidOperationException("No active document found."); _logger.LogInformation("Creating settings for document: {DocumentName}", _document.Title); - - _modelBoundingBox = _document.GetBoundingBox(_convertHiddenElements); + _modelBoundingBox = new SafeBoundingBox(_document.GetBoundingBox(_convertHiddenElements)); } - private NAV.Vector3D CalculateTransformVector() => + private SafeVector CalculateTransformVector() => _originMode switch { OriginMode.ProjectBasePoint => CalculateProjectBasePointTransform(), OriginMode.BoundingBoxCenter => CalculateBoundingBoxTransform(), - OriginMode.ModelOrigin => new NAV.Vector3D(0, 0, 0), // Default identity transform + OriginMode.ModelOrigin => new SafeVector(0.0, 0.0, 0.0), // Default identity transform _ => throw new NotSupportedException($"OriginMode {_originMode} is not supported.") }; @@ -115,10 +113,10 @@ private NAV.Vector3D CalculateTransformVector() => /// This uses mocked project base point data and should be replaced with actual logic /// when finally integrating with UI or external configurations. /// - private NAV.Vector3D CalculateProjectBasePointTransform() + private SafeVector CalculateProjectBasePointTransform() { // TODO: Replace with actual logic to fetch project base point and units from UI or settings - using var projectBasePoint = new NAV.Vector3D(10, 20, 0); + var projectBasePoint = new SafeVector(10, 20, 0); // ReSharper disable once ConvertToConstant.Local var projectBasePointUnits = NAV.Units.Meters; @@ -126,7 +124,7 @@ private NAV.Vector3D CalculateProjectBasePointTransform() // The transformation vector is the negative of the project base point, scaled to the source units. // These units are independent of the Speckle units, and because they are from user input. - return new NAV.Vector3D(-projectBasePoint.X * scale, -projectBasePoint.Y * scale, 0); + return new SafeVector(-projectBasePoint.X * scale, -projectBasePoint.Y * scale, 0); } /// @@ -135,8 +133,8 @@ private NAV.Vector3D CalculateProjectBasePointTransform() /// The calculated transformation vector. /// /// This uses the document active model bounding box center as the base point for the transformation. + /// Assumes no translation in the Z-axis. /// - private NAV.Vector3D CalculateBoundingBoxTransform() => - (_modelBoundingBox != null ? new NAV.Vector3D(-_modelBoundingBox.Center.X, -_modelBoundingBox.Center.Y, 0) : null) - ?? throw new InvalidOperationException("Bounding box could not be determined."); + private SafeVector CalculateBoundingBoxTransform() => + new(-_modelBoundingBox.Center.X, -_modelBoundingBox.Center.Y, 0); } From 06b86de795d75a61c3fe878a2ddca5cc2fa10e92 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 22:16:47 +0000 Subject: [PATCH 155/173] feat: Add geometry conversion functionality - Added `DisplayValueExtractor` class for extracting display values from Navisworks model items - Added `GeometryToSpeckleConverter` class for converting Navisworks geometry to Speckle SDK models - Updated dependencies in `NavisworksConverterServiceRegistration.cs` to include the new classes --- .../DataExtractors/DisplayValueExtractor.cs | 18 +- .../NavisworksPrimitiveProcessor.cs | 223 ---------------- .../NavisworksConverterServiceRegistration.cs | 5 + ...ckle.Converters.NavisworksShared.projitems | 2 +- .../Raw/GeometryToSpeckleConverter.cs | 245 ++++++++++++++++++ .../ModelItemTopLevelConverterToSpeckle.cs | 9 +- 6 files changed, 271 insertions(+), 231 deletions(-) delete mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs create mode 100644 Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/GeometryToSpeckleConverter.cs diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs index 1a509a307..7ba6a7b24 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/DisplayValueExtractor.cs @@ -1,7 +1,8 @@ using Microsoft.Extensions.Logging; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; -using Speckle.Objects.Geometry; +using Speckle.Sdk.Models; +using static Speckle.Converter.Navisworks.Helpers.ElementSelectionHelper; namespace Speckle.Converter.Navisworks.ToSpeckle; @@ -9,6 +10,7 @@ public class DisplayValueExtractor { private readonly IConverterSettingsStore _converterSettings; private readonly ILogger _logger; + private readonly GeometryToSpeckleConverter _geometryConverter; public DisplayValueExtractor( IConverterSettingsStore converterSettings, @@ -17,12 +19,20 @@ ILogger logger { _converterSettings = converterSettings; _logger = logger; + _geometryConverter = new GeometryToSpeckleConverter(_converterSettings.Current); } - public static List GetDisplayValue(NAV.ModelItem _) + internal List GetDisplayValue(NAV.ModelItem modelItem) { - var pt = new Point(0, 0, 0, "m"); + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + if (!modelItem.HasGeometry) + { + return []; + } - return [pt]; + return !IsElementVisible(modelItem) ? [] : _geometryConverter.Convert(modelItem); } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs deleted file mode 100644 index 98a4562d9..000000000 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DataExtractors/NavisworksPrimitiveProcessor.cs +++ /dev/null @@ -1,223 +0,0 @@ -using System.Collections.ObjectModel; -using Autodesk.Navisworks.Api.Interop.ComApi; -using Speckle.Converter.Navisworks.Extensions; -using Speckle.Converter.Navisworks.Geometry; -using Speckle.Converter.Navisworks.Settings; -using Speckle.Converters.Common; -using Speckle.DoubleNumerics; - -namespace Speckle.Converter.Navisworks.ToSpeckle; - -public class NavisworksPrimitiveProcessor -{ - internal readonly Stack ModelFragmentStack = new(); - - private readonly IConverterSettingsStore _converterSettings; - public bool IsUpright { get; set; } - - public NavisworksPrimitiveProcessor( - bool isUpright, - IConverterSettingsStore converterSettings - ) - { - IsUpright = isUpright; - _converterSettings = converterSettings; - } - - private IEnumerable ModelFragments => ModelFragmentStack; - public InwOpSelection Selection { get; set; } - - public IEnumerable GetUniqueGeometryFragments() - { - var processors = new List(); - - foreach (InwOaPath path in Selection.Paths()) - { - var processor = new PrimitiveProcessor(IsUpright); - - foreach (var fragment in ModelFragments) - { - if ( - !IsSameFragmentPath(((Array)fragment.path.ArrayData).ToArray(), ((Array)path.ArrayData).ToArray()) - ) - { - continue; - } - - var localToWorldTransform = (InwLTransform3f3)fragment.GetLocalToWorldMatrix(); - - processor.LocalToWorldTransformation = ConvertArrayToDouble((Array)localToWorldTransform.Matrix); - - fragment.GenerateSimplePrimitives(nwEVertexProperty.eNORMAL, processor); - } - - processors.Add(processor); - } - - return processors; - } - - private static bool IsSameFragmentPath(Array a1, Array a2) => - a1.Length == a2.Length && a1.Cast().SequenceEqual(a2.Cast()); - - private static double[] ConvertArrayToDouble(Array arr) - { - if (arr.Rank != 1) - { - throw new ArgumentException("The input array must have a rank of 1."); - } - - var doubleArray = new double[arr.GetLength(0)]; - for (var ix = arr.GetLowerBound(0); ix <= arr.GetUpperBound(0); ++ix) - { - doubleArray[ix - arr.GetLowerBound(0)] = (double)arr.GetValue(ix); - } - - return doubleArray; - } -} - -public class PrimitiveProcessor : InwSimplePrimitivesCB -{ - private readonly List _coords = []; - private List _faces = []; - private List _lines = []; - private List _points = []; - private List _triangles = []; - - public PrimitiveProcessor(bool isUpright) - : this() - { - IsUpright = isUpright; - } - - private PrimitiveProcessor() - { - SetCoords(new ReadOnlyCollection(new List())); - SetFaces([]); - SetTriangles([]); - SetLines([]); - SetPoints([]); - } - - public IReadOnlyList Coords => _coords.AsReadOnly(); - - private IReadOnlyList Faces => _faces.AsReadOnly(); - - public IReadOnlyList Triangles => _triangles.AsReadOnly(); - - public IReadOnlyList Lines => _lines.AsReadOnly(); - - public IReadOnlyList Points => _points.AsReadOnly(); - - public IEnumerable LocalToWorldTransformation { get; set; } - - private bool IsUpright { get; set; } - - public void Line(InwSimpleVertex? v1, InwSimpleVertex? v2) - { - if (v1 == null || v2 == null) - { - return; - } - - using var vD1 = TargetUpVector(ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), IsUpright); - using var vD2 = TargetUpVector(ApplyTransformation(VectorFromVertex(v2), LocalToWorldTransformation), IsUpright); - - try - { - var line = new LineD(vD1, vD2); - AddLine(line); - } - catch (ArgumentException ex) - { - Console.WriteLine($"ArgumentException caught: {ex.Message}"); - } - catch (InvalidOperationException ex) - { - Console.WriteLine($"InvalidOperationException caught: {ex.Message}"); - } - } - - public void Point(InwSimpleVertex? v1) - { - if (v1 == null) - { - return; - } - - using var vD1 = TargetUpVector(ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), IsUpright); - - AddPoint(new PointD(vD1)); - } - - public void SnapPoint(InwSimpleVertex v1) - { - // Needed for Splines - } - - public void Triangle(InwSimpleVertex? v1, InwSimpleVertex? v2, InwSimpleVertex? v3) - { - if (v1 == null || v2 == null || v3 == null) - { - return; - } - - using var vD1 = TargetUpVector(ApplyTransformation(VectorFromVertex(v1), LocalToWorldTransformation), IsUpright); - using var vD2 = TargetUpVector(ApplyTransformation(VectorFromVertex(v2), LocalToWorldTransformation), IsUpright); - using var vD3 = TargetUpVector(ApplyTransformation(VectorFromVertex(v3), LocalToWorldTransformation), IsUpright); - - var indexPointer = Faces.Count; - AddFace(3); - AddFaces([indexPointer + 0, indexPointer + 1, indexPointer + 2]); - AddCoords([vD1.X, vD1.Y, vD1.Z, vD2.X, vD2.Y, vD2.Z, vD3.X, vD3.Y, vD3.Z]); - AddTriangle(new TriangleD(vD1, vD2, vD3)); - } - - private void SetCoords(IEnumerable coords) - { - _coords.Clear(); - _coords.AddRange(coords); - } - - private void AddCoords(IEnumerable coords) => _coords.AddRange(coords); - - private void SetFaces(List faces) => _faces = faces ?? throw new ArgumentNullException(nameof(faces)); - - private void AddFace(int face) => _faces.Add(face); - - private void AddFaces(IEnumerable faces) => _faces.AddRange(faces); - - private void SetTriangles(List triangles) => - _triangles = triangles ?? throw new ArgumentNullException(nameof(triangles)); - - private void AddTriangle(TriangleD triangle) => _triangles.Add(triangle); - - private void SetLines(List lines) => _lines = lines ?? throw new ArgumentNullException(nameof(lines)); - - private void AddLine(LineD line) => _lines.Add(line); - - private void SetPoints(List points) => _points = points ?? throw new ArgumentNullException(nameof(points)); - - private void AddPoint(PointD point) => _points.Add(point); - - private static NAV.Vector3D TargetUpVector(NAV.Vector3D v, bool isUpright) => - isUpright ? v : new NAV.Vector3D(v.X, -v.Z, v.Y); - - private static NAV.Vector3D ApplyTransformation(Vector3 vector3, IEnumerable matrixStore) - { - var matrix = matrixStore.ToList(); - var t1 = matrix[3] * vector3.X + matrix[7] * vector3.Y + matrix[11] * vector3.Z + matrix[15]; - var vectorDoubleX = (matrix[0] * vector3.X + matrix[4] * vector3.Y + matrix[8] * vector3.Z + matrix[12]) / t1; - var vectorDoubleY = (matrix[1] * vector3.X + matrix[5] * vector3.Y + matrix[9] * vector3.Z + matrix[13]) / t1; - var vectorDoubleZ = (matrix[2] * vector3.X + matrix[6] * vector3.Y + matrix[10] * vector3.Z + matrix[14]) / t1; - - return new NAV.Vector3D(vectorDoubleX, vectorDoubleY, vectorDoubleZ); - } - - private static Vector3 VectorFromVertex(InwSimpleVertex v) - { - var arrayV = (Array)v.coord; - return new Vector3((float)arrayV.GetValue(1), (float)arrayV.GetValue(2), (float)arrayV.GetValue(3)); - } -} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs index cd254c830..31af6f872 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/DependencyInjection/NavisworksConverterServiceRegistration.cs @@ -1,5 +1,6 @@ using System.Reflection; using Microsoft.Extensions.DependencyInjection; +using Speckle.Converter.Navisworks.Helpers; using Speckle.Converter.Navisworks.Services; using Speckle.Converter.Navisworks.Settings; using Speckle.Converter.Navisworks.ToSpeckle; @@ -40,6 +41,10 @@ public static IServiceCollection AddNavisworksConverter(this IServiceCollection serviceCollection.AddScoped(); serviceCollection.AddScoped(); + // Register geometry conversion + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + return serviceCollection; } } diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems index 2c360419c..211a57058 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Speckle.Converters.NavisworksShared.projitems @@ -12,7 +12,6 @@ - @@ -28,6 +27,7 @@ + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/GeometryToSpeckleConverter.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/GeometryToSpeckleConverter.cs new file mode 100644 index 000000000..cf440f256 --- /dev/null +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/Raw/GeometryToSpeckleConverter.cs @@ -0,0 +1,245 @@ +using System.Runtime.InteropServices; +using Autodesk.Navisworks.Api.Interop.ComApi; +using Speckle.Converter.Navisworks.Extensions; +using Speckle.Converter.Navisworks.Geometry; +using Speckle.Converter.Navisworks.Helpers; +using Speckle.Converter.Navisworks.Settings; +using Speckle.Objects.Geometry; +using Speckle.Sdk.Models; +using ComApiBridge = Autodesk.Navisworks.Api.ComApi.ComApiBridge; + +namespace Speckle.Converter.Navisworks.ToSpeckle; + +/// +/// Converts Navisworks geometry to Speckle displayable geometry. +/// +/// Note: This class does not implement ITypedConverter{ModelGeometry, Base} because Navisworks geometry +/// conversion requires COM interop access that isn't available through the public ModelGeometry class. +/// The conversion process requires: +/// 1. Convert ModelItem to InwOaPath3 via ComApiBridge +/// 2. Use that to get InwOaFragmentList +/// 3. Process each InwOaFragment3 to generate primitives +/// 4. Convert those primitives to Speckle geometry with appropriate transforms +/// +public class GeometryToSpeckleConverter +{ + private readonly NavisworksConversionSettings _settings; + private readonly bool _isUpright; + private readonly SafeVector _transformVector; + private const double SCALE = 1.0; // Default scale factor + + public GeometryToSpeckleConverter(NavisworksConversionSettings settings) + { + _settings = settings ?? throw new ArgumentNullException(nameof(settings)); + _isUpright = settings.Derived.IsUpright; + _transformVector = settings.Derived.TransformVector; + } + + /// + /// Converts a ModelItem's geometry to Speckle display geometry by accessing the underlying COM objects. + /// Applies necessary transformations and unit scaling. + /// + internal List Convert(NAV.ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + if (!modelItem.HasGeometry) + { + return []; + } + + var comSelection = ComApiBridge.ToInwOpSelection([modelItem]); + try + { + var fragmentStack = new Stack(); + var paths = comSelection.Paths(); + try + { + // Populate fragment stack with all fragments + foreach (InwOaPath path in paths) + { + CollectFragments(path, fragmentStack); + } + + return ProcessFragments(fragmentStack, paths); + } + finally + { + if (paths != null) + { + Marshal.ReleaseComObject(paths); + } + } + } + finally + { + if (comSelection != null) + { + Marshal.ReleaseComObject(comSelection); + } + } + } + + private static void CollectFragments(InwOaPath path, Stack fragmentStack) + { + var fragments = path.Fragments(); + foreach (var fragment in fragments.OfType()) + { + if (fragment.path?.ArrayData is not Array pathData1 || path.ArrayData is not Array pathData2) + { + continue; + } + + var pathArray1 = pathData1.ToArray(); + var pathArray2 = pathData2.ToArray(); + + if (pathArray1.Length == pathArray2.Length && pathArray1.SequenceEqual(pathArray2)) + { + fragmentStack.Push(fragment); + } + } + } + + private List ProcessFragments(Stack fragmentStack, InwSelectionPathsColl paths) + { + var callbackListeners = new List(); + + foreach (InwOaPath path in paths) + { + var processor = new PrimitiveProcessor(_isUpright); + + foreach (var fragment in fragmentStack) + { + if (!ValidateFragmentPath(fragment, path)) + { + continue; + } + + var matrix = fragment.GetLocalToWorldMatrix(); + var transform = matrix as InwLTransform3f3; + if (transform?.Matrix is not Array matrixArray) + { + continue; + } + + processor.LocalToWorldTransformation = ConvertArrayToDouble(matrixArray); + fragment.GenerateSimplePrimitives(nwEVertexProperty.eNORMAL, processor); + } + + callbackListeners.Add(processor); + } + + var baseGeometries = ProcessGeometries(callbackListeners); + + return baseGeometries; + } + + private static bool ValidateFragmentPath(InwOaFragment3 fragment, InwOaPath path) + { + if (fragment.path?.ArrayData is not Array fragmentPathData || path.ArrayData is not Array pathData) + { + return false; + } + + return IsSameFragmentPath(fragmentPathData, pathData); + } + + private List ProcessGeometries(List processors) + { + var baseGeometries = new List(); + + foreach (var processor in processors) + { + if (processor.Triangles.Count > 0) + { + var mesh = CreateMesh(processor.Triangles); + baseGeometries.Add(mesh); + } + + if (processor.Lines.Count > 0) + { + var lines = CreateLines(processor.Lines); + baseGeometries.AddRange(lines); + } + } + + return baseGeometries; + } + + private Mesh CreateMesh(IReadOnlyList triangles) + { + var vertices = new List(); + var faces = new List(); + + for (var t = 0; t < triangles.Count; t++) + { + var triangle = triangles[t]; + + // No need to worry about disposal of COM across boundaries - we're working with our safe structs + vertices.AddRange( + [ + (triangle.Vertex1.X + _transformVector.X) * SCALE, + (triangle.Vertex1.Y + _transformVector.Y) * SCALE, + (triangle.Vertex1.Z + _transformVector.Z) * SCALE, + (triangle.Vertex2.X + _transformVector.X) * SCALE, + (triangle.Vertex2.Y + _transformVector.Y) * SCALE, + (triangle.Vertex2.Z + _transformVector.Z) * SCALE, + (triangle.Vertex3.X + _transformVector.X) * SCALE, + (triangle.Vertex3.Y + _transformVector.Y) * SCALE, + (triangle.Vertex3.Z + _transformVector.Z) * SCALE + ] + ); + faces.AddRange([0, t * 3, t * 3 + 1, t * 3 + 2]); + } + + return new Mesh + { + vertices = vertices, + faces = faces, + units = _settings.Derived.SpeckleUnits + }; + } + + private List CreateLines(IReadOnlyList lines) => + ( + from line in lines + select new Line + { + start = new Point( + (line.Start.X + _transformVector.X) * SCALE, + (line.Start.Y + _transformVector.Y) * SCALE, + (line.Start.Z + _transformVector.Z) * SCALE, + _settings.Derived.SpeckleUnits + ), + end = new Point( + (line.End.X + _transformVector.X) * SCALE, + (line.End.Y + _transformVector.Y) * SCALE, + (line.End.Z + _transformVector.Z) * SCALE, + _settings.Derived.SpeckleUnits + ), + units = _settings.Derived.SpeckleUnits + } + ).ToList(); + + private static double[]? ConvertArrayToDouble(Array arr) + { + if (arr.Rank != 1) + { + throw new ArgumentException("The input array must have a rank of 1."); + } + + var doubleArray = new double[arr.GetLength(0)]; + for (var ix = arr.GetLowerBound(0); ix <= arr.GetUpperBound(0); ++ix) + { + doubleArray[ix - arr.GetLowerBound(0)] = (double)arr.GetValue(ix); + } + + return doubleArray; + } + + private static bool IsSameFragmentPath(Array a1, Array a2) => + a1.Length == a2.Length && a1.Cast().SequenceEqual(a2.Cast()); +} diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs index 9bf83484a..17e3a89f2 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/ToSpeckle/TopLevel/ModelItemTopLevelConverterToSpeckle.cs @@ -16,16 +16,19 @@ public class ModelItemToToSpeckleConverter : IToSpeckleTopLevelConverter private readonly StandardPropertyHandler _standardHandler; private readonly HierarchicalPropertyHandler _hierarchicalHandler; private readonly IConverterSettingsStore _settingsStore; + private readonly DisplayValueExtractor _displayValueExtractor; public ModelItemToToSpeckleConverter( IConverterSettingsStore settingsStore, StandardPropertyHandler standardHandler, - HierarchicalPropertyHandler hierarchicalHandler + HierarchicalPropertyHandler hierarchicalHandler, + DisplayValueExtractor displayValueExtractor ) { _settingsStore = settingsStore; _standardHandler = standardHandler; _hierarchicalHandler = hierarchicalHandler; + _displayValueExtractor = displayValueExtractor; } /// @@ -65,11 +68,11 @@ private Base Convert(NAV.ModelItem target) /// private static bool ShouldMergeProperties(NAV.ModelItem target) => target.HasGeometry; - private static Base CreateGeometryObject(NAV.ModelItem target, string name) => + private Base CreateGeometryObject(NAV.ModelItem target, string name) => new() { ["name"] = name, - ["displayValue"] = DisplayValueExtractor.GetDisplayValue(target), + ["displayValue"] = _displayValueExtractor.GetDisplayValue(target), ["properties"] = new Dictionary() }; From 7ff7af39c7bb9ef10585fb91f7d0382a2cefccfb Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sat, 7 Dec 2024 22:32:31 +0000 Subject: [PATCH 156/173] Rename GeomtryNodeMerger.cs to GeometryNodeMerger.cs This commit renames the file GeomtryNodeMerger.cs to GeometryNodeMerger.cs. --- .../Send/{GeomtryNodeMerger.cs => GeometryNodeMerger.cs} | 0 .../Speckle.Connectors.NavisworksShared.projitems | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/{GeomtryNodeMerger.cs => GeometryNodeMerger.cs} (100%) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeometryNodeMerger.cs similarity index 100% rename from Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeomtryNodeMerger.cs rename to Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/GeometryNodeMerger.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index 066db1a9d..fb141c647 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -19,7 +19,7 @@ - + From 889acb2e673b342da823989e7faf77dfaa2a6df1 Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Sun, 8 Dec 2024 00:10:51 +0000 Subject: [PATCH 157/173] Remove redundant code shared by both projects - Updated NavisworksSelectionBinding to include IElementSelectionService as a dependency in the constructor. - Updated NavisworksSendBinding to include IElementSelectionService as a dependency in the constructor. - Removed ElementSelectionExtension.cs file. - Added ElementSelectionService.cs file which includes methods for getting model item path, resolving model item from path, checking visibility of model items, and getting geometry nodes. --- .../Bindings/NavisworksSelectionBinding.cs | 14 ++-- .../Bindings/NavisworksSendBinding.cs | 15 ++-- .../NavisworksConnectorServiceRegistration.cs | 2 + .../Extensions/ElementSelectionExtension.cs | 68 ------------------- .../Extensions/ElementSelectionService.cs | 23 +++++++ .../HostApp/NavisworksMaterialUnpacker.cs | 7 +- .../Operations/Send/GeometryNodeMerger.cs | 5 +- .../Send/NavisworksRootObjectBuilder.cs | 12 ++-- ...ckle.Connectors.NavisworksShared.projitems | 2 +- .../Helpers/ElementSelectionHelper.cs | 22 ++++-- 10 files changed, 75 insertions(+), 95 deletions(-) delete mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs create mode 100644 Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionService.cs diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index 6be666d18..52389c16b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -1,4 +1,4 @@ -using Speckle.Connector.Navisworks.Extensions; +using Speckle.Connector.Navisworks.Services; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; @@ -7,12 +7,18 @@ namespace Speckle.Connector.Navisworks.Bindings; public class NavisworksSelectionBinding : ISelectionBinding { private readonly IAppIdleManager _appIdleManager; + private readonly IElementSelectionService _selectionService; private const string SELECTION_EVENT = "setSelection"; public string Name { get; } = "selectionBinding"; public IBrowserBridge Parent { get; } - public NavisworksSelectionBinding(IAppIdleManager idleManager, IBrowserBridge parent) + public NavisworksSelectionBinding( + IAppIdleManager idleManager, + IBrowserBridge parent, + IElementSelectionService selectionService + ) { + _selectionService = selectionService; _appIdleManager = idleManager; Parent = parent; @@ -53,8 +59,8 @@ public SelectionInfo GetSelection() // Ensure only visible elements are processed by filtering using IsElementVisible var selectedObjectsIds = new HashSet( activeDocument - .CurrentSelection.SelectedItems.Where(ElementSelectionExtension.IsElementVisible) // Exclude hidden elements - .Select(ElementSelectionExtension.ResolveModelItemToIndexPath) // Resolve to index paths + .CurrentSelection.SelectedItems.Where(_selectionService.IsVisible) // Exclude hidden elements + .Select(_selectionService.GetModelItemPath) // Resolve to index paths ); return new SelectionInfo( diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 2bfc2bdb1..8e5c15e3a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -1,6 +1,7 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Speckle.Connector.Navisworks.Operations.Send.Settings; +using Speckle.Connector.Navisworks.Services; using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.DUI.Bindings; @@ -16,7 +17,6 @@ using Speckle.Sdk; using Speckle.Sdk.Common; using Speckle.Sdk.Logging; -using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; namespace Speckle.Connector.Navisworks.Bindings; @@ -37,6 +37,7 @@ public class NavisworksSendBinding : ISendBinding private readonly ISdkActivityFactory _activityFactory; private readonly INavisworksConversionSettingsFactory _conversionSettingsFactory; private readonly ToSpeckleSettingsManagerNavisworks _toSpeckleSettingsManagerNavisworks; + private readonly IElementSelectionService _selectionService; public NavisworksSendBinding( DocumentModelStore store, @@ -49,7 +50,8 @@ public NavisworksSendBinding( ISpeckleApplication speckleApplication, ISdkActivityFactory activityFactory, INavisworksConversionSettingsFactory conversionSettingsFactory, - ToSpeckleSettingsManagerNavisworks toSpeckleSettingsManagerNavisworks + ToSpeckleSettingsManagerNavisworks toSpeckleSettingsManagerNavisworks, + IElementSelectionService selectionService ) { Parent = parent; @@ -64,6 +66,7 @@ ToSpeckleSettingsManagerNavisworks toSpeckleSettingsManagerNavisworks _activityFactory = activityFactory; _conversionSettingsFactory = conversionSettingsFactory; _toSpeckleSettingsManagerNavisworks = toSpeckleSettingsManagerNavisworks; + _selectionService = selectionService; SubscribeToNavisworksEvents(); } @@ -136,7 +139,7 @@ private void InitializeConverterSettings(IServiceScope scope, SenderModelCard mo ) ); - private static List GetNavisworksModelItems(SenderModelCard modelCard) + private List GetNavisworksModelItems(SenderModelCard modelCard) { var selectedPaths = modelCard.SendFilter.NotNull().RefreshObjectIds(); if (selectedPaths.Count == 0) @@ -147,9 +150,9 @@ private void InitializeConverterSettings(IServiceScope scope, SenderModelCard mo var modelItems = modelCard .SendFilter.NotNull() .RefreshObjectIds() - .Select(ResolveIndexPathToModelItem) - .SelectMany(ResolveGeometryLeafNodes) - .Where(IsElementVisible) + .Select(_selectionService.GetModelItemFromPath) + .SelectMany(_selectionService.GetGeometryNodes) + .Where(_selectionService.IsVisible) .ToList(); return modelItems.Count == 0 diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index d3563d9d9..a1d398292 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -4,6 +4,7 @@ using Speckle.Connector.Navisworks.Operations.Send; using Speckle.Connector.Navisworks.Operations.Send.Filters; using Speckle.Connector.Navisworks.Operations.Send.Settings; +using Speckle.Connector.Navisworks.Services; using Speckle.Connectors.Common; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Cancellation; @@ -66,5 +67,6 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) // register filters serviceCollection.AddScoped(); + serviceCollection.AddScoped(); } } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs deleted file mode 100644 index 4d6b53981..000000000 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionExtension.cs +++ /dev/null @@ -1,68 +0,0 @@ -namespace Speckle.Connector.Navisworks.Extensions; - -/// -/// Provides extension methods for working with Navisworks ModelItem selections. -/// -public static class ElementSelectionExtension -{ - /// - /// Resolves a Navisworks to its unique index path representation. - /// - /// The model item to resolve. - /// - /// A string representing the model item's path. The path includes the model index and - /// a hierarchical path identifier, separated by the specified separator (e.g., "0.a.b"). - /// For root-level model items, only the model index is included. - /// - /// Thrown if is null. - internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) - { - if (modelItem == null) - { - throw new ArgumentNullException(nameof(modelItem)); - } - - var modelItemPathId = NavisworksApp.ActiveDocument.Models.CreatePathId(modelItem); - - var pathIndex = - modelItemPathId.PathId == "a" - ? $"{modelItemPathId.ModelIndex}" // Root-level model item - : $"{modelItemPathId.ModelIndex}{PathConstants.SEPARATOR}{modelItemPathId.PathId}"; // Nested model item - - return pathIndex; - } - - internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) - { - var indexPathParts = indexPath.Split(PathConstants.SEPARATOR); - - var modelIndex = int.Parse(indexPathParts[0]); - var pathId = string.Join(PathConstants.SEPARATOR.ToString(), indexPathParts.Skip(1)); - - // assign the first part of indexPathParts to modelIndex and parse it to int, the second part to pathId string - NAV.DocumentParts.ModelItemPathId modelItemPathId = new() { ModelIndex = modelIndex, PathId = pathId }; - - var modelItem = NavisworksApp.ActiveDocument.Models.ResolvePathId(modelItemPathId); - return modelItem; - } - - /// - /// Determines whether a Navisworks and all its ancestors are visible. - /// - /// The model item to check for visibility. - /// True if the item and all ancestors are visible; otherwise, false. - /// Thrown if is null. - internal static bool IsElementVisible(NAV.ModelItem modelItem) - { - if (modelItem == null) - { - throw new ArgumentNullException(nameof(modelItem)); - } - - // Check visibility status for the item and its ancestors - return modelItem.AncestorsAndSelf.All(item => !item.IsHidden); - } - - internal static List ResolveGeometryLeafNodes(NAV.ModelItem modelItem) => - modelItem.DescendantsAndSelf.Where(x => x.HasGeometry).ToList(); -} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionService.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionService.cs new file mode 100644 index 000000000..4399b947a --- /dev/null +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Extensions/ElementSelectionService.cs @@ -0,0 +1,23 @@ +using static Speckle.Converter.Navisworks.Helpers.ElementSelectionHelper; + +namespace Speckle.Connector.Navisworks.Services; + +public interface IElementSelectionService +{ + string GetModelItemPath(NAV.ModelItem modelItem); + NAV.ModelItem GetModelItemFromPath(string path); + bool IsVisible(NAV.ModelItem modelItem); + IReadOnlyCollection GetGeometryNodes(NAV.ModelItem modelItem); +} + +public class ElementSelectionService : IElementSelectionService +{ + public string GetModelItemPath(NAV.ModelItem modelItem) => ResolveModelItemToIndexPath(modelItem); + + public NAV.ModelItem GetModelItemFromPath(string path) => ResolveIndexPathToModelItem(path); + + public bool IsVisible(NAV.ModelItem modelItem) => IsElementVisible(modelItem); + + public IReadOnlyCollection GetGeometryNodes(NAV.ModelItem modelItem) => + ResolveGeometryLeafNodes(modelItem); +} diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs index 275338c8a..030f00b5d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksMaterialUnpacker.cs @@ -1,15 +1,16 @@ using Microsoft.Extensions.Logging; +using Speckle.Connector.Navisworks.Services; using Speckle.Converter.Navisworks.Settings; using Speckle.Converters.Common; using Speckle.Objects.Other; using Speckle.Sdk; -using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; namespace Speckle.Connector.Navisworks.HostApp; public class NavisworksMaterialUnpacker( ILogger logger, - IConverterSettingsStore converterSettings + IConverterSettingsStore converterSettings, + IElementSelectionService selectionService ) { // Helper function to select a property based on the representation mode @@ -41,7 +42,7 @@ internal List UnpackRenderMaterial(IReadOnlyList node.HasGeometry && string.IsNullOrEmpty(node.DisplayName)) // Only anonymous geometry nodes .GroupBy(node => { - var path = ElementSelectionExtension.ResolveModelItemToIndexPath(node); + var service = new ElementSelectionService(); + var path = service.GetModelItemPath(node); var lastSeparatorIndex = path.LastIndexOf(PathConstants.SEPARATOR); return lastSeparatorIndex == -1 ? path : path[..lastSeparatorIndex]; }) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index e159d0b4c..f58d59377 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -1,6 +1,6 @@ using Microsoft.Extensions.Logging; -using Speckle.Connector.Navisworks.Extensions; using Speckle.Connector.Navisworks.HostApp; +using Speckle.Connector.Navisworks.Services; using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Caching; using Speckle.Connectors.Common.Conversion; @@ -12,7 +12,6 @@ using Speckle.Sdk.Logging; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Collections; -using static Speckle.Connector.Navisworks.Extensions.ElementSelectionExtension; using static Speckle.Connector.Navisworks.Operations.Send.GeometryNodeMerger; namespace Speckle.Connector.Navisworks.Operations.Send; @@ -23,7 +22,8 @@ public class NavisworksRootObjectBuilder( IConverterSettingsStore converterSettings, ILogger logger, ISdkActivityFactory activityFactory, - NavisworksMaterialUnpacker materialUnpacker + NavisworksMaterialUnpacker materialUnpacker, + IElementSelectionService elementSelectionService ) : IRootObjectBuilder { internal NavisworksConversionSettings GetCurrentSettings() => converterSettings.Current; @@ -89,7 +89,7 @@ public Task Build( foreach (var group in groupedNodes) { var siblingBases = new List(); - foreach (var itemPath in group.Value.Select(ResolveModelItemToIndexPath)) + foreach (var itemPath in group.Value.Select(elementSelectionService.GetModelItemPath)) { processedPaths.Add(itemPath); @@ -106,7 +106,7 @@ public Task Build( var navisworksObject = new NavisworksObject { - name = ElementSelectionExtension.ResolveIndexPathToModelItem(group.Key).DisplayName ?? string.Empty, + name = elementSelectionService.GetModelItemFromPath(group.Key).DisplayName ?? string.Empty, displayValue = siblingBases.SelectMany(b => b["displayValue"] as List ?? []).ToList(), properties = siblingBases.First()["properties"] as Dictionary ?? [], units = converterSettings.Current.Derived.SpeckleUnits, @@ -160,7 +160,7 @@ private SendConversionResult ConvertNavisworksItem( SendInfo sendInfo ) { - string applicationId = ResolveModelItemToIndexPath(navisworksItem); + string applicationId = elementSelectionService.GetModelItemPath(navisworksItem); string sourceType = navisworksItem.GetType().Name; try diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems index fb141c647..099d2c611 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Speckle.Connectors.NavisworksShared.projitems @@ -13,7 +13,7 @@ - + diff --git a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs index a26cfe082..e9605c38c 100644 --- a/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs +++ b/Converters/Navisworks/Speckle.Converters.NavisworksShared/Helpers/ElementSelectionHelper.cs @@ -15,7 +15,7 @@ public static class ElementSelectionHelper /// For root-level model items, only the model index is included. /// /// Thrown if is null. - internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) + public static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) { if (modelItem == null) { @@ -32,8 +32,13 @@ internal static string ResolveModelItemToIndexPath(NAV.ModelItem modelItem) return pathIndex; } - internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) + public static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) { + if (indexPath == null) + { + throw new ArgumentNullException(nameof(indexPath)); + } + var indexPathParts = indexPath.Split(PathConstants.SEPARATOR); var modelIndex = int.Parse(indexPathParts[0]); @@ -52,7 +57,7 @@ internal static NAV.ModelItem ResolveIndexPathToModelItem(string indexPath) /// The model item to check for visibility. /// True if the item and all ancestors are visible; otherwise, false. /// Thrown if is null. - internal static bool IsElementVisible(NAV.ModelItem modelItem) + public static bool IsElementVisible(NAV.ModelItem modelItem) { if (modelItem == null) { @@ -63,6 +68,13 @@ internal static bool IsElementVisible(NAV.ModelItem modelItem) return modelItem.AncestorsAndSelf.All(item => !item.IsHidden); } - internal static List ResolveGeometryLeafNodes(NAV.ModelItem modelItem) => - modelItem.DescendantsAndSelf.Where(x => x.HasGeometry).ToList(); + public static IReadOnlyCollection ResolveGeometryLeafNodes(NAV.ModelItem modelItem) + { + if (modelItem == null) + { + throw new ArgumentNullException(nameof(modelItem)); + } + + return modelItem.DescendantsAndSelf.Where(x => x.HasGeometry).ToList(); + } } From 22105060a0758cbbe2f11e984204bbd01ed3a502 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 9 Dec 2024 09:45:13 +0000 Subject: [PATCH 158/173] fix lock files --- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 20 +--------- .../packages.lock.json | 40 +------------------ 24 files changed, 25 insertions(+), 475 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 1f6b92730..f08549ed5 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -241,14 +241,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -330,21 +324,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net6.0-windows7.0/win-x64": { diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 7bb2074fc..de3641cdf 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -369,21 +363,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index b3cfa85f5..7e6415475 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -369,21 +363,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index 02fce966d..7fac1f5a8 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -370,21 +364,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index 8f70d3d47..48c00a72f 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -230,14 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -325,21 +319,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index c01fce022..a7465d7b0 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -379,21 +373,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index dacedf832..06d8d046c 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -379,21 +373,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index 4b0a6a108..a84f5ac44 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -379,21 +373,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index 8d6a8fffa..8dde7d70c 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -239,14 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -335,21 +329,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json index c80b9876e..6b2cb9480 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -368,21 +362,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json index f2bb752fd..1f538681b 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json @@ -230,14 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -323,21 +317,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json index 8465ea14f..2a8ad37bf 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json @@ -302,14 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.logging": { @@ -390,21 +384,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json index 45c5c8d61..8a39d4067 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json @@ -302,14 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.logging": { @@ -390,21 +384,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json index 908685b21..0c2a4b0da 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json @@ -302,14 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.logging": { @@ -390,21 +384,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index 3d137128b..9d3136d13 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -252,14 +252,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -352,21 +346,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net8.0-windows7.0/win-x64": { diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index e6138bb69..ac8b1ee03 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -378,21 +372,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index eff8db039..6ff0451ee 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -283,14 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -378,21 +372,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index 2aecdbc9c..7d9198ff5 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -342,14 +342,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -429,21 +423,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index eacb3f65a..b13ad5a42 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -423,14 +423,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -510,21 +504,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index 86026ef64..999c65ce9 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -362,21 +356,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index a8dbd9fe7..42b478e1d 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -230,14 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -317,21 +311,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index ea8b1bdfd..2958bd63b 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -239,14 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.dui.webview": { @@ -326,21 +320,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json index 6693fee64..452f86cbf 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json @@ -334,14 +334,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.logging": { @@ -408,21 +402,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index da5a3eeb5..0e006e88a 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -274,14 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.logging": { @@ -342,21 +336,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } }, "net6.0-windows7.0": { @@ -593,14 +575,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", -<<<<<<< HEAD - "Speckle.Sdk": "[3.1.0-dev.205, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.205, )" -======= "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", - "System.Threading.Tasks.Dataflow": "[6.0.0, )" ->>>>>>> dev + "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" } }, "speckle.connectors.logging": { @@ -661,21 +637,9 @@ }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", -<<<<<<< HEAD - "requested": "[3.1.0-dev.205, )", - "resolved": "3.1.0-dev.205", - "contentHash": "MjWRxQhXYZxfpc1JwKc33jjBH3mLLxnbCNx5mcYAdGRJDFb/6ebHzQqWE1abxxCa5k1GJBbH8RpMscFm3w6oVQ==" -======= "requested": "[3.1.0-dev.212, )", "resolved": "3.1.0-dev.212", "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" - }, - "System.Threading.Tasks.Dataflow": { - "type": "CentralTransitive", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "+tyDCU3/B1lDdOOAJywHQoFwyXIUghIaP2BxG79uvhfTnO+D9qIgjVlL/JV2NTliYbMHpd6eKDmHp2VHpij7MA==" ->>>>>>> dev } } } From 4225d6df961cc287130312dbe0b8ab35bb6e7649 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 9 Dec 2024 10:34:44 +0000 Subject: [PATCH 159/173] cannot make null valuetasks --- Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 459f0285d..95a1b10af 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -75,7 +75,7 @@ public async ValueTask RunOnThreadAsync(Func action, bool useMain) await WorkerToMainAsync(async () => { await action().BackToCurrent(); - return new ValueTask(null); + return Task.FromResult(null); }) .BackToCurrent(); } @@ -87,7 +87,7 @@ public async ValueTask RunOnThreadAsync(Func action, bool useMain) await MainToWorkerAsync(async () => { await action().BackToCurrent(); - return new ValueTask(null); + return Task.FromResult(null); }) .BackToCurrent(); } From 738f75f504c5c99aaeed7e06673e044f225c9028 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 12 Dec 2024 09:02:00 +0000 Subject: [PATCH 160/173] merge fixes --- .../Operations/Send/CsiRootObjectBuilder.cs | 2 +- .../CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs index cd093ddd6..3c14eb19f 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs @@ -43,7 +43,7 @@ ICsiApplicationService csiApplicationService } public RootObjectBuilderResult Build( - IReadOnlyList csiObjects, + IReadOnlyList csiObjects, SendInfo sendInfo, IProgress onOperationProgressed ) diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs index af5187789..59945da1e 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/ServiceRegistration.cs @@ -24,7 +24,7 @@ public static IServiceCollection AddCsi(this IServiceCollection services) services.AddSingleton(); services.AddConnectorUtils(); - services.AddDUI(); + services.AddDUI(); services.AddDUIView(); services.AddSingleton(); From 88f45f414e9ac381c3a024fff649e22092d91c5a Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 13 Dec 2024 12:08:24 +0000 Subject: [PATCH 161/173] update to latest SDK --- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 32 +++++----- .../packages.lock.json | 64 +++++++++---------- .../Speckle.Connectors.DUI/packages.lock.json | 28 ++++---- Directory.Packages.props | 6 +- .../packages.lock.json | 44 ++++++------- .../packages.lock.json | 28 ++++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 44 ++++++------- 50 files changed, 749 insertions(+), 749 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 78d954e1d..8206eced6 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -231,9 +231,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -241,8 +241,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -267,7 +267,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -299,18 +299,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -320,14 +320,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 6cc25c64d..94b391fa9 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -300,7 +300,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -338,18 +338,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -359,14 +359,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index 995d61cbf..f497a3079 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -300,7 +300,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -338,18 +338,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -359,14 +359,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index 6d513f273..06dbecdec 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -301,7 +301,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -339,18 +339,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index c31d4a4f6..53344c288 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -220,9 +220,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -230,8 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -257,7 +257,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -315,14 +315,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index 8e8e13ed7..95c049036 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,18 +348,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -369,14 +369,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index e08323488..62973ccef 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,18 +348,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -369,14 +369,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index ca1a818b2..7128c6ad2 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,18 +348,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -369,14 +369,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index 1ba588437..c1ab11218 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -229,9 +229,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -239,8 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -267,7 +267,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -305,18 +305,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -325,14 +325,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json index 6eef77a9d..0f8249ccd 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -293,7 +293,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.etabs21": { @@ -337,18 +337,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -358,14 +358,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json index cb0f76690..96e066636 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json @@ -220,9 +220,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -230,8 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -249,7 +249,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.etabs22": { @@ -293,18 +293,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -313,14 +313,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json index 57445baec..320917832 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json @@ -292,9 +292,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -314,7 +314,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.revit2022": { @@ -353,11 +353,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Revit.API": { @@ -368,9 +368,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -380,14 +380,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json index b644f0b09..c209b2c6b 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json @@ -292,9 +292,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -314,7 +314,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.revit2023": { @@ -353,11 +353,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Revit.API": { @@ -368,9 +368,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -380,14 +380,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json index b10bc6cfd..ddff346c6 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json @@ -292,9 +292,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -314,7 +314,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.revit2024": { @@ -353,11 +353,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Revit.API": { @@ -368,9 +368,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -380,14 +380,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index 75932f398..4ae16bc4d 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -242,9 +242,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -252,8 +252,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -264,7 +264,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.revit2025": { @@ -303,11 +303,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Revit.API": { @@ -318,9 +318,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -329,14 +329,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index ce02c9862..ab357aba1 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.rhino7": { @@ -347,18 +347,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -368,14 +368,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index 499b39e3f..1d8c586e1 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.rhino8": { @@ -347,18 +347,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -368,14 +368,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index c43aa3769..fae4f6852 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -35,11 +35,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Tekla.Structures.Dialog": { @@ -332,9 +332,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -342,8 +342,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -369,7 +369,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -407,9 +407,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -419,14 +419,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index 84655113a..0060152ea 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -35,11 +35,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Tekla.Structures.Dialog": { @@ -413,9 +413,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -423,8 +423,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -450,7 +450,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -488,9 +488,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -500,14 +500,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json index ccec23f11..562868855 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json @@ -224,7 +224,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -247,18 +247,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -268,14 +268,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json index 6c0d90adc..32556ab6c 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json index b681d682a..9a85aefe5 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index 9cba989ea..afec59da5 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -293,7 +293,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -331,18 +331,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -352,14 +352,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index dc2676151..2a63eead6 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -220,9 +220,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -230,8 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -249,7 +249,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -287,18 +287,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json b/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json index a22df02c0..c8d5f5b2f 100644 --- a/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json +++ b/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json b/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json index dd55690be..364836f97 100644 --- a/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json +++ b/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json @@ -219,7 +219,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -242,18 +242,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -262,14 +262,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json index 1b1d68508..3a309bd36 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json @@ -272,7 +272,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json index 0f451752f..0c6e200ef 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json @@ -272,7 +272,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json index e4d0b915f..12a8c3dbd 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json @@ -272,7 +272,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index 1fc92d6c5..3c27ac0c9 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -229,9 +229,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -239,8 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -258,7 +258,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json index 06b4b80fb..bc651a163 100644 --- a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json index 92e373869..fe7fa9241 100644 --- a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json index 6bf34129a..cc73941ec 100644 --- a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json index c12e2585f..f1b96ec04 100644 --- a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json index c6abb8a6b..7e18868c3 100644 --- a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json index 4d139958a..eecf42030 100644 --- a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json index 03fa0df3d..5ca86c924 100644 --- a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json @@ -219,7 +219,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -242,18 +242,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -262,14 +262,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json index 32d575aae..d64ce53b6 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json index b7b100405..3cd2e3b18 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json index 3566a50a1..5e4681dee 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json b/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json index 23c4ba1be..bf9a1e908 100644 --- a/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json +++ b/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json @@ -300,7 +300,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -323,18 +323,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -344,14 +344,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "Tekla.Structures.Dialog": { "type": "CentralTransitive", diff --git a/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json b/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json index 0dc8fe3d0..6bed27646 100644 --- a/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json +++ b/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json @@ -341,7 +341,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.Logging": { @@ -364,18 +364,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -385,14 +385,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "Tekla.Structures.Plugins": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json index 1a64112ac..caa134526 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json @@ -324,9 +324,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -334,8 +334,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -378,18 +378,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -398,14 +398,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index 4d26b85ef..c7b7a5ac9 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -311,18 +311,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -332,14 +332,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", @@ -572,9 +572,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -582,8 +582,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -619,18 +619,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -640,14 +640,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI/packages.lock.json b/DUI3/Speckle.Connectors.DUI/packages.lock.json index 637b3aa88..29bc486a1 100644 --- a/DUI3/Speckle.Connectors.DUI/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI/packages.lock.json @@ -50,9 +50,9 @@ }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -62,14 +62,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "Direct", @@ -320,9 +320,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.logging": { @@ -351,11 +351,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } } } diff --git a/Directory.Packages.props b/Directory.Packages.props index a4a851429..ad3d9dff5 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -40,9 +40,9 @@ - - - + + + diff --git a/Sdk/Speckle.Connectors.Common/packages.lock.json b/Sdk/Speckle.Connectors.Common/packages.lock.json index b3ac27f45..fb3772b27 100644 --- a/Sdk/Speckle.Connectors.Common/packages.lock.json +++ b/Sdk/Speckle.Connectors.Common/packages.lock.json @@ -53,18 +53,18 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -74,14 +74,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "GraphQL.Client": { "type": "Transitive", @@ -386,18 +386,18 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -406,14 +406,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "GraphQL.Client": { "type": "Transitive", diff --git a/Sdk/Speckle.Connectors.Tests/packages.lock.json b/Sdk/Speckle.Connectors.Tests/packages.lock.json index d7c63c194..cabb1dfb8 100644 --- a/Sdk/Speckle.Connectors.Tests/packages.lock.json +++ b/Sdk/Speckle.Connectors.Tests/packages.lock.json @@ -324,9 +324,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.logging": { @@ -368,18 +368,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -388,14 +388,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json index 11bcb27fa..ea25d1475 100644 --- a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json +++ b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json @@ -332,7 +332,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.testing": { @@ -362,18 +362,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -382,14 +382,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } diff --git a/Sdk/Speckle.Converters.Common/packages.lock.json b/Sdk/Speckle.Converters.Common/packages.lock.json index 0a3dbba8e..bbaef998c 100644 --- a/Sdk/Speckle.Converters.Common/packages.lock.json +++ b/Sdk/Speckle.Converters.Common/packages.lock.json @@ -50,11 +50,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -309,9 +309,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -321,14 +321,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } }, "net8.0": { @@ -371,11 +371,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -568,9 +568,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -579,14 +579,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" } } } From c7f95be2ac4d755506c65559faed57607d21818b Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 13 Dec 2024 13:55:07 +0000 Subject: [PATCH 162/173] scope the classes correctly for the deserialization process --- .../DependencyInjection/SharedRegistration.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index f264e63d2..ede04bd1c 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -43,9 +43,11 @@ public static void AddAutocadBase(this IServiceCollection serviceCollection) serviceCollection.AddScoped(); serviceCollection.AddScoped(); - serviceCollection.AddScoped(); + serviceCollection.AddScoped(); + serviceCollection.AddScoped(); serviceCollection.AddScoped(); + serviceCollection.AddScoped(); serviceCollection.AddSingleton(); From 739f3728453e21904bd7e60e797216a1ca4552ba Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Fri, 13 Dec 2024 14:26:02 +0000 Subject: [PATCH 163/173] Navisworks proj cleanup (#443) * Clean up projects and locks for all Navisworks * Fix nuget error * Fixed Local SLN and removed some runtime IDs * add back RuntimeIdentifier --- .../Speckle.Connectors.Navisworks2020.csproj | 37 +---- .../packages.lock.json | 50 +++--- .../Speckle.Connectors.Navisworks2021.csproj | 37 +---- .../packages.lock.json | 50 +++--- .../Speckle.Connectors.Navisworks2022.csproj | 36 +---- .../packages.lock.json | 50 +++--- .../Speckle.Connectors.Navisworks2023.csproj | 34 +--- .../packages.lock.json | 50 +++--- .../Speckle.Connectors.Navisworks2024.csproj | 35 +---- .../packages.lock.json | 50 +++--- .../Speckle.Connectors.Navisworks2025.csproj | 38 +---- .../packages.lock.json | 76 ++++----- .../Speckle.Converters.Navisworks2020.csproj | 11 +- .../packages.lock.json | 34 ++-- .../Speckle.Converters.Navisworks2021.csproj | 11 +- .../packages.lock.json | 34 ++-- .../Speckle.Converters.Navisworks2022.csproj | 11 +- .../packages.lock.json | 34 ++-- .../Speckle.Converters.Navisworks2023.csproj | 11 +- .../packages.lock.json | 34 ++-- .../Speckle.Converters.Navisworks2024.csproj | 11 +- .../packages.lock.json | 34 ++-- .../Speckle.Converters.Navisworks2025.csproj | 11 +- .../packages.lock.json | 34 ++-- Local.sln | 146 ++++++++++++++++-- Speckle.Connectors.sln | 119 ++++++++++++++ 26 files changed, 546 insertions(+), 532 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj index 2f5daaaba..5b663b2ce 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/Speckle.Connectors.Navisworks2020.csproj @@ -1,13 +1,9 @@ - - - net48 x64 win-x64 512 - true v17 2020 @@ -21,50 +17,21 @@ $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) - Speckle.Connector.Navisworks - - - - - - - - - - - - - bin\x64\Debug\ - true - full - false - prompt - 4 - - bin\x64\Release\ - pdbonly - true - prompt - 4 - - - - + + - - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index 264ed065a..f234efffc 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "GraphQL.Client": { @@ -268,22 +268,14 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, - "Objects.Converter.Navisworks2020": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2020.0.0, )" - } - }, "speckle.connectors.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -291,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +302,15 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" + } + }, + "speckle.converters.navisworks2020": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2020.0.0, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj index 71ee260e6..542d8fae2 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/Speckle.Connectors.Navisworks2021.csproj @@ -1,13 +1,9 @@ - - - net48 x64 win-x64 512 - true v18 2021 @@ -21,50 +17,21 @@ $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) - Speckle.Connector.Navisworks - - - - - - - - - - - - - bin\x64\Debug\ - true - full - false - prompt - 4 - - bin\x64\Release\ - pdbonly - true - prompt - 4 - - - - + + - - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index 6b6a28786..db31d16c8 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "GraphQL.Client": { @@ -268,22 +268,14 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, - "Objects.Converter.Navisworks2021": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2021.0.0, )" - } - }, "speckle.connectors.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -291,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +302,15 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" + } + }, + "speckle.converters.navisworks2021": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2021.0.0, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj index 88a813f9c..72c3d9959 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/Speckle.Connectors.Navisworks2022.csproj @@ -1,5 +1,3 @@ - - @@ -7,7 +5,6 @@ x64 win-x64 512 - true v19 2022 @@ -21,50 +18,21 @@ $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) - Speckle.Connector.Navisworks - - - - - - - - - - - bin\x64\Debug\ - true - full - false - prompt - 4 - - - - bin\x64\Release\ - pdbonly - true - prompt - 4 - - - - + + - - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index fee8b3af8..36481b86d 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "GraphQL.Client": { @@ -268,22 +268,14 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, - "Objects.Converter.Navisworks2022": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2022.0.0, )" - } - }, "speckle.connectors.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -291,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +302,15 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" + } + }, + "speckle.converters.navisworks2022": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2022.0.0, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj index 70a1b95ab..d093ac0bf 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/Speckle.Connectors.Navisworks2023.csproj @@ -1,5 +1,3 @@ - - @@ -7,7 +5,6 @@ x64 win-x64 512 - true v20 2023 @@ -25,46 +22,19 @@ - - - - - - - - - - - bin\x64\Debug\ - true - full - false - prompt - 4 - - - - bin\x64\Release\ - pdbonly - true - prompt - 4 - - - + + - - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index 3d269ef4d..70a592e4c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "GraphQL.Client": { @@ -268,22 +268,14 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, - "Objects.Converter.Navisworks2023": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2023.0.0, )" - } - }, "speckle.connectors.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -291,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +302,15 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" + } + }, + "speckle.converters.navisworks2023": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2023.0.0, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj index 26a68fdec..6b346613c 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/Speckle.Connectors.Navisworks2024.csproj @@ -1,5 +1,3 @@ - - @@ -7,7 +5,6 @@ x64 win-x64 512 - true v21 2024 @@ -25,46 +22,18 @@ - - - - - - - - - - - bin\x64\Debug\ - true - full - false - prompt - 4 - - - - bin\x64\Release\ - pdbonly - true - prompt - 4 - - - - + + - - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 425d9a1bf..2799ab411 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "GraphQL.Client": { @@ -268,22 +268,14 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, - "Objects.Converter.Navisworks2024": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2024.0.0, )" - } - }, "speckle.connectors.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -291,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +302,15 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" + } + }, + "speckle.converters.navisworks2024": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2024.0.0, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj index 957e77730..917a87414 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/Speckle.Connectors.Navisworks2025.csproj @@ -1,13 +1,9 @@ - - - net48 x64 win-x64 512 - true v22 2025 @@ -21,50 +17,22 @@ $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle $(AppData)\Autodesk\ApplicationPlugins\Speckle.Connectors.Navisworksv3.bundle\Contents\$(NavisworksVersion) - Speckle.Connector.Navisworks - - - - - - - - - - - - - bin\x64\Debug\ - true - full - false - prompt - 4 - - bin\x64\Release\ - pdbonly - true - prompt - 4 - - - - + + + - - diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index da6401902..8fa765128 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -21,6 +21,12 @@ "Microsoft.SourceLink.Common": "8.0.0" } }, + "Microsoft.Web.WebView2": { + "type": "Direct", + "requested": "[1.0.2045.28, )", + "resolved": "1.0.2045.28", + "contentHash": "QDsR/HCNjzqYZrIuNLxyfmOIqVfMq1iGyoBR3OVVlFl4NZ12T8jRC0MNpOReKfgwtO5zh8g+eBYR6RAXFltcVA==" + }, "PolySharp": { "type": "Direct", "requested": "[1.14.1, )", @@ -41,11 +47,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "GraphQL.Client": { @@ -268,22 +274,14 @@ "System.Runtime.CompilerServices.Unsafe": "4.5.3" } }, - "Objects.Converter.Navisworks2025": { - "type": "Project", - "dependencies": { - "Speckle.Connectors.DUI": "[1.0.0, )", - "Speckle.Converters.Common": "[1.0.0, )", - "Speckle.Navisworks.API": "[2025.0.0, )" - } - }, "speckle.connectors.common": { "type": "Project", "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -291,15 +289,15 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, "speckle.connectors.dui.webview": { "type": "Project", "dependencies": { - "Microsoft.Web.WebView2": "[1.0.2088.41, )", + "Microsoft.Web.WebView2": "[1.0.1938.49, )", "Speckle.Connectors.DUI": "[1.0.0, )" } }, @@ -310,7 +308,15 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" + } + }, + "speckle.converters.navisworks2025": { + "type": "Project", + "dependencies": { + "Speckle.Connectors.DUI": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )", + "Speckle.Navisworks.API": "[2025.0.0, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -340,17 +346,11 @@ "resolved": "2.2.0", "contentHash": "B2WqEox8o+4KUOpL7rZPyh6qYjik8tHi2tN8Z9jZkHzED8ElYgZa/h6K+xliB435SqUcWT290Fr2aa8BtZjn8A==" }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" - }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", @@ -377,16 +377,16 @@ } }, ".NETFramework,Version=v4.8/win-x64": { + "Microsoft.Web.WebView2": { + "type": "Direct", + "requested": "[1.0.2045.28, )", + "resolved": "1.0.2045.28", + "contentHash": "QDsR/HCNjzqYZrIuNLxyfmOIqVfMq1iGyoBR3OVVlFl4NZ12T8jRC0MNpOReKfgwtO5zh8g+eBYR6RAXFltcVA==" + }, "SQLitePCLRaw.lib.e_sqlite3": { "type": "Transitive", "resolved": "2.1.4", "contentHash": "2C9Q9eX7CPLveJA0rIhf9RXAvu+7nWZu1A2MdG6SD/NOu26TakGgL1nsbc0JAspGijFOo3HoN79xrx8a368fBg==" - }, - "Microsoft.Web.WebView2": { - "type": "CentralTransitive", - "requested": "[1.0.2088.41, )", - "resolved": "1.0.2088.41", - "contentHash": "QNiJR29CUrCqWCen7jyprw2RjQChHq5Kc95BV47DuCbu8S+iYmgnbDTsf/znQd92gVI2tBeUusD01uL+EK6Wag==" } } } diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj index 2bf0dbc39..e00724486 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/Speckle.Converters.Navisworks2020.csproj @@ -1,22 +1,15 @@ - SpeckleConverterNavisworks - Objects.Converter.Navisworks2020 - Objects.Converter.Navisworks - AnyCPU;x64 - bin\x64\$(Configuration) - true - $(DefineConstants);NAVIS2020 net48 + x64 + $(DefineConstants);NAVIS2020 Debug;Release;Local - Speckle.Converter.Navisworks - diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index e84e16733..e1fc5d48f 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj index 6cde481b0..79e45bc9a 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/Speckle.Converters.Navisworks2021.csproj @@ -1,22 +1,15 @@ - SpeckleConverterNavisworks - Objects.Converter.Navisworks2021 - Objects.Converter.Navisworks - AnyCPU;x64 - bin\x64\$(Configuration) - true - $(DefineConstants);NAVIS2021 net48 + x64 + $(DefineConstants);NAVIS2021 Debug;Release;Local - Speckle.Converter.Navisworks - diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index 5f0f6f42c..866258fd6 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj index 704f7f779..c95f1af02 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/Speckle.Converters.Navisworks2022.csproj @@ -1,22 +1,15 @@ - SpeckleConverterNavisworks - Objects.Converter.Navisworks2022 - Objects.Converter.Navisworks - AnyCPU;x64 - bin\x64\$(Configuration) - true - $(DefineConstants);NAVIS2022 net48 + x64 + $(DefineConstants);NAVIS2022 Debug;Release;Local - Speckle.Converter.Navisworks - diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index ac0ca5027..f885fb24d 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj index 9e71c982e..e81f35e97 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/Speckle.Converters.Navisworks2023.csproj @@ -1,22 +1,15 @@ - SpeckleConverterNavisworks - Objects.Converter.Navisworks2023 - Objects.Converter.Navisworks - AnyCPU;x64 - bin\x64\$(Configuration) - true - $(DefineConstants);NAVIS2023 net48 + x64 + $(DefineConstants);NAVIS2023 Debug;Release;Local - Speckle.Converter.Navisworks - diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index a9a273703..6207606f4 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj index e9058c38d..4b10afb81 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/Speckle.Converters.Navisworks2024.csproj @@ -1,22 +1,15 @@ - SpeckleConverterNavisworks - Objects.Converter.Navisworks2024 - Objects.Converter.Navisworks - AnyCPU;x64 - bin\x64\$(Configuration) - true - $(DefineConstants);NAVIS2024 net48 + x64 + $(DefineConstants);NAVIS2024 Debug;Release;Local - Speckle.Converter.Navisworks - diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 1cb7cf768..7961fdc43 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj index 97030b106..0ef228dda 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/Speckle.Converters.Navisworks2025.csproj @@ -1,22 +1,15 @@ - SpeckleConverterNavisworks - Objects.Converter.Navisworks2025 - Objects.Converter.Navisworks - AnyCPU;x64 - bin\x64\$(Configuration) - true - $(DefineConstants);NAVIS2025 net48 + x64 + $(DefineConstants);NAVIS2025 Debug;Release;Local - Speckle.Converter.Navisworks - diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index 7df603f82..649b9da56 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.212, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.212, )", + "Speckle.Sdk": "[3.1.0-dev.215, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.212, )" + "Speckle.Objects": "[3.1.0-dev.215, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "n0NUmrZKDSgMDnKrlTpJk8sH7Kse/8O6M1qkBmw02ux6LhOIpQhdlHo3SY/xS0yV6HQnaFuzI75o1zByTnxGng==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.212" + "Speckle.Sdk": "3.1.0-dev.215" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "hyBvk2Vq0MPVBM3r48TVJc4ERwcZpuCstIpfebrekLLbCH+wk/vfCD9VMKWqALYjTuYg7hFwrKGw6Z/G23n5jw==", + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.212" + "Speckle.Sdk.Dependencies": "3.1.0-dev.215" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.212, )", - "resolved": "3.1.0-dev.212", - "contentHash": "b6nJAUSYixTWwZMjff1uPkrKXKp8ehoO6Nfw/eQxLpXdwaF4xdk1/sOXwFeGWaWId9E41Jf2jq4YHcxPEnDjYA==" + "requested": "[3.1.0-dev.215, )", + "resolved": "3.1.0-dev.215", + "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Local.sln b/Local.sln index 70133e7ba..f8d9e93d0 100644 --- a/Local.sln +++ b/Local.sln @@ -226,12 +226,42 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{46D441 EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2024", "Connectors\Navisworks\Speckle.Connectors.Navisworks2024\Speckle.Connectors.Navisworks2024.csproj", "{CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}" -EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.NavisworksShared", "Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.shproj", "{62813838-52F7-43CB-9062-BB2611C00C79}" EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Converters.NavisworksShared", "Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.shproj", "{23830613-87F8-4655-B523-72189A597962}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2020", "2020", "{EAFCD59F-3650-497C-94ED-AEEFC3131B18}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2020", "Connectors\Navisworks\Speckle.Connectors.Navisworks2020\Speckle.Connectors.Navisworks2020.csproj", "{B6985672-4704-4F86-A3E0-2310BF8E6D73}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2020", "Converters\Navisworks\Speckle.Converters.Navisworks2020\Speckle.Converters.Navisworks2020.csproj", "{56680EA7-3599-4D88-83A5-B43BA93AC046}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2021", "2021", "{78DE77B0-7954-41FF-B374-ABE705881CEC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2021", "Converters\Navisworks\Speckle.Converters.Navisworks2021\Speckle.Converters.Navisworks2021.csproj", "{6101B44D-3805-4AA1-B8D0-E06C461ED202}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2022", "2022", "{19F15419-F493-4D53-83EA-F90869D97D6E}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2022", "Converters\Navisworks\Speckle.Converters.Navisworks2022\Speckle.Converters.Navisworks2022.csproj", "{A675E34C-667E-4069-A8FA-92F2C2DB8A27}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{91DCAFB0-283B-4B07-9F6F-7335DECEEB08}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2023", "Converters\Navisworks\Speckle.Converters.Navisworks2023\Speckle.Converters.Navisworks2023.csproj", "{57AFB8CB-B310-49E4-9C53-621A614063CF}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{0B5AB325-3791-4A81-B0EF-BCA040381BE2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2021", "Connectors\Navisworks\Speckle.Connectors.Navisworks2021\Speckle.Connectors.Navisworks2021.csproj", "{C635619C-2938-4E6F-9E25-56CE1632A7EC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2022", "Connectors\Navisworks\Speckle.Connectors.Navisworks2022\Speckle.Connectors.Navisworks2022.csproj", "{04FC86A3-2E25-41A1-98C5-10898616CD78}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2023", "Connectors\Navisworks\Speckle.Connectors.Navisworks2023\Speckle.Connectors.Navisworks2023.csproj", "{FD44E1F0-D20A-49B6-ADC9-482D911A74FB}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{7791806E-7531-41D8-9C9D-4A1249D9F99C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -575,12 +605,72 @@ Global {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Local|Any CPU.Build.0 = Debug|Any CPU {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Release|Any CPU.ActiveCfg = Release|Any CPU {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A}.Release|Any CPU.Build.0 = Release|Any CPU - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Local|Any CPU.ActiveCfg = Local|Any CPU - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Local|Any CPU.Build.0 = Local|Any CPU - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C}.Release|Any CPU.Build.0 = Release|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Local|Any CPU.Build.0 = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Release|Any CPU.Build.0 = Release|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Debug|Any CPU.Build.0 = Debug|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Local|Any CPU.ActiveCfg = Local|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Local|Any CPU.Build.0 = Local|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Release|Any CPU.ActiveCfg = Release|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Release|Any CPU.Build.0 = Release|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Local|Any CPU.ActiveCfg = Local|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Local|Any CPU.Build.0 = Local|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Release|Any CPU.Build.0 = Release|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Local|Any CPU.Build.0 = Local|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Release|Any CPU.Build.0 = Release|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Local|Any CPU.ActiveCfg = Local|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Local|Any CPU.Build.0 = Local|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Release|Any CPU.Build.0 = Release|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Local|Any CPU.ActiveCfg = Local|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Local|Any CPU.Build.0 = Local|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Release|Any CPU.Build.0 = Release|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Local|Any CPU.Build.0 = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Release|Any CPU.Build.0 = Release|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Debug|Any CPU.Build.0 = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Local|Any CPU.Build.0 = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Release|Any CPU.ActiveCfg = Release|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Release|Any CPU.Build.0 = Release|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Local|Any CPU.Build.0 = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Release|Any CPU.Build.0 = Release|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Local|Any CPU.Build.0 = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Release|Any CPU.Build.0 = Release|Any CPU + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}.Local|Any CPU.ActiveCfg = Local|Any CPU + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}.Local|Any CPU.Build.0 = Local|Any CPU + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -683,9 +773,24 @@ Global {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} {46D4410B-009A-43BD-AA32-BDB8B00D9E93} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} {CE4D238F-66C2-46B1-BD25-9AC22D7CCB1A} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} - {B0B6C3D8-EAEE-43FD-8F6A-8AC973A0733C} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} {62813838-52F7-43CB-9062-BB2611C00C79} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} {23830613-87F8-4655-B523-72189A597962} = {46D4410B-009A-43BD-AA32-BDB8B00D9E93} + {EAFCD59F-3650-497C-94ED-AEEFC3131B18} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {B6985672-4704-4F86-A3E0-2310BF8E6D73} = {EAFCD59F-3650-497C-94ED-AEEFC3131B18} + {56680EA7-3599-4D88-83A5-B43BA93AC046} = {EAFCD59F-3650-497C-94ED-AEEFC3131B18} + {78DE77B0-7954-41FF-B374-ABE705881CEC} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {6101B44D-3805-4AA1-B8D0-E06C461ED202} = {78DE77B0-7954-41FF-B374-ABE705881CEC} + {19F15419-F493-4D53-83EA-F90869D97D6E} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {A675E34C-667E-4069-A8FA-92F2C2DB8A27} = {19F15419-F493-4D53-83EA-F90869D97D6E} + {91DCAFB0-283B-4B07-9F6F-7335DECEEB08} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {57AFB8CB-B310-49E4-9C53-621A614063CF} = {91DCAFB0-283B-4B07-9F6F-7335DECEEB08} + {A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D} = {95AD741F-44B5-4E01-AF9C-FF9256E26D4B} + {0B5AB325-3791-4A81-B0EF-BCA040381BE2} = {A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D} + {C635619C-2938-4E6F-9E25-56CE1632A7EC} = {78DE77B0-7954-41FF-B374-ABE705881CEC} + {04FC86A3-2E25-41A1-98C5-10898616CD78} = {19F15419-F493-4D53-83EA-F90869D97D6E} + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB} = {91DCAFB0-283B-4B07-9F6F-7335DECEEB08} + {7791806E-7531-41D8-9C9D-4A1249D9F99C} = {A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D} + {52D789C2-5B3C-4225-9F84-C54B3AB4F1B5} = {AE58C92C-DBF3-4248-8614-8F283B8CB5F8} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} @@ -693,12 +798,17 @@ Global GlobalSection(SharedMSBuildProjectFiles) = preSolution Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{01f98733-7352-47ad-a594-537d979de3de}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{01f98733-7352-47ad-a594-537d979de3de}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{04fc86a3-2e25-41a1-98c5-10898616cd78}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{0b5ab325-3791-4a81-b0ef-bca040381be2}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.CSiShared\Speckle.Connectors.CSiShared.projitems*{1696f113-7f6b-49d6-a4ef-15751c7600f9}*SharedItemsImports = 5 + Connectors\CSi\Speckle.Connectors.ETABSShared\Speckle.Connectors.ETABSShared.projitems*{1696f113-7f6b-49d6-a4ef-15751c7600f9}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{19424b55-058c-4e9c-b86f-700aef9eaec3}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{1b1f674c-cfd5-4eac-adfd-f29a70b9d229}*SharedItemsImports = 5 + Converters\CSi\Speckle.Converters.CSiShared\Speckle.Converters.CSiShared.projitems*{1b5c5fb2-3b22-4371-9aa5-3edf3b4d62de}*SharedItemsImports = 13 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{1e2644a9-6b31-4350-8772-ceaad6ee0b21}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{1f93164a-42ee-4d72-b7cd-9ca831f60e09}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{1f93164a-42ee-4d72-b7cd-9ca831f60e09}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{23830613-87f8-4655-b523-72189a597962}*SharedItemsImports = 13 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{25172c49-7aa4-4739-bb07-69785094c379}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{25172c49-7aa4-4739-bb07-69785094c379}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{26391930-f86f-47e0-a5f6-b89919e38ce1}*SharedItemsImports = 5 @@ -706,14 +816,25 @@ Global Connectors\Tekla\Speckle.Connector.TeklaShared\Speckle.Connectors.TeklaShared.projitems*{2cbc9a3d-8ac6-4127-ada5-c6d7f07a35e3}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{2f04e109-2b13-4dfc-961d-b7eea94299bd}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{35175682-da83-4c0a-a49d-b191f5885d8e}*SharedItemsImports = 13 + Converters\CSi\Speckle.Converters.ETABSShared\Speckle.Converters.ETABSShared.projitems*{36377858-d696-4567-ab05-637f4ec841f5}*SharedItemsImports = 13 Connectors\Tekla\Speckle.Connector.TeklaShared\Speckle.Connectors.TeklaShared.projitems*{3ab9028b-b2d2-464b-9ba3-39c192441e50}*SharedItemsImports = 13 + Converters\CSi\Speckle.Converters.CSiShared\Speckle.Converters.CSiShared.projitems*{3b81b220-92e3-43fc-86c6-1e6dbeeb1917}*SharedItemsImports = 5 + Converters\CSi\Speckle.Converters.ETABSShared\Speckle.Converters.ETABSShared.projitems*{3b81b220-92e3-43fc-86c6-1e6dbeeb1917}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{41bc679f-887f-44cf-971d-a5502ee87db0}*SharedItemsImports = 13 Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.projitems*{4c373fd0-e3f3-478b-ad32-cdbf340d21a9}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{4d40a101-07e6-4ff2-8934-83434932591d}*SharedItemsImports = 5 Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.projitems*{52666479-5401-47d6-b7ba-d554784439ea}*SharedItemsImports = 13 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{52d789c2-5b3c-4225-9f84-c54b3ab4f1b5}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{56680ea7-3599-4d88-83a5-b43ba93ac046}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{57afb8cb-b310-49e4-9c53-621a614063cf}*SharedItemsImports = 5 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{57c1aa51-5be2-40f3-8cb2-8b7d2af0ff5c}*SharedItemsImports = 5 + Connectors\CSi\Speckle.Connectors.ETABSShared\Speckle.Connectors.ETABSShared.projitems*{5d1e0b0d-56a7-4e13-b9a9-8633e02b8f17}*SharedItemsImports = 13 + Converters\CSi\Speckle.Converters.CSiShared\Speckle.Converters.CSiShared.projitems*{5e924b13-b3e8-4724-9ba7-ce82e39866eb}*SharedItemsImports = 5 + Converters\CSi\Speckle.Converters.ETABSShared\Speckle.Converters.ETABSShared.projitems*{5e924b13-b3e8-4724-9ba7-ce82e39866eb}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{6101b44d-3805-4aa1-b8d0-e06c461ed202}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{617bd3c7-87d9-4d28-8ac9-4910945bb9fc}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{617bd3c7-87d9-4d28-8ac9-4910945bb9fc}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{62813838-52f7-43cb-9062-bb2611c00c79}*SharedItemsImports = 13 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{62f50a22-8bbf-497a-b599-f858dff1d31c}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{631c295a-7ccf-4b42-8686-7034e31469e7}*SharedItemsImports = 5 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{65a2f556-f14a-49f3-8a92-7f2e1e7ed3b5}*SharedItemsImports = 5 @@ -722,11 +843,13 @@ Global Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{68cf9bdf-94ac-4d2d-a7bd-d1c064f97051}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{6a40cbe4-ecab-4ced-9917-5c64cbf75da6}*SharedItemsImports = 13 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{6f3fd892-6315-4f75-bfbd-843a489f8b94}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{7791806e-7531-41d8-9c9d-4a1249d9f99c}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{7f1fdcf2-0ce8-4119-b3c1-f2cc6d7e1c36}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{7f1fdcf2-0ce8-4119-b3c1-f2cc6d7e1c36}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{89c4cbc7-1606-40de-b6da-fbe3aac98395}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{9add1b7a-6401-4202-8613-f668e2fbc0a4}*SharedItemsImports = 13 Connectors\Tekla\Speckle.Connector.TeklaShared\Speckle.Connectors.TeklaShared.projitems*{a277cdf6-7c8f-4870-8d15-af35f4749caa}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{a675e34c-667e-4069-a8fa-92f2c2db8a27}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{a6de3da0-b242-4f49-aef0-4e26af92d16c}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{a6de3da0-b242-4f49-aef0-4e26af92d16c}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.CSiShared\Speckle.Connectors.CSiShared.projitems*{a8e949b8-aa55-4909-99f0-8b551791a1f8}*SharedItemsImports = 13 @@ -734,8 +857,10 @@ Global Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{ae75b68f-3594-403b-9719-9c36da0e3f8a}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{ae75b68f-3594-403b-9719-9c36da0e3f8a}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.CSiShared\Speckle.Connectors.CSiShared.projitems*{afb47b71-4185-4135-98bb-eedffa8aa194}*SharedItemsImports = 5 + Connectors\CSi\Speckle.Connectors.ETABSShared\Speckle.Connectors.ETABSShared.projitems*{afb47b71-4185-4135-98bb-eedffa8aa194}*SharedItemsImports = 5 Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.projitems*{b236750b-cfe5-4640-9073-77a27a7257f6}*SharedItemsImports = 5 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{b37d4b9a-8d3f-4fa5-b9c8-e6c5f8a0c1e2}*SharedItemsImports = 13 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{b6985672-4704-4f86-a3e0-2310bf8e6d73}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{b6c04ec4-ed81-4e61-b4b2-4902015808d7}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{b6c04ec4-ed81-4e61-b4b2-4902015808d7}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{c2de264a-aa87-4012-b954-17e3f403a237}*SharedItemsImports = 5 @@ -745,8 +870,10 @@ Global Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{c34d0246-6c16-4e81-ae57-2ce70f81484b}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{c3879337-cd00-4011-89c5-585dd2cc3ed5}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{c3879337-cd00-4011-89c5-585dd2cc3ed5}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{c635619c-2938-4e6f-9e25-56ce1632a7ec}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{ce4d238f-66c2-46b1-bd25-9ac22d7ccb1a}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{d4566bf1-56cf-477a-8769-63299a9f45a3}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{d4566bf1-56cf-477a-8769-63299a9f45a3}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{dc570fff-6fe5-47bd-8bc1-b471a6067786}*SharedItemsImports = 13 @@ -755,6 +882,7 @@ Global Converters\Revit\Speckle.Converters.RevitShared.Tests\Speckle.Converters.RevitShared.Tests.projitems*{e1c43415-3202-45f4-8bf9-a4dd7d7f2ed6}*SharedItemsImports = 13 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{eaad080d-49af-49bf-b8bd-a18ceb210734}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{efd01520-93e8-4cca-8e03-9cdc635f55f4}*SharedItemsImports = 13 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{fd44e1f0-d20a-49b6-adc9-482d911a74fb}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{fe4cb79d-4e59-4070-871c-108545537e6c}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{fe4cb79d-4e59-4070-871c-108545537e6c}*SharedItemsImports = 5 EndGlobalSection diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 53657a183..b5072730b 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -227,6 +227,36 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Naviswor EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2024", "Converters\Navisworks\Speckle.Converters.Navisworks2024\Speckle.Converters.Navisworks2024.csproj", "{B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2020", "2020", "{EAFCD59F-3650-497C-94ED-AEEFC3131B18}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2020", "Connectors\Navisworks\Speckle.Connectors.Navisworks2020\Speckle.Connectors.Navisworks2020.csproj", "{B6985672-4704-4F86-A3E0-2310BF8E6D73}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2020", "Converters\Navisworks\Speckle.Converters.Navisworks2020\Speckle.Converters.Navisworks2020.csproj", "{56680EA7-3599-4D88-83A5-B43BA93AC046}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2021", "2021", "{78DE77B0-7954-41FF-B374-ABE705881CEC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2021", "Converters\Navisworks\Speckle.Converters.Navisworks2021\Speckle.Converters.Navisworks2021.csproj", "{6101B44D-3805-4AA1-B8D0-E06C461ED202}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2022", "2022", "{19F15419-F493-4D53-83EA-F90869D97D6E}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2022", "Converters\Navisworks\Speckle.Converters.Navisworks2022\Speckle.Converters.Navisworks2022.csproj", "{A675E34C-667E-4069-A8FA-92F2C2DB8A27}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{91DCAFB0-283B-4B07-9F6F-7335DECEEB08}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2023", "Converters\Navisworks\Speckle.Converters.Navisworks2023\Speckle.Converters.Navisworks2023.csproj", "{57AFB8CB-B310-49E4-9C53-621A614063CF}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Navisworks2025", "Converters\Navisworks\Speckle.Converters.Navisworks2025\Speckle.Converters.Navisworks2025.csproj", "{0B5AB325-3791-4A81-B0EF-BCA040381BE2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2021", "Connectors\Navisworks\Speckle.Connectors.Navisworks2021\Speckle.Connectors.Navisworks2021.csproj", "{C635619C-2938-4E6F-9E25-56CE1632A7EC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2022", "Connectors\Navisworks\Speckle.Connectors.Navisworks2022\Speckle.Connectors.Navisworks2022.csproj", "{04FC86A3-2E25-41A1-98C5-10898616CD78}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2023", "Connectors\Navisworks\Speckle.Connectors.Navisworks2023\Speckle.Connectors.Navisworks2023.csproj", "{FD44E1F0-D20A-49B6-ADC9-482D911A74FB}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Navisworks2025", "Connectors\Navisworks\Speckle.Connectors.Navisworks2025\Speckle.Connectors.Navisworks2025.csproj", "{7791806E-7531-41D8-9C9D-4A1249D9F99C}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -558,6 +588,66 @@ Global {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Local|Any CPU.Build.0 = Local|Any CPU {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.ActiveCfg = Release|Any CPU {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4}.Release|Any CPU.Build.0 = Release|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Local|Any CPU.Build.0 = Debug|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B6985672-4704-4F86-A3E0-2310BF8E6D73}.Release|Any CPU.Build.0 = Release|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Debug|Any CPU.Build.0 = Debug|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Local|Any CPU.ActiveCfg = Local|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Local|Any CPU.Build.0 = Local|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Release|Any CPU.ActiveCfg = Release|Any CPU + {56680EA7-3599-4D88-83A5-B43BA93AC046}.Release|Any CPU.Build.0 = Release|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Local|Any CPU.ActiveCfg = Local|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Local|Any CPU.Build.0 = Local|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6101B44D-3805-4AA1-B8D0-E06C461ED202}.Release|Any CPU.Build.0 = Release|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Local|Any CPU.Build.0 = Local|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A675E34C-667E-4069-A8FA-92F2C2DB8A27}.Release|Any CPU.Build.0 = Release|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Local|Any CPU.ActiveCfg = Local|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Local|Any CPU.Build.0 = Local|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {57AFB8CB-B310-49E4-9C53-621A614063CF}.Release|Any CPU.Build.0 = Release|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Local|Any CPU.ActiveCfg = Local|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Local|Any CPU.Build.0 = Local|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0B5AB325-3791-4A81-B0EF-BCA040381BE2}.Release|Any CPU.Build.0 = Release|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Local|Any CPU.Build.0 = Debug|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C635619C-2938-4E6F-9E25-56CE1632A7EC}.Release|Any CPU.Build.0 = Release|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Debug|Any CPU.Build.0 = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Local|Any CPU.Build.0 = Debug|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Release|Any CPU.ActiveCfg = Release|Any CPU + {04FC86A3-2E25-41A1-98C5-10898616CD78}.Release|Any CPU.Build.0 = Release|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Local|Any CPU.Build.0 = Debug|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB}.Release|Any CPU.Build.0 = Release|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Local|Any CPU.Build.0 = Debug|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7791806E-7531-41D8-9C9D-4A1249D9F99C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -663,6 +753,21 @@ Global {96FA29FE-766A-4500-853A-0A4D1BD0A78F} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} {8C14D930-03D2-4E2F-9D8D-A6B57F57A659} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} {B12D6A2E-51FD-4197-B442-46C7D8F5E4E4} = {96FA29FE-766A-4500-853A-0A4D1BD0A78F} + {EAFCD59F-3650-497C-94ED-AEEFC3131B18} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {B6985672-4704-4F86-A3E0-2310BF8E6D73} = {EAFCD59F-3650-497C-94ED-AEEFC3131B18} + {56680EA7-3599-4D88-83A5-B43BA93AC046} = {EAFCD59F-3650-497C-94ED-AEEFC3131B18} + {78DE77B0-7954-41FF-B374-ABE705881CEC} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {6101B44D-3805-4AA1-B8D0-E06C461ED202} = {78DE77B0-7954-41FF-B374-ABE705881CEC} + {19F15419-F493-4D53-83EA-F90869D97D6E} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {A675E34C-667E-4069-A8FA-92F2C2DB8A27} = {19F15419-F493-4D53-83EA-F90869D97D6E} + {91DCAFB0-283B-4B07-9F6F-7335DECEEB08} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {57AFB8CB-B310-49E4-9C53-621A614063CF} = {91DCAFB0-283B-4B07-9F6F-7335DECEEB08} + {A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D} = {7B95C512-C1CD-4110-A9A9-CECCD9630353} + {0B5AB325-3791-4A81-B0EF-BCA040381BE2} = {A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D} + {C635619C-2938-4E6F-9E25-56CE1632A7EC} = {78DE77B0-7954-41FF-B374-ABE705881CEC} + {04FC86A3-2E25-41A1-98C5-10898616CD78} = {19F15419-F493-4D53-83EA-F90869D97D6E} + {FD44E1F0-D20A-49B6-ADC9-482D911A74FB} = {91DCAFB0-283B-4B07-9F6F-7335DECEEB08} + {7791806E-7531-41D8-9C9D-4A1249D9F99C} = {A88CFA1F-B2D5-4DBE-8496-68D0AFA46F2D} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} @@ -671,12 +776,15 @@ Global Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{01f98733-7352-47ad-a594-537d979de3de}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{01f98733-7352-47ad-a594-537d979de3de}*SharedItemsImports = 5 Connectors\Tekla\Speckle.Connector.TeklaShared\Speckle.Connectors.TeklaShared.projitems*{025c85f8-f741-4600-bc46-5fead754b65d}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{04fc86a3-2e25-41a1-98c5-10898616cd78}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{0b5ab325-3791-4a81-b0ef-bca040381be2}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.CsiShared\Speckle.Connectors.CsiShared.projitems*{115d6106-1801-484a-b4e5-bcc94b6e5c7f}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.ETABSShared\Speckle.Connectors.ETABSShared.projitems*{115d6106-1801-484a-b4e5-bcc94b6e5c7f}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{19424b55-058c-4e9c-b86f-700aef9eaec3}*SharedItemsImports = 5 Converters\CSi\Speckle.Converters.CSiShared\Speckle.Converters.CSiShared.projitems*{1b5c5fb2-3b22-4371-9aa5-3edf3b4d62de}*SharedItemsImports = 13 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{1e2644a9-6b31-4350-8772-ceaad6ee0b21}*SharedItemsImports = 5 Connectors\Tekla\Speckle.Connector.TeklaShared\Speckle.Connectors.TeklaShared.projitems*{2319c00f-b268-4e4c-9f88-6b379e2bbd22}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{23830613-87f8-4655-b523-72189a597962}*SharedItemsImports = 13 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{25172c49-7aa4-4739-bb07-69785094c379}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{25172c49-7aa4-4739-bb07-69785094c379}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{26391930-f86f-47e0-a5f6-b89919e38ce1}*SharedItemsImports = 5 @@ -689,18 +797,23 @@ Global Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{4d40a101-07e6-4ff2-8934-83434932591d}*SharedItemsImports = 5 Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.projitems*{52666479-5401-47d6-b7ba-d554784439ea}*SharedItemsImports = 13 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{5505b953-d434-49ce-8ebd-efd7b3c378f7}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{56680ea7-3599-4d88-83a5-b43ba93ac046}*SharedItemsImports = 5 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{56a909ae-6e99-4d4d-a22e-38bdc5528b8e}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{57afb8cb-b310-49e4-9c53-621a614063cf}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{5cdec958-708e-4d19-a79e-0c1db23a6039}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{5cdec958-708e-4d19-a79e-0c1db23a6039}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.ETABSShared\Speckle.Connectors.ETABSShared.projitems*{5d1e0b0d-56a7-4e13-b9a9-8633e02b8f17}*SharedItemsImports = 13 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{6101b44d-3805-4aa1-b8d0-e06c461ed202}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{617bd3c7-87d9-4d28-8ac9-4910945bb9fc}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{617bd3c7-87d9-4d28-8ac9-4910945bb9fc}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{62813838-52f7-43cb-9062-bb2611c00c79}*SharedItemsImports = 13 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{631c295a-7ccf-4b42-8686-7034e31469e7}*SharedItemsImports = 5 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{65a2f556-f14a-49f3-8a92-7f2e1e7ed3b5}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{67b888d9-c6c4-49f1-883c-5b964151d889}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared.Tests\Speckle.Converters.RevitShared.Tests.projitems*{68cf9bdf-94ac-4d2d-a7bd-d1c064f97051}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{68cf9bdf-94ac-4d2d-a7bd-d1c064f97051}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{6a40cbe4-ecab-4ced-9917-5c64cbf75da6}*SharedItemsImports = 13 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{7791806e-7531-41d8-9c9d-4a1249d9f99c}*SharedItemsImports = 5 Converters\CSi\Speckle.Converters.CSiShared\Speckle.Converters.CSiShared.projitems*{791e3288-8001-4d54-8eab-03d1d7f51044}*SharedItemsImports = 5 Converters\CSi\Speckle.Converters.ETABSShared\Speckle.Converters.ETABSShared.projitems*{791e3288-8001-4d54-8eab-03d1d7f51044}*SharedItemsImports = 5 Connectors\CSi\Speckle.Connectors.CsiShared\Speckle.Connectors.CsiShared.projitems*{7c49337a-6f7b-47ab-b549-42e799e89cf2}*SharedItemsImports = 5 @@ -712,11 +825,13 @@ Global Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{842f4bfd-3997-485d-bab5-9419c1d982f2}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{842f4bfd-3997-485d-bab5-9419c1d982f2}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{89c4cbc7-1606-40de-b6da-fbe3aac98395}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{8c14d930-03d2-4e2f-9d8d-a6b57f57a659}*SharedItemsImports = 5 Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.projitems*{8f9181c2-1808-44c0-a33a-5bae40c49e63}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{9166cc10-12e1-4a0f-916b-61f6f2004f5a}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{9add1b7a-6401-4202-8613-f668e2fbc0a4}*SharedItemsImports = 13 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{9d66ede4-afc2-4f00-b40c-a7e878a2972f}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{a1b72ec1-5bc4-41fd-850f-5da87df49616}*SharedItemsImports = 13 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{a675e34c-667e-4069-a8fa-92f2c2db8a27}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{a6de3da0-b242-4f49-aef0-4e26af92d16c}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{a6de3da0-b242-4f49-aef0-4e26af92d16c}*SharedItemsImports = 5 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{a6e3a82f-4696-4d92-aba1-38aa80752067}*SharedItemsImports = 5 @@ -725,11 +840,14 @@ Global Converters\Tekla\Speckle.Converters.TeklaShared\Speckle.Converters.TeklaShared.projitems*{acf75860-7fce-4ae9-8c45-68ad1043550b}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{afab80bd-a4dd-4cad-9937-acbfed668a48}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{afab80bd-a4dd-4cad-9937-acbfed668a48}*SharedItemsImports = 5 + Converters\Navisworks\Speckle.Converters.NavisworksShared\Speckle.Converters.NavisworksShared.projitems*{b12d6a2e-51fd-4197-b442-46c7d8f5e4e4}*SharedItemsImports = 5 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{b37d4b9a-8d3f-4fa5-b9c8-e6c5f8a0c1e2}*SharedItemsImports = 13 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{b6985672-4704-4f86-a3e0-2310bf8e6d73}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{bbf2c19e-221e-4aa0-8521-fe75d8f4a2b0}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{c2de264a-aa87-4012-b954-17e3f403a237}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared.Tests\Speckle.Converters.RevitShared.Tests.projitems*{c32274d9-1b66-4d5c-82f9-eb3f10f46752}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{c32274d9-1b66-4d5c-82f9-eb3f10f46752}*SharedItemsImports = 5 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{c635619c-2938-4e6f-9e25-56ce1632a7ec}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{c70ebb84-ba5b-4f2f-819e-25e0985ba13c}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*SharedItemsImports = 5 @@ -743,5 +861,6 @@ Global Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{e1c43415-3200-45f4-8bf9-a4dd7d7f2ed6}*SharedItemsImports = 13 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{e1c43415-3200-45f4-8bf9-a4dd7d7f2ed9}*SharedItemsImports = 13 Converters\Revit\Speckle.Converters.RevitShared.Tests\Speckle.Converters.RevitShared.Tests.projitems*{e1c43415-3202-45f4-8bf9-a4dd7d7f2ed6}*SharedItemsImports = 13 + Connectors\Navisworks\Speckle.Connectors.NavisworksShared\Speckle.Connectors.NavisworksShared.projitems*{fd44e1f0-d20a-49b6-adc9-482d911a74fb}*SharedItemsImports = 5 EndGlobalSection EndGlobal From f6a377e6732a0a4d8a44575a0927aa7b42429b34 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 16 Dec 2024 09:32:15 +0000 Subject: [PATCH 164/173] We shouldn't be using ConfigureAwait false --- .editorconfig | 3 + Build/Github.cs | 4 +- Build/Program.cs | 2 +- .../Bindings/ArcGISReceiveBinding.cs | 17 ++- .../Bindings/ArcGISSendBinding.cs | 45 +++----- .../Bindings/BasicConnectorBinding.cs | 2 +- .../SpeckleDUI3ViewModel.cs | 4 +- .../Utils/ArcGISThreadContext.cs | 4 +- .../Bindings/AutocadBasicConnectorBinding.cs | 102 +++++++++--------- .../Bindings/AutocadReceiveBinding.cs | 13 +-- .../Bindings/AutocadSelectionBinding.cs | 6 +- .../Bindings/AutocadSendBaseBinding.cs | 20 ++-- .../DependencyInjection/SharedRegistration.cs | 2 +- .../Bindings/CsiSharedSendBinding.cs | 9 +- .../Bindings/BasicConnectorBindingRevit.cs | 6 +- .../Bindings/RevitReceiveBinding.cs | 13 +-- .../Bindings/RevitSendBinding.cs | 42 ++++---- .../Plugin/RevitThreadContext.cs | 2 +- .../Bindings/RhinoBasicConnectorBinding.cs | 10 +- .../Bindings/RhinoReceiveBinding.cs | 13 +-- .../Bindings/RhinoSendBinding.cs | 15 ++- .../Bindings/TeklaBasicConnectorBinding.cs | 77 +++++++------ .../Bindings/TeklaSendBinding.cs | 11 +- .../Speckle.Connectors.DUI.Tests.csproj | 6 -- .../Bindings/IBasicConnectorBinding.cs | 29 +++-- .../Bindings/ReceiveBindingUICommands.cs | 20 ++-- .../Bindings/SendBindingUICommands.cs | 45 ++++---- .../Bindings/TestBinding.cs | 22 ++-- .../Bridge/BrowserBridge.cs | 16 ++- .../Bridge/IdleCallManager.cs | 4 +- .../Bridge/TopLevelExceptionHandler.cs | 53 +++++---- .../Operations/ReceiveOperation.cs | 45 ++++---- .../Operations/SendOperation.cs | 30 +++--- .../Threading/DefaultThreadContext.cs | 4 +- .../Threading/TaskExtensions.cs | 22 +--- .../Threading/ThreadContext.cs | 40 ++++--- .../ActivityScopeTests.cs | 2 +- 37 files changed, 327 insertions(+), 433 deletions(-) diff --git a/.editorconfig b/.editorconfig index 32ff38613..416023432 100644 --- a/.editorconfig +++ b/.editorconfig @@ -254,6 +254,9 @@ dotnet_diagnostic.ca1508.severity = warning # Avoid dead conditional code dotnet_diagnostic.ca1509.severity = warning # Invalid entry in code metrics configuration file dotnet_diagnostic.ca1861.severity = none # Prefer 'static readonly' fields over constant array arguments if the called method is called repeatedly and is not mutating the passed array (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1861) +# CA2007: Consider calling ConfigureAwait on the awaited task (this is not needed for application code, in fact we don't want to call anything but ConfigureAwait(true) which is the default) +dotnet_diagnostic.CA2007.severity = none + dotnet_diagnostic.cs8618.severity = suggestion # nullable problem diff --git a/Build/Github.cs b/Build/Github.cs index b62ddeb39..9c9f335a1 100644 --- a/Build/Github.cs +++ b/Build/Github.cs @@ -28,11 +28,11 @@ public static async Task BuildInstallers(string token, string runId, string vers Content = content }; request.Headers.Add("X-GitHub-Api-Version", "2022-11-28"); - var response = await client.SendAsync(request).ConfigureAwait(false); + var response = await client.SendAsync(request); if (!response.IsSuccessStatusCode) { throw new InvalidOperationException( - $"{response.StatusCode} {response.ReasonPhrase} {await response.Content.ReadAsStringAsync().ConfigureAwait(false)}" + $"{response.StatusCode} {response.ReasonPhrase} {await response.Content.ReadAsStringAsync()}" ); } } diff --git a/Build/Program.cs b/Build/Program.cs index 8604c198c..3eb8dac67 100644 --- a/Build/Program.cs +++ b/Build/Program.cs @@ -98,7 +98,7 @@ void RemoveDirectory(string d) VERSION, async () => { - var (output, _) = await ReadAsync("dotnet", "minver -v w").ConfigureAwait(false); + var (output, _) = await ReadAsync("dotnet", "minver -v w"); output = output.Trim(); Console.WriteLine($"Version: {output}"); Run("echo", $"\"version={output}\" >> $GITHUB_OUTPUT"); diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISReceiveBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISReceiveBinding.cs index ef35bc039..e78caa1ea 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISReceiveBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISReceiveBinding.cs @@ -78,17 +78,14 @@ public async Task Receive(string modelCardId) modelCard.GetReceiveInfo("ArcGIS"), // POC: get host app name from settings? same for GetSendInfo _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); modelCard.BakedObjectIds = receiveOperationResults.BakedObjectIds.ToList(); - await Commands - .SetModelReceiveResult( - modelCardId, - receiveOperationResults.BakedObjectIds, - receiveOperationResults.ConversionResults - ) - .ConfigureAwait(false); + await Commands.SetModelReceiveResult( + modelCardId, + receiveOperationResults.BakedObjectIds, + receiveOperationResults.ConversionResults + ); } catch (OperationCanceledException) { @@ -100,7 +97,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs index 7082ee687..3fb41ec51 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/ArcGISSendBinding.cs @@ -92,32 +92,22 @@ MapMembersUtils mapMemberUtils private void SubscribeToArcGISEvents() { LayersRemovedEvent.Subscribe( - a => - _topLevelExceptionHandler.FireAndForget(async () => await GetIdsForLayersRemovedEvent(a).ConfigureAwait(false)), + a => _topLevelExceptionHandler.FireAndForget(async () => await GetIdsForLayersRemovedEvent(a)), true ); StandaloneTablesRemovedEvent.Subscribe( - a => - _topLevelExceptionHandler.FireAndForget( - async () => await GetIdsForStandaloneTablesRemovedEvent(a).ConfigureAwait(false) - ), + a => _topLevelExceptionHandler.FireAndForget(async () => await GetIdsForStandaloneTablesRemovedEvent(a)), true ); MapPropertyChangedEvent.Subscribe( - a => - _topLevelExceptionHandler.FireAndForget( - async () => await GetIdsForMapPropertyChangedEvent(a).ConfigureAwait(false) - ), + a => _topLevelExceptionHandler.FireAndForget(async () => await GetIdsForMapPropertyChangedEvent(a)), true ); // Map units, CRS etc. MapMemberPropertiesChangedEvent.Subscribe( - a => - _topLevelExceptionHandler.FireAndForget( - async () => await GetIdsForMapMemberPropertiesChangedEvent(a).ConfigureAwait(false) - ), + a => _topLevelExceptionHandler.FireAndForget(async () => await GetIdsForMapMemberPropertiesChangedEvent(a)), true ); // e.g. Layer name @@ -192,7 +182,7 @@ private void SubscribeToAnyDataSourceChange(Table layerTable) (args) => Parent.TopLevelExceptionHandler.FireAndForget(async () => { - await OnRowChanged(args).ConfigureAwait(false); + await OnRowChanged(args); }), layerTable ); @@ -200,7 +190,7 @@ private void SubscribeToAnyDataSourceChange(Table layerTable) (args) => Parent.TopLevelExceptionHandler.FireAndForget(async () => { - await OnRowChanged(args).ConfigureAwait(false); + await OnRowChanged(args); }), layerTable ); @@ -208,7 +198,7 @@ private void SubscribeToAnyDataSourceChange(Table layerTable) (args) => Parent.TopLevelExceptionHandler.FireAndForget(async () => { - await OnRowChanged(args).ConfigureAwait(false); + await OnRowChanged(args); }), layerTable ); @@ -253,7 +243,7 @@ private async Task OnRowChanged(RowChangedEventArgs args) } } - await RunExpirationChecks(false).ConfigureAwait(false); + await RunExpirationChecks(false); } private async Task GetIdsForLayersRemovedEvent(LayerEventsArgs args) @@ -262,7 +252,7 @@ private async Task GetIdsForLayersRemovedEvent(LayerEventsArgs args) { ChangedObjectIds[layer.URI] = 1; } - await RunExpirationChecks(true).ConfigureAwait(false); + await RunExpirationChecks(true); } private async Task GetIdsForStandaloneTablesRemovedEvent(StandaloneTableEventArgs args) @@ -271,7 +261,7 @@ private async Task GetIdsForStandaloneTablesRemovedEvent(StandaloneTableEventArg { ChangedObjectIds[table.URI] = 1; } - await RunExpirationChecks(true).ConfigureAwait(false); + await RunExpirationChecks(true); } private async Task GetIdsForMapPropertyChangedEvent(MapPropertyChangedEventArgs args) @@ -284,7 +274,7 @@ private async Task GetIdsForMapPropertyChangedEvent(MapPropertyChangedEventArgs ChangedObjectIds[member.URI] = 1; } } - await RunExpirationChecks(false).ConfigureAwait(false); + await RunExpirationChecks(false); } private void GetIdsForLayersAddedEvent(LayerEventsArgs args) @@ -334,7 +324,7 @@ private async Task GetIdsForMapMemberPropertiesChangedEvent(MapMemberPropertiesC { ChangedObjectIds[member.URI] = 1; } - await RunExpirationChecks(false).ConfigureAwait(false); + await RunExpirationChecks(false); } } @@ -404,12 +394,9 @@ public async Task Send(string modelCardId) modelCard.GetSendInfo("ArcGIS"), // POC: get host app name from settings? same for GetReceiveInfo _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -421,7 +408,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } @@ -456,7 +443,7 @@ private async Task RunExpirationChecks(bool idsDeleted) } } - await Commands.SetModelsExpired(expiredSenderIds).ConfigureAwait(false); + await Commands.SetModelsExpired(expiredSenderIds); ChangedObjectIds = new(); } } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs index 89f04d1f6..d3881899e 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Bindings/BasicConnectorBinding.cs @@ -31,7 +31,7 @@ public BasicConnectorBinding(DocumentModelStore store, IBrowserBridge parent, IS _store.DocumentChanged += (_, _) => parent.TopLevelExceptionHandler.FireAndForget(async () => { - await Commands.NotifyDocumentChanged().ConfigureAwait(false); + await Commands.NotifyDocumentChanged(); }); } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleDUI3ViewModel.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleDUI3ViewModel.cs index 9d74daac4..2406f8398 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleDUI3ViewModel.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/SpeckleDUI3ViewModel.cs @@ -18,7 +18,7 @@ internal static void Create() /// protected override async Task InitializeAsync() { - await base.InitializeAsync().ConfigureAwait(false); + await base.InitializeAsync(); } /// @@ -26,7 +26,7 @@ protected override async Task InitializeAsync() /// protected override async Task UninitializeAsync() { - await base.UninitializeAsync().ConfigureAwait(false); + await base.UninitializeAsync(); } } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index 112ef1448..7f5a7b5ae 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -14,12 +14,12 @@ protected override ValueTask MainToWorkerAsync(Func> action) } else { - return QueuedTask.Run(async () => await action().BackToCurrent()).AsValueTask(); + return QueuedTask.Run(async () => await action()).AsValueTask(); } } protected override ValueTask WorkerToMainAsync(Func> action) => - QueuedTask.Run(async () => await action().BackToCurrent()).AsValueTask(); + QueuedTask.Run(async () => await action()).AsValueTask(); protected override ValueTask MainToWorker(Func action) { diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs index c3a8e701c..e5f8116f8 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadBasicConnectorBinding.cs @@ -42,7 +42,7 @@ IThreadContext threadContext _store.DocumentChanged += (_, _) => parent.TopLevelExceptionHandler.FireAndForget(async () => { - await Commands.NotifyDocumentChanged().ConfigureAwait(false); + await Commands.NotifyDocumentChanged(); }); _logger = logger; _threadContext = threadContext; @@ -83,7 +83,7 @@ public async Task HighlightObjects(IReadOnlyList objectIds) var dbObjects = doc.GetObjects(objectIds); var acadObjectIds = dbObjects.Select(tuple => tuple.Root.Id).ToArray(); - await HighlightObjectsOnView(acadObjectIds).ConfigureAwait(false); + await HighlightObjectsOnView(acadObjectIds); } public async Task HighlightModel(string modelCardId) @@ -120,79 +120,73 @@ public async Task HighlightModel(string modelCardId) if (objectIds.Length == 0) { - await Commands - .SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")) - .ConfigureAwait(false); + await Commands.SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")); return; } - await HighlightObjectsOnView(objectIds, modelCardId).ConfigureAwait(false); + await HighlightObjectsOnView(objectIds, modelCardId); } private async Task HighlightObjectsOnView(ObjectId[] objectIds, string? modelCardId = null) { var doc = Application.DocumentManager.MdiActiveDocument; - await _threadContext - .RunOnMainAsync(async () => + await _threadContext.RunOnMainAsync(async () => + { + try { + doc.Editor.SetImpliedSelection([]); // Deselects try { - doc.Editor.SetImpliedSelection([]); // Deselects - try - { - doc.Editor.SetImpliedSelection(objectIds); - } - catch (Exception e) when (!e.IsFatal()) - { - // SWALLOW REASON: - // If the objects under the blocks, it won't be able to select them. - // If we try, API will throw the invalid input error, because we request something from API that Autocad doesn't - // handle it on its current canvas. Block elements only selectable when in its scope. - } - doc.Editor.UpdateScreen(); + doc.Editor.SetImpliedSelection(objectIds); + } + catch (Exception e) when (!e.IsFatal()) + { + // SWALLOW REASON: + // If the objects under the blocks, it won't be able to select them. + // If we try, API will throw the invalid input error, because we request something from API that Autocad doesn't + // handle it on its current canvas. Block elements only selectable when in its scope. + } + doc.Editor.UpdateScreen(); - Extents3d selectedExtents = new(); + Extents3d selectedExtents = new(); - var tr = doc.TransactionManager.StartTransaction(); - foreach (ObjectId objectId in objectIds) + var tr = doc.TransactionManager.StartTransaction(); + foreach (ObjectId objectId in objectIds) + { + try { - try + var entity = (Entity?)tr.GetObject(objectId, OpenMode.ForRead); + if (entity?.GeometricExtents != null) { - var entity = (Entity?)tr.GetObject(objectId, OpenMode.ForRead); - if (entity?.GeometricExtents != null) - { - selectedExtents.AddExtents(entity.GeometricExtents); - } - } - catch (Exception e) when (!e.IsFatal()) - { - // Note: we're swallowing exeptions here because of a weird case when receiving blocks, we would have - // acad api throw an error on accessing entity.GeometricExtents. - // may also throw Autodesk.AutoCAD.Runtime.Exception for invalid extents on objects like rays and xlines + selectedExtents.AddExtents(entity.GeometricExtents); } } + catch (Exception e) when (!e.IsFatal()) + { + // Note: we're swallowing exeptions here because of a weird case when receiving blocks, we would have + // acad api throw an error on accessing entity.GeometricExtents. + // may also throw Autodesk.AutoCAD.Runtime.Exception for invalid extents on objects like rays and xlines + } + } - doc.Editor.Zoom(selectedExtents); - tr.Commit(); - Autodesk.AutoCAD.Internal.Utils.FlushGraphics(); + doc.Editor.Zoom(selectedExtents); + tr.Commit(); + Autodesk.AutoCAD.Internal.Utils.FlushGraphics(); + } + catch (Exception ex) when (!ex.IsFatal()) + { + if (modelCardId != null) + { + await Commands.SetModelError(modelCardId, new OperationCanceledException("Failed to highlight objects.")); } - catch (Exception ex) when (!ex.IsFatal()) + else { - if (modelCardId != null) - { - await Commands - .SetModelError(modelCardId, new OperationCanceledException("Failed to highlight objects.")) - .ConfigureAwait(false); - } - else - { - // This will happen, in some cases, where we highlight individual objects. Should be caught by the top level handler and not - // crash the host app. - throw; - } + // This will happen, in some cases, where we highlight individual objects. Should be caught by the top level handler and not + // crash the host app. + throw; } - }) - .ConfigureAwait(false); + } + }); } } diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs index d2d68a7fd..cb5b3b0a6 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadReceiveBinding.cs @@ -81,12 +81,13 @@ public async Task Receive(string modelCardId) modelCard.GetReceiveInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelReceiveResult(modelCardId, operationResults.BakedObjectIds, operationResults.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelReceiveResult( + modelCardId, + operationResults.BakedObjectIds, + operationResults.ConversionResults + ); } catch (OperationCanceledException) { @@ -98,7 +99,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } finally { diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs index 6ccf1cfc3..c8973f0fb 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs @@ -44,9 +44,7 @@ private void TryRegisterDocumentForSelection(Document? document) if (!_visitedDocuments.Contains(document)) { document.ImpliedSelectionChanged += (_, _) => - _topLevelExceptionHandler.FireAndForget( - async () => await _threadContext.RunOnMainAsync(OnSelectionChanged).ConfigureAwait(false) - ); + _topLevelExceptionHandler.FireAndForget(async () => await _threadContext.RunOnMainAsync(OnSelectionChanged)); _visitedDocuments.Add(document); } @@ -60,7 +58,7 @@ private void TryRegisterDocumentForSelection(Document? document) private async ValueTask OnSelectionChanged() { _selectionInfo = GetSelectionInternal(); - await Parent.Send(SELECTION_EVENT, _selectionInfo).ConfigureAwait(false); + await Parent.Send(SELECTION_EVENT, _selectionInfo); } public SelectionInfo GetSelection() => _selectionInfo; diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs index cf2a9b659..5f556e623 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSendBaseBinding.cs @@ -115,10 +115,7 @@ private void OnObjectChanged(DBObject dbObject) private void OnChangeChangedObjectIds(DBObject dBObject) { ChangedObjectIds[dBObject.GetSpeckleApplicationId()] = 1; - _idleManager.SubscribeToIdle( - nameof(AutocadSendBinding), - async () => await RunExpirationChecks().ConfigureAwait(false) - ); + _idleManager.SubscribeToIdle(nameof(AutocadSendBinding), async () => await RunExpirationChecks()); } private async Task RunExpirationChecks() @@ -139,7 +136,7 @@ private async Task RunExpirationChecks() } } - await Commands.SetModelsExpired(expiredSenderIds).ConfigureAwait(false); + await Commands.SetModelsExpired(expiredSenderIds); ChangedObjectIds = new(); } @@ -148,9 +145,7 @@ private async Task RunExpirationChecks() public List GetSendSettings() => []; public async Task Send(string modelCardId) => - await _threadContext - .RunOnWorkerAsync(async () => await SendInternal(modelCardId).ConfigureAwait(false)) - .ConfigureAwait(false); + await _threadContext.RunOnWorkerAsync(async () => await SendInternal(modelCardId)); protected abstract void InitializeSettings(IServiceProvider serviceProvider); @@ -192,12 +187,9 @@ private async Task SendInternal(string modelCardId) modelCard.GetSendInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -209,7 +201,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } finally { diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs index ede04bd1c..8ce12c190 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/DependencyInjection/SharedRegistration.cs @@ -43,7 +43,7 @@ public static void AddAutocadBase(this IServiceCollection serviceCollection) serviceCollection.AddScoped(); serviceCollection.AddScoped(); - serviceCollection.AddScoped(); + serviceCollection.AddScoped(); serviceCollection.AddScoped(); serviceCollection.AddScoped(); diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/Bindings/CsiSharedSendBinding.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/Bindings/CsiSharedSendBinding.cs index 785d2c2ee..0c297fd8d 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/Bindings/CsiSharedSendBinding.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/Bindings/CsiSharedSendBinding.cs @@ -107,12 +107,9 @@ public async Task Send(string modelCardId) modelCard.GetSendInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -121,7 +118,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index 6691eb77b..c4ce8e66c 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -40,7 +40,7 @@ ISpeckleApplication speckleApplication _store.DocumentChanged += (_, _) => parent.TopLevelExceptionHandler.FireAndForget(async () => { - await Commands.NotifyDocumentChanged().ConfigureAwait(false); + await Commands.NotifyDocumentChanged(); }); } @@ -126,9 +126,7 @@ public async Task HighlightModel(string modelCardId) if (elementIds.Count == 0) { - await Commands - .SetModelError(modelCardId, new InvalidOperationException("No objects found to highlight.")) - .ConfigureAwait(false); + await Commands.SetModelError(modelCardId, new InvalidOperationException("No objects found to highlight.")); return; } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitReceiveBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitReceiveBinding.cs index 2abd95945..1f52cd26d 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitReceiveBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitReceiveBinding.cs @@ -83,13 +83,14 @@ public async Task Receive(string modelCardId) modelCard.GetReceiveInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); modelCard.BakedObjectIds = conversionResults.BakedObjectIds.ToList(); - await Commands - .SetModelReceiveResult(modelCardId, conversionResults.BakedObjectIds, conversionResults.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelReceiveResult( + modelCardId, + conversionResults.BakedObjectIds, + conversionResults.ConversionResults + ); } catch (OperationCanceledException) { @@ -100,7 +101,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } finally { diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs index 9cc33c228..27cb51e56 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs @@ -81,8 +81,7 @@ ISpeckleApplication speckleApplication revitContext.UIApplication.NotNull().Application.DocumentChanged += (_, e) => topLevelExceptionHandler.CatchUnhandled(() => DocChangeHandler(e)); - Store.DocumentChanged += (_, _) => - topLevelExceptionHandler.FireAndForget(async () => await OnDocumentChanged().ConfigureAwait(false)); + Store.DocumentChanged += (_, _) => topLevelExceptionHandler.FireAndForget(async () => await OnDocumentChanged()); } public List GetSendFilters() => @@ -127,7 +126,7 @@ public async Task Send(string modelCardId) ) ); - List elements = await RefreshElementsOnSender(modelCard.NotNull()).ConfigureAwait(false); + List elements = await RefreshElementsOnSender(modelCard.NotNull()); List elementIds = elements.Select(el => el.Id).ToList(); if (elementIds.Count == 0) @@ -143,12 +142,9 @@ public async Task Send(string modelCardId) modelCard.GetSendInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -159,7 +155,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } finally { @@ -196,9 +192,11 @@ private async Task> RefreshElementsOnSender(SenderModelCard modelC } // We update the state on the UI SenderModelCard to prevent potential inconsistencies between hostApp IdMap in sendfilters. - await Commands - .SetFilterObjectIds(modelCard.ModelCardId.NotNull(), modelCard.SendFilter.IdMap, newSelectedObjectIds) - .ConfigureAwait(false); + await Commands.SetFilterObjectIds( + modelCard.ModelCardId.NotNull(), + modelCard.SendFilter.IdMap, + newSelectedObjectIds + ); } return elements; @@ -307,7 +305,7 @@ private async Task PostSetObjectIds() { foreach (var sender in Store.GetSenders().ToList()) { - await RefreshElementsOnSender(sender).ConfigureAwait(false); + await RefreshElementsOnSender(sender); } } @@ -322,12 +320,12 @@ private async Task CheckFilterExpiration() // var intersection = ChangedObjectIds.Keys.Intersect(views).ToList(); // if (intersection.Count != 0) // { - // await Commands.RefreshSendFilters().ConfigureAwait(false); + // await Commands.RefreshSendFilters(); // } if (ChangedObjectIds.Keys.Any(e => RevitContext.UIApplication?.ActiveUIDocument.Document.GetElement(e) is View)) { - await Commands.RefreshSendFilters().ConfigureAwait(false); + await Commands.RefreshSendFilters(); } } @@ -398,7 +396,7 @@ private async Task RunExpirationChecks() } } - await Commands.SetModelsExpired(expiredSenderIds).ConfigureAwait(false); + await Commands.SetModelsExpired(expiredSenderIds); ChangedObjectIds = new(); } @@ -411,13 +409,11 @@ private async Task OnDocumentChanged() if (_cancellationManager.NumberOfOperations > 0) { _cancellationManager.CancelAllOperations(); - await Commands - .SetGlobalNotification( - ToastNotificationType.INFO, - "Document Switch", - "Operations cancelled because of document swap!" - ) - .ConfigureAwait(false); + await Commands.SetGlobalNotification( + ToastNotificationType.INFO, + "Document Switch", + "Operations cancelled because of document swap!" + ); } } } diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 92dd7d521..3735d95b1 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -8,7 +8,7 @@ public class RevitThreadContext : ThreadContext protected override ValueTask MainToWorkerAsync(Func> action) => action(); protected override ValueTask WorkerToMainAsync(Func> action) => - RevitTask.RunAsync(async () => await action().BackToCurrent()).AsValueTask(); + RevitTask.RunAsync(async () => await action()).AsValueTask(); protected override ValueTask MainToWorker(Func action) => new(action()); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs index 432c2c81f..b34e002d0 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs @@ -38,7 +38,7 @@ ISpeckleApplication speckleApplication _store.DocumentChanged += (_, _) => parent.TopLevelExceptionHandler.FireAndForget(async () => { - await Commands.NotifyDocumentChanged().ConfigureAwait(false); + await Commands.NotifyDocumentChanged(); // Note: this prevents scaling issues when copy-pasting from one rhino doc to another in the same session. _sendConversionCache.ClearCache(); }); @@ -100,9 +100,7 @@ public async Task HighlightModel(string modelCardId) if (objectIds.Count == 0) { - await Commands - .SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")) - .ConfigureAwait(false); + await Commands.SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")); return; } @@ -112,9 +110,7 @@ await Commands if (objects.rhinoObjects.Count == 0 && objects.groups.Count == 0) { - await Commands - .SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")) - .ConfigureAwait(false); + await Commands.SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")); return; } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoReceiveBinding.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoReceiveBinding.cs index dcf60ab73..c0599f6b9 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoReceiveBinding.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoReceiveBinding.cs @@ -77,13 +77,14 @@ public async Task Receive(string modelCardId) modelCard.GetReceiveInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); modelCard.BakedObjectIds = conversionResults.BakedObjectIds.ToList(); - await Commands - .SetModelReceiveResult(modelCardId, conversionResults.BakedObjectIds, conversionResults.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelReceiveResult( + modelCardId, + conversionResults.BakedObjectIds, + conversionResults.ConversionResults + ); } catch (OperationCanceledException) { @@ -95,7 +96,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs index 23bf041ff..5809b80af 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs @@ -111,7 +111,7 @@ private void SubscribeToRhinoEvents() { PreviousUnitSystem = newUnit; - await InvalidateAllSender().ConfigureAwait(false); + await InvalidateAllSender(); } }; @@ -245,12 +245,9 @@ public async Task Send(string modelCardId) modelCard.GetSendInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -262,7 +259,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } @@ -314,7 +311,7 @@ private async Task RunExpirationChecks() } } - await Commands.SetModelsExpired(expiredSenderIds).ConfigureAwait(false); + await Commands.SetModelsExpired(expiredSenderIds); ChangedObjectIds = new(); ChangedMaterialIndexes = new(); } @@ -323,6 +320,6 @@ private async Task InvalidateAllSender() { _sendConversionCache.ClearCache(); var senderModelCardIds = _store.GetSenders().Select(s => s.ModelCardId.NotNull()); - await Commands.SetModelsExpired(senderModelCardIds).ConfigureAwait(false); + await Commands.SetModelsExpired(senderModelCardIds); } } diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaBasicConnectorBinding.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaBasicConnectorBinding.cs index bc1449c7c..519ac132e 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaBasicConnectorBinding.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaBasicConnectorBinding.cs @@ -37,7 +37,7 @@ TSM.Model model _store.DocumentChanged += (_, _) => parent.TopLevelExceptionHandler.FireAndForget(async () => { - await Commands.NotifyDocumentChanged().ConfigureAwait(false); + await Commands.NotifyDocumentChanged(); }); } @@ -80,18 +80,16 @@ public async Task HighlightModel(string modelCardId) if (objectIds.Count == 0) { - await Commands - .SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")) - .ConfigureAwait(false); + await Commands.SetModelError(modelCardId, new OperationCanceledException("No objects found to highlight.")); return; } - await HighlightObjects(objectIds).ConfigureAwait(false); + await HighlightObjects(objectIds); } catch (InvalidOperationException ex) { _logger.LogError(ex, "Failed to highlight model"); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } @@ -100,48 +98,47 @@ public async Task HighlightObjects(IReadOnlyList objectIds) try { await Task.Run(() => - { - // passing an empty list to create current selection - var selector = new TSMUI.ModelObjectSelector(); - selector.Select(new ArrayList()); + { + // passing an empty list to create current selection + var selector = new TSMUI.ModelObjectSelector(); + selector.Select(new ArrayList()); - if (objectIds.Count > 0) - { - var modelObjects = objectIds - .Select(id => _model.SelectModelObject(new Identifier(new Guid(id)))) - .Where(obj => obj != null) - .ToList(); + if (objectIds.Count > 0) + { + var modelObjects = objectIds + .Select(id => _model.SelectModelObject(new Identifier(new Guid(id)))) + .Where(obj => obj != null) + .ToList(); - selector.Select(new ArrayList(modelObjects)); + selector.Select(new ArrayList(modelObjects)); - // to find the min and max coordinates of the selected objects - // with that we can create a bounding box and zoom selected - var points = new List(); - foreach (var obj in modelObjects) + // to find the min and max coordinates of the selected objects + // with that we can create a bounding box and zoom selected + var points = new List(); + foreach (var obj in modelObjects) + { + points.Add(obj.GetCoordinateSystem().Origin); + foreach (TSM.ModelObject child in obj.GetChildren()) { - points.Add(obj.GetCoordinateSystem().Origin); - foreach (TSM.ModelObject child in obj.GetChildren()) - { - points.Add(child.GetCoordinateSystem().Origin); - } + points.Add(child.GetCoordinateSystem().Origin); } + } - var minX = points.Min(p => p.X); - var minY = points.Min(p => p.Y); - var minZ = points.Min(p => p.Z); - var maxX = points.Max(p => p.X); - var maxY = points.Max(p => p.Y); - var maxZ = points.Max(p => p.Z); + var minX = points.Min(p => p.X); + var minY = points.Min(p => p.Y); + var minZ = points.Min(p => p.Z); + var maxX = points.Max(p => p.X); + var maxY = points.Max(p => p.Y); + var maxZ = points.Max(p => p.Z); - // create the bounding box - var bounds = new AABB { MinPoint = new Point(minX, minY, minZ), MaxPoint = new Point(maxX, maxY, maxZ) }; + // create the bounding box + var bounds = new AABB { MinPoint = new Point(minX, minY, minZ), MaxPoint = new Point(maxX, maxY, maxZ) }; - // zoom in to bounding box - TSMUI.ViewHandler.ZoomToBoundingBox(bounds); - } - _model.CommitChanges(); - }) - .ConfigureAwait(false); + // zoom in to bounding box + TSMUI.ViewHandler.ZoomToBoundingBox(bounds); + } + _model.CommitChanges(); + }); } catch (InvalidOperationException ex) { diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSendBinding.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSendBinding.cs index 54d99146e..cff0f1198 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSendBinding.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/Bindings/TeklaSendBinding.cs @@ -150,12 +150,9 @@ public async Task Send(string modelCardId) modelCard.GetSendInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCardId, cancellationToken), cancellationToken - ) - .ConfigureAwait(false); + ); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -164,7 +161,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } @@ -194,7 +191,7 @@ private async Task RunExpirationChecks() } } - await Commands.SetModelsExpired(expiredSenderIds).ConfigureAwait(false); + await Commands.SetModelsExpired(expiredSenderIds); ChangedObjectIds = new ConcurrentDictionary(); } diff --git a/DUI3/Speckle.Connectors.DUI.Tests/Speckle.Connectors.DUI.Tests.csproj b/DUI3/Speckle.Connectors.DUI.Tests/Speckle.Connectors.DUI.Tests.csproj index 0b607cbe3..b5bbadceb 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/Speckle.Connectors.DUI.Tests.csproj +++ b/DUI3/Speckle.Connectors.DUI.Tests/Speckle.Connectors.DUI.Tests.csproj @@ -5,12 +5,6 @@ true Debug;Release;Local System.Runtime.CompilerServices.IsExternalInit;System.Runtime.CompilerServices.RequiresLocationAttribute - - - - CA2007; - $(NoWarn) - diff --git a/DUI3/Speckle.Connectors.DUI/Bindings/IBasicConnectorBinding.cs b/DUI3/Speckle.Connectors.DUI/Bindings/IBasicConnectorBinding.cs index 2677926d4..28a229d6d 100644 --- a/DUI3/Speckle.Connectors.DUI/Bindings/IBasicConnectorBinding.cs +++ b/DUI3/Speckle.Connectors.DUI/Bindings/IBasicConnectorBinding.cs @@ -53,8 +53,7 @@ public BasicConnectorBindingCommands(IBrowserBridge bridge) Bridge = bridge; } - public async Task NotifyDocumentChanged() => - await Bridge.Send(NOTIFY_DOCUMENT_CHANGED_EVENT_NAME).ConfigureAwait(false); + public async Task NotifyDocumentChanged() => await Bridge.Send(NOTIFY_DOCUMENT_CHANGED_EVENT_NAME); /// /// Use it whenever you want to send global toast notification to UI. @@ -69,21 +68,17 @@ public async Task SetGlobalNotification( string message, bool autoClose = true ) => - await Bridge - .Send( - SET_GLOBAL_NOTIFICATION, - new - { - type, - title, - description = message, - autoClose - } - ) - .ConfigureAwait(false); + await Bridge.Send( + SET_GLOBAL_NOTIFICATION, + new + { + type, + title, + description = message, + autoClose + } + ); public async Task SetModelError(string modelCardId, Exception error) => - await Bridge - .Send(SET_MODEL_ERROR_UI_COMMAND_NAME, new { modelCardId, error = error.Message }) - .ConfigureAwait(false); + await Bridge.Send(SET_MODEL_ERROR_UI_COMMAND_NAME, new { modelCardId, error = error.Message }); } diff --git a/DUI3/Speckle.Connectors.DUI/Bindings/ReceiveBindingUICommands.cs b/DUI3/Speckle.Connectors.DUI/Bindings/ReceiveBindingUICommands.cs index 0c7bd3428..2cabe20dd 100644 --- a/DUI3/Speckle.Connectors.DUI/Bindings/ReceiveBindingUICommands.cs +++ b/DUI3/Speckle.Connectors.DUI/Bindings/ReceiveBindingUICommands.cs @@ -17,16 +17,14 @@ public async Task SetModelReceiveResult( IEnumerable conversionResults ) { - await Bridge - .Send( - SET_MODEL_RECEIVE_RESULT_UI_COMMAND_NAME, - new - { - ModelCardId = modelCardId, - bakedObjectIds, - conversionResults - } - ) - .ConfigureAwait(false); + await Bridge.Send( + SET_MODEL_RECEIVE_RESULT_UI_COMMAND_NAME, + new + { + ModelCardId = modelCardId, + bakedObjectIds, + conversionResults + } + ); } } diff --git a/DUI3/Speckle.Connectors.DUI/Bindings/SendBindingUICommands.cs b/DUI3/Speckle.Connectors.DUI/Bindings/SendBindingUICommands.cs index 72569f5ac..45e3ff23f 100644 --- a/DUI3/Speckle.Connectors.DUI/Bindings/SendBindingUICommands.cs +++ b/DUI3/Speckle.Connectors.DUI/Bindings/SendBindingUICommands.cs @@ -12,43 +12,38 @@ public class SendBindingUICommands(IBrowserBridge bridge) : BasicConnectorBindin private const string SET_ID_MAP_COMMAND_NAME = "setIdMap"; // POC.. the only reasons this needs the bridge is to send? realtionship to these messages and the bridge is unclear - public async Task RefreshSendFilters() => - await Bridge.Send(REFRESH_SEND_FILTERS_UI_COMMAND_NAME).ConfigureAwait(false); + public async Task RefreshSendFilters() => await Bridge.Send(REFRESH_SEND_FILTERS_UI_COMMAND_NAME); public async Task SetModelsExpired(IEnumerable expiredModelIds) => - await Bridge.Send(SET_MODELS_EXPIRED_UI_COMMAND_NAME, expiredModelIds).ConfigureAwait(false); + await Bridge.Send(SET_MODELS_EXPIRED_UI_COMMAND_NAME, expiredModelIds); public async Task SetFilterObjectIds( string modelCardId, Dictionary idMap, List newSelectedObjectIds ) => - await Bridge - .Send( - SET_ID_MAP_COMMAND_NAME, - new - { - modelCardId, - idMap, - newSelectedObjectIds - } - ) - .ConfigureAwait(false); + await Bridge.Send( + SET_ID_MAP_COMMAND_NAME, + new + { + modelCardId, + idMap, + newSelectedObjectIds + } + ); public async Task SetModelSendResult( string modelCardId, string versionId, IEnumerable sendConversionResults ) => - await Bridge - .Send( - SET_MODEL_SEND_RESULT_UI_COMMAND_NAME, - new - { - modelCardId, - versionId, - sendConversionResults - } - ) - .ConfigureAwait(false); + await Bridge.Send( + SET_MODEL_SEND_RESULT_UI_COMMAND_NAME, + new + { + modelCardId, + versionId, + sendConversionResults + } + ); } diff --git a/DUI3/Speckle.Connectors.DUI/Bindings/TestBinding.cs b/DUI3/Speckle.Connectors.DUI/Bindings/TestBinding.cs index a5e095fbc..f43a0bd42 100644 --- a/DUI3/Speckle.Connectors.DUI/Bindings/TestBinding.cs +++ b/DUI3/Speckle.Connectors.DUI/Bindings/TestBinding.cs @@ -46,22 +46,20 @@ public async Task TriggerEvent(string eventName) switch (eventName) { case "emptyTestEvent": - await Parent.Send("emptyTestEvent").ConfigureAwait(false); + await Parent.Send("emptyTestEvent"); break; case "testEvent": default: - await Parent - .Send( - "testEvent", - new - { - IsOk = true, - Name = "foo", - Count = 42 - } - ) - .ConfigureAwait(false); + await Parent.Send( + "testEvent", + new + { + IsOk = true, + Name = "foo", + Count = 42 + } + ); break; } } diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs index 527dc04a9..f692e41c3 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/BrowserBridge.cs @@ -110,14 +110,12 @@ public void RunMethod(string methodName, string requestId, string methodArgs) => .RunOnThreadAsync( async () => { - var task = await TopLevelExceptionHandler - .CatchUnhandledAsync(async () => - { - var result = await ExecuteMethod(methodName, methodArgs).ConfigureAwait(false); - string resultJson = _jsonSerializer.Serialize(result); - NotifyUIMethodCallResultReady(requestId, resultJson); - }) - .ConfigureAwait(false); + var task = await TopLevelExceptionHandler.CatchUnhandledAsync(async () => + { + var result = await ExecuteMethod(methodName, methodArgs); + string resultJson = _jsonSerializer.Serialize(result); + NotifyUIMethodCallResultReady(requestId, resultJson); + }); if (task.Exception is not null) { string resultJson = SerializeFormattedException(task.Exception); @@ -188,7 +186,7 @@ public void RunMethod(string methodName, string requestId, string methodArgs) => } // It's an async call - await resultTypedTask.ConfigureAwait(false); + await resultTypedTask; // If has a "Result" property return the value otherwise null (Task etc) PropertyInfo? resultProperty = resultTypedTask.GetType().GetProperty(nameof(Task.Result)); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/IdleCallManager.cs b/DUI3/Speckle.Connectors.DUI/Bridge/IdleCallManager.cs index 0b3e83504..d25c63d42 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/IdleCallManager.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/IdleCallManager.cs @@ -57,13 +57,13 @@ internal void SubscribeInternal(string id, Func action, Action addEvent) } public void AppOnIdle(Action removeEvent) => - _topLevelExceptionHandler.FireAndForget(async () => await AppOnIdleInternal(removeEvent).ConfigureAwait(false)); + _topLevelExceptionHandler.FireAndForget(async () => await AppOnIdleInternal(removeEvent)); internal async Task AppOnIdleInternal(Action removeEvent) { foreach (KeyValuePair> kvp in Calls) { - await _topLevelExceptionHandler.CatchUnhandledAsync(kvp.Value).ConfigureAwait(false); + await _topLevelExceptionHandler.CatchUnhandledAsync(kvp.Value); } Calls.Clear(); diff --git a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs index 7c33fd5bd..1684e3c81 100644 --- a/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs +++ b/DUI3/Speckle.Connectors.DUI/Bridge/TopLevelExceptionHandler.cs @@ -1,5 +1,4 @@ using Microsoft.Extensions.Logging; -using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI.Bindings; using Speckle.InterfaceGenerator; using Speckle.Sdk; @@ -65,19 +64,18 @@ public async Task CatchUnhandledAsync(Func function) { try { - await function().BackToCurrent(); + await function(); return new Result(); } catch (Exception ex) when (!ex.IsFatal()) { _logger.LogError(ex, UNHANDLED_LOGGER_TEMPLATE); await SetGlobalNotification( - ToastNotificationType.DANGER, - "Unhandled Exception Occured", - ex.ToFormattedString(), - false - ) - .BackToCurrent(); + ToastNotificationType.DANGER, + "Unhandled Exception Occured", + ex.ToFormattedString(), + false + ); return new(ex); } } @@ -95,11 +93,11 @@ public async Task> CatchUnhandledAsync(Func> function) { try { - return new(await function.Invoke().BackToCurrent()); + return new(await function.Invoke()); } catch (Exception ex) when (!ex.IsFatal()) { - await HandleException(ex).BackToCurrent(); + await HandleException(ex); return new(ex); } } @@ -117,12 +115,11 @@ private async Task HandleException(Exception ex) try { await SetGlobalNotification( - ToastNotificationType.DANGER, - "Unhandled Exception Occured", - ex.ToFormattedString(), - false - ) - .BackToCurrent(); + ToastNotificationType.DANGER, + "Unhandled Exception Occured", + ex.ToFormattedString(), + false + ); } catch (Exception toastEx) { @@ -146,19 +143,17 @@ await SetGlobalNotification( /// In cases where you can use keyword, you should prefer using /// /// - public async void FireAndForget(Func function) => await CatchUnhandledAsync(function).BackToCurrent(); + public async void FireAndForget(Func function) => await CatchUnhandledAsync(function); private async Task SetGlobalNotification(ToastNotificationType type, string title, string message, bool autoClose) => - await Parent - .Send( - BasicConnectorBindingCommands.SET_GLOBAL_NOTIFICATION, //TODO: We could move these constants into a DUI3 constants static class - new - { - type, - title, - description = message, - autoClose - } - ) - .BackToCurrent(); + await Parent.Send( + BasicConnectorBindingCommands.SET_GLOBAL_NOTIFICATION, //TODO: We could move these constants into a DUI3 constants static class + new + { + type, + title, + description = message, + autoClose + } + ); } diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 4ba8d2708..1438bc111 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -33,25 +33,22 @@ CancellationToken cancellationToken using Client apiClient = clientFactory.Create(account); using var userScope = ActivityScope.SetTag(Consts.USER_ID, account.GetHashedEmail()); - var version = await apiClient - .Version.Get(receiveInfo.SelectedVersionId, receiveInfo.ProjectId, cancellationToken) - .BackToAny(); + var version = await apiClient.Version.Get(receiveInfo.SelectedVersionId, receiveInfo.ProjectId, cancellationToken); - var commitObject = await threadContext - .RunOnWorkerAsync(() => ReceiveData(account, version, receiveInfo, onOperationProgressed, cancellationToken)) - .BackToAny(); + var commitObject = await threadContext.RunOnWorkerAsync( + () => ReceiveData(account, version, receiveInfo, onOperationProgressed, cancellationToken) + ); // 4 - Convert objects - HostObjectBuilderResult res = await threadContext - .RunOnThread( - () => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken), - threadOptions.RunReceiveBuildOnMainThread - ) - .BackToAny(); + HostObjectBuilderResult res = await threadContext.RunOnThread( + () => ConvertObjects(commitObject, receiveInfo, onOperationProgressed, cancellationToken), + threadOptions.RunReceiveBuildOnMainThread + ); - await apiClient - .Version.Received(new(version.id, receiveInfo.ProjectId, receiveInfo.SourceApplication), cancellationToken) - .BackToAny(); + await apiClient.Version.Received( + new(version.id, receiveInfo.ProjectId, receiveInfo.SourceApplication), + cancellationToken + ); return res; } @@ -65,16 +62,14 @@ CancellationToken cancellationToken ) { receiveProgress.Begin(); - Base? commitObject = await operations - .Receive2( - new Uri(account.serverInfo.url), - receiveInfo.ProjectId, - version.referencedObject, - account.token, - onProgressAction: new PassthroughProgress(args => receiveProgress.Report(onOperationProgressed, args)), - cancellationToken: cancellationToken - ) - .BackToAny(); + Base? commitObject = await operations.Receive2( + new Uri(account.serverInfo.url), + receiveInfo.ProjectId, + version.referencedObject, + account.token, + onProgressAction: new PassthroughProgress(args => receiveProgress.Report(onOperationProgressed, args)), + cancellationToken: cancellationToken + ); cancellationToken.ThrowIfCancellationRequested(); return commitObject; diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs index 60e9bda7b..3d3021be2 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs @@ -31,9 +31,9 @@ public async Task Execute( CancellationToken ct = default ) { - var buildResult = await threadContext - .RunOnMain(() => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed)) - .ConfigureAwait(false); + var buildResult = await threadContext.RunOnMain( + () => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed) + ); // POC: Jonathon asks on behalf of willow twin - let's explore how this can work // buildResult.RootObject["@report"] = new Report { ConversionResults = buildResult.ConversionResults }; @@ -41,9 +41,9 @@ public async Task Execute( buildResult.RootObject["version"] = 3; // base object handler is separated, so we can do some testing on non-production databases // exact interface may want to be tweaked when we implement this - var (rootObjId, convertedReferences) = await threadContext - .RunOnWorkerAsync(() => Send(buildResult.RootObject, sendInfo, onOperationProgressed, ct)) - .ConfigureAwait(false); + var (rootObjId, convertedReferences) = await threadContext.RunOnWorkerAsync( + () => Send(buildResult.RootObject, sendInfo, onOperationProgressed, ct) + ); return new(rootObjId, convertedReferences, buildResult.ConversionResults); } @@ -64,16 +64,14 @@ public async ValueTask Send( using var activity = activityFactory.Start("SendOperation"); sendProgress.Begin(); - var sendResult = await operations - .Send2( - sendInfo.ServerUrl, - sendInfo.ProjectId, - account.token, - commitObject, - onProgressAction: new PassthroughProgress(args => sendProgress.Report(onOperationProgressed, args)), - ct - ) - .ConfigureAwait(false); + var sendResult = await operations.Send2( + sendInfo.ServerUrl, + sendInfo.ProjectId, + account.token, + commitObject, + onProgressAction: new PassthroughProgress(args => sendProgress.Report(onOperationProgressed, args)), + ct + ); sendConversionCache.StoreSendResult(sendInfo.ProjectId, sendResult.ConvertedReferences); diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs index 29057f544..933291017 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -18,7 +18,7 @@ protected override ValueTask WorkerToMainAsync(Func> action) { try { - T result = await action().BackToCurrent(); + T result = await action(); tcs.SetResult(result); } catch (Exception ex) @@ -34,7 +34,7 @@ protected override ValueTask WorkerToMainAsync(Func> action) protected override ValueTask MainToWorkerAsync(Func> action) { Task> f = Task.Factory.StartNew( - async () => await action().BackToCurrent(), + async () => await action(), default, TaskCreationOptions.LongRunning, TaskScheduler.Default diff --git a/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs b/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs index 157ec40ff..2e6695c09 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs @@ -1,27 +1,7 @@ -using System.Runtime.CompilerServices; - namespace Speckle.Connectors.Common.Threading; public static class TaskExtensions { - public static ConfiguredValueTaskAwaitable BackToCurrent(this ValueTask valueTask) => - valueTask.ConfigureAwait(true); - - public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => - valueTask.ConfigureAwait(false); - - public static ConfiguredValueTaskAwaitable BackToCurrent(this ValueTask valueTask) => valueTask.ConfigureAwait(true); - - public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask valueTask) => valueTask.ConfigureAwait(false); - - public static ConfiguredTaskAwaitable BackToCurrent(this Task task) => task.ConfigureAwait(true); - - public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); - - public static ConfiguredTaskAwaitable BackToCurrent(this Task task) => task.ConfigureAwait(true); - - public static ConfiguredTaskAwaitable BackToAny(this Task task) => task.ConfigureAwait(false); - public static ValueTask AsValueTask(this Task task) => new(task); public static ValueTask AsValueTask(this Task task) => new(task); @@ -34,6 +14,6 @@ public static ConfiguredValueTaskAwaitable BackToAny(this ValueTask val public static T Wait(this ValueTask task) => task.GetAwaiter().GetResult(); #pragma warning disable CA1030 - public static void FireAndForget(this ValueTask valueTask) => valueTask.BackToAny(); + public static async void FireAndForget(this ValueTask valueTask) => await valueTask; #pragma warning restore CA1030 } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 95a1b10af..15b95da9a 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -18,11 +18,10 @@ public async ValueTask RunOnThread(Action action, bool useMain) else { await WorkerToMainAsync(() => - { - action(); - return new ValueTask(); - }) - .ConfigureAwait(false); + { + action(); + return new ValueTask(); + }); } } else @@ -30,11 +29,10 @@ await WorkerToMainAsync(() => if (IsMainThread) { await MainToWorkerAsync(() => - { - action(); - return new ValueTask(); - }) - .BackToAny(); + { + action(); + return new ValueTask(); + }); } else { @@ -68,16 +66,15 @@ public async ValueTask RunOnThreadAsync(Func action, bool useMain) { if (IsMainThread) { - await action().BackToCurrent(); + await action(); } else { await WorkerToMainAsync(async () => - { - await action().BackToCurrent(); - return Task.FromResult(null); - }) - .BackToCurrent(); + { + await action(); + return Task.FromResult(null); + }); } } else @@ -85,15 +82,14 @@ public async ValueTask RunOnThreadAsync(Func action, bool useMain) if (IsMainThread) { await MainToWorkerAsync(async () => - { - await action().BackToCurrent(); - return Task.FromResult(null); - }) - .BackToCurrent(); + { + await action(); + return Task.FromResult(null); + }); } else { - await action().BackToCurrent(); + await action(); } } } diff --git a/Sdk/Speckle.Connectors.Tests/ActivityScopeTests.cs b/Sdk/Speckle.Connectors.Tests/ActivityScopeTests.cs index 3305d84f4..e92d64788 100644 --- a/Sdk/Speckle.Connectors.Tests/ActivityScopeTests.cs +++ b/Sdk/Speckle.Connectors.Tests/ActivityScopeTests.cs @@ -9,7 +9,7 @@ public class ActivityScopeTests public async Task TestAsyncLocal() { Logging.ActivityScope.SetTag("test", "me"); - await Task.Delay(10).ConfigureAwait(false); + await Task.Delay(10); Logging.ActivityScope.Tags.ContainsKey("test").Should().BeTrue(); Logging.ActivityScope.Tags["test"].Should().Be("me"); } From 4e5898b9d45f6c13713db9cfa2503d6ff32424b8 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 16 Dec 2024 10:20:34 +0000 Subject: [PATCH 165/173] Fix lock files for NW --- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- 12 files changed, 204 insertions(+), 204 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index f234efffc..b03c2a949 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.navisworks2020": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index db31d16c8..2d29494c4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.navisworks2021": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index 36481b86d..e117d0fb7 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.navisworks2022": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index 70a592e4c..11428db84 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.navisworks2023": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 2799ab411..3a163183a 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.navisworks2024": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index 8fa765128..c40b2de1b 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -47,11 +47,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "GraphQL.Client": { @@ -279,9 +279,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -289,8 +289,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -308,7 +308,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "speckle.converters.navisworks2025": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index e1fc5d48f..6f0e2aa6c 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index 866258fd6..2b192e615 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index f885fb24d..c358c058d 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index 6207606f4..dbec2600e 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index 7961fdc43..dec1d1c97 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index 649b9da56..33c9de791 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.215, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.215, )", + "Speckle.Sdk": "[3.1.0-dev.216, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.215, )" + "Speckle.Objects": "[3.1.0-dev.216, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "NNiTR3dp1/4WNIv2WRHm87pr4WQztt9vVRALqULEUTcYrvb34xwnKwPwt3Ah5iXW1g3qkecXto5V7Ex+IIzeRQ==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.215" + "Speckle.Sdk": "3.1.0-dev.216" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "YMb7xdELiza88RSCUWcqmKJlrnoqjxlc1+Z1gEQSCfvFV0Ibvfjz08YAMkOWFc/ZaY9nBUZvshHEWYIskEk5cg==", + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.215" + "Speckle.Sdk.Dependencies": "3.1.0-dev.216" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.215, )", - "resolved": "3.1.0-dev.215", - "contentHash": "cT5HRu+pRBvfKTRJIvQBgdX2X5eeTebHe7zmNz82tFT0p65RsK9K7Ap9RjvMndbEPqFtt8/sCNa5RHyfrf+IUg==" + "requested": "[3.1.0-dev.216, )", + "resolved": "3.1.0-dev.216", + "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", From 062a5a6c69bc6c6b645b04d63b3dae60fb1985ae Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 16 Dec 2024 11:08:06 +0000 Subject: [PATCH 166/173] Rhino doesn't need explicit run on main threads? --- .../Receive/RhinoHostObjectBuilder.cs | 66 ++++++++----------- .../Operations/ReceiveOperation.cs | 2 +- .../Operations/ReceiveProgress.cs | 48 +++++++------- .../Threading/ThreadContext.cs | 2 +- 4 files changed, 52 insertions(+), 66 deletions(-) diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 1a42a4dfb..8b665fd44 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -6,7 +6,6 @@ using Speckle.Connectors.Common.Extensions; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; -using Speckle.Connectors.Common.Threading; using Speckle.Connectors.Rhino.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Rhino; @@ -33,7 +32,6 @@ public class RhinoHostObjectBuilder : IHostObjectBuilder private readonly RhinoGroupBaker _groupBaker; private readonly RootObjectUnpacker _rootObjectUnpacker; private readonly ISdkActivityFactory _activityFactory; - private readonly IThreadContext _threadContext; public RhinoHostObjectBuilder( IRootToHostConverter converter, @@ -44,8 +42,7 @@ public RhinoHostObjectBuilder( RhinoMaterialBaker materialBaker, RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, - ISdkActivityFactory activityFactory, - IThreadContext threadContext + ISdkActivityFactory activityFactory ) { _converter = converter; @@ -57,7 +54,6 @@ IThreadContext threadContext _layerBaker = layerBaker; _groupBaker = groupBaker; _activityFactory = activityFactory; - _threadContext = threadContext; } #pragma warning disable CA1506 @@ -117,15 +113,12 @@ CancellationToken cancellationToken using (var _ = _activityFactory.Start("Pre baking layers")) { //TODO what is this? This is going to the UI thread - _threadContext - .RunOnMain(() => - { - using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); - var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); - paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); - _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); - }) - .Wait(); + + + using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); + var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); + paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); + _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); } // 5 - Convert atomic objects @@ -249,37 +242,32 @@ private void PreReceiveDeepClean(string baseLayerName) RhinoMath.UnsetIntIndex ); - _threadContext - .RunOnMain(() => - { - _instanceBaker.PurgeInstances(baseLayerName); - _materialBaker.PurgeMaterials(baseLayerName); + _instanceBaker.PurgeInstances(baseLayerName); + _materialBaker.PurgeMaterials(baseLayerName); - var doc = _converterSettings.Current.Document; - // Cleans up any previously received objects - if (rootLayerIndex != RhinoMath.UnsetIntIndex) + var doc = _converterSettings.Current.Document; + // Cleans up any previously received objects + if (rootLayerIndex != RhinoMath.UnsetIntIndex) + { + var documentLayer = doc.Layers[rootLayerIndex]; + var childLayers = documentLayer.GetChildren(); + if (childLayers != null) + { + using var layerNoDraw = new DisableRedrawScope(doc.Views); + foreach (var layer in childLayers) { - var documentLayer = doc.Layers[rootLayerIndex]; - var childLayers = documentLayer.GetChildren(); - if (childLayers != null) + var purgeSuccess = doc.Layers.Purge(layer.Index, true); + if (!purgeSuccess) { - using var layerNoDraw = new DisableRedrawScope(doc.Views); - foreach (var layer in childLayers) - { - var purgeSuccess = doc.Layers.Purge(layer.Index, true); - if (!purgeSuccess) - { - Console.WriteLine($"Failed to purge layer: {layer}"); - } - } + Console.WriteLine($"Failed to purge layer: {layer}"); } - doc.Layers.Purge(documentLayer.Index, true); } + } + doc.Layers.Purge(documentLayer.Index, true); + } - // Cleans up any previously received group - _groupBaker.PurgeGroups(baseLayerName); - }) - .Wait(); + // Cleans up any previously received group + _groupBaker.PurgeGroups(baseLayerName); } /// diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index 1438bc111..cbaea8f4d 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -62,7 +62,7 @@ CancellationToken cancellationToken ) { receiveProgress.Begin(); - Base? commitObject = await operations.Receive2( + Base commitObject = await operations.Receive2( new Uri(account.serverInfo.url), receiveInfo.ProjectId, version.referencedObject, diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveProgress.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveProgress.cs index a0ca61bc4..2939496f3 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveProgress.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveProgress.cs @@ -13,34 +13,32 @@ public sealed class ReceiveProgress(IProgressDisplayManager progressDisplayManag public void Report(IProgress onOperationProgressed, ProgressArgs args) { + switch (args.ProgressEvent) { - switch (args.ProgressEvent) - { - case ProgressEvent.CacheCheck: - _previousPercentage = progressDisplayManager.CalculatePercentage(args); - break; - case ProgressEvent.DownloadBytes: - _previousSpeed = progressDisplayManager.CalculateSpeed(args); - break; - } + case ProgressEvent.CacheCheck: + _previousPercentage = progressDisplayManager.CalculatePercentage(args); + break; + case ProgressEvent.DownloadBytes: + _previousSpeed = progressDisplayManager.CalculateSpeed(args); + break; + } - if (!progressDisplayManager.ShouldUpdate()) - { - return; - } + if (!progressDisplayManager.ShouldUpdate()) + { + return; + } - switch (args.ProgressEvent) - { - case ProgressEvent.CacheCheck: - onOperationProgressed.Report(new("Checking cache... ", _previousPercentage)); - break; - case ProgressEvent.DownloadBytes: - onOperationProgressed.Report(new($"Downloading... ({_previousSpeed})", null)); - break; - case ProgressEvent.DeserializeObject: - onOperationProgressed.Report(new("Deserializing ...", progressDisplayManager.CalculatePercentage(args))); - break; - } + switch (args.ProgressEvent) + { + case ProgressEvent.CacheCheck: + onOperationProgressed.Report(new("Checking cache... ", _previousPercentage)); + break; + case ProgressEvent.DownloadBytes: + onOperationProgressed.Report(new($"Downloading... ({_previousSpeed})", null)); + break; + case ProgressEvent.DeserializeObject: + onOperationProgressed.Report(new("Deserializing ...", progressDisplayManager.CalculatePercentage(args))); + break; } } } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 15b95da9a..9f0791c29 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -5,7 +5,7 @@ namespace Speckle.Connectors.Common.Threading; [GenerateAutoInterface] public abstract class ThreadContext : IThreadContext { - public static bool IsMainThread => Environment.CurrentManagedThreadId == 1 && !Thread.CurrentThread.IsBackground; + public static bool IsMainThread => Environment.CurrentManagedThreadId == 1; public async ValueTask RunOnThread(Action action, bool useMain) { From 9ae9f99d6c78fb7993196c8694754b522b407a7c Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 10:47:15 +0000 Subject: [PATCH 167/173] add back layers and materials on ui thread with comment --- .../Receive/RhinoHostObjectBuilder.cs | 69 +++++++++++-------- 1 file changed, 41 insertions(+), 28 deletions(-) diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index 8b665fd44..d76d942ce 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -6,6 +6,7 @@ using Speckle.Connectors.Common.Extensions; using Speckle.Connectors.Common.Operations; using Speckle.Connectors.Common.Operations.Receive; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.Rhino.HostApp; using Speckle.Converters.Common; using Speckle.Converters.Rhino; @@ -32,6 +33,7 @@ public class RhinoHostObjectBuilder : IHostObjectBuilder private readonly RhinoGroupBaker _groupBaker; private readonly RootObjectUnpacker _rootObjectUnpacker; private readonly ISdkActivityFactory _activityFactory; + private readonly IThreadContext _threadContext; public RhinoHostObjectBuilder( IRootToHostConverter converter, @@ -42,7 +44,8 @@ public RhinoHostObjectBuilder( RhinoMaterialBaker materialBaker, RhinoColorBaker colorBaker, RhinoGroupBaker groupBaker, - ISdkActivityFactory activityFactory + ISdkActivityFactory activityFactory, + IThreadContext threadContext ) { _converter = converter; @@ -54,6 +57,7 @@ ISdkActivityFactory activityFactory _layerBaker = layerBaker; _groupBaker = groupBaker; _activityFactory = activityFactory; + _threadContext = threadContext; } #pragma warning disable CA1506 @@ -112,13 +116,16 @@ CancellationToken cancellationToken onOperationProgressed.Report(new("Baking layers (redraw disabled)", null)); using (var _ = _activityFactory.Start("Pre baking layers")) { - //TODO what is this? This is going to the UI thread - - - using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); - var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); - paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); - _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); + //Rhino 8 doesn't play nice with Eto and layers + _threadContext + .RunOnMain(() => + { + using var layerNoDraw = new DisableRedrawScope(_converterSettings.Current.Document.Views); + var paths = atomicObjectsWithoutInstanceComponentsWithPath.Select(t => t.path).ToList(); + paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); + _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); + }) + .Wait(); } // 5 - Convert atomic objects @@ -242,32 +249,38 @@ private void PreReceiveDeepClean(string baseLayerName) RhinoMath.UnsetIntIndex ); - _instanceBaker.PurgeInstances(baseLayerName); - _materialBaker.PurgeMaterials(baseLayerName); - - var doc = _converterSettings.Current.Document; - // Cleans up any previously received objects - if (rootLayerIndex != RhinoMath.UnsetIntIndex) - { - var documentLayer = doc.Layers[rootLayerIndex]; - var childLayers = documentLayer.GetChildren(); - if (childLayers != null) + //Rhino 8 doesn't play nice with Eto and layers + _threadContext + .RunOnMain(() => { - using var layerNoDraw = new DisableRedrawScope(doc.Views); - foreach (var layer in childLayers) + _instanceBaker.PurgeInstances(baseLayerName); + _materialBaker.PurgeMaterials(baseLayerName); + + var doc = _converterSettings.Current.Document; + // Cleans up any previously received objects + if (rootLayerIndex != RhinoMath.UnsetIntIndex) { - var purgeSuccess = doc.Layers.Purge(layer.Index, true); - if (!purgeSuccess) + var documentLayer = doc.Layers[rootLayerIndex]; + var childLayers = documentLayer.GetChildren(); + if (childLayers != null) { - Console.WriteLine($"Failed to purge layer: {layer}"); + using var layerNoDraw = new DisableRedrawScope(doc.Views); + foreach (var layer in childLayers) + { + var purgeSuccess = doc.Layers.Purge(layer.Index, true); + if (!purgeSuccess) + { + Console.WriteLine($"Failed to purge layer: {layer}"); + } + } } + doc.Layers.Purge(documentLayer.Index, true); } - } - doc.Layers.Purge(documentLayer.Index, true); - } - // Cleans up any previously received group - _groupBaker.PurgeGroups(baseLayerName); + // Cleans up any previously received group + _groupBaker.PurgeGroups(baseLayerName); + }) + .Wait(); } /// From d7afe9b407633b44872dee1e0e4d84078acccd70 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 14:05:21 +0000 Subject: [PATCH 168/173] Update to SDK 3.1.0-218 --- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 34 +++++----- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 32 +++++----- .../packages.lock.json | 64 +++++++++---------- .../Speckle.Connectors.DUI/packages.lock.json | 28 ++++---- Directory.Packages.props | 6 +- .../packages.lock.json | 44 ++++++------- .../packages.lock.json | 28 ++++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 44 ++++++------- 50 files changed, 749 insertions(+), 749 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 68a9c8e31..ef57faa21 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -231,9 +231,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -241,8 +241,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -267,7 +267,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -299,18 +299,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -320,14 +320,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 50bd3fd29..9b77d3e6b 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -300,7 +300,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -338,18 +338,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -359,14 +359,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index 79957aa3d..ffe00ab30 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -300,7 +300,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -338,18 +338,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -359,14 +359,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index b52a372e4..4c8a050fa 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -301,7 +301,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -339,18 +339,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index a3047cda5..2928286d0 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -220,9 +220,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -230,8 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -257,7 +257,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -315,14 +315,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index 39b4ca9ba..0ba82222b 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,18 +348,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -369,14 +369,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index 92a0171d5..919d8abdb 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,18 +348,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -369,14 +369,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index c85c76281..69d222c6e 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -310,7 +310,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -348,18 +348,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -369,14 +369,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index 37cc2e59d..4a40c6637 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -229,9 +229,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -239,8 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -267,7 +267,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -305,18 +305,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -325,14 +325,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json index ef94a8573..005abbc8c 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS21/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -293,7 +293,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.etabs21": { @@ -337,18 +337,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -358,14 +358,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json index 272c56b2a..4175675aa 100644 --- a/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json +++ b/Connectors/CSi/Speckle.Connectors.ETABS22/packages.lock.json @@ -220,9 +220,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -230,8 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -249,7 +249,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.etabs22": { @@ -293,18 +293,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -313,14 +313,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json index ee9a7549a..6ac2990a3 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json @@ -292,9 +292,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -314,7 +314,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.revit2022": { @@ -353,11 +353,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Revit.API": { @@ -368,9 +368,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -380,14 +380,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json index 66eb252b1..461bb2a01 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json @@ -292,9 +292,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -314,7 +314,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.revit2023": { @@ -353,11 +353,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Revit.API": { @@ -368,9 +368,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -380,14 +380,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json index f7a4f3e53..329428e70 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json @@ -292,9 +292,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -314,7 +314,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.revit2024": { @@ -353,11 +353,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Revit.API": { @@ -368,9 +368,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -380,14 +380,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index edc50246a..3e5b56850 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -242,9 +242,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -252,8 +252,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -264,7 +264,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.revit2025": { @@ -303,11 +303,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Revit.API": { @@ -318,9 +318,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -329,14 +329,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index 97639c83d..3e42944ad 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.rhino7": { @@ -347,18 +347,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -368,14 +368,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index 1a678c31b..3bd23465c 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.rhino8": { @@ -347,18 +347,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -368,14 +368,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json index 885601575..8c195941a 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2023/packages.lock.json @@ -35,11 +35,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Tekla.Structures.Dialog": { @@ -332,9 +332,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -342,8 +342,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -369,7 +369,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -407,9 +407,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -419,14 +419,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index b94a8f4c0..40d9fbbe6 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -35,11 +35,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Tekla.Structures.Dialog": { @@ -413,9 +413,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -423,8 +423,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -450,7 +450,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -488,9 +488,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -500,14 +500,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json index c77329ebd..2b459e62f 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json @@ -224,7 +224,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -247,18 +247,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -268,14 +268,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json index 677e4e200..763bad71e 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json index 9c14f7a31..2559efbe4 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index 3db71ad08..1746e6ca9 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -293,7 +293,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -331,18 +331,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -352,14 +352,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index 304f51695..c02306f83 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -220,9 +220,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -230,8 +230,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -249,7 +249,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -287,18 +287,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json b/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json index e47b605e3..0b25d680f 100644 --- a/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json +++ b/Converters/CSi/Speckle.Converters.ETABS21/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json b/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json index 373da664d..0e264e050 100644 --- a/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json +++ b/Converters/CSi/Speckle.Converters.ETABS22/packages.lock.json @@ -219,7 +219,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -242,18 +242,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -262,14 +262,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json index 8eb4f2e1c..7c3aff1c7 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json @@ -272,7 +272,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json index eff22c516..3e477b593 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json @@ -272,7 +272,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json index a6ea5a3a2..18d128ed8 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json @@ -272,7 +272,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -295,18 +295,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index 17bd23418..e1c2988a6 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -229,9 +229,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -239,8 +239,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -258,7 +258,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -316,14 +316,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json index f87c6c5a2..4b9f4f6fa 100644 --- a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json index f421728bb..58abdda42 100644 --- a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json index 73e68bfca..c1bd719b5 100644 --- a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json index b992fa229..a419a4f0c 100644 --- a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json index 138b999ba..5ed1a4a73 100644 --- a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json index a39d11aad..550a866ac 100644 --- a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json index bbfc74d06..732460fe2 100644 --- a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json @@ -219,7 +219,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -242,18 +242,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -262,14 +262,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json index 725ff28bc..07de061d2 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json @@ -345,7 +345,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.testing": { @@ -375,18 +375,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -395,14 +395,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json index 11f66221b..66dd67d12 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json index fb4ceef72..d69b96292 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json @@ -263,7 +263,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -286,18 +286,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -307,14 +307,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json b/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json index 5e49b8f9e..1e01e04e3 100644 --- a/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json +++ b/Converters/Tekla/Speckle.Converter.Tekla2023/packages.lock.json @@ -300,7 +300,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -323,18 +323,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -344,14 +344,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "Tekla.Structures.Dialog": { "type": "CentralTransitive", diff --git a/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json b/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json index 51e4ba045..3f6e1a368 100644 --- a/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json +++ b/Converters/Tekla/Speckle.Converter.Tekla2024/packages.lock.json @@ -341,7 +341,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.Logging": { @@ -364,18 +364,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -385,14 +385,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "Tekla.Structures.Plugins": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json index c4e53f6ba..fece2ae4f 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json @@ -324,9 +324,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -334,8 +334,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -378,18 +378,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -398,14 +398,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index 0996677fc..81fa95ed9 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -311,18 +311,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -332,14 +332,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", @@ -572,9 +572,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -582,8 +582,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -619,18 +619,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -640,14 +640,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/DUI3/Speckle.Connectors.DUI/packages.lock.json b/DUI3/Speckle.Connectors.DUI/packages.lock.json index 900201add..23479f132 100644 --- a/DUI3/Speckle.Connectors.DUI/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI/packages.lock.json @@ -50,9 +50,9 @@ }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -62,14 +62,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "Direct", @@ -320,9 +320,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.logging": { @@ -351,11 +351,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } } } diff --git a/Directory.Packages.props b/Directory.Packages.props index 8232d616b..f6f6dbdd4 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -40,9 +40,9 @@ - - - + + + diff --git a/Sdk/Speckle.Connectors.Common/packages.lock.json b/Sdk/Speckle.Connectors.Common/packages.lock.json index 103788df2..5a01b6d55 100644 --- a/Sdk/Speckle.Connectors.Common/packages.lock.json +++ b/Sdk/Speckle.Connectors.Common/packages.lock.json @@ -53,18 +53,18 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -74,14 +74,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "GraphQL.Client": { "type": "Transitive", @@ -386,18 +386,18 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -406,14 +406,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "GraphQL.Client": { "type": "Transitive", diff --git a/Sdk/Speckle.Connectors.Tests/packages.lock.json b/Sdk/Speckle.Connectors.Tests/packages.lock.json index aa0009041..cc8d93c6f 100644 --- a/Sdk/Speckle.Connectors.Tests/packages.lock.json +++ b/Sdk/Speckle.Connectors.Tests/packages.lock.json @@ -324,9 +324,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )", - "Speckle.Sdk": "[3.1.0-dev.217, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.logging": { @@ -368,18 +368,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -388,14 +388,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json index 1099746e0..6e699cbf8 100644 --- a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json +++ b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json @@ -332,7 +332,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.217, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.testing": { @@ -362,18 +362,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -382,14 +382,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } diff --git a/Sdk/Speckle.Converters.Common/packages.lock.json b/Sdk/Speckle.Converters.Common/packages.lock.json index 2db215291..143a4a12f 100644 --- a/Sdk/Speckle.Converters.Common/packages.lock.json +++ b/Sdk/Speckle.Converters.Common/packages.lock.json @@ -50,11 +50,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -309,9 +309,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -321,14 +321,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } }, "net8.0": { @@ -371,11 +371,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "oig2EohlAQQ1IPS1MkhJEbVhNZ/GVmXw/LEQ9ukqeT9jltzVhz6ktOaPTHC1fU7ZtF3MDS9Zcfhx/U4RZ/M1PA==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.217" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -568,9 +568,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "RJafeOKgYJVn+3nRviSoqO8qoFq/W64u17IG7DU7fF89oN+pA2u6vIWchvaGSk8Kt4U2jpANTbfX+mcUPcERdQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -579,14 +579,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.217" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.217, )", - "resolved": "3.1.0-dev.217", - "contentHash": "TtOGuvAPjsbZ6L5rXl+19Z1ltb0S4WJmTMIBu44pd7yy4LOsR+/c5RFXiAozpAHBRbt40URDAx7O9xbY8vlC+Q==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" } } } From 9c59b43e25e2cc886cb39a28b264c6f0cd1f1836 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 14:25:46 +0000 Subject: [PATCH 169/173] update locks --- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- .../packages.lock.json | 34 +++++++++---------- 12 files changed, 204 insertions(+), 204 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json index b03c2a949..f94103af1 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2020/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.navisworks2020": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json index 2d29494c4..010e2851e 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2021/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.navisworks2021": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json index e117d0fb7..094f3f0de 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2022/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.navisworks2022": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json index 11428db84..60b4cc5cd 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2023/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.navisworks2023": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json index 3a163183a..d47f24827 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2024/packages.lock.json @@ -41,11 +41,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -273,9 +273,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -302,7 +302,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.navisworks2024": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json index c40b2de1b..db9cf1712 100644 --- a/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json +++ b/Connectors/Navisworks/Speckle.Connectors.Navisworks2025/packages.lock.json @@ -47,11 +47,11 @@ }, "Speckle.Objects": { "type": "Direct", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "GraphQL.Client": { @@ -279,9 +279,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -289,8 +289,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -308,7 +308,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "speckle.converters.navisworks2025": { @@ -348,9 +348,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -360,14 +360,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json index 6f0e2aa6c..bb34ae7c9 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2020/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json index 2b192e615..2d16a81f3 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2021/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json index c358c058d..a65080ed1 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2022/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json index dbec2600e..8d7228f42 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2023/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json index dec1d1c97..d18eea0e3 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2024/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", diff --git a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json index 33c9de791..a80b0e7e9 100644 --- a/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json +++ b/Converters/Navisworks/Speckle.Converters.Navisworks2025/packages.lock.json @@ -264,9 +264,9 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )" } }, "speckle.connectors.dui": { @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.216, )", - "Speckle.Sdk.Dependencies": "[3.1.0-dev.216, )", + "Speckle.Sdk": "[3.1.0-dev.218, )", + "Speckle.Sdk.Dependencies": "[3.1.0-dev.218, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -286,7 +286,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.216, )" + "Speckle.Objects": "[3.1.0-dev.218, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -318,18 +318,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "oHyjQ0VFFcRNjgohlNQxtg1xxI6pNfpTNHZtkfVkQftb9ijbZ4MgG8nnW3vsBO/smRtBxynncrO9d3j40Iyqiw==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "8IOc9hoQD3gNJCLglUPmiWERz8uzPzsO0k+bUWQPKFVzFYtc14qop9BSeNzvmNP7rUKYk9yUbg9zAu6YVn9E4A==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.216" + "Speckle.Sdk": "3.1.0-dev.218" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "tnsNOzooSIBhQk3BX3xudrRLL3A+n8ojfG81dJpKA8bSDOszdwPR2nWBJVA24KpZ6J3666jfRsi6NvAaxNFRcQ==", + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "PXpexeiuMRCHUQMMdatUOKi9qvETvzXaa1ak92mhVZj9k/dnraok7g8yxBIIKSyks+b6uWbnbn9gPzhVtk4s/w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.Bcl.AsyncInterfaces": "5.0.0", @@ -339,14 +339,14 @@ "Microsoft.Extensions.Logging": "2.2.0", "Speckle.DoubleNumerics": "4.0.1", "Speckle.Newtonsoft.Json": "13.0.2", - "Speckle.Sdk.Dependencies": "3.1.0-dev.216" + "Speckle.Sdk.Dependencies": "3.1.0-dev.218" } }, "Speckle.Sdk.Dependencies": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.216, )", - "resolved": "3.1.0-dev.216", - "contentHash": "v3EBevnZqcPres3xWn0mcnCCKhSLlqwTyfqUOTQSWHCCBBos8t0aBIQ21EBEkDaklaS7auj+Rk7vWByvgcrUbQ==" + "requested": "[3.1.0-dev.218, )", + "resolved": "3.1.0-dev.218", + "contentHash": "c3lAtu/HXPd18dD64r4GVid6b9/4AoB/MDhJGOGJeQlcGPejBh4r9HuTGoPxMc25pdCwbiTUe4R1NPckEka4XA==" }, "System.Threading.Tasks.Dataflow": { "type": "CentralTransitive", From 676a7e8e2536589c8ce564a4d81cee4651110538 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 15:04:27 +0000 Subject: [PATCH 170/173] rationalize NW and usage of cancellation token --- .../HostApp/ArcGISLayerUnpacker.cs | 4 +- .../Receive/ArcGISHostObjectBuilder.cs | 2 +- .../Send/ArcGISRootObjectBuilder.cs | 47 +++++-------------- .../Send/AutocadRootObjectBaseBuilder.cs | 4 +- .../Operations/Send/CsiRootObjectBuilder.cs | 4 +- .../NavisworksBasicConnectorBinding.cs | 17 ++----- .../Bindings/NavisworksSelectionBinding.cs | 5 +- .../Bindings/NavisworksSendBinding.cs | 5 -- .../NavisworksConnectorServiceRegistration.cs | 3 +- .../HostApp/NavisworksDocumentEvents.cs | 5 -- .../Send/NavisworksRootObjectBuilder.cs | 6 +-- .../Plugin/DockableConnectorPane.cs | 3 -- .../Operations/Send/RevitRootObjectBuilder.cs | 4 +- .../Operations/Send/RhinoRootObjectBuilder.cs | 4 +- .../Operations/Send/TeklaRootObjectBuilder.cs | 4 +- .../Builders/IRootObjectBuilder.cs | 3 +- .../Operations/SendOperation.cs | 2 +- 17 files changed, 43 insertions(+), 79 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs index b8955f895..7f68b03d3 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs @@ -18,7 +18,7 @@ public class ArcGISLayerUnpacker /// /// List of layers containing objects. /// Thrown when this method is *not* called on the MCT, because this method accesses mapmember fields - public async Task> UnpackSelectionAsync( + public List UnpackSelection( IEnumerable mapMembers, Collection parentCollection, List? objects = null @@ -37,7 +37,7 @@ public class ArcGISLayerUnpacker Collection containerCollection = CreateAndCacheMapMemberCollection(mapMember, true); parentCollection.elements.Add(containerCollection); - await UnpackSelectionAsync(container.Layers, containerCollection, objects).ConfigureAwait(false); + UnpackSelection(container.Layers, containerCollection, objects); break; default: diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs index 06edc2f86..5a9ce6512 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Receive/ArcGISHostObjectBuilder.cs @@ -99,7 +99,7 @@ CancellationToken cancellationToken try { obj = _localToGlobalConverterUtils.TransformObjects(objectToConvert.AtomicObject, objectToConvert.Matrix); - object? conversionResult = await QueuedTask.Run(() => _converter.Convert(obj)).ConfigureAwait(false); + object conversionResult = _converter.Convert(obj); string nestedLayerPath = $"{string.Join("\\", path)}"; diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs index c5c3ca855..51bd4eafd 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs @@ -1,6 +1,5 @@ using ArcGIS.Core.Data.Raster; using ArcGIS.Core.Geometry; -using ArcGIS.Desktop.Framework.Threading.Tasks; using Microsoft.Extensions.Logging; using Speckle.Connectors.ArcGIS.HostApp; using Speckle.Connectors.ArcGIS.HostApp.Extensions; @@ -54,10 +53,11 @@ MapMembersUtils mapMemberUtils _mapMemberUtils = mapMemberUtils; } - public async Task Build( + public RootObjectBuilderResult Build( IReadOnlyList layers, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { // TODO: add a warning if Geographic CRS is set @@ -102,9 +102,7 @@ IProgress onOperationProgressed IEnumerable layersOrdered = _mapMemberUtils.GetMapMembersInOrder(map, layers); using (var _ = _activityFactory.Start("Unpacking selection")) { - unpackedLayers = await QueuedTask - .Run(() => _layerUnpacker.UnpackSelectionAsync(layersOrdered, rootCollection)) - .ConfigureAwait(false); + unpackedLayers = _layerUnpacker.UnpackSelection(layersOrdered, rootCollection); } List results = new(unpackedLayers.Count); @@ -114,7 +112,7 @@ IProgress onOperationProgressed int count = 0; foreach (ADM.MapMember layer in unpackedLayers) { - ct.ThrowIfCancellationRequested(); + cancellationToken.ThrowIfCancellationRequested(); string layerApplicationId = layer.GetSpeckleApplicationId(); try @@ -140,21 +138,15 @@ out ObjectReference? value switch (layer) { case ADM.FeatureLayer featureLayer: - List convertedFeatureLayerObjects = await QueuedTask - .Run(() => ConvertFeatureLayerObjectsAsync(featureLayer)) - .ConfigureAwait(false); + List convertedFeatureLayerObjects = ConvertFeatureLayerObjects(featureLayer); layerCollection.elements.AddRange(convertedFeatureLayerObjects); break; case ADM.RasterLayer rasterLayer: - List convertedRasterLayerObjects = await QueuedTask - .Run(() => ConvertRasterLayerObjectsAsync(rasterLayer)) - .ConfigureAwait(false); + List convertedRasterLayerObjects = ConvertRasterLayerObjects(rasterLayer); layerCollection.elements.AddRange(convertedRasterLayerObjects); break; case ADM.LasDatasetLayer lasDatasetLayer: - List convertedLasDatasetObjects = await QueuedTask - .Run(() => ConvertLasDatasetLayerObjectsAsync(lasDatasetLayer)) - .ConfigureAwait(false); + List convertedLasDatasetObjects = ConvertLasDatasetLayerObjects(lasDatasetLayer); layerCollection.elements.AddRange(convertedLasDatasetObjects); break; default: @@ -193,13 +185,10 @@ out ObjectReference? value return new RootObjectBuilderResult(rootCollection, results); } - private async Task> ConvertFeatureLayerObjectsAsync(ADM.FeatureLayer featureLayer) + private List ConvertFeatureLayerObjects(ADM.FeatureLayer featureLayer) { string layerApplicationId = featureLayer.GetSpeckleApplicationId(); List convertedObjects = new(); - await QueuedTask - .Run(() => - { // store the layer renderer for color unpacking _colorUnpacker.StoreRendererAndFields(featureLayer); @@ -225,41 +214,31 @@ await QueuedTask } } } - }) - .ConfigureAwait(false); + return convertedObjects; } // POC: raster colors are stored as mesh vertex colors in RasterToSpeckleConverter. Should probably move to color unpacker. - private async Task> ConvertRasterLayerObjectsAsync(ADM.RasterLayer rasterLayer) + private List ConvertRasterLayerObjects(ADM.RasterLayer rasterLayer) { string layerApplicationId = rasterLayer.GetSpeckleApplicationId(); List convertedObjects = new(); - await QueuedTask - .Run(() => - { Raster raster = rasterLayer.GetRaster(); Base converted = _rootToSpeckleConverter.Convert(raster); string applicationId = raster.GetSpeckleApplicationId(layerApplicationId); converted.applicationId = applicationId; convertedObjects.Add(converted); - }) - .ConfigureAwait(false); - return convertedObjects; } - private async Task> ConvertLasDatasetLayerObjectsAsync(ADM.LasDatasetLayer lasDatasetLayer) + private List ConvertLasDatasetLayerObjects(ADM.LasDatasetLayer lasDatasetLayer) { string layerApplicationId = lasDatasetLayer.GetSpeckleApplicationId(); List convertedObjects = new(); try { - await QueuedTask - .Run(() => - { // store the layer renderer for color unpacking _colorUnpacker.StoreRenderer(lasDatasetLayer); @@ -281,8 +260,6 @@ await QueuedTask } } } - }) - .ConfigureAwait(false); } catch (ACD.Exceptions.TinException ex) { diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs index 62290cec2..b1de30e12 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs @@ -61,7 +61,8 @@ proxy classes yet. So I'm supressing this one now!!! public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { // 0 - Init the root @@ -93,6 +94,7 @@ IProgress onOperationProgressed int count = 0; foreach (var (entity, applicationId) in atomicObjects) { + cancellationToken.ThrowIfCancellationRequested(); using (var convertActivity = _activityFactory.Start("Converting object")) { // Create and add a collection for this entity if not done so already. diff --git a/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs b/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs index 3c14eb19f..07386452d 100644 --- a/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs +++ b/Connectors/CSi/Speckle.Connectors.CSiShared/Operations/Send/CsiRootObjectBuilder.cs @@ -45,7 +45,8 @@ ICsiApplicationService csiApplicationService public RootObjectBuilderResult Build( IReadOnlyList csiObjects, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { using var activity = _activityFactory.Start("Build"); @@ -61,6 +62,7 @@ IProgress onOperationProgressed { foreach (ICsiWrapper csiObject in csiObjects) { + cancellationToken.ThrowIfCancellationRequested(); using var _2 = _activityFactory.Start("Convert"); var result = ConvertCSiObject(csiObject, rootObjectCollection, sendInfo.ProjectId); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index 62c0ffda0..6ad747f10 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -41,11 +41,8 @@ NavisworksDocumentEvents documentEvents public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; - public DocumentInfo? GetDocumentInfo() => - Parent - .RunOnMainThreadAsync( - () => - Task.FromResult( + public DocumentInfo? GetDocumentInfo() + => NavisworksApp.ActiveDocument is null || NavisworksApp.ActiveDocument.Models.Count == 0 ? null : new DocumentInfo( @@ -53,9 +50,8 @@ NavisworksDocumentEvents documentEvents NavisworksApp.ActiveDocument.Title, NavisworksApp.ActiveDocument.GetHashCode().ToString() ) - ) - ) - .Result; + + ; public DocumentModelStore GetDocumentState() => _store; @@ -68,11 +64,6 @@ NavisworksDocumentEvents documentEvents public Task HighlightModel(string modelCardId) => Task.CompletedTask; public async Task HighlightObjects(IReadOnlyList objectIds) => - await Parent - .RunOnMainThreadAsync(async () => - { // TODO: Implement highlighting logic on main thread await Task.CompletedTask.ConfigureAwait(false); - }) - .ConfigureAwait(false); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index 52389c16b..91915aa94 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -39,10 +39,7 @@ private void UpdateSelection() private async Task UpdateSelectionAsync() { - var selInfo = await Parent - .RunOnMainThreadAsync(() => Task.FromResult(GetSelection())) - .ConfigureAwait(false); - + var selInfo = GetSelection(); await Parent.Send(SELECTION_EVENT, selInfo).ConfigureAwait(false); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 8e5c15e3a..ee9bb0fce 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -87,9 +87,6 @@ public async Task Send(string modelCardId) using var activity = _activityFactory.Start(); try { - await Parent - .RunOnMainThreadAsync(async () => - { var modelCard = GetModelCard(modelCardId); using var scope = _serviceProvider.CreateScope(); @@ -106,8 +103,6 @@ await Parent await Commands .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) .ConfigureAwait(false); - }) - .ConfigureAwait(false); } catch (OperationCanceledException) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs index a1d398292..b906ddce4 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/DependencyInjection/NavisworksConnectorServiceRegistration.cs @@ -9,6 +9,7 @@ using Speckle.Connectors.Common.Builders; using Speckle.Connectors.Common.Cancellation; using Speckle.Connectors.Common.Operations; +using Speckle.Connectors.Common.Threading; using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; @@ -27,7 +28,7 @@ public static void AddNavisworks(this IServiceCollection serviceCollection) { // Register Core functionality serviceCollection.AddConnectorUtils(); - serviceCollection.AddDUI(); + serviceCollection.AddDUI(); serviceCollection.AddDUIView(); // Register bindings diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 26fed81ee..db87e7e00 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -102,9 +102,6 @@ private async Task ProcessModelStateChangeAsync() try { - await _parent - .RunOnMainThreadAsync(async () => - { var store = _serviceProvider.GetRequiredService(); var basicBinding = _serviceProvider.GetRequiredService(); var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; @@ -123,8 +120,6 @@ await _parent { await commands.NotifyDocumentChanged().ConfigureAwait(false); } - }) - .ConfigureAwait(false); } finally { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs index f58d59377..a099cb4fb 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Operations/Send/NavisworksRootObjectBuilder.cs @@ -28,11 +28,11 @@ IElementSelectionService elementSelectionService { internal NavisworksConversionSettings GetCurrentSettings() => converterSettings.Current; - public Task Build( + public RootObjectBuilderResult Build( IReadOnlyList navisworksModelItems, SendInfo sendInfo, IProgress onOperationProgressed, - CancellationToken cancellationToken = default + CancellationToken cancellationToken ) { using var activity = activityFactory.Start("Build"); @@ -151,7 +151,7 @@ public Task Build( // 8. Finalize and return rootObjectCollection.elements = finalElements; - return Task.FromResult(new RootObjectBuilderResult(rootObjectCollection, results)); + return new RootObjectBuilderResult(rootObjectCollection, results); } private SendConversionResult ConvertNavisworksItem( diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs index d6022ca75..b779afe43 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Plugin/DockableConnectorPane.cs @@ -4,7 +4,6 @@ using Microsoft.Extensions.DependencyInjection; using Speckle.Connector.Navisworks.DependencyInjection; using Speckle.Connectors.Common; -using Speckle.Connectors.DUI; using Speckle.Connectors.DUI.WebView; using Speckle.Converter.Navisworks.DependencyInjection; using Speckle.Sdk.Host; @@ -42,8 +41,6 @@ public override Control CreateControlPane() Container = services.BuildServiceProvider(); - Container.UseDUI(); - var u = Container.GetRequiredService(); var speckleHost = new ElementHost { AutoSize = true, Child = u }; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 287214e2a..0e1fcd55e 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -31,7 +31,8 @@ RevitToSpeckleCacheSingleton revitToSpeckleCacheSingleton public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { var doc = converterSettings.Current.Document; @@ -73,6 +74,7 @@ IProgress onOperationProgressed foreach (Element revitElement in atomicObjects) { + cancellationToken.ThrowIfCancellationRequested(); string applicationId = revitElement.UniqueId; string sourceType = revitElement.GetType().Name; try diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs index 1d15c5d3b..ceec97b2c 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs @@ -63,7 +63,8 @@ ISdkActivityFactory activityFactory public RootObjectBuilderResult Build( IReadOnlyList rhinoObjects, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { using var activity = _activityFactory.Start("Build"); @@ -94,6 +95,7 @@ IProgress onOperationProgressed { foreach (RhinoObject rhinoObject in atomicObjects) { + cancellationToken.ThrowIfCancellationRequested(); using var _2 = _activityFactory.Start("Convert"); // handle layer diff --git a/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs b/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs index e7e4fef87..1f5bb8a2c 100644 --- a/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs +++ b/Connectors/Tekla/Speckle.Connector.TeklaShared/Operations/Send/TeklaRootObjectBuilder.cs @@ -46,7 +46,8 @@ TeklaMaterialUnpacker materialUnpacker public RootObjectBuilderResult Build( IReadOnlyList teklaObjects, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ) { using var activity = _activityFactory.Start("Build"); @@ -64,6 +65,7 @@ IProgress onOperationProgressed { foreach (TSM.ModelObject teklaObject in teklaObjects) { + cancellationToken.ThrowIfCancellationRequested(); using var _2 = _activityFactory.Start("Convert"); var result = ConvertTeklaObject(teklaObject, rootObjectCollection, sendInfo.ProjectId); diff --git a/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs b/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs index c018b2b4d..747df3acd 100644 --- a/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs +++ b/Sdk/Speckle.Connectors.Common/Builders/IRootObjectBuilder.cs @@ -9,7 +9,8 @@ public interface IRootObjectBuilder public RootObjectBuilderResult Build( IReadOnlyList objects, SendInfo sendInfo, - IProgress onOperationProgressed + IProgress onOperationProgressed, + CancellationToken cancellationToken ); } diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs index 3d3021be2..7eb5d5c0a 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs @@ -32,7 +32,7 @@ public async Task Execute( ) { var buildResult = await threadContext.RunOnMain( - () => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed) + () => rootObjectBuilder.Build(objects, sendInfo, onOperationProgressed, ct) ); // POC: Jonathon asks on behalf of willow twin - let's explore how this can work From 6ebcc3f8f2bca4a48489db60477c11cdf7eb6e85 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 15:06:46 +0000 Subject: [PATCH 171/173] format --- .../HostApp/ArcGISLayerUnpacker.cs | 2 +- .../Send/ArcGISRootObjectBuilder.cs | 93 +++++++++---------- .../NavisworksBasicConnectorBinding.cs | 23 ++--- .../Bindings/NavisworksSendBinding.cs | 19 ++-- .../HostApp/NavisworksDocumentEvents.cs | 36 +++---- 5 files changed, 83 insertions(+), 90 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs index 7f68b03d3..3db6653e0 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/HostApp/ArcGISLayerUnpacker.cs @@ -37,7 +37,7 @@ public class ArcGISLayerUnpacker Collection containerCollection = CreateAndCacheMapMemberCollection(mapMember, true); parentCollection.elements.Add(containerCollection); - UnpackSelection(container.Layers, containerCollection, objects); + UnpackSelection(container.Layers, containerCollection, objects); break; default: diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs index 51bd4eafd..aae2c1c24 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs @@ -102,7 +102,7 @@ CancellationToken cancellationToken IEnumerable layersOrdered = _mapMemberUtils.GetMapMembersInOrder(map, layers); using (var _ = _activityFactory.Start("Unpacking selection")) { - unpackedLayers = _layerUnpacker.UnpackSelection(layersOrdered, rootCollection); + unpackedLayers = _layerUnpacker.UnpackSelection(layersOrdered, rootCollection); } List results = new(unpackedLayers.Count); @@ -112,7 +112,7 @@ CancellationToken cancellationToken int count = 0; foreach (ADM.MapMember layer in unpackedLayers) { - cancellationToken.ThrowIfCancellationRequested(); + cancellationToken.ThrowIfCancellationRequested(); string layerApplicationId = layer.GetSpeckleApplicationId(); try @@ -138,15 +138,15 @@ out ObjectReference? value switch (layer) { case ADM.FeatureLayer featureLayer: - List convertedFeatureLayerObjects = ConvertFeatureLayerObjects(featureLayer); + List convertedFeatureLayerObjects = ConvertFeatureLayerObjects(featureLayer); layerCollection.elements.AddRange(convertedFeatureLayerObjects); break; case ADM.RasterLayer rasterLayer: - List convertedRasterLayerObjects = ConvertRasterLayerObjects(rasterLayer); + List convertedRasterLayerObjects = ConvertRasterLayerObjects(rasterLayer); layerCollection.elements.AddRange(convertedRasterLayerObjects); break; case ADM.LasDatasetLayer lasDatasetLayer: - List convertedLasDatasetObjects = ConvertLasDatasetLayerObjects(lasDatasetLayer); + List convertedLasDatasetObjects = ConvertLasDatasetLayerObjects(lasDatasetLayer); layerCollection.elements.AddRange(convertedLasDatasetObjects); break; default: @@ -189,32 +189,31 @@ private List ConvertFeatureLayerObjects(ADM.FeatureLayer featureLayer) { string layerApplicationId = featureLayer.GetSpeckleApplicationId(); List convertedObjects = new(); - // store the layer renderer for color unpacking - _colorUnpacker.StoreRendererAndFields(featureLayer); + // store the layer renderer for color unpacking + _colorUnpacker.StoreRendererAndFields(featureLayer); - // search the rows of the layer, where each row is treated like an object - // RowCursor is IDisposable but is not being correctly picked up by IDE warnings. - // This means we need to be carefully adding using statements based on the API documentation coming from each method/class - using (ACD.RowCursor rowCursor = featureLayer.Search()) + // search the rows of the layer, where each row is treated like an object + // RowCursor is IDisposable but is not being correctly picked up by IDE warnings. + // This means we need to be carefully adding using statements based on the API documentation coming from each method/class + using (ACD.RowCursor rowCursor = featureLayer.Search()) + { + while (rowCursor.MoveNext()) + { + // Same IDisposable issue appears to happen on Row class too. Docs say it should always be disposed of manually by the caller. + using (ACD.Row row = rowCursor.Current) { - while (rowCursor.MoveNext()) - { - // Same IDisposable issue appears to happen on Row class too. Docs say it should always be disposed of manually by the caller. - using (ACD.Row row = rowCursor.Current) - { - // get application id. test for subtypes before defaulting to base type. - Base converted = _rootToSpeckleConverter.Convert(row); - string applicationId = row.GetSpeckleApplicationId(layerApplicationId); - converted.applicationId = applicationId; + // get application id. test for subtypes before defaulting to base type. + Base converted = _rootToSpeckleConverter.Convert(row); + string applicationId = row.GetSpeckleApplicationId(layerApplicationId); + converted.applicationId = applicationId; - convertedObjects.Add(converted); + convertedObjects.Add(converted); - // process the object color - _colorUnpacker.ProcessFeatureLayerColor(row, applicationId); - } - } + // process the object color + _colorUnpacker.ProcessFeatureLayerColor(row, applicationId); } - + } + } return convertedObjects; } @@ -224,11 +223,11 @@ private List ConvertRasterLayerObjects(ADM.RasterLayer rasterLayer) { string layerApplicationId = rasterLayer.GetSpeckleApplicationId(); List convertedObjects = new(); - Raster raster = rasterLayer.GetRaster(); - Base converted = _rootToSpeckleConverter.Convert(raster); - string applicationId = raster.GetSpeckleApplicationId(layerApplicationId); - converted.applicationId = applicationId; - convertedObjects.Add(converted); + Raster raster = rasterLayer.GetRaster(); + Base converted = _rootToSpeckleConverter.Convert(raster); + string applicationId = raster.GetSpeckleApplicationId(layerApplicationId); + converted.applicationId = applicationId; + convertedObjects.Add(converted); return convertedObjects; } @@ -239,27 +238,25 @@ private List ConvertLasDatasetLayerObjects(ADM.LasDatasetLayer lasDatasetL try { - // store the layer renderer for color unpacking - _colorUnpacker.StoreRenderer(lasDatasetLayer); + // store the layer renderer for color unpacking + _colorUnpacker.StoreRenderer(lasDatasetLayer); - using ( - ACD.Analyst3D.LasPointCursor ptCursor = lasDatasetLayer.SearchPoints(new ACD.Analyst3D.LasPointFilter()) - ) + using (ACD.Analyst3D.LasPointCursor ptCursor = lasDatasetLayer.SearchPoints(new ACD.Analyst3D.LasPointFilter())) + { + while (ptCursor.MoveNext()) + { + using (ACD.Analyst3D.LasPoint pt = ptCursor.Current) { - while (ptCursor.MoveNext()) - { - using (ACD.Analyst3D.LasPoint pt = ptCursor.Current) - { - Base converted = _rootToSpeckleConverter.Convert(pt); - string applicationId = pt.GetSpeckleApplicationId(layerApplicationId); - converted.applicationId = applicationId; - convertedObjects.Add(converted); + Base converted = _rootToSpeckleConverter.Convert(pt); + string applicationId = pt.GetSpeckleApplicationId(layerApplicationId); + converted.applicationId = applicationId; + convertedObjects.Add(converted); - // process the object color - _colorUnpacker.ProcessLasLayerColor(pt, applicationId); - } - } + // process the object color + _colorUnpacker.ProcessLasLayerColor(pt, applicationId); } + } + } } catch (ACD.Exceptions.TinException ex) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index 6ad747f10..fa81d8e59 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -41,17 +41,14 @@ NavisworksDocumentEvents documentEvents public string GetConnectorVersion() => _speckleApplication.SpeckleVersion; - public DocumentInfo? GetDocumentInfo() - => - NavisworksApp.ActiveDocument is null || NavisworksApp.ActiveDocument.Models.Count == 0 - ? null - : new DocumentInfo( - NavisworksApp.ActiveDocument.CurrentFileName, - NavisworksApp.ActiveDocument.Title, - NavisworksApp.ActiveDocument.GetHashCode().ToString() - ) - - ; + public DocumentInfo? GetDocumentInfo() => + NavisworksApp.ActiveDocument is null || NavisworksApp.ActiveDocument.Models.Count == 0 + ? null + : new DocumentInfo( + NavisworksApp.ActiveDocument.CurrentFileName, + NavisworksApp.ActiveDocument.Title, + NavisworksApp.ActiveDocument.GetHashCode().ToString() + ); public DocumentModelStore GetDocumentState() => _store; @@ -64,6 +61,6 @@ NavisworksDocumentEvents documentEvents public Task HighlightModel(string modelCardId) => Task.CompletedTask; public async Task HighlightObjects(IReadOnlyList objectIds) => - // TODO: Implement highlighting logic on main thread - await Task.CompletedTask.ConfigureAwait(false); + // TODO: Implement highlighting logic on main thread + await Task.CompletedTask.ConfigureAwait(false); } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index ee9bb0fce..0d74a9f9e 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -87,22 +87,21 @@ public async Task Send(string modelCardId) using var activity = _activityFactory.Start(); try { - var modelCard = GetModelCard(modelCardId); + var modelCard = GetModelCard(modelCardId); - using var scope = _serviceProvider.CreateScope(); + using var scope = _serviceProvider.CreateScope(); - InitializeConverterSettings(scope, modelCard); + InitializeConverterSettings(scope, modelCard); - CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); + CancellationToken token = _cancellationManager.InitCancellationTokenSource(modelCardId); - var navisworksModelItems = GetNavisworksModelItems(modelCard); + var navisworksModelItems = GetNavisworksModelItems(modelCard); - var sendResult = await ExecuteSendOperation(scope, modelCard, navisworksModelItems, token) - .ConfigureAwait(false); + var sendResult = await ExecuteSendOperation(scope, modelCard, navisworksModelItems, token).ConfigureAwait(false); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands + .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) + .ConfigureAwait(false); } catch (OperationCanceledException) { diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index db87e7e00..5f4cadc61 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -102,24 +102,24 @@ private async Task ProcessModelStateChangeAsync() try { - var store = _serviceProvider.GetRequiredService(); - var basicBinding = _serviceProvider.GetRequiredService(); - var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; - - switch (_finalModelCount) - { - case 0 when _priorModelCount > 0: - store.ClearAndSave(); - break; - case > 0 when _priorModelCount == 0: - store.ReloadState(); - break; - } - - if (commands != null) - { - await commands.NotifyDocumentChanged().ConfigureAwait(false); - } + var store = _serviceProvider.GetRequiredService(); + var basicBinding = _serviceProvider.GetRequiredService(); + var commands = (basicBinding as NavisworksBasicConnectorBinding)?.Commands; + + switch (_finalModelCount) + { + case 0 when _priorModelCount > 0: + store.ClearAndSave(); + break; + case > 0 when _priorModelCount == 0: + store.ReloadState(); + break; + } + + if (commands != null) + { + await commands.NotifyDocumentChanged().ConfigureAwait(false); + } } finally { From ca0ac5904340f02205b711c4976f569b7aca584b Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 15:10:36 +0000 Subject: [PATCH 172/173] remove .ConfigureAwait(false) --- .../Bindings/NavisworksBasicConnectorBinding.cs | 2 +- .../Bindings/NavisworksSelectionBinding.cs | 7 ++----- .../Bindings/NavisworksSendBinding.cs | 11 ++++------- .../HostApp/NavisworksDocumentEvents.cs | 9 +++------ 4 files changed, 10 insertions(+), 19 deletions(-) diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs index fa81d8e59..8d893c8cc 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksBasicConnectorBinding.cs @@ -62,5 +62,5 @@ NavisworksDocumentEvents documentEvents public async Task HighlightObjects(IReadOnlyList objectIds) => // TODO: Implement highlighting logic on main thread - await Task.CompletedTask.ConfigureAwait(false); + await Task.CompletedTask; } diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs index 91915aa94..d3334383e 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSelectionBinding.cs @@ -26,10 +26,7 @@ IElementSelectionService selectionService } private void OnSelectionChange(object? o, EventArgs eventArgs) => - _appIdleManager.SubscribeToIdle( - nameof(NavisworksSelectionBinding), - async () => await UpdateSelectionAsync().ConfigureAwait(false) - ); + _appIdleManager.SubscribeToIdle(nameof(NavisworksSelectionBinding), async () => await UpdateSelectionAsync()); private void UpdateSelection() { @@ -40,7 +37,7 @@ private void UpdateSelection() private async Task UpdateSelectionAsync() { var selInfo = GetSelection(); - await Parent.Send(SELECTION_EVENT, selInfo).ConfigureAwait(false); + await Parent.Send(SELECTION_EVENT, selInfo); } public SelectionInfo GetSelection() diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs index 0d74a9f9e..e67d8a7be 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/Bindings/NavisworksSendBinding.cs @@ -97,11 +97,9 @@ public async Task Send(string modelCardId) var navisworksModelItems = GetNavisworksModelItems(modelCard); - var sendResult = await ExecuteSendOperation(scope, modelCard, navisworksModelItems, token).ConfigureAwait(false); + var sendResult = await ExecuteSendOperation(scope, modelCard, navisworksModelItems, token); - await Commands - .SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults) - .ConfigureAwait(false); + await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults); } catch (OperationCanceledException) { @@ -112,7 +110,7 @@ await Commands catch (Exception ex) when (!ex.IsFatal()) // UX reasons - we will report operation exceptions as model card error. We may change this later when we have more exception documentation { _logger.LogModelCardHandledError(ex); - await Commands.SetModelError(modelCardId, ex).ConfigureAwait(false); + await Commands.SetModelError(modelCardId, ex); } } @@ -167,8 +165,7 @@ await scope modelCard.GetSendInfo(_speckleApplication.Slug), _operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCard.ModelCardId!, token), token - ) - .ConfigureAwait(false); + ); public void CancelSend(string modelCardId) => _cancellationManager.CancelOperation(modelCardId); diff --git a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs index 5f4cadc61..69e05e171 100644 --- a/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs +++ b/Connectors/Navisworks/Speckle.Connectors.NavisworksShared/HostApp/NavisworksDocumentEvents.cs @@ -84,10 +84,7 @@ private void HandleDocumentModelCountChanged(object sender, EventArgs e) _topLevelExceptionHandler.CatchUnhandled( () => - _idleManager.SubscribeToIdle( - nameof(NavisworksDocumentEvents), - async () => await ProcessModelStateChangeAsync().ConfigureAwait(false) - ) + _idleManager.SubscribeToIdle(nameof(NavisworksDocumentEvents), async () => await ProcessModelStateChangeAsync()) ); } @@ -118,7 +115,7 @@ private async Task ProcessModelStateChangeAsync() if (commands != null) { - await commands.NotifyDocumentChanged().ConfigureAwait(false); + await commands.NotifyDocumentChanged(); } } finally @@ -159,7 +156,7 @@ private async Task NotifyValidModelStateChange() if (commands != null) { - await commands.NotifyDocumentChanged().ConfigureAwait(false); + await commands.NotifyDocumentChanged(); } } finally From cf33ef1a5546febce1c0e87924e48de7e8d7b2a9 Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Tue, 17 Dec 2024 15:54:13 +0000 Subject: [PATCH 173/173] Remove ValueTask and fix ArcGIS doc saving --- .../Utils/ArcGISThreadContext.cs | 15 ++++++----- .../Utils/ArcGisDocumentStore.cs | 4 +-- .../Bindings/AutocadSelectionBinding.cs | 2 +- .../Plugin/RevitThreadContext.cs | 10 ++++---- .../Receive/RhinoHostObjectBuilder.cs | 2 +- .../Operations/ReceiveOperation.cs | 2 +- .../Operations/SendOperation.cs | 2 +- .../Threading/DefaultThreadContext.cs | 16 ++++++------ .../Threading/TaskExtensions.cs | 13 +--------- .../Threading/ThreadContext.cs | 25 ++++++++++--------- .../Threading/ThreadContextExtensions.cs | 16 ++++++------ 11 files changed, 48 insertions(+), 59 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs index 7f5a7b5ae..42297eb00 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGISThreadContext.cs @@ -6,7 +6,7 @@ namespace Speckle.Connectors.ArcGIS.Utils; //don't check for GUI as it's the same check we do in ThreadContext public class ArcGISThreadContext : ThreadContext { - protected override ValueTask MainToWorkerAsync(Func> action) + protected override Task MainToWorkerAsync(Func> action) { if (QueuedTask.OnWorker) { @@ -14,24 +14,23 @@ protected override ValueTask MainToWorkerAsync(Func> action) } else { - return QueuedTask.Run(async () => await action()).AsValueTask(); + return QueuedTask.Run(async () => await action()); } } - protected override ValueTask WorkerToMainAsync(Func> action) => - QueuedTask.Run(async () => await action()).AsValueTask(); + protected override Task WorkerToMainAsync(Func> action) => QueuedTask.Run(async () => await action()); - protected override ValueTask MainToWorker(Func action) + protected override Task MainToWorker(Func action) { if (QueuedTask.OnWorker) { - return new(action()); + return Task.FromResult(action()); } else { - return QueuedTask.Run(action).AsValueTask(); + return QueuedTask.Run(action); } } - protected override ValueTask WorkerToMain(Func action) => QueuedTask.Run(action).AsValueTask(); + protected override Task WorkerToMain(Func action) => QueuedTask.Run(action); } diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs index 0dd2e7abe..0e6e5e1da 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Utils/ArcGisDocumentStore.cs @@ -109,7 +109,7 @@ protected override void HostAppSaveState(string modelCardState) => map.SetMetadata(existingXmlDocument.ToString()); }) - .Wait(); + .FireAndForget(); protected override void LoadState() => _threadContext @@ -128,5 +128,5 @@ protected override void LoadState() => string modelsString = element.Value; LoadFromString(modelsString); }) - .Wait(); + .FireAndForget(); } diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs index c8973f0fb..104341c33 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Bindings/AutocadSelectionBinding.cs @@ -55,7 +55,7 @@ private void TryRegisterDocumentForSelection(Document? document) // Ui requests to GetSelection() should just return this local copy that is kept up to date by the event handler. private SelectionInfo _selectionInfo; - private async ValueTask OnSelectionChanged() + private async Task OnSelectionChanged() { _selectionInfo = GetSelectionInternal(); await Parent.Send(SELECTION_EVENT, _selectionInfo); diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs index 3735d95b1..957b3959c 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Plugin/RevitThreadContext.cs @@ -5,12 +5,12 @@ namespace Speckle.Connectors.Revit.Plugin; public class RevitThreadContext : ThreadContext { - protected override ValueTask MainToWorkerAsync(Func> action) => action(); + protected override Task MainToWorkerAsync(Func> action) => action(); - protected override ValueTask WorkerToMainAsync(Func> action) => - RevitTask.RunAsync(async () => await action()).AsValueTask(); + protected override Task WorkerToMainAsync(Func> action) => + RevitTask.RunAsync(async () => await action()); - protected override ValueTask MainToWorker(Func action) => new(action()); + protected override Task MainToWorker(Func action) => Task.FromResult(action()); - protected override ValueTask WorkerToMain(Func action) => new(RevitTask.RunAsync(action)); + protected override Task WorkerToMain(Func action) => RevitTask.RunAsync(action); } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index d76d942ce..82eb7d706 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -125,7 +125,7 @@ CancellationToken cancellationToken paths.AddRange(instanceComponentsWithPath.Select(t => t.path)); _layerBaker.CreateAllLayersForReceive(paths, baseLayerName); }) - .Wait(); + .Wait(cancellationToken); } // 5 - Convert atomic objects diff --git a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs index cbaea8f4d..5827a715f 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/ReceiveOperation.cs @@ -53,7 +53,7 @@ await apiClient.Version.Received( return res; } - private async ValueTask ReceiveData( + private async Task ReceiveData( Account account, Speckle.Sdk.Api.GraphQL.Models.Version version, ReceiveInfo receiveInfo, diff --git a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs index 7eb5d5c0a..3f432ddbf 100644 --- a/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs +++ b/Sdk/Speckle.Connectors.Common/Operations/SendOperation.cs @@ -48,7 +48,7 @@ public async Task Execute( return new(rootObjId, convertedReferences, buildResult.ConversionResults); } - public async ValueTask Send( + public async Task Send( Base commitObject, SendInfo sendInfo, IProgress onOperationProgressed, diff --git a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs index 933291017..5c5f2194b 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/DefaultThreadContext.cs @@ -10,7 +10,7 @@ public class DefaultThreadContext : ThreadContext ); [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - protected override ValueTask WorkerToMainAsync(Func> action) + protected override Task WorkerToMainAsync(Func> action) { TaskCompletionSource tcs = new(); _threadContext.Post( @@ -28,10 +28,10 @@ protected override ValueTask WorkerToMainAsync(Func> action) }, null ); - return new ValueTask(tcs.Task); + return tcs.Task; } - protected override ValueTask MainToWorkerAsync(Func> action) + protected override Task MainToWorkerAsync(Func> action) { Task> f = Task.Factory.StartNew( async () => await action(), @@ -39,11 +39,11 @@ protected override ValueTask MainToWorkerAsync(Func> action) TaskCreationOptions.LongRunning, TaskScheduler.Default ); - return new ValueTask(f.Unwrap()); + return f.Unwrap(); } [SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "TaskCompletionSource")] - protected override ValueTask WorkerToMain(Func action) + protected override Task WorkerToMain(Func action) { TaskCompletionSource tcs = new(); _threadContext.Post( @@ -61,12 +61,12 @@ protected override ValueTask WorkerToMain(Func action) }, null ); - return new ValueTask(tcs.Task); + return tcs.Task; } - protected override ValueTask MainToWorker(Func action) + protected override Task MainToWorker(Func action) { Task f = Task.Factory.StartNew(action, default, TaskCreationOptions.LongRunning, TaskScheduler.Default); - return new ValueTask(f); + return f; } } diff --git a/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs b/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs index 2e6695c09..3ebc31b8c 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/TaskExtensions.cs @@ -2,18 +2,7 @@ namespace Speckle.Connectors.Common.Threading; public static class TaskExtensions { - public static ValueTask AsValueTask(this Task task) => new(task); - - public static ValueTask AsValueTask(this Task task) => new(task); - - public static void Wait(this Task task) => task.GetAwaiter().GetResult(); - - public static T Wait(this Task task) => task.GetAwaiter().GetResult(); - - public static void Wait(this ValueTask task) => task.GetAwaiter().GetResult(); - - public static T Wait(this ValueTask task) => task.GetAwaiter().GetResult(); #pragma warning disable CA1030 - public static async void FireAndForget(this ValueTask valueTask) => await valueTask; + public static async void FireAndForget(this Task valueTask) => await valueTask; #pragma warning restore CA1030 } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs index 9f0791c29..e98d7d5cc 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContext.cs @@ -5,9 +5,10 @@ namespace Speckle.Connectors.Common.Threading; [GenerateAutoInterface] public abstract class ThreadContext : IThreadContext { + private static readonly Task s_empty = Task.FromResult(null); public static bool IsMainThread => Environment.CurrentManagedThreadId == 1; - public async ValueTask RunOnThread(Action action, bool useMain) + public async Task RunOnThread(Action action, bool useMain) { if (useMain) { @@ -20,7 +21,7 @@ public async ValueTask RunOnThread(Action action, bool useMain) await WorkerToMainAsync(() => { action(); - return new ValueTask(); + return s_empty; }); } } @@ -31,7 +32,7 @@ await WorkerToMainAsync(() => await MainToWorkerAsync(() => { action(); - return new ValueTask(); + return s_empty; }); } else @@ -41,13 +42,13 @@ await MainToWorkerAsync(() => } } - public virtual ValueTask RunOnThread(Func action, bool useMain) + public virtual Task RunOnThread(Func action, bool useMain) { if (useMain) { if (IsMainThread) { - return new ValueTask(action()); + return Task.FromResult(action()); } return WorkerToMain(action); @@ -57,10 +58,10 @@ public virtual ValueTask RunOnThread(Func action, bool useMain) return MainToWorker(action); } - return new ValueTask(action()); + return Task.FromResult(action()); } - public async ValueTask RunOnThreadAsync(Func action, bool useMain) + public async Task RunOnThreadAsync(Func action, bool useMain) { if (useMain) { @@ -94,7 +95,7 @@ public async ValueTask RunOnThreadAsync(Func action, bool useMain) } } - public ValueTask RunOnThreadAsync(Func> action, bool useMain) + public Task RunOnThreadAsync(Func> action, bool useMain) { if (useMain) { @@ -112,10 +113,10 @@ public ValueTask RunOnThreadAsync(Func> action, bool useMain) return action(); } - protected abstract ValueTask WorkerToMainAsync(Func> action); + protected abstract Task WorkerToMainAsync(Func> action); - protected abstract ValueTask MainToWorkerAsync(Func> action); - protected abstract ValueTask WorkerToMain(Func action); + protected abstract Task MainToWorkerAsync(Func> action); + protected abstract Task WorkerToMain(Func action); - protected abstract ValueTask MainToWorker(Func action); + protected abstract Task MainToWorker(Func action); } diff --git a/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs b/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs index f2c915d47..b6dbf2c59 100644 --- a/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs +++ b/Sdk/Speckle.Connectors.Common/Threading/ThreadContextExtensions.cs @@ -2,27 +2,27 @@ public static class ThreadContextExtensions { - public static ValueTask RunOnMain(this IThreadContext threadContext, Action action) => + public static Task RunOnMain(this IThreadContext threadContext, Action action) => threadContext.RunOnThread(action, true); - public static ValueTask RunOnWorker(this IThreadContext threadContext, Action action) => + public static Task RunOnWorker(this IThreadContext threadContext, Action action) => threadContext.RunOnThread(action, false); - public static ValueTask RunOnMain(this IThreadContext threadContext, Func action) => + public static Task RunOnMain(this IThreadContext threadContext, Func action) => threadContext.RunOnThread(action, true); - public static ValueTask RunOnWorker(this IThreadContext threadContext, Func action) => + public static Task RunOnWorker(this IThreadContext threadContext, Func action) => threadContext.RunOnThread(action, false); - public static ValueTask RunOnMainAsync(this IThreadContext threadContext, Func action) => + public static Task RunOnMainAsync(this IThreadContext threadContext, Func action) => threadContext.RunOnThreadAsync(action, true); - public static ValueTask RunOnWorkerAsync(this IThreadContext threadContext, Func action) => + public static Task RunOnWorkerAsync(this IThreadContext threadContext, Func action) => threadContext.RunOnThreadAsync(action, false); - public static ValueTask RunOnMainAsync(this IThreadContext threadContext, Func> action) => + public static Task RunOnMainAsync(this IThreadContext threadContext, Func> action) => threadContext.RunOnThreadAsync(action, true); - public static ValueTask RunOnWorkerAsync(this IThreadContext threadContext, Func> action) => + public static Task RunOnWorkerAsync(this IThreadContext threadContext, Func> action) => threadContext.RunOnThreadAsync(action, false); }