From fa1fa359fcd7da7bfa04f062b16b8f477087c907 Mon Sep 17 00:00:00 2001 From: Alan Rynne Date: Wed, 16 Oct 2024 12:01:21 +0200 Subject: [PATCH 01/13] Refactor usage of exceptions in converters/connectors (#286) * feat: Non-controversial rebased changes from alan/exception-handling * fix: Fixed all other usages after rebase * fix: Re-added exception throw on 0 objects converted * fix: Missing using statement * fix: Converter manager * fix: Using statements * fix: Exception usages coming in from merge --- .../Send/ArcGISRootObjectBuilder.cs | 2 +- .../HostApp/AutocadLayerUnpacker.cs | 5 +- .../Send/AutocadRootObjectBaseBuilder.cs | 2 +- .../ElementIdHelper.cs | 4 +- .../Receive/RevitHostObjectBuilder.cs | 5 +- .../Operations/Send/RevitRootObjectBuilder.cs | 2 +- .../Extensions/RhinoUnitsExtension.cs | 4 +- .../Receive/RhinoHostObjectBuilder.cs | 2 +- .../Operations/Send/RhinoRootObjectBuilder.cs | 2 +- .../ArcGISToSpeckleUnitConverter.cs | 5 +- .../ToHost/Raw/CurveToHostConverter.cs | 5 +- .../ToHost/Raw/GeometryToHostConverter.cs | 37 +++------ .../ToHost/Raw/MeshListToHostConverter.cs | 3 +- .../Raw/MultipatchListToHostConverter.cs | 4 +- .../ToHost/Raw/PointListToHostConverter.cs | 4 +- .../Raw/Polygon3dListToHostConverter.cs | 4 +- .../ToHost/Raw/PolygonListToHostConverter.cs | 4 +- .../ToHost/Raw/PolylineListToHostConverter.cs | 4 +- .../TopLevel/FallbackToHostConverter.cs | 5 +- .../GisMultipatchFeatureToHostConverter.cs | 6 +- .../TopLevel/PolycurveToHostConverter.cs | 3 +- .../Raw/GisFeatureToSpeckleConverter.cs | 3 +- .../MultipatchFeatureToSpeckleConverter.cs | 3 +- .../ToSpeckle/Raw/PointToSpeckleConverter.cs | 8 +- .../Raw/PolygonFeatureToSpeckleConverter.cs | 5 +- .../Utils/FeatureClassUtils.cs | 6 +- .../AutocadRootToHostConverter.cs | 28 ++----- .../AutocadToSpeckleUnitConverter.cs | 5 +- .../AutocadPolycurveToHostConverter.cs | 3 +- .../SpeckleFallbackToHostConversion.cs | 3 +- .../Raw/DBSolid3dToSpeckleRawConverter.cs | 3 +- .../Civil3dRootToSpeckleConverter.cs | 11 +-- .../Civil3dToSpeckleUnitConverter.cs | 5 +- .../ModelCurveArrayToSpeckleConverterTests.cs | 3 +- .../Extensions/CategoryExtensions.cs | 3 +- .../Helpers/ParameterValueExtractor.cs | 13 +-- .../Helpers/ParameterValueSetter.cs | 21 +++-- .../Helpers/RevitCategories.cs | 3 +- .../RevitRootToHostConverter.cs | 3 +- .../RevitRootToSpeckleConverter.cs | 12 +-- .../Services/RevitToSpeckleUnitConverter.cs | 5 +- .../Services/ScalingServiceToHost.cs | 12 ++- .../Raw/BaseToHostGeometryObjectConverter.cs | 8 +- .../Raw/Geometry/ICurveConverterToHost.cs | 4 +- .../Raw/Geometry/MeshConverterToHost.cs | 4 +- .../ToSpeckle/Raw/BeamConversionToSpeckle.cs | 3 +- .../Raw/ColumnConversionToSpeckle.cs | 3 +- .../Raw/Geometry/CurveConversionToSpeckle.cs | 5 +- .../Raw/LocationConversionToSpeckle.cs | 4 +- .../Raw/ModelCurveArrayToSpeckleConverter.cs | 3 +- .../BaseTopLevelConverterToSpeckle.cs | 6 +- .../HostedElementConversionToSpeckle.cs | 6 +- .../WallTopLevelConverterToSpeckle.cs | 3 +- .../RhinoToSpeckleUnitConverter.cs | 3 +- ...ckleToHostGeometryBaseTopLevelConverter.cs | 3 +- .../ToHost/Helpers/RawEncodingToHost.cs | 4 +- .../ToHost/Raw/BrepToHostConverter.cs | 3 +- .../ToHost/Raw/CurveToHostConverter.cs | 3 +- .../Raw/FlatPointListToHostConverter.cs | 3 +- .../ToHost/Raw/NurbsCurveToHostConverter.cs | 6 +- .../FallbackToHostTopLevelConverter.cs | 3 +- .../ToSpeckle/Encoding/RawEncodingCreator.cs | 4 +- .../ToSpeckle/Meshing/DisplayMeshExtractor.cs | 6 +- .../ToSpeckle/Raw/MeshToSpeckleConverter.cs | 5 +- .../ToSpeckle/Raw/NurbsCurveConverter.cs | 5 +- .../Internal/MetricsBuilder.cs | 1 - .../ConverterManagerTests.cs | 7 +- .../LocalToGlobalConverterUtils.cs | 5 +- .../Registration/ConverterManager.cs | 24 +++--- .../Registration/ConverterWithFallback.cs | 81 ------------------- .../Registration/ConverterWithoutFallback.cs | 53 ------------ .../Registration/IConverterManager.cs | 7 ++ .../Registration/ServiceRegistration.cs | 1 + .../RootConvertManager.cs | 42 ---------- .../RootToSpeckleConverter.cs | 19 +---- .../SpeckleConversionException.cs | 12 --- .../ToHost/ConverterWithFallback.cs | 26 +++--- .../ToHost/ConverterWithoutFallback.cs | 23 +----- Speckle.Connectors.sln | 4 +- 79 files changed, 232 insertions(+), 440 deletions(-) delete mode 100644 Sdk/Speckle.Converters.Common/Registration/ConverterWithFallback.cs delete mode 100644 Sdk/Speckle.Converters.Common/Registration/ConverterWithoutFallback.cs create mode 100644 Sdk/Speckle.Converters.Common/Registration/IConverterManager.cs delete mode 100644 Sdk/Speckle.Converters.Common/RootConvertManager.cs delete mode 100644 Sdk/Speckle.Converters.Common/SpeckleConversionException.cs diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs index 148d5ef99..08f3e2d0e 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/Operations/Send/ArcGISRootObjectBuilder.cs @@ -189,7 +189,7 @@ mapMember is not ILayerContainer if (results.All(x => x.Status == Status.ERROR)) { - throw new SpeckleConversionException("Failed to convert all objects."); // fail fast instead creating empty commit! It will appear as model card error with red color. + throw new SpeckleException("Failed to convert all objects."); // fail fast instead creating empty commit! It will appear as model card error with red color. } // POC: Add Color Proxies diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerUnpacker.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerUnpacker.cs index cad1c727e..d73218cdf 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerUnpacker.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/HostApp/AutocadLayerUnpacker.cs @@ -1,6 +1,6 @@ using Autodesk.AutoCAD.DatabaseServices; using Speckle.Connectors.Autocad.HostApp.Extensions; -using Speckle.Converters.Common; +using Speckle.Sdk; using Speckle.Sdk.Models.Collections; namespace Speckle.Connectors.Autocad.HostApp; @@ -24,6 +24,7 @@ public Layer GetOrCreateSpeckleLayer(Entity entity, Transaction tr, out LayerTab layer = autocadLayer; return speckleLayer; } - throw new SpeckleConversionException("Unexpected condition in GetOrCreateSpeckleLayer"); + + throw new SpeckleException("Unexpected condition in GetOrCreateSpeckleLayer"); } } diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs index 3db8fe68f..9c8c77e15 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Operations/Send/AutocadRootObjectBaseBuilder.cs @@ -128,7 +128,7 @@ private RootObjectBuilderResult BuildSync( if (results.All(x => x.Status == Status.ERROR)) { - throw new SpeckleConversionException("Failed to convert all objects."); // fail fast instead creating empty commit! It will appear as model card error with red color. + 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 - Unpack the render material proxies diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs index a75dc688c..e49b6885e 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs @@ -1,5 +1,5 @@ using Autodesk.Revit.DB; -using Speckle.Converters.Common; +using Speckle.Sdk; namespace Speckle.Connectors.RevitShared; @@ -10,7 +10,7 @@ public static ElementId GetElementIdFromUniqueId(Document doc, string uniqueId) Element element = doc.GetElement(uniqueId); if (element == null) { - throw new SpeckleConversionException($"Cannot find element with UniqueId: {uniqueId}"); + throw new SpeckleException($"Cannot find element with UniqueId: {uniqueId}"); } return element.Id; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs index d49a5ff20..d7a8afd75 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Receive/RevitHostObjectBuilder.cs @@ -16,6 +16,7 @@ using Speckle.Objects; using Speckle.Objects.Geometry; using Speckle.Sdk; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Logging; using Speckle.Sdk.Models; using Transform = Speckle.Objects.Other.Transform; @@ -221,9 +222,7 @@ localToGlobalMap.AtomicObject is ITransformable transformable and ICurve } else { - throw new SpeckleConversionException( - $"Failed to cast {result.GetType()} to direct shape definition wrapper." - ); + throw new ConversionException($"Failed to cast {result.GetType()} to direct shape definition wrapper."); } } catch (Exception ex) when (!ex.IsFatal()) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs index 0cb8b15aa..b519628d5 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Operations/Send/RevitRootObjectBuilder.cs @@ -130,7 +130,7 @@ public async Task Build( if (results.All(x => x.Status == Status.ERROR)) { - throw new SpeckleConversionException("Failed to convert all objects."); + throw new SpeckleException("Failed to convert all objects."); } var idsAndSubElementIds = _elementUnpacker.GetElementsAndSubelementIdsFromAtomicObjects(atomicObjects); diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Extensions/RhinoUnitsExtension.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Extensions/RhinoUnitsExtension.cs index 8b5e49e2d..cfffa2b23 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Extensions/RhinoUnitsExtension.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Extensions/RhinoUnitsExtension.cs @@ -1,6 +1,6 @@ using Rhino; -using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Connectors.Rhino.Extensions; @@ -31,7 +31,7 @@ public static string ToSpeckleString(this UnitSystem unitSystem) case UnitSystem.Unset: return Units.Meters; default: - throw new SpeckleException($"The Unit System \"{unitSystem}\" is unsupported."); + throw new UnitNotSupportedException($"The Unit System \"{unitSystem}\" is unsupported."); } } } diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs index d0d43edbb..e1bf9336b 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Receive/RhinoHostObjectBuilder.cs @@ -162,7 +162,7 @@ CancellationToken cancellationToken if (conversionIds.Count == 0) { - throw new SpeckleConversionException($"Failed to convert object."); + throw new SpeckleException($"Failed to convert object."); } // 4: log diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs index ae9e34f36..5f337e491 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Operations/Send/RhinoRootObjectBuilder.cs @@ -116,7 +116,7 @@ public async Task Build( if (results.All(x => x.Status == Status.ERROR)) { - throw new SpeckleConversionException("Failed to convert all objects."); // fail fast instead creating empty commit! It will appear as model card error with red color. + throw new SpeckleException("Failed to convert all objects."); // fail fast instead creating empty commit! It will appear as model card error with red color. } using (var _ = _activityFactory.Start("UnpackRenderMaterials")) diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISToSpeckleUnitConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISToSpeckleUnitConverter.cs index 1ef5a960b..7c8586365 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISToSpeckleUnitConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ArcGISToSpeckleUnitConverter.cs @@ -1,7 +1,7 @@ using ArcGIS.Core.Geometry; using Speckle.Converters.Common; -using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3; @@ -41,7 +41,6 @@ public string ConvertOrThrow(Unit hostUnit) return value; } - // POC: probably would prefer something more specific - throw new SpeckleException($"The Unit System \"{hostUnit}\" is unsupported."); + throw new UnitNotSupportedException($"The Unit System \"{hostUnit}\" is unsupported."); } } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/CurveToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/CurveToHostConverter.cs index 251dd718c..d0cd51ae2 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/CurveToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/CurveToHostConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -34,7 +35,7 @@ public CurveToHostConverter( /// /// The ICurve object to convert. /// The converted RG.Curve object. - /// Thrown when the conversion is not supported for the given type of curve. + /// Thrown when the conversion is not supported for the given type of curve. /// ⚠️ This conversion does NOT perform scaling. public ACG.Polyline Convert(ICurve target) => target switch @@ -47,6 +48,6 @@ public ACG.Polyline Convert(ICurve target) => SOG.Polyline polyline => _polylineConverter.Convert(polyline), SOG.Curve curve => _polylineConverter.Convert(curve.displayValue), SOG.Polycurve polyCurve => _polyCurveConverter.Convert(polyCurve), - _ => throw new NotSupportedException($"Unable to convert curves of type {target.GetType().Name}") + _ => throw new ValidationException($"Converter does not support curves of type '{target.GetType().Name}'") }; } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/GeometryToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/GeometryToHostConverter.cs index 5da5825ff..ce80dd378 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/GeometryToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/GeometryToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -29,32 +29,19 @@ public GeometryToHostConverter( public ACG.Geometry Convert(IReadOnlyList target) { - try + if (target.Count == 0) { - if (target.Count > 0) - { - switch (target[0]) - { - case SOG.Point point: - return _multipointConverter.Convert(target.Cast().ToList()); - case SOG.Polyline polyline: - return _polylineConverter.Convert(target.Cast().ToList()); - case SGIS.PolygonGeometry3d geometry3d: - return _polygon3dConverter.Convert(target.Cast().ToList()); - case SGIS.PolygonGeometry geometry: - return _polygonConverter.Convert(target.Cast().ToList()); - case SGIS.GisMultipatchGeometry mesh: - return _multipatchConverter.Convert(target.Cast().ToList()); - default: - throw new NotSupportedException($"No conversion found for type {target[0]}"); - } - } - throw new NotSupportedException($"Feature contains no geometry"); + throw new ValidationException("Feature contains no geometry"); } - catch (SpeckleConversionException e) + + return target[0] switch { - Console.WriteLine(e); - throw; // log errors - } + SOG.Point => _multipointConverter.Convert(target.Cast().ToList()), + SOG.Polyline => _polylineConverter.Convert(target.Cast().ToList()), + SGIS.PolygonGeometry3d => _polygon3dConverter.Convert(target.Cast().ToList()), + SGIS.PolygonGeometry => _polygonConverter.Convert(target.Cast().ToList()), + SGIS.GisMultipatchGeometry => _multipatchConverter.Convert(target.Cast().ToList()), + _ => throw new ValidationException($"No conversion found for type {target[0]}") + }; } } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MeshListToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MeshListToHostConverter.cs index f49c986d8..c355b681a 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MeshListToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MeshListToHostConverter.cs @@ -1,6 +1,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects.Utils; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -22,7 +23,7 @@ public ACG.Multipatch Convert(List target) { if (target.Count == 0) { - throw new SpeckleConversionException("Feature contains no geometries"); + throw new ValidationException("Feature contains no geometries"); } ACG.MultipatchBuilderEx multipatchPart = new(_settingsStore.Current.ActiveCRSoffsetRotation.SpatialReference); diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MultipatchListToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MultipatchListToHostConverter.cs index 14cf4c965..0060a2a20 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MultipatchListToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/MultipatchListToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -16,7 +16,7 @@ public ACG.Multipatch Convert(List target) { if (target.Count == 0) { - throw new SpeckleConversionException("Feature contains no geometries"); + throw new ValidationException("Feature contains no geometries"); } ACG.MultipatchBuilderEx multipatchPart = new(); foreach (SGIS.GisMultipatchGeometry part in target) diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PointListToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PointListToHostConverter.cs index e1204f36c..aaf1af1e0 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PointListToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PointListToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -16,7 +16,7 @@ public ACG.Multipoint Convert(List target) { if (target.Count == 0) { - throw new SpeckleConversionException("Feature contains no geometries"); + throw new ValidationException("Feature contains no geometries"); } List pointList = new(); foreach (SOG.Point pt in target) diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/Polygon3dListToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/Polygon3dListToHostConverter.cs index 5d68c5be9..4f532d197 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/Polygon3dListToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/Polygon3dListToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -21,7 +21,7 @@ public ACG.Multipatch Convert(List target) { if (target.Count == 0) { - throw new SpeckleConversionException("Feature contains no geometries"); + throw new ValidationException("Feature contains no geometries"); } ACG.MultipatchBuilderEx multipatchPart = new(); diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolygonListToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolygonListToHostConverter.cs index 6acc30b82..f59d8d58f 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolygonListToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolygonListToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -16,7 +16,7 @@ public ACG.Polygon Convert(List target) { if (target.Count == 0) { - throw new SpeckleConversionException("Feature contains no geometries"); + throw new ValidationException("Feature contains no geometries"); } List polyList = new(); foreach (SGIS.PolygonGeometry poly in target) diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolylineListToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolylineListToHostConverter.cs index d512a23d9..356cc2785 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolylineListToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/Raw/PolylineListToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToHost.Raw; @@ -16,7 +16,7 @@ public ACG.Polyline Convert(List target) { if (target.Count == 0) { - throw new SpeckleConversionException("Feature contains no geometries"); + throw new ValidationException("Feature contains no geometries"); } List polyList = new(); foreach (SOG.Polyline poly in target) diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/FallbackToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/FallbackToHostConverter.cs index 61bf40761..e0e30a077 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/FallbackToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/FallbackToHostConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.ArcGIS3.ToHost.TopLevel; @@ -28,7 +29,7 @@ public ACG.Geometry Convert(DisplayableObject target) { if (!target.displayValue.Any()) { - throw new NotSupportedException($"Zero fallback values specified"); + throw new ValidationException($"Zero fallback values specified"); } var first = target.displayValue[0]; @@ -38,7 +39,7 @@ public ACG.Geometry Convert(DisplayableObject target) SOG.Polyline => _polylineListConverter.Convert(target.displayValue.Cast().ToList()), SOG.Mesh => _meshListConverter.Convert(target.displayValue.Cast().ToList()), SOG.Point => _pointListConverter.Convert(target.displayValue.Cast().ToList()), - _ => throw new NotSupportedException($"Found unsupported fallback geometry: {first.GetType()}") + _ => throw new ValidationException($"Found unsupported fallback geometry: {first.GetType()}") }; } } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/GisMultipatchFeatureToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/GisMultipatchFeatureToHostConverter.cs index 59068bfb6..aeb9f2d7f 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/GisMultipatchFeatureToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/GisMultipatchFeatureToHostConverter.cs @@ -1,6 +1,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.ArcGIS3.ToHost.TopLevel; @@ -8,8 +9,6 @@ namespace Speckle.Converters.ArcGIS3.ToHost.TopLevel; /// /// Converter for with geometry. /// -/// Thrown when IGisFeature is because it has no geometry, or when Multipatch geometry contained invalid types. -/// Thrown for unsupported classes. [NameAndRankValue(nameof(SGIS.GisMultipatchFeature), NameAndRankValueAttribute.SPECKLE_DEFAULT_RANK)] public class GisMultipatchFeatureToHostConverter : IToHostTopLevelConverter, @@ -48,8 +47,9 @@ public ACG.Geometry Convert(SGIS.GisMultipatchFeature target) if (multipatch is null) { - throw new SpeckleConversionException("Multipatch conversion did not return valid geometry"); + throw new ConversionException("Multipatch conversion did not return valid geometry"); } + return multipatch; } } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/PolycurveToHostConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/PolycurveToHostConverter.cs index 39bb8ab7e..fbda9459b 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/PolycurveToHostConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToHost/TopLevel/PolycurveToHostConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.ArcGIS3.ToHost.TopLevel; @@ -41,7 +42,7 @@ public ACG.Polyline Convert(SOG.Polycurve target) ) ) { - throw new SpeckleConversionException("Polycurve segments are not in a correct sequence/orientation"); + throw new ValidationException("Polycurve segments are not in a correct sequence/orientation"); } lastConvertedPt = segmentPts[^1]; diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/GisFeatureToSpeckleConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/GisFeatureToSpeckleConverter.cs index 21087a9bb..ef81ab125 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/GisFeatureToSpeckleConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/GisFeatureToSpeckleConverter.cs @@ -3,6 +3,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.ArcGIS3.ToSpeckle.Raw; @@ -190,7 +191,7 @@ public IGisFeature Convert((Row, string) target) }; default: - throw new NotSupportedException($"No geometry conversion found for {shape.GetType().Name}"); + throw new ValidationException($"No geometry conversion found for {shape.GetType().Name}"); } } } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/MultipatchFeatureToSpeckleConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/MultipatchFeatureToSpeckleConverter.cs index 4214d68d9..46ba7c663 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/MultipatchFeatureToSpeckleConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/MultipatchFeatureToSpeckleConverter.cs @@ -2,6 +2,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Sdk.Models; +using ValidationException = System.ComponentModel.DataAnnotations.ValidationException; namespace Speckle.Converters.ArcGIS3.ToSpeckle.Raw; @@ -121,7 +122,7 @@ public IReadOnlyList Convert(ACG.Multipatch target) } else { - throw new NotSupportedException($"Patch type {patchType} is not supported"); + throw new ValidationException($"Patch type {patchType} is not supported"); } } return converted; diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PointToSpeckleConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PointToSpeckleConverter.cs index 4e04bdd27..657077906 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PointToSpeckleConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PointToSpeckleConverter.cs @@ -1,6 +1,8 @@ +using System.ComponentModel.DataAnnotations; using ArcGIS.Core.Geometry; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk; namespace Speckle.Converters.ArcGIS3.ToSpeckle.Raw; @@ -23,7 +25,7 @@ public SOG.Point Convert(MapPoint target) is not MapPoint reprojectedPt ) { - throw new SpeckleConversionException( + throw new ValidationException( $"Conversion to Spatial Reference {_settingsStore.Current.ActiveCRSoffsetRotation.SpatialReference.Name} failed" ); } @@ -35,7 +37,7 @@ is not MapPoint reprojectedPt || Double.IsInfinity(reprojectedPt.Y) ) { - throw new SpeckleConversionException( + throw new ValidationException( $"Conversion to Spatial Reference {_settingsStore.Current.ActiveCRSoffsetRotation.SpatialReference.Name} failed: coordinates undefined" ); } @@ -51,7 +53,7 @@ is not MapPoint reprojectedPt } catch (ArgumentException ex) { - throw new SpeckleConversionException( + throw new SpeckleException( $"Conversion to Spatial Reference {_settingsStore.Current.ActiveCRSoffsetRotation.SpatialReference.Name} failed", ex ); diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PolygonFeatureToSpeckleConverter.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PolygonFeatureToSpeckleConverter.cs index 8d242f41f..ddfaff318 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PolygonFeatureToSpeckleConverter.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/ToSpeckle/Raw/PolygonFeatureToSpeckleConverter.cs @@ -1,6 +1,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects.GIS; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.ArcGIS3.ToSpeckle.Raw; @@ -26,7 +27,7 @@ public IReadOnlyList Convert(ACG.Polygon target) if (partCount == 0) { - throw new SpeckleConversionException("ArcGIS Polygon contains no parts"); + throw new ValidationException("ArcGIS Polygon contains no parts"); } PolygonGeometry? polygon = null; @@ -52,7 +53,7 @@ public IReadOnlyList Convert(ACG.Polygon target) { if (polygon == null) { - throw new SpeckleConversionException("Invalid ArcGIS Polygon. Interior part preceeding the exterior ring."); + throw new ValidationException("Invalid ArcGIS Polygon. Interior part preceeding the exterior ring."); } polygon.voids.Add(polyline); } diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs index e3aecf85c..0cd9690f1 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/Utils/FeatureClassUtils.cs @@ -5,6 +5,7 @@ using Speckle.Converters.Common; using Speckle.InterfaceGenerator; using Speckle.Sdk; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; using Speckle.Sdk.Models.GraphTraversal; using FieldDescription = ArcGIS.Core.Data.DDL.FieldDescription; @@ -289,7 +290,8 @@ private ACG.GeometryType DefineDatasetGeomType( var hostAppGeom = listOfContextAndTrackers[0].Item2.HostAppGeom; if (hostAppGeom is null) // type check, should not happen { - throw new SpeckleConversionException("Conversion failed"); + // TODO: Unsure about the type this exception should be. + throw new SpeckleException("Conversion failed"); } geomType = hostAppGeom.GeometryType; } @@ -311,7 +313,7 @@ List listOfTrackers { if (trackerItem.HostAppGeom is not ACG.Geometry shape) { - throw new SpeckleConversionException("Feature Class element had no converted geometry"); + throw new ValidationException("Feature Class element had no converted geometry"); } // exception for Points: turn into MultiPoint layer diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadRootToHostConverter.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadRootToHostConverter.cs index 5f13ffa6d..a165142a1 100644 --- a/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadRootToHostConverter.cs +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadRootToHostConverter.cs @@ -2,6 +2,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Converters.Common.Registration; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Autocad; @@ -24,36 +25,23 @@ public Base Convert(object target) { if (target is not DBObject dbObject) { - throw new SpeckleConversionException( + throw new ValidationException( $"Conversion of {target.GetType().Name} to Speckle is not supported. Only objects that inherit from DBObject are." ); } Type type = dbObject.GetType(); - try + using (var l = _settingsStore.Current.Document.LockDocument()) { - using (var l = _settingsStore.Current.Document.LockDocument()) + using (var tr = _settingsStore.Current.Document.Database.TransactionManager.StartTransaction()) { - using (var tr = _settingsStore.Current.Document.Database.TransactionManager.StartTransaction()) - { - var objectConverter = _toSpeckle.ResolveConverter(type); + var objectConverter = _toSpeckle.ResolveConverter(type); - if (objectConverter == null) - { - throw new SpeckleConversionException($"No conversion found for {target.GetType().Name}"); - } - - var convertedObject = objectConverter.Convert(dbObject); - tr.Commit(); - return convertedObject; - } + var convertedObject = objectConverter.Convert(dbObject); + tr.Commit(); + return convertedObject; } } - catch (SpeckleConversionException e) - { - Console.WriteLine(e); - throw; // Just rethrowing for now, Logs may be needed here. - } } } diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadToSpeckleUnitConverter.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadToSpeckleUnitConverter.cs index b18f4e368..584799c2f 100644 --- a/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadToSpeckleUnitConverter.cs +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/AutocadToSpeckleUnitConverter.cs @@ -1,7 +1,7 @@ using Autodesk.AutoCAD.DatabaseServices; using Speckle.Converters.Common; -using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Autocad; @@ -32,7 +32,6 @@ public string ConvertOrThrow(UnitsValue hostUnit) return value; } - // POC: probably would prefer something more specific - throw new SpeckleException($"The Unit System \"{hostUnit}\" is unsupported."); + throw new UnitNotSupportedException($"The Unit System \"{hostUnit}\" is unsupported."); } } diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/AutocadPolycurveToHostConverter.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/AutocadPolycurveToHostConverter.cs index ced31b7b5..3f98ed847 100644 --- a/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/AutocadPolycurveToHostConverter.cs +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/AutocadPolycurveToHostConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Autocad2023.ToHost.Geometry; @@ -43,7 +44,7 @@ public object Convert(Base target) return _polyline3dConverter.Convert(polycurve); default: - throw new SpeckleConversionException("Unknown poly type for AutocadPolycurve"); + throw new ValidationException("Unknown poly type for AutocadPolycurve"); } } } diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/SpeckleFallbackToHostConversion.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/SpeckleFallbackToHostConversion.cs index 570ed0302..7008b8e37 100644 --- a/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/SpeckleFallbackToHostConversion.cs +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/ToHost/Geometry/SpeckleFallbackToHostConversion.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Rhino7.ToHost.TopLevel; @@ -44,7 +45,7 @@ public SpeckleFallbackToAutocadTopLevelConverter( SOG.Mesh mesh => _meshConverter.Convert(mesh), SOG.Arc arc => _arcConverter.Convert(arc), SOG.Point point => _pointConverter.Convert(point), - _ => throw new NotSupportedException($"Found unsupported fallback geometry: {item.GetType()}") + _ => throw new ConversionException($"Found unsupported fallback geometry: {item.GetType()}") }; result.Add(x); } diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBSolid3dToSpeckleRawConverter.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBSolid3dToSpeckleRawConverter.cs index 93dcc700d..80ca83be0 100644 --- a/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBSolid3dToSpeckleRawConverter.cs +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBSolid3dToSpeckleRawConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Autocad.ToSpeckle.Raw; @@ -28,7 +29,7 @@ public SOG.Mesh Convert(ADB.Solid3d target) using ABR.Brep brep = new(target); if (brep.IsNull) { - throw new SpeckleConversionException("Could not retrieve brep from the solid3d."); + throw new ValidationException("Could not retrieve brep from the solid3d."); } var vertices = new List(); diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs index 812c438bb..36a8ed040 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs @@ -1,8 +1,10 @@ +using System.ComponentModel.DataAnnotations; using Autodesk.AutoCAD.DatabaseServices; using Speckle.Converters.Civil3dShared.ToSpeckle; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Converters.Common.Registration; +using Speckle.Sdk; using Speckle.Sdk.Models; namespace Speckle.Converters.Civil3dShared; @@ -34,7 +36,7 @@ public Base Convert(object target) { if (target is not DBObject dbObject) { - throw new SpeckleConversionException( + throw new ValidationException( $"Conversion of {target.GetType().Name} to Speckle is not supported. Only objects that inherit from DBObject are." ); } @@ -55,11 +57,6 @@ public Base Convert(object target) var objectConverter = _toSpeckle.ResolveConverter(type, true); - if (objectConverter == null) - { - throw new SpeckleConversionException($"No conversion found for {target.GetType().Name}"); - } - try { using (var l = _settingsStore.Current.Document.LockDocument()) @@ -78,7 +75,7 @@ public Base Convert(object target) } } } - catch (SpeckleConversionException e) + catch (SpeckleException e) { Console.WriteLine(e); throw; // Just rethrowing for now, Logs may be needed here. diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs index bbcc6698d..825bc0162 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs @@ -1,6 +1,6 @@ using Speckle.Converters.Common; -using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Civil3dShared; @@ -33,7 +33,6 @@ public string ConvertOrThrow(AAEC.BuiltInUnit hostUnit) return value; } - // POC: probably would prefer something more specific - throw new SpeckleException($"The Unit System \"{hostUnit}\" is unsupported."); + throw new UnitNotSupportedException($"The Unit System \"{hostUnit}\" is unsupported."); } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared.Tests/ModelCurveArrayToSpeckleConverterTests.cs b/Converters/Revit/Speckle.Converters.RevitShared.Tests/ModelCurveArrayToSpeckleConverterTests.cs index 239def92f..b2f940e0e 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared.Tests/ModelCurveArrayToSpeckleConverterTests.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared.Tests/ModelCurveArrayToSpeckleConverterTests.cs @@ -6,6 +6,7 @@ using Speckle.Converters.RevitShared.Services; using Speckle.Converters.RevitShared.Settings; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Testing; namespace Speckle.Converters.Revit2023.Tests; @@ -26,7 +27,7 @@ public void Convert_Empty() ); var array = Create(); array.Setup(x => x.GetEnumerator()).Returns(Enumerable.Empty().GetEnumerator()); - Assert.Throws(() => sut.Convert(array.Object)); + Assert.Throws(() => sut.Convert(array.Object)); } [Test] diff --git a/Converters/Revit/Speckle.Converters.RevitShared/Extensions/CategoryExtensions.cs b/Converters/Revit/Speckle.Converters.RevitShared/Extensions/CategoryExtensions.cs index 9083375a2..3ade4816e 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/Extensions/CategoryExtensions.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/Extensions/CategoryExtensions.cs @@ -1,4 +1,5 @@ using Autodesk.Revit.DB; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.Extensions; @@ -17,7 +18,7 @@ public static SOBR.RevitCategory GetSchemaBuilderCategoryFromBuiltIn(this DB.Bui var res = Enum.TryParse(cleanName, out SOBR.RevitCategory cat); if (!res) { - throw new NotSupportedException($"Built-in category {builtInCategory} is not supported."); + throw new ConversionException($"Built-in category {builtInCategory} is not supported."); } return cat; diff --git a/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueExtractor.cs b/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueExtractor.cs index 6668482f9..1194e232e 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueExtractor.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueExtractor.cs @@ -1,9 +1,10 @@ using System.Diagnostics.CodeAnalysis; using Autodesk.Revit.DB; -using Speckle.Converters.Common; using Speckle.Converters.RevitShared.Extensions; using Speckle.Converters.RevitShared.Services; +using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.Helpers; @@ -36,7 +37,7 @@ public ParameterValueExtractor(ScalingServiceToSpeckle scalingService) StorageType.ElementId => GetValueAsElementNameOrId(parameter), StorageType.None or _ - => throw new SpeckleConversionException($"Unsupported parameter storage type {parameter.StorageType}") + => throw new ValidationException($"Unsupported parameter storage type {parameter.StorageType}") }; } @@ -44,7 +45,7 @@ public double GetValueAsDouble(Element element, BuiltInParameter builtInParamete { if (!TryGetValueAsDouble(element, builtInParameter, out double? value)) { - throw new SpeckleConversionException($"Failed to get {builtInParameter} as double."); + throw new ValidationException($"Failed to get {builtInParameter} as double."); } return value!.Value; // If TryGet returns true, we succeeded in obtaining the value, and it will not be null. @@ -80,7 +81,7 @@ public bool TryGetValueAsDouble(Element element, BuiltInParameter builtInParamet public int GetValueAsInt(Element element, BuiltInParameter builtInParameter) { return GetValueGeneric(element, builtInParameter, StorageType.Integer, (parameter) => parameter.AsInteger()) - ?? throw new SpeckleConversionException( + ?? throw new SpeckleException( $"Expected int but got null for property {builtInParameter} on element of type {element.GetType()}" ); } @@ -173,7 +174,7 @@ public T GetValueAsDocumentObject(Element element, BuiltInParameter builtInPa { if (!TryGetValueAsDocumentObject(element, builtInParameter, out var value)) { - throw new SpeckleConversionException($"Failed to get {builtInParameter} as an element of type {typeof(T)}"); + throw new SpeckleException($"Failed to get {builtInParameter} as an element of type {typeof(T)}"); } return value; @@ -209,7 +210,7 @@ public T GetValueAsDocumentObject(Element element, BuiltInParameter builtInPa if (parameter.StorageType != expectedStorageType) { - throw new SpeckleConversionException( + throw new SpeckleException( $"Expected parameter of storage type {expectedStorageType} but got parameter of storage type {parameter.StorageType}" ); } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueSetter.cs b/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueSetter.cs index d31e382ef..0e6c2399c 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueSetter.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/Helpers/ParameterValueSetter.cs @@ -1,7 +1,8 @@ using System.Text.RegularExpressions; -using Speckle.Converters.Common; using Speckle.Converters.RevitShared.Services; +using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared.Helpers; @@ -90,7 +91,7 @@ private void TrySetParam(DB.Parameter rp, object value, string units = "", strin { // POC: setting parameters via the above method can throw several different exceptions. We don't want any of these failed parameters to stop conversion of the object because these parameters are typically unimportant. All important parameters have been moved to specific properties in the object model. We should log these to learn more about what specific failures are occuring } - catch (SpeckleConversionException) + catch (SpeckleException) { // same as above } @@ -108,14 +109,18 @@ private void SetParam(DB.Parameter rp, object value, string units = "", string a { unitTypeId = new(applicationUnit); } - else if (scalingService.UnitsToNative(units) is DB.ForgeTypeId typeId) - { - unitTypeId = typeId; - } else { - unitTypeId = rp.GetUnitTypeId(); + try + { + unitTypeId = scalingService.UnitsToNative(units); + } + catch (UnitNotSupportedException) + { + unitTypeId = rp.GetUnitTypeId(); + } } + rp.Set(scalingService.ScaleToNative(Convert.ToDouble(value), unitTypeId)); break; @@ -137,7 +142,7 @@ private void SetParam(DB.Parameter rp, object value, string units = "", string a case DB.StorageType.String: string stringValue = Convert.ToString(value) - ?? throw new SpeckleConversionException( + ?? throw new ValidationException( $"Expected parameter value storage type to be string, but instead it was {value.GetType()}" ); var temp = Regex.Replace(stringValue, "[^0-9a-zA-Z ]+", ""); diff --git a/Converters/Revit/Speckle.Converters.RevitShared/Helpers/RevitCategories.cs b/Converters/Revit/Speckle.Converters.RevitShared/Helpers/RevitCategories.cs index dac818bfc..d207b4869 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/Helpers/RevitCategories.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/Helpers/RevitCategories.cs @@ -1,4 +1,5 @@ using Speckle.Objects.BuiltElements.Revit; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.Helpers; @@ -25,7 +26,7 @@ public RevitCategory GetSchemaBuilderCategoryFromBuiltIn(string builtInCategory) var res = Enum.TryParse(cleanName, out RevitCategory cat); if (!res) { - throw new NotSupportedException($"Built-in category {builtInCategory} is not supported."); + throw new ConversionException($"Built-in category {builtInCategory} is not supported."); } return cat; diff --git a/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToHostConverter.cs b/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToHostConverter.cs index ec53dd0fb..b12cfdd70 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToHostConverter.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToHostConverter.cs @@ -2,6 +2,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Converters.RevitShared.Settings; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared; @@ -28,7 +29,7 @@ public object Convert(Base target) if (geometryObjects.Count == 0) { - throw new SpeckleConversionException($"No supported conversion for {target.speckle_type} found."); + throw new ConversionException($"No supported conversion for {target.speckle_type} found."); } var definitionId = target.applicationId ?? target.id; diff --git a/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToSpeckleConverter.cs b/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToSpeckleConverter.cs index 86378ccc9..a29910a2d 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToSpeckleConverter.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/RevitRootToSpeckleConverter.cs @@ -6,6 +6,7 @@ using Speckle.Converters.RevitShared.Settings; using Speckle.Converters.RevitShared.ToSpeckle; using Speckle.Sdk; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared; @@ -39,19 +40,12 @@ public Base Convert(object target) { if (target is not DB.Element element) { - throw new SpeckleConversionException($"Target object is not a db element, it's a {target.GetType()}"); + throw new ValidationException($"Target object is not a db element, it's a {target.GetType()}"); } var objectConverter = _toSpeckle.ResolveConverter(target.GetType(), true); - if (objectConverter == null) - { - throw new SpeckleConversionException($"No conversion found for {target.GetType().Name}"); - } - - Base result = - objectConverter.Convert(target) - ?? throw new SpeckleConversionException($"Conversion of object with type {target.GetType()} returned null"); + Base result = objectConverter.Convert(target); result.applicationId = element.UniqueId; diff --git a/Converters/Revit/Speckle.Converters.RevitShared/Services/RevitToSpeckleUnitConverter.cs b/Converters/Revit/Speckle.Converters.RevitShared/Services/RevitToSpeckleUnitConverter.cs index 7f8caa8a6..532e95749 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/Services/RevitToSpeckleUnitConverter.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/Services/RevitToSpeckleUnitConverter.cs @@ -1,6 +1,6 @@ using Speckle.Converters.Common; -using Speckle.Sdk; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.Services; @@ -28,7 +28,6 @@ public string ConvertOrThrow(DB.ForgeTypeId hostUnit) return value; } - // POC: probably would prefer something more specific - throw new SpeckleException($"The Unit System \"{hostUnit}\" is unsupported."); + throw new UnitNotSupportedException($"The Unit System \"{hostUnit}\" is unsupported."); } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/Services/ScalingServiceToHost.cs b/Converters/Revit/Speckle.Converters.RevitShared/Services/ScalingServiceToHost.cs index 5be40e9b3..32b59e9d6 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/Services/ScalingServiceToHost.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/Services/ScalingServiceToHost.cs @@ -1,5 +1,5 @@ using Autodesk.Revit.DB; -using Speckle.Converters.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.Services; @@ -12,10 +12,7 @@ public double ScaleToNative(double value, string units) return value; } - return ScaleToNative( - value, - UnitsToNative(units) ?? throw new SpeckleConversionException($"The Unit System \"{units}\" is unsupported.") - ); + return ScaleToNative(value, UnitsToNative(units)); } public double ScaleToNative(double value, ForgeTypeId typeId) @@ -23,7 +20,8 @@ public double ScaleToNative(double value, ForgeTypeId typeId) return UnitUtils.ConvertToInternalUnits(value, typeId); } - public ForgeTypeId? UnitsToNative(string units) + /// Throws if unit is not supported + public ForgeTypeId UnitsToNative(string units) { var u = Sdk.Common.Units.GetUnitsFromString(units); @@ -34,7 +32,7 @@ public double ScaleToNative(double value, ForgeTypeId typeId) Sdk.Common.Units.Meters => UnitTypeId.Meters, Sdk.Common.Units.Inches => UnitTypeId.Inches, Sdk.Common.Units.Feet => UnitTypeId.Feet, - _ => null, + _ => throw new UnitNotSupportedException($"The Unit System \"{units}\" is unsupported."), }; } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/BaseToHostGeometryObjectConverter.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/BaseToHostGeometryObjectConverter.cs index 81eca9cdc..f16afcbdd 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/BaseToHostGeometryObjectConverter.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/BaseToHostGeometryObjectConverter.cs @@ -1,6 +1,7 @@ using System.Collections; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Extensions; @@ -52,7 +53,7 @@ public BaseToHostGeometryObjectConverter( var displayValue = target.TryGetDisplayValue(); if ((displayValue is IList && !displayValue.Any()) || displayValue is null) { - throw new NotSupportedException($"No display value found for {target.speckle_type}"); + throw new ValidationException($"No display value found for {target.speckle_type}"); } foreach (var display in displayValue) @@ -62,6 +63,11 @@ public BaseToHostGeometryObjectConverter( break; } + if (result.Count == 0) + { + throw new ConversionException($"No objects could be converted for {target.speckle_type}."); + } + return result; } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/ICurveConverterToHost.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/ICurveConverterToHost.cs index 419145159..59d2d86c0 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/ICurveConverterToHost.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/ICurveConverterToHost.cs @@ -1,6 +1,6 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -84,7 +84,7 @@ public DB.CurveArray Convert(ICurve target) } return curveArray; default: - throw new SpeckleConversionException($"The provided geometry of type {target.GetType()} is not a supported"); + throw new ValidationException($"The provided geometry of type {target.GetType()} is not a supported"); } } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/MeshConverterToHost.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/MeshConverterToHost.cs index cd6d9be81..8b1509f08 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/MeshConverterToHost.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToHost/Raw/Geometry/MeshConverterToHost.cs @@ -1,9 +1,9 @@ using Autodesk.Revit.DB; -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Converters.RevitShared.Helpers; using Speckle.Converters.RevitShared.Services; using Speckle.DoubleNumerics; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.ToHost.TopLevel; @@ -117,7 +117,7 @@ private XYZ[] ArrayToPoints(IList arr, string units) { if (arr.Count % 3 != 0) { - throw new SpeckleConversionException("Array malformed: length%3 != 0."); + throw new ValidationException("Array malformed: length%3 != 0."); } XYZ[] points = new XYZ[arr.Count / 3]; diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/BeamConversionToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/BeamConversionToSpeckle.cs index b6c4617c6..486b7481b 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/BeamConversionToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/BeamConversionToSpeckle.cs @@ -3,6 +3,7 @@ using Speckle.Converters.RevitShared.Helpers; using Speckle.Converters.RevitShared.Settings; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -39,7 +40,7 @@ public SOBR.RevitBeam Convert(DB.FamilyInstance target) var baseGeometry = _locationConverter.Convert(target.Location); if (baseGeometry is not ICurve baseCurve) { - throw new SpeckleConversionException( + throw new ValidationException( $"Beam location conversion did not yield an ICurve, instead it yielded an object of type {baseGeometry.GetType()}" ); } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ColumnConversionToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ColumnConversionToSpeckle.cs index fdd18f583..fa100e20f 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ColumnConversionToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ColumnConversionToSpeckle.cs @@ -6,6 +6,7 @@ using Speckle.Objects; using Speckle.Objects.BuiltElements.Revit; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -97,7 +98,7 @@ out var topOffset speckleColumn.baseLine = GetBaseCurve(target, speckleColumn.topLevel?.elevation ?? -1, speckleColumn.topOffset) - ?? throw new SpeckleConversionException("Unable to find a valid baseCurve for column"); + ?? throw new ValidationException("Unable to find a valid baseCurve for column"); if (target.Location is LocationPoint locationPoint) { diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/Geometry/CurveConversionToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/Geometry/CurveConversionToSpeckle.cs index 57759bcf3..a593eca80 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/Geometry/CurveConversionToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/Geometry/CurveConversionToSpeckle.cs @@ -1,6 +1,6 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -40,8 +40,7 @@ public ICurve Convert(DB.Curve target) DB.Ellipse ellipse => _ellipseConverter.Convert(ellipse), DB.NurbSpline nurbs => _nurbsConverter.Convert(nurbs), DB.HermiteSpline hermite => _hermiteConverter.Convert(hermite), - - _ => throw new SpeckleConversionException($"Unsupported curve type {target.GetType()}") + _ => throw new ValidationException($"Unsupported curve type {target.GetType()}") }; } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/LocationConversionToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/LocationConversionToSpeckle.cs index a88515137..f0f59de09 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/LocationConversionToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/LocationConversionToSpeckle.cs @@ -1,6 +1,6 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -28,7 +28,7 @@ public Base Convert(DB.Location target) { DB.LocationCurve curve => (_curveConverter.Convert(curve.Curve) as Base)!, // POC: ICurve and Base are not related but we know they must be, had to soft cast and then !. DB.LocationPoint point => _xyzConverter.Convert(point.Point), - _ => throw new SpeckleConversionException($"Unexpected location type {target.GetType()}") + _ => throw new ValidationException($"Unexpected location type {target.GetType()}") }; } } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ModelCurveArrayToSpeckleConverter.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ModelCurveArrayToSpeckleConverter.cs index c5a65439e..074b4621c 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ModelCurveArrayToSpeckleConverter.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Raw/ModelCurveArrayToSpeckleConverter.cs @@ -3,6 +3,7 @@ using Speckle.Converters.RevitShared.Services; using Speckle.Converters.RevitShared.Settings; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.RevitShared.Raw; @@ -29,7 +30,7 @@ public SOG.Polycurve Convert(DB.ModelCurveArray target) if (curves.Length == 0) { - throw new SpeckleConversionException($"Expected {target} to have at least 1 curve"); + throw new ValidationException($"Expected {target} to have at least 1 curve"); } var start = curves[0].GetEndPoint(0); diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/BaseTopLevelConverterToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/BaseTopLevelConverterToSpeckle.cs index c8d4852d8..b17f0446d 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/BaseTopLevelConverterToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/BaseTopLevelConverterToSpeckle.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -20,9 +20,7 @@ public Base Convert(object target) // so it should always BE base? if (result is not Base @base) { - throw new SpeckleConversionException( - $"Expected resulting object to be {typeof(Base)} but was {result.GetType()}" - ); + throw new ConversionException($"Expected resulting object to be {typeof(Base)} but was {result.GetType()}"); } return @base; diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/HostedElementConversionToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/HostedElementConversionToSpeckle.cs index 2cead587a..29f2c0dee 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/HostedElementConversionToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/HostedElementConversionToSpeckle.cs @@ -1,6 +1,7 @@ using Autodesk.Revit.DB; using Speckle.Converters.Common; using Speckle.Converters.RevitShared.Settings; +using Speckle.Sdk; using Speckle.Sdk.Models; namespace Speckle.Converters.RevitShared.ToSpeckle; @@ -34,9 +35,10 @@ public IEnumerable ConvertHostedElements(IEnumerable hostedElem { @base = _converter.Convert(element); } - catch (SpeckleConversionException) + catch (SpeckleException) { - // POC: logging + // POC: Handling this correctly should be high priority, as it affects the quality of the report. + // POC: we could aggregate all host element exceptions and throw a single one in the end. continue; } diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/WallTopLevelConverterToSpeckle.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/WallTopLevelConverterToSpeckle.cs index f59546a81..e0a8fbcb5 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/WallTopLevelConverterToSpeckle.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/TopLevel/WallTopLevelConverterToSpeckle.cs @@ -4,6 +4,7 @@ using Speckle.Converters.RevitShared.Settings; using Speckle.Objects; using Speckle.Objects.BuiltElements.Revit; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Extensions; @@ -63,7 +64,7 @@ private void AssignSpecificParameters(DB.Wall target, RevitWall speckleWall) { if (target.Location is not DB.LocationCurve locationCurve) { - throw new SpeckleConversionException( + throw new ValidationException( "Incorrect assumption was made that all Revit Wall location properties would be of type \"LocationCurve\"" ); } diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/RhinoToSpeckleUnitConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/RhinoToSpeckleUnitConverter.cs index ccce05828..0bb183553 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/RhinoToSpeckleUnitConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/RhinoToSpeckleUnitConverter.cs @@ -1,6 +1,7 @@ using Rhino; using Speckle.Converters.Common; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino; @@ -30,6 +31,6 @@ public string ConvertOrThrow(UnitSystem hostUnit) return value; } - throw new SpeckleConversionException($"The Unit System \"{hostUnit}\" is unsupported."); + throw new UnitNotSupportedException($"The Unit System \"{hostUnit}\" is unsupported."); } } diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/SpeckleToHostGeometryBaseTopLevelConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/SpeckleToHostGeometryBaseTopLevelConverter.cs index c2b0030ce..fa510e5b7 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/SpeckleToHostGeometryBaseTopLevelConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/SpeckleToHostGeometryBaseTopLevelConverter.cs @@ -1,6 +1,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Rhino; @@ -27,7 +28,7 @@ public object Convert(Base target) if (result is null) { - throw new SpeckleConversionException( + throw new ConversionException( $"Geometry base converter returned null for base object of type {target.speckle_type}" ); } diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Helpers/RawEncodingToHost.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Helpers/RawEncodingToHost.cs index ca59d5b23..0c2643be2 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Helpers/RawEncodingToHost.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Helpers/RawEncodingToHost.cs @@ -1,5 +1,5 @@ using Rhino.FileIO; -using Speckle.Converters.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToHost.Helpers; @@ -16,7 +16,7 @@ public static class RawEncodingToHost case SO.RawEncodingFormats.RHINO_3DM: return Handle3dm(target); default: - throw new SpeckleConversionException($"Unsupported brep encoding format: {target.encodedValue.format}"); + throw new ConversionException($"Unsupported brep encoding format: {target.encodedValue.format}"); } } diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/BrepToHostConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/BrepToHostConverter.cs index 2c626977a..8fa5d9420 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/BrepToHostConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/BrepToHostConverter.cs @@ -1,6 +1,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToHost.Raw; @@ -62,7 +63,7 @@ public RG.Brep Convert(SOG.Brep target) if (!rhinoBrep.IsValidWithLog(out string reason)) { - throw new SpeckleConversionException($"Resulting BREP was invalid: {reason}"); + throw new ConversionException($"Resulting BREP was invalid: {reason}"); } return rhinoBrep; diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/CurveToHostConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/CurveToHostConverter.cs index 63d11a047..55d4b8c03 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/CurveToHostConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/CurveToHostConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToHost.Raw; @@ -53,6 +54,6 @@ public RG.Curve Convert(ICurve target) => SOG.Polyline polyline => _polylineConverter.Convert(polyline), SOG.Curve curve => _nurbsCurveConverter.Convert(curve), SOG.Polycurve polyCurve => _polyCurveConverter.Convert(polyCurve), - _ => throw new NotSupportedException($"Unable to convert curves of type {target.GetType().Name}") + _ => throw new ValidationException($"Unable to convert curves of type {target.GetType().Name}") }; } diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/FlatPointListToHostConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/FlatPointListToHostConverter.cs index 21b347637..5dd995966 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/FlatPointListToHostConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/FlatPointListToHostConverter.cs @@ -1,6 +1,7 @@ using Rhino.Collections; using Speckle.Converters.Common.Objects; using Speckle.Sdk; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToHost.Raw; @@ -23,7 +24,7 @@ public Point3dList Convert(IReadOnlyList target) { if (target.Count % 3 != 0) { - throw new SpeckleException("Array malformed: length%3 != 0."); + throw new ValidationException("Array malformed: length%3 != 0."); } var points = new List(target.Count / 3); diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/NurbsCurveToHostConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/NurbsCurveToHostConverter.cs index 168f4d396..e7db576bb 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/NurbsCurveToHostConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/Raw/NurbsCurveToHostConverter.cs @@ -1,5 +1,5 @@ -using Speckle.Converters.Common; -using Speckle.Converters.Common.Objects; +using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToHost.Raw; @@ -17,7 +17,7 @@ public NurbsCurveToHostConverter(ITypedConverter inte /// /// The Speckle NurbsCurve object to be converted. /// The converted Rhino NurbsCurve object. - /// Thrown when the conversion fails. + /// Thrown when the conversion fails. /// ⚠️ This conversion does NOT perform scaling. public RG.NurbsCurve Convert(SOG.Curve target) { diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/TopLevel/FallbackToHostTopLevelConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/TopLevel/FallbackToHostTopLevelConverter.cs index d83f2e1c3..3fd7a9107 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/TopLevel/FallbackToHostTopLevelConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToHost/TopLevel/FallbackToHostTopLevelConverter.cs @@ -1,6 +1,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Sdk.Common; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Rhino.ToHost.TopLevel; @@ -44,7 +45,7 @@ IConverterSettingsStore settingsStore SOG.Polyline polyline => _polylineConverter.Convert(polyline), SOG.Mesh mesh => _meshConverter.Convert(mesh), SOG.Point point => _pointConverter.Convert(point), - _ => throw new NotSupportedException($"Found unsupported fallback geometry: {item.GetType()}") + _ => throw new ConversionException($"Found unsupported fallback geometry: {item.GetType()}") }; x.Transform(GetUnitsTransform(item)); result.Add(x); diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Encoding/RawEncodingCreator.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Encoding/RawEncodingCreator.cs index c8475723b..005bd7d7a 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Encoding/RawEncodingCreator.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Encoding/RawEncodingCreator.cs @@ -1,6 +1,6 @@ using Rhino; using Rhino.FileIO; -using Speckle.Converters.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToSpeckle.Encoding; @@ -35,7 +35,7 @@ public static SO.RawEncoding Encode(RG.GeometryBase target, RhinoDoc doc) file.Objects.AddSubD(d); break; default: - throw new SpeckleConversionException($"Unsupported type for encoding: {target.GetType().FullName}"); + throw new ConversionException($"Unsupported type for encoding: {target.GetType().FullName}"); } file.Settings.ModelUnitSystem = doc.ModelUnitSystem; diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Meshing/DisplayMeshExtractor.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Meshing/DisplayMeshExtractor.cs index 63e9023b5..e35c82757 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Meshing/DisplayMeshExtractor.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Meshing/DisplayMeshExtractor.cs @@ -1,5 +1,5 @@ using Rhino.DocObjects; -using Speckle.Converters.Common; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToSpeckle.Meshing; @@ -26,9 +26,7 @@ public static RG.Mesh GetDisplayMesh(RhinoObject obj) renderMeshes = [mesh]; break; default: - throw new SpeckleConversionException( - $"Unsupported object for display mesh generation {obj.GetType().FullName}" - ); + throw new ConversionException($"Unsupported object for display mesh generation {obj.GetType().FullName}"); } } diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/MeshToSpeckleConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/MeshToSpeckleConverter.cs index 97f7622e7..54c68c543 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/MeshToSpeckleConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/MeshToSpeckleConverter.cs @@ -1,5 +1,6 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToSpeckle.Raw; @@ -26,12 +27,12 @@ IConverterSettingsStore settingsStore /// /// The Rhino Mesh to be converted. /// The converted Speckle Mesh. - /// Thrown when the Rhino Mesh has 0 vertices or faces. + /// Thrown when the Rhino Mesh has 0 vertices or faces. public SOG.Mesh Convert(RG.Mesh target) { if (target.Vertices.Count == 0 || target.Faces.Count == 0) { - throw new SpeckleConversionException("Cannot convert a mesh with 0 vertices/faces"); + throw new ValidationException("Cannot convert a mesh with 0 vertices/faces"); } List vertexCoordinates = new(target.Vertices.Count * 3); diff --git a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/NurbsCurveConverter.cs b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/NurbsCurveConverter.cs index 2f0f1ac1d..c1c75b72c 100644 --- a/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/NurbsCurveConverter.cs +++ b/Converters/Rhino/Speckle.Converters.RhinoShared/ToSpeckle/Raw/NurbsCurveConverter.cs @@ -1,6 +1,7 @@ using Rhino.Geometry; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Rhino.ToSpeckle.Raw; @@ -41,12 +42,12 @@ public SOG.Curve Convert(RG.NurbsCurve target) if (target.ToPolyline(0, 1, 0, 0, 0, tolerance, 0, 0, true) is not PolylineCurve polylineCurve) { - throw new SpeckleConversionException($"Failed to extract PolylineCurve from {target}"); + throw new ConversionException($"Failed to extract PolylineCurve from {target}"); } if (!polylineCurve.TryGetPolyline(out Polyline? poly)) { - throw new SpeckleConversionException($"Failed to extract Polyline from {target}"); + throw new ConversionException($"Failed to extract Polyline from {target}"); } if (target.IsClosed) diff --git a/Sdk/Speckle.Connectors.Logging/Internal/MetricsBuilder.cs b/Sdk/Speckle.Connectors.Logging/Internal/MetricsBuilder.cs index daf109aaa..68cd531a8 100644 --- a/Sdk/Speckle.Connectors.Logging/Internal/MetricsBuilder.cs +++ b/Sdk/Speckle.Connectors.Logging/Internal/MetricsBuilder.cs @@ -1,7 +1,6 @@ using OpenTelemetry.Exporter; using OpenTelemetry.Metrics; using OpenTelemetry.Resources; -using OpenTelemetry.Trace; namespace Speckle.Connectors.Logging.Internal; diff --git a/Sdk/Speckle.Converters.Common.Tests/ConverterManagerTests.cs b/Sdk/Speckle.Converters.Common.Tests/ConverterManagerTests.cs index 5b7e9de92..fedef0ee7 100644 --- a/Sdk/Speckle.Converters.Common.Tests/ConverterManagerTests.cs +++ b/Sdk/Speckle.Converters.Common.Tests/ConverterManagerTests.cs @@ -3,6 +3,7 @@ using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; using Speckle.Converters.Common.Registration; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Common.Tests; @@ -29,8 +30,7 @@ private ConverterManager SetupManager(string testString, Type targetType public void Test_Null() { var sut = SetupManager("Test", typeof(TestConverter)); - var converter = sut.ResolveConverter(typeof(string), false); - converter.Should().BeNull(); + Assert.Throws(() => sut.ResolveConverter(typeof(string), false)); } [Test] @@ -53,7 +53,6 @@ public void Test_Fallback() public void Test_Fallback_Null() { var sut = SetupManager("Object", typeof(TestConverter)); - var converter = sut.ResolveConverter(typeof(string), false); - converter.Should().BeNull(); + Assert.Throws(() => sut.ResolveConverter(typeof(string), false)); } } diff --git a/Sdk/Speckle.Converters.Common/LocalToGlobalConverterUtils.cs b/Sdk/Speckle.Converters.Common/LocalToGlobalConverterUtils.cs index 5eb7044d1..1cf534be4 100644 --- a/Sdk/Speckle.Converters.Common/LocalToGlobalConverterUtils.cs +++ b/Sdk/Speckle.Converters.Common/LocalToGlobalConverterUtils.cs @@ -1,5 +1,6 @@ using Speckle.DoubleNumerics; using Speckle.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; namespace Speckle.Converters.Common; @@ -39,7 +40,7 @@ public Base TransformObjects(Base atomicObject, List matrix) if (c is not Base) { - throw new SpeckleConversionException( + throw new ConversionException( $"Blocks transformation of type {atomicObject.speckle_type} did not return a valid object" ); } @@ -64,7 +65,7 @@ public Base TransformObjects(Base atomicObject, List matrix) return atomicObject; } - throw new SpeckleConversionException( + throw new ConversionException( $"{atomicObject.speckle_type} is not supported for local to global coordinate transformation" ); } diff --git a/Sdk/Speckle.Converters.Common/Registration/ConverterManager.cs b/Sdk/Speckle.Converters.Common/Registration/ConverterManager.cs index d2afb9beb..9ef4d96cc 100644 --- a/Sdk/Speckle.Converters.Common/Registration/ConverterManager.cs +++ b/Sdk/Speckle.Converters.Common/Registration/ConverterManager.cs @@ -1,33 +1,35 @@ using System.Collections.Concurrent; using Microsoft.Extensions.DependencyInjection; -using Speckle.InterfaceGenerator; +using Speckle.Sdk.Common.Exceptions; namespace Speckle.Converters.Common.Registration; -[GenerateAutoInterface] public class ConverterManager(ConcurrentDictionary converterTypes, IServiceProvider serviceProvider) : IConverterManager { public string Name => typeof(T).Name; - public T? ResolveConverter(Type type, bool recursive = false) + public T ResolveConverter(Type type, bool recursive = false) { + var currentType = type; while (true) { - var typeName = type.Name; + var typeName = currentType.Name; var converter = GetConverterByType(typeName); if (converter is null && recursive) { - var baseType = type.BaseType; - if (baseType is not null) - { - type = baseType; - } - else + var baseType = currentType.BaseType; + currentType = baseType; + + if (currentType == null) { - return default; + throw new ConversionNotSupportedException($"No conversion found for {type.Name} or any of its base types"); } } + else if (converter is null) + { + throw new ConversionNotSupportedException($"No conversion found for {type.Name}"); + } else { return converter; diff --git a/Sdk/Speckle.Converters.Common/Registration/ConverterWithFallback.cs b/Sdk/Speckle.Converters.Common/Registration/ConverterWithFallback.cs deleted file mode 100644 index 2e2a9b26a..000000000 --- a/Sdk/Speckle.Converters.Common/Registration/ConverterWithFallback.cs +++ /dev/null @@ -1,81 +0,0 @@ -using System.Collections; -using Microsoft.Extensions.Logging; -using Speckle.Converters.Common.Extensions; -using Speckle.Converters.Common.Objects; -using Speckle.Sdk.Models; -using Speckle.Sdk.Models.Extensions; - -namespace Speckle.Converters.Common.Registration; - -// POC: CNX-9394 Find a better home for this outside `DependencyInjection` project -/// -/// -///
-/// If no suitable converter conversion is found, and the target object has a displayValue property -/// a converter with strong name of is resolved for. -///
-/// -public sealed class ConverterWithFallback : IRootToHostConverter -{ - private readonly ILogger _logger; - private readonly ConverterWithoutFallback _baseConverter; - - public ConverterWithFallback(ConverterWithoutFallback baseConverter, ILogger logger) - { - _logger = logger; - _baseConverter = baseConverter; - } - - /// - /// Converts a instance to a host object. - /// - /// The instance to convert. - /// The converted host object. - /// Fallbacks to display value if a direct conversion is not possible. - /// - /// The conversion is done in the following order of preference: - /// 1. Direct conversion using the . - /// 2. Fallback to display value using the method, if a direct conversion is not possible. - /// - /// If the direct conversion is not available and there is no displayValue, a is thrown. - /// - /// Thrown when no conversion is found for . - public object Convert(Base target) - { - Type type = target.GetType(); - - // Direct conversion if a converter is found - if (_baseConverter.TryGetConverter(type, out IToHostTopLevelConverter? result)) - { - return result.ConvertAndLog(target, _logger); // 1-1 mapping - } - - // Fallback to display value if it exists. - var displayValue = target.TryGetDisplayValue(); - if (displayValue != null) - { - if (displayValue is IList && !displayValue.Any()) - { - throw new NotSupportedException($"No display value found for {type}"); - } - return FallbackToDisplayValue(displayValue); // 1 - many mapping - } - - throw new NotSupportedException($"No conversion found for {type}"); - } - - private object FallbackToDisplayValue(IReadOnlyList displayValue) - { - var tempDisplayableObject = new DisplayableObject(displayValue); - var conversionResult = _baseConverter.Convert(tempDisplayableObject); - - // if the host app returns a list of objects as the result of the fallback conversion, we zip them together with the original base display value objects that generated them. - if (conversionResult is IEnumerable result) - { - return result.Zip(displayValue, (a, b) => (a, b)); - } - - // if not, and the host app "merges" together somehow multiple display values into one entity, we return that. - return conversionResult; - } -} diff --git a/Sdk/Speckle.Converters.Common/Registration/ConverterWithoutFallback.cs b/Sdk/Speckle.Converters.Common/Registration/ConverterWithoutFallback.cs deleted file mode 100644 index d53c1fc20..000000000 --- a/Sdk/Speckle.Converters.Common/Registration/ConverterWithoutFallback.cs +++ /dev/null @@ -1,53 +0,0 @@ -using System.Diagnostics.CodeAnalysis; -using Microsoft.Extensions.Logging; -using Speckle.Converters.Common.Extensions; -using Speckle.Converters.Common.Objects; -using Speckle.Sdk.Models; - -namespace Speckle.Converters.Common.Registration; - -// POC: CNX-9394 Find a better home for this outside `DependencyInjection` project -/// -/// Provides an implementation for -/// that resolves a via the injected -/// -/// -public sealed class ConverterWithoutFallback : IRootToHostConverter -{ - private readonly IConverterManager _toHost; - private readonly ILogger _logger; - - public ConverterWithoutFallback( - IConverterManager converterResolver, - ILogger logger - ) - { - _toHost = converterResolver; - _logger = logger; - } - - public object Convert(Base target) - { - if (!TryGetConverter(target.GetType(), out IToHostTopLevelConverter? converter)) - { - throw new NotSupportedException($"No conversion found for {target.GetType()}"); - } - - object result = converter.ConvertAndLog(target, _logger); - return result; - } - - internal bool TryGetConverter(Type target, [NotNullWhen(true)] out IToHostTopLevelConverter? result) - { - // Direct conversion if a converter is found - var objectConverter = _toHost.ResolveConverter(target); - if (objectConverter != null) - { - result = objectConverter; - return true; - } - - result = null; - return false; - } -} diff --git a/Sdk/Speckle.Converters.Common/Registration/IConverterManager.cs b/Sdk/Speckle.Converters.Common/Registration/IConverterManager.cs new file mode 100644 index 000000000..dab7e6288 --- /dev/null +++ b/Sdk/Speckle.Converters.Common/Registration/IConverterManager.cs @@ -0,0 +1,7 @@ +namespace Speckle.Converters.Common.Registration; + +public interface IConverterManager +{ + public string Name { get; } + public T ResolveConverter(Type type, bool recursive = false); +} diff --git a/Sdk/Speckle.Converters.Common/Registration/ServiceRegistration.cs b/Sdk/Speckle.Converters.Common/Registration/ServiceRegistration.cs index fb60f29d5..9a8aba66e 100644 --- a/Sdk/Speckle.Converters.Common/Registration/ServiceRegistration.cs +++ b/Sdk/Speckle.Converters.Common/Registration/ServiceRegistration.cs @@ -2,6 +2,7 @@ using System.Reflection; using Microsoft.Extensions.DependencyInjection; using Speckle.Converters.Common.Objects; +using Speckle.Converters.Common.ToHost; namespace Speckle.Converters.Common.Registration; diff --git a/Sdk/Speckle.Converters.Common/RootConvertManager.cs b/Sdk/Speckle.Converters.Common/RootConvertManager.cs deleted file mode 100644 index e6c83ee98..000000000 --- a/Sdk/Speckle.Converters.Common/RootConvertManager.cs +++ /dev/null @@ -1,42 +0,0 @@ -using Speckle.Converters.Common.Objects; -using Speckle.Converters.Common.Registration; -using Speckle.InterfaceGenerator; -using Speckle.Sdk.Models; - -namespace Speckle.Converters.Common; - -[GenerateAutoInterface] -public class RootConvertManager : IRootConvertManager -{ - private readonly IConverterManager _toSpeckle; - - public RootConvertManager(IConverterManager toSpeckle) - { - _toSpeckle = toSpeckle; - } - - public Type GetTargetType(object target) => target.GetType(); - - public bool IsSubClass(Type baseType, Type childType) => baseType.IsAssignableFrom(childType); - - public Base Convert(Type type, object obj) - { - try - { - var objectConverter = _toSpeckle.ResolveConverter(type); //poc: would be nice to have supertypes resolve - - if (objectConverter == null) - { - throw new NotSupportedException($"No conversion found for {type.Name}"); - } - var convertedObject = objectConverter.Convert(obj); - - return convertedObject; - } - catch (SpeckleConversionException e) - { - Console.WriteLine(e); - throw; // Just rethrowing for now, Logs may be needed here. - } - } -} diff --git a/Sdk/Speckle.Converters.Common/RootToSpeckleConverter.cs b/Sdk/Speckle.Converters.Common/RootToSpeckleConverter.cs index 90b465161..b087e5f08 100644 --- a/Sdk/Speckle.Converters.Common/RootToSpeckleConverter.cs +++ b/Sdk/Speckle.Converters.Common/RootToSpeckleConverter.cs @@ -18,22 +18,11 @@ public RootToSpeckleConverter(IConverterManager toS public Base Convert(object target) { Type type = target.GetType(); - try - { - var objectConverter = _toSpeckle.ResolveConverter(type); //poc: would be nice to have supertypes resolve - if (objectConverter == null) - { - throw new NotSupportedException($"No conversion found for {type.Name}"); - } - var convertedObject = objectConverter.Convert(target); + var objectConverter = _toSpeckle.ResolveConverter(type); - return convertedObject; - } - catch (SpeckleConversionException e) - { - Console.WriteLine(e); - throw; // Just rethrowing for now, Logs may be needed here. - } + var convertedObject = objectConverter.Convert(target); + + return convertedObject; } } diff --git a/Sdk/Speckle.Converters.Common/SpeckleConversionException.cs b/Sdk/Speckle.Converters.Common/SpeckleConversionException.cs deleted file mode 100644 index 19cbd2bf0..000000000 --- a/Sdk/Speckle.Converters.Common/SpeckleConversionException.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Speckle.Converters.Common; - -public class SpeckleConversionException : Exception -{ - public SpeckleConversionException() { } - - public SpeckleConversionException(string message) - : base(message) { } - - public SpeckleConversionException(string message, Exception innerException) - : base(message, innerException) { } -} diff --git a/Sdk/Speckle.Converters.Common/ToHost/ConverterWithFallback.cs b/Sdk/Speckle.Converters.Common/ToHost/ConverterWithFallback.cs index ba67d9186..f7730f598 100644 --- a/Sdk/Speckle.Converters.Common/ToHost/ConverterWithFallback.cs +++ b/Sdk/Speckle.Converters.Common/ToHost/ConverterWithFallback.cs @@ -1,7 +1,6 @@ using System.Collections; using Microsoft.Extensions.Logging; -using Speckle.Converters.Common.Extensions; -using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Common.Exceptions; using Speckle.Sdk.Models; using Speckle.Sdk.Models.Extensions; @@ -44,24 +43,27 @@ public object Convert(Base target) { Type type = target.GetType(); - // Direct conversion if a converter is found - if (_baseConverter.TryGetConverter(type, out IToHostTopLevelConverter? result)) + try { - return result.ConvertAndLog(target, _logger); // 1-1 mapping + return _baseConverter.Convert(target); + } + catch (ConversionNotSupportedException e) + { + _logger.LogInformation(e, "Attempt to find conversion for type {type} failed", type); } // Fallback to display value if it exists. var displayValue = target.TryGetDisplayValue(); - if (displayValue != null) + + if (displayValue == null || (displayValue is IList && !displayValue.Any())) { - if (displayValue is IList && !displayValue.Any()) - { - throw new NotSupportedException($"No display value found for {type}"); - } - return FallbackToDisplayValue(displayValue); // 1 - many mapping + // TODO: I'm not sure if this should be a ConversionNotSupported instead, but it kinda mixes support + validation so I went for normal conversion exception + throw new ConversionException( + $"No direct conversion found for type {type} and it's fallback display value was null/empty" + ); } - throw new NotSupportedException($"No conversion found for {type}"); + return FallbackToDisplayValue(displayValue); // 1 - many mapping } private object FallbackToDisplayValue(IReadOnlyList displayValue) diff --git a/Sdk/Speckle.Converters.Common/ToHost/ConverterWithoutFallback.cs b/Sdk/Speckle.Converters.Common/ToHost/ConverterWithoutFallback.cs index 30cfce795..181eb8306 100644 --- a/Sdk/Speckle.Converters.Common/ToHost/ConverterWithoutFallback.cs +++ b/Sdk/Speckle.Converters.Common/ToHost/ConverterWithoutFallback.cs @@ -1,5 +1,4 @@ -using System.Diagnostics.CodeAnalysis; -using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging; using Speckle.Converters.Common.Extensions; using Speckle.Converters.Common.Objects; using Speckle.Converters.Common.Registration; @@ -29,26 +28,8 @@ ILogger logger public object Convert(Base target) { - if (!TryGetConverter(target.GetType(), out IToHostTopLevelConverter? converter)) - { - throw new NotSupportedException($"No conversion found for {target.GetType()}"); - } - + var converter = _toHost.ResolveConverter(target.GetType()); object result = converter.ConvertAndLog(target, _logger); return result; } - - internal bool TryGetConverter(Type target, [NotNullWhen(true)] out IToHostTopLevelConverter? result) - { - // Direct conversion if a converter is found - var objectConverter = _toHost.ResolveConverter(target); - if (objectConverter != null) - { - result = objectConverter; - return true; - } - - result = null; - return false; - } } diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 7775ff145..4a9f9659c 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -277,10 +277,10 @@ Global {4D40A101-07E6-4FF2-8934-83434932591D}.Debug|Any CPU.Build.0 = Debug|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Release|Any CPU.ActiveCfg = Release|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Release|Any CPU.Build.0 = Release|Any CPU - {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.ActiveCfg = Debug|x64 - {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.Build.0 = Debug|x64 {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.ActiveCfg = Release|Any CPU {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.Build.0 = Release|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.Build.0 = Debug|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Debug|Any CPU.Build.0 = Debug|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Release|Any CPU.ActiveCfg = Release|Any CPU From 617bb5f12d3c3a6e1e9ac249923f318ee0562c24 Mon Sep 17 00:00:00 2001 From: Claire Kuang Date: Wed, 16 Oct 2024 15:31:17 +0100 Subject: [PATCH 02/13] feat(civil3d): adds corridors (#302) * adds general and class properties extractors * Update Speckle.Converters.Civil3dShared.projitems * adds class properties for catchments * adds catchment group proxies * catchment proxy bug fix * adds site props * Update ClassPropertiesExtractor.cs * Update ClassPropertiesExtractor.cs * adds network, structure, and pipes * registers pipe network * adds alignment basecurves and properties * adds profiles to alignments * adds corridors * fixes di and other corridor bugs * parses corridor solid property sets * Update CorridorHandler.cs * Update CorridorHandler.cs * adds body raw converter to autocad * adds calculated info * Update PropertySetDefinitionHandler.cs * Update DBBodyToSpeckleRawConverter.cs --- ...Speckle.Converters.AutocadShared.projitems | 2 + .../Raw/CircularArc2dToSpeckleRawConverter.cs | 75 ++++ .../Raw/DBBodyToSpeckleRawConverter.cs | 95 +++++ .../Civil3dRootToSpeckleConverter.cs | 6 +- .../Helpers/BaseCurveExtractor.cs | 84 ++++- .../Helpers/CorridorHandler.cs | 329 ++++++++++++++++++ .../ServiceRegistration.cs | 1 + ...Speckle.Converters.Civil3dShared.projitems | 4 + .../CivilEntityToSpeckleTopLevelConverter.cs | 54 ++- .../Properties/ClassPropertiesExtractor.cs | 43 ++- .../Properties/GeneralPropertiesExtractor.cs | 216 +++++++++++- .../PropertySetDefinitionHandler.cs | 8 +- .../Properties/PropertySetExtractor.cs | 15 +- ...gnmentSubentityArcToSpeckleRawConverter.cs | 98 ++++++ ...nmentSubentityLineToSpeckleRawConverter.cs | 49 +++ ...entSubentitySpiralToSpeckleRawConverter.cs | 75 ++++ 16 files changed, 1114 insertions(+), 40 deletions(-) create mode 100644 Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/CircularArc2dToSpeckleRawConverter.cs create mode 100644 Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBBodyToSpeckleRawConverter.cs create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityArcToSpeckleRawConverter.cs create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityLineToSpeckleRawConverter.cs create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentitySpiralToSpeckleRawConverter.cs diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/Speckle.Converters.AutocadShared.projitems b/Converters/Autocad/Speckle.Converters.AutocadShared/Speckle.Converters.AutocadShared.projitems index f7089bc6f..d303d2d3d 100644 --- a/Converters/Autocad/Speckle.Converters.AutocadShared/Speckle.Converters.AutocadShared.projitems +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/Speckle.Converters.AutocadShared.projitems @@ -42,10 +42,12 @@ + + diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/CircularArc2dToSpeckleRawConverter.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/CircularArc2dToSpeckleRawConverter.cs new file mode 100644 index 000000000..7b9635e0c --- /dev/null +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/CircularArc2dToSpeckleRawConverter.cs @@ -0,0 +1,75 @@ +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; + +namespace Speckle.Converters.Autocad.ToSpeckle.Raw; + +public class CircularArc2dToSpeckleConverter : ITypedConverter +{ + private readonly ITypedConverter _planeConverter; + private readonly IConverterSettingsStore _settingsStore; + + public CircularArc2dToSpeckleConverter( + ITypedConverter planeConverter, + IConverterSettingsStore settingsStore + ) + { + _planeConverter = planeConverter; + _settingsStore = settingsStore; + } + + public SOG.Arc Convert(AG.CircularArc2d target) + { + string units = _settingsStore.Current.SpeckleUnits; + + // find arc plane (normal is in clockwise dir) + var center3 = new AG.Point3d(target.Center.X, target.Center.Y, 0); + AG.Plane plane = target.IsClockWise + ? new AG.Plane(center3, AG.Vector3d.ZAxis.MultiplyBy(-1)) + : new AG.Plane(center3, AG.Vector3d.ZAxis); + + // calculate total angle. TODO: This needs to be validated across all possible arc orientations + var totalAngle = target.IsClockWise + ? Math.Abs(target.EndAngle - target.StartAngle) + : Math.Abs(target.EndAngle - target.StartAngle); + + double startParam = target.GetParameterOf(target.StartPoint); + double endParam = target.GetParameterOf(target.EndPoint); + AG.Point2d midPoint = target.EvaluatePoint(target.StartAngle + (target.EndAngle - target.StartAngle) / 2); + + // create arc + var arc = new SOG.Arc() + { + plane = _planeConverter.Convert(plane), + radius = target.Radius, + startPoint = new() + { + x = target.StartPoint.X, + y = target.StartPoint.Y, + z = 0, + units = units + }, + endPoint = new() + { + x = target.EndPoint.X, + y = target.EndPoint.Y, + z = 0, + units = units + }, + midPoint = new() + { + x = midPoint.X, + y = midPoint.Y, + z = 0, + units = units + }, + startAngle = target.StartAngle, + endAngle = target.EndAngle, + angleRadians = totalAngle, + domain = new SOP.Interval { start = startParam, end = endParam }, + length = target.GetLength(0, 1), + units = units + }; + + return arc; + } +} diff --git a/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBBodyToSpeckleRawConverter.cs b/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBBodyToSpeckleRawConverter.cs new file mode 100644 index 000000000..7c3278849 --- /dev/null +++ b/Converters/Autocad/Speckle.Converters.AutocadShared/ToSpeckle/Raw/DBBodyToSpeckleRawConverter.cs @@ -0,0 +1,95 @@ +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Sdk; +using Speckle.Sdk.Common.Exceptions; +using Speckle.Sdk.Models; + +namespace Speckle.Converters.Autocad.ToSpeckle.Raw; + +public class DBBodyToSpeckleRawConverter : ITypedConverter +{ + private readonly ITypedConverter _pointConverter; + private readonly ITypedConverter _boxConverter; + private readonly IConverterSettingsStore _settingsStore; + + public DBBodyToSpeckleRawConverter( + ITypedConverter pointConverter, + ITypedConverter boxConverter, + IConverterSettingsStore settingsStore + ) + { + _pointConverter = pointConverter; + _boxConverter = boxConverter; + _settingsStore = settingsStore; + } + + public Base Convert(object target) => Convert((ADB.Body)target); + + public SOG.Mesh Convert(ADB.Body target) + { + using ABR.Brep brep = new(target); + if (brep.IsNull) + { + throw new ConversionException("Could not retrieve brep from the body."); + } + + var vertices = new List(); + var faces = new List(); + + // create mesh from solid with mesh filter + using ABR.Mesh2dControl control = new(); + control.MaxSubdivisions = 10000; // POC: these settings may need adjusting + using ABR.Mesh2dFilter filter = new(); + filter.Insert(brep, control); + using ABR.Mesh2d m = new(filter); + foreach (ABR.Element2d e in m.Element2ds) + { + // get vertices + List faceIndices = new(); + foreach (ABR.Node n in e.Nodes) + { + faceIndices.Add(vertices.Count); + vertices.Add(n.Point); + n.Dispose(); + } + + // get faces + List faceList = new() { e.Nodes.Count() }; + for (int i = 0; i < e.Nodes.Count(); i++) + { + faceList.Add(faceIndices[i]); + } + + faces.AddRange(faceList); + + e.Dispose(); + } + + // mesh props + var convertedVertices = vertices.SelectMany(o => _pointConverter.Convert(o).ToList()).ToList(); + SOG.Box bbox = _boxConverter.Convert(target.GeometricExtents); + + // create speckle mesh + SOG.Mesh mesh = + new() + { + vertices = convertedVertices, + faces = faces, + units = _settingsStore.Current.SpeckleUnits, + bbox = bbox + }; + + try + { + mesh.area = brep.GetSurfaceArea(); + } + catch (Exception e) when (!e.IsFatal()) { } + try + { + mesh.volume = brep.GetVolume(); + } + catch (Exception e) when (!e.IsFatal()) { } + + return mesh; + } +} diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs index 36a8ed040..e6b8c554e 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dRootToSpeckleConverter.cs @@ -88,21 +88,21 @@ public Base Convert(object target) // get general properties Dictionary? generalProperties = _generalPropertiesExtractor.GetGeneralProperties(entity); - if (generalProperties is not null) + if (generalProperties is not null && generalProperties.Count > 0) { properties.Add("Properties", generalProperties); } // get part data Dictionary? partData = _partDataExtractor.GetPartData(entity); - if (partData is not null) + if (partData is not null && partData.Count > 0) { properties.Add("Part Data", partData); } // get property set data Dictionary? propertySets = _propertySetExtractor.GetPropertySets(entity); - if (propertySets is not null) + if (propertySets is not null && propertySets.Count > 0) { properties.Add("Property Sets", propertySets); } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs index 02acc8130..f8ee35255 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs @@ -1,7 +1,6 @@ using Microsoft.Extensions.Logging; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; -using Speckle.Objects; namespace Speckle.Converters.Civil3dShared.Helpers; @@ -10,26 +9,37 @@ public sealed class BaseCurveExtractor private readonly ILogger _logger; private readonly IConverterSettingsStore _converterSettings; private readonly ITypedConverter _lineConverter; - - //private readonly ITypedConverter _arcConverter; + private readonly ITypedConverter _arcConverter; + private readonly ITypedConverter _alignmentLineConverter; + private readonly ITypedConverter _alignmentArcConverter; + private readonly ITypedConverter< + (CDB.AlignmentSubEntitySpiral, CDB.Alignment), + SOG.Polyline + > _alignmentSpiralConverter; private readonly ITypedConverter _curveConverter; public BaseCurveExtractor( ITypedConverter lineConverter, - //ITypedConverter arcConverter, + ITypedConverter arcConverter, + ITypedConverter alignmentLineConverter, + ITypedConverter alignmentArcConverter, + ITypedConverter<(CDB.AlignmentSubEntitySpiral, CDB.Alignment), SOG.Polyline> alignmentSpiralConverter, ITypedConverter curveConverter, ILogger logger, IConverterSettingsStore converterSettings ) { _lineConverter = lineConverter; - //_arcConverter = arcConverter; + _arcConverter = arcConverter; + _alignmentLineConverter = alignmentLineConverter; + _alignmentArcConverter = alignmentArcConverter; + _alignmentSpiralConverter = alignmentSpiralConverter; _curveConverter = curveConverter; _logger = logger; _converterSettings = converterSettings; } - public List? GetBaseCurve(CDB.Entity entity) + public List? GetBaseCurves(CDB.Entity entity) { switch (entity) { @@ -37,19 +47,65 @@ IConverterSettingsStore converterSettings // do not use basecurve for pipes 😡 // currently not handling arc pipes due to lack of CircularArc2D converter, and also way to properly retrieve 2d arc curve case CDB.Pipe pipe: - ICurve pipeCurve = - //pipe.SubEntityType == PipeSubEntityType.Straight ? - _lineConverter.Convert(new AG.LineSegment3d(pipe.StartPoint, pipe.EndPoint)); - //: _arcConverter.Convert(pipe.Curve2d); - return new() { pipeCurve }; + return GetPipeBaseCurves(pipe); - case CDB.Alignment: - ICurve baseCurve = _curveConverter.Convert(entity.BaseCurve); - return new() { baseCurve }; + case CDB.Alignment alignment: + return GetAlignmentBaseCurves(alignment); // for any entities that don't use their basecurve prop default: return null; } } + + private List GetPipeBaseCurves(CDB.Pipe pipe) + { + switch (pipe.SubEntityType) + { + case CDB.PipeSubEntityType.Curved: + return new() { _arcConverter.Convert(pipe.Curve2d) }; + + // POC: don't know how to properly handle segmented and flex pipes for now, sending them as lines + case CDB.PipeSubEntityType.Straight: + default: + return new() { _lineConverter.Convert(new AG.LineSegment3d(pipe.StartPoint, pipe.EndPoint)) }; + } + } + + private List GetAlignmentBaseCurves(CDB.Alignment alignment) + { + // get the alignment subentity curves + List curves = new(); + for (int i = 0; i < alignment.Entities.Count; i++) + { + CDB.AlignmentEntity entity = alignment.Entities.GetEntityByOrder(i); + for (int j = 0; j < entity.SubEntityCount; j++) + { + CDB.AlignmentSubEntity subEntity = entity[j]; + switch (subEntity.SubEntityType) + { + case CDB.AlignmentSubEntityType.Arc: + if (subEntity is CDB.AlignmentSubEntityArc arc) + { + curves.Add(_alignmentArcConverter.Convert(arc)); + } + break; + case CDB.AlignmentSubEntityType.Line: + if (subEntity is CDB.AlignmentSubEntityLine line) + { + curves.Add(_alignmentLineConverter.Convert(line)); + } + break; + case CDB.AlignmentSubEntityType.Spiral: + if (subEntity is CDB.AlignmentSubEntitySpiral spiral) + { + curves.Add(_alignmentSpiralConverter.Convert((spiral, alignment))); + } + break; + } + } + } + + return curves; + } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs new file mode 100644 index 000000000..477bca041 --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs @@ -0,0 +1,329 @@ +using Speckle.Converters.Civil3dShared.Extensions; +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Sdk; +using Speckle.Sdk.Models; + +namespace Speckle.Converters.Civil3dShared.Helpers; + +public sealed class CorridorHandler +{ + /// + /// Keeps track of all corridor solids by their hierarchy of (corridor, baseline, region, applied assembly, applied subassembly) in the current send operation. + /// This should be added to the display value of the corridor applied subassemblies after they are processed + /// Handles should be used instead of Handle.Value (as is typically used for speckle app ids) since the exported solid property sets only stores the handle + /// + public Dictionary<(string, string, string, string, string), List> CorridorSolidsCache { get; } = new(); + + // these ints are used to retrieve the correct values from the exported corridor solids property sets to cache them + // they were determined via trial and error +#pragma warning disable CA1805 // Initialized explicitly to 0 + private readonly int _corridorHandleIndex = 0; +#pragma warning restore CA1805 // Initialized explicitly to 0 + private readonly int _baselineGuidIndex = 6; + private readonly int _regionGuidIndex = 7; + private readonly int _assemblyHandleIndex = 3; + private readonly int _subassemblyHandleIndex = 4; + + private readonly ITypedConverter _solidConverter; + private readonly ITypedConverter _bodyConverter; + private readonly IConverterSettingsStore _settingsStore; + + public CorridorHandler( + ITypedConverter solidConverter, + ITypedConverter bodyConverter, + IConverterSettingsStore settingsStore + ) + { + _solidConverter = solidConverter; + _bodyConverter = bodyConverter; + _settingsStore = settingsStore; + } + + // Ok, this is going to be very complicated. + // We are building a nested `Base.elements` of corridor subelements in this hierarchy: corridor -> baselines -> baseline regions -> applied assemblies -> applied subassemblies + // This is because none of these entities inherit from CDB.Entity, and we need to match the corridor solids with the corresponding applied subassembly. + public List GetCorridorChildren(CDB.Corridor corridor) + { + // first extract all corridor solids. + // this needs to be done before traversing children, so we can match the solid mesh to the appropriate subassembly + HandleCorridorSolids(corridor); + + // track children hierarchy ids: + string corridorHandle = corridor.Handle.ToString(); + + // process baselines + List baselines = new(corridor.Baselines.Count); + foreach (CDB.Baseline baseline in corridor.Baselines) + { + string baselineGuid = baseline.baselineGUID.ToString(); + + Base convertedBaseline = + new() + { + ["type"] = baseline.GetType().ToString().Split('.').Last(), + ["name"] = baseline.Name, + ["startStation"] = baseline.StartStation, + ["endStation"] = baseline.EndStation, + ["units"] = _settingsStore.Current.SpeckleUnits, + ["applicationId"] = baselineGuid, + }; + + // get profile and alignment if nonfeaturelinebased + // for featureline based corridors, accessing AlignmentId and ProfileId will return NULL + // and throw an exception ""This operation on feature line based baseline is invalid". + if (baseline.IsFeatureLineBased()) + { + convertedBaseline["featureLineId"] = baseline.FeatureLineId.GetSpeckleApplicationId(); + } + else + { + convertedBaseline["alignmentId"] = baseline.AlignmentId.GetSpeckleApplicationId(); + convertedBaseline["profileId"] = baseline.ProfileId.GetSpeckleApplicationId(); + } + + // get the baseline regions + List regions = new(); + foreach (CDB.BaselineRegion region in baseline.BaselineRegions) + { + string regionGuid = region.RegionGUID.ToString(); + + Base convertedRegion = + new() + { + ["type"] = region.GetType().ToString().Split('.').Last(), + ["name"] = region.Name, + ["startStation"] = region.StartStation, + ["endStation"] = region.EndStation, + ["assemblyId"] = region.AssemblyId.GetSpeckleApplicationId(), + ["units"] = _settingsStore.Current.SpeckleUnits, + ["applicationId"] = regionGuid, + }; + + // get the region applied assemblies + List appliedAssemblies = new(); + double[] sortedStations = region.SortedStations(); + for (int i = 0; i < sortedStations.Length; i++) + { + double station = sortedStations[i]; + + CDB.AppliedAssembly appliedAssembly = region.AppliedAssemblies[i]; + string assemblyHandle = appliedAssembly.AssemblyId.Handle.ToString(); + Base convertedAppliedAssembly = + new() + { + ["type"] = appliedAssembly.GetType().ToString().Split('.').Last(), + ["assemblyId"] = appliedAssembly.AssemblyId.GetSpeckleApplicationId(), + ["station"] = station, + ["units"] = _settingsStore.Current.SpeckleUnits + }; + + try + { + convertedAppliedAssembly["adjustedElevation"] = appliedAssembly.AdjustedElevation; + } + catch (ArgumentException e) when (!e.IsFatal()) + { + // Do nothing. Leave the value as null. Not sure why accessing adjusted elevation sometimes throws. + } + + // get the applied assembly's applied subassemblies + List appliedSubassemblies = new(appliedAssembly.GetAppliedSubassemblies().Count); + + foreach (CDB.AppliedSubassembly appliedSubassembly in appliedAssembly.GetAppliedSubassemblies()) + { + string subassemblyHandle = appliedSubassembly.SubassemblyId.Handle.ToString(); + + Base convertedAppliedSubassembly = + new() + { + ["type"] = appliedSubassembly.GetType().ToString().Split('.').Last(), + ["subassemblyId"] = appliedSubassembly.SubassemblyId.GetSpeckleApplicationId(), + ["units"] = _settingsStore.Current.SpeckleUnits + }; + + // try to get the display value mesh + (string, string, string, string, string) corridorSolidsKey = ( + corridorHandle, + baselineGuid, + regionGuid, + assemblyHandle, + subassemblyHandle + ); + + if (CorridorSolidsCache.TryGetValue(corridorSolidsKey, out List display)) + { + convertedAppliedSubassembly["displayValue"] = display; + } + + // get the applied subassembly's calculated stuff + AddSubassemblyCalculatedProperties(convertedAppliedSubassembly, appliedSubassembly); + + appliedSubassemblies.Add(convertedAppliedSubassembly); + } + + convertedAppliedAssembly["elements"] = appliedSubassemblies; + appliedAssemblies.Add(convertedAppliedAssembly); + } + + convertedRegion["elements"] = appliedAssemblies; + regions.Add(convertedRegion); + } + + convertedBaseline["elements"] = regions; + baselines.Add(convertedBaseline); + } + + return baselines; + } + + // Adds the calculated shapes > calculated links > calculated points as dicts to the applied subassembly + private void AddSubassemblyCalculatedProperties( + Base speckleAppliedSubassembly, + CDB.AppliedSubassembly appliedSubassembly + ) + { + Dictionary calculatedShapes = new(); + int shapeCount = 0; + foreach (CDB.CalculatedShape shape in appliedSubassembly.Shapes) + { + Dictionary calculatedLinks = new(); + int linkCount = 0; + foreach (CDB.CalculatedLink link in shape.CalculatedLinks) + { + Dictionary calculatedPoints = new(); + int pointCount = 0; + foreach (CDB.CalculatedPoint point in link.CalculatedPoints) + { + calculatedPoints[pointCount.ToString()] = new Dictionary() + { + ["xyz"] = point.XYZ.ToArray(), + ["corridorCodes"] = point.CorridorCodes.ToList(), + ["stationOffsetElevationToBaseline"] = point.StationOffsetElevationToBaseline.ToArray(), + }; + pointCount++; + } + + calculatedLinks[linkCount.ToString()] = new Dictionary() + { + ["corridorCodes"] = link.CorridorCodes.ToList(), + ["calculatedPoints"] = calculatedPoints + }; + + linkCount++; + } + + calculatedShapes[shapeCount.ToString()] = new Dictionary() + { + ["corridorCodes"] = shape.CorridorCodes.ToList(), + ["area"] = shape.Area, + ["calculatedLinks"] = calculatedLinks + }; + } + + speckleAppliedSubassembly["calculatedShapes"] = calculatedShapes; + } + + /// + /// Extracts the solids from a corridor and stores in according to property sets on the solid. + /// + /// + /// + private void HandleCorridorSolids(CDB.Corridor corridor) + { + CDB.ExportCorridorSolidsParams param = new(); + + using (var tr = _settingsStore.Current.Document.Database.TransactionManager.StartTransaction()) + { + foreach (ADB.ObjectId solidId in corridor.ExportSolids(param, corridor.Database)) + { + SOG.Mesh? mesh = null; + var solid = tr.GetObject(solidId, ADB.OpenMode.ForRead); + if (solid is ADB.Solid3d solid3d) + { + // get the solid mesh + mesh = _solidConverter.Convert(solid3d); + } + else if (solid is ADB.Body body) + { + mesh = _bodyConverter.Convert(body); + } + + if (mesh is null) + { + continue; + } + + // get the (corridor handle, baseline guid, region guid, assembly handle, subassembly handle) of the solid property sets + (string corridor, string baseline, string region, string assembly, string subassembly)? solidKey = + GetCorridorSolidIdFromPropertySet(solid, tr); + + if (solidKey is (string, string, string, string, string) validSolidKey) + { + if (CorridorSolidsCache.TryGetValue(validSolidKey, out List display)) + { + display.Add(mesh); + } + else + { + CorridorSolidsCache[validSolidKey] = new() { mesh }; + } + } + } + + tr.Commit(); + } + } + + private (string, string, string, string, string)? GetCorridorSolidIdFromPropertySet( + ADB.DBObject obj, + ADB.Transaction tr + ) + { + ADB.ObjectIdCollection? propertySetIds; + + try + { + propertySetIds = AAECPDB.PropertyDataServices.GetPropertySets(obj); + } + catch (Exception e) when (!e.IsFatal()) + { + return null; + } + + if (propertySetIds is null || propertySetIds.Count == 0) + { + return null; + } + + foreach (ADB.ObjectId id in propertySetIds) + { + AAECPDB.PropertySet propertySet = (AAECPDB.PropertySet)tr.GetObject(id, ADB.OpenMode.ForRead); + + if (propertySet.PropertySetDefinitionName == "Corridor Identity") + { + AAECPDB.PropertySetData corridorData = propertySet.PropertySetData[_corridorHandleIndex]; + AAECPDB.PropertySetData baselineData = propertySet.PropertySetData[_baselineGuidIndex]; + AAECPDB.PropertySetData regionData = propertySet.PropertySetData[_regionGuidIndex]; + AAECPDB.PropertySetData assemblyData = propertySet.PropertySetData[_assemblyHandleIndex]; + AAECPDB.PropertySetData subassemblyData = propertySet.PropertySetData[_subassemblyHandleIndex]; + + return + corridorData.GetData() is not string corridorHandle + || baselineData.GetData() is not string baselineGuid // guid is uppercase and enclosed in {} which need to be removed + || regionData.GetData() is not string regionGuid // guid is uppercase and enclosed in {} which need to be removed + || assemblyData.GetData() is not string assemblyHandle + || subassemblyData.GetData() is not string subassemblyHandle + ? null + : ( + corridorHandle, + baselineGuid[1..^1].ToLower(), + regionGuid[1..^1].ToLower(), + assemblyHandle, + subassemblyHandle + ); + } + } + return null; + } +} diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ServiceRegistration.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ServiceRegistration.cs index e65e403f1..38f277c47 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ServiceRegistration.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ServiceRegistration.cs @@ -44,5 +44,6 @@ public static void AddCivil3dConverters(this IServiceCollection serviceCollectio serviceCollection.AddScoped(); serviceCollection.AddScoped(); serviceCollection.AddScoped(); + serviceCollection.AddScoped(); } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Speckle.Converters.Civil3dShared.projitems b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Speckle.Converters.Civil3dShared.projitems index eb1c74523..62c0f54d4 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Speckle.Converters.Civil3dShared.projitems +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Speckle.Converters.Civil3dShared.projitems @@ -15,6 +15,7 @@ + @@ -26,7 +27,10 @@ + + + diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs index f2433fa62..25243105c 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs @@ -1,3 +1,4 @@ +using Speckle.Converters.Civil3dShared.Extensions; using Speckle.Converters.Civil3dShared.Helpers; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; @@ -13,31 +14,38 @@ public class CivilEntityToSpeckleTopLevelConverter : IToSpeckleTopLevelConverter private readonly DisplayValueExtractor _displayValueExtractor; private readonly BaseCurveExtractor _baseCurveExtractor; private readonly ClassPropertiesExtractor _classPropertiesExtractor; + private readonly CorridorHandler _corridorHandler; public CivilEntityToSpeckleTopLevelConverter( IConverterSettingsStore settingsStore, DisplayValueExtractor displayValueExtractor, BaseCurveExtractor baseCurveExtractor, - ClassPropertiesExtractor classPropertiesExtractor + ClassPropertiesExtractor classPropertiesExtractor, + CorridorHandler corridorHandler ) { _settingsStore = settingsStore; _displayValueExtractor = displayValueExtractor; _baseCurveExtractor = baseCurveExtractor; _classPropertiesExtractor = classPropertiesExtractor; + _corridorHandler = corridorHandler; } public Base Convert(object target) => Convert((CDB.Entity)target); public Base Convert(CDB.Entity target) { - Base civilObject = new(); - civilObject["type"] = target.GetType().ToString().Split('.').Last(); - civilObject["name"] = target.Name; - civilObject["units"] = _settingsStore.Current.SpeckleUnits; + Base civilObject = + new() + { + ["type"] = target.GetType().ToString().Split('.').Last(), + ["name"] = target.Name, + ["units"] = _settingsStore.Current.SpeckleUnits, + applicationId = target.GetSpeckleApplicationId() + }; // get basecurve - List? baseCurves = _baseCurveExtractor.GetBaseCurve(target); + List? baseCurves = _baseCurveExtractor.GetBaseCurves(target); if (baseCurves is not null) { civilObject["baseCurves"] = baseCurves; @@ -60,6 +68,40 @@ public Base Convert(CDB.Entity target) } } + // determine if this entity has any children elements that need to be converted. + // this is a bespoke method by class type. + List? children = null; + switch (target) + { + case CDB.Alignment alignment: + children = GetAlignmentChildren(alignment); + break; + case CDB.Corridor corridor: + children = _corridorHandler.GetCorridorChildren(corridor); + break; + } + if (children is not null) + { + civilObject["@elements"] = children; + } + return civilObject; } + + private List? GetAlignmentChildren(CDB.Alignment alignment) + { + List profiles = new(); + using (var tr = _settingsStore.Current.Document.Database.TransactionManager.StartTransaction()) + { + foreach (ADB.ObjectId profileId in alignment.GetProfileIds()) + { + var profile = (CDB.Profile)tr.GetObject(profileId, ADB.OpenMode.ForRead); + profiles.Add(Convert(profile)); + } + + tr.Commit(); + } + + return profiles.Count > 0 ? profiles : null; + } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs index f7ce2f20f..bfe72bccd 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs @@ -1,4 +1,3 @@ -using Autodesk.Civil.DatabaseServices; using Speckle.Converters.Civil3dShared.Extensions; using Speckle.Converters.Civil3dShared.Helpers; using Speckle.Converters.Common; @@ -47,11 +46,19 @@ PipeNetworkHandler pipeNetworkHandler return ExtractCatchmentProperties(catchment); case CDB.Site site: return ExtractSiteProperties(site); + + // pipe networks case CDB.Pipe pipe: return ExtractPipeProperties(pipe); case CDB.Structure structure: return ExtractStructureProperties(structure); + // alignments + case CDB.Alignment alignment: + return ExtractAlignmentProperties(alignment); + case CDB.Profile profile: + return ExtractProfileProperties(profile); + default: return null; } @@ -76,11 +83,43 @@ PipeNetworkHandler pipeNetworkHandler return pointProperties; } + private Dictionary ExtractProfileProperties(CDB.Profile profile) + { + return new() + { + ["offset"] = profile.Offset, + ["startingStation"] = profile.StartingStation, + ["endingStation"] = profile.EndingStation, + ["profileType"] = profile.ProfileType.ToString(), + ["elevationMin"] = profile.ElevationMin, + ["elevationMax"] = profile.ElevationMax + }; + } + + private Dictionary ExtractAlignmentProperties(CDB.Alignment alignment) + { + Dictionary alignmentProperties = + new() + { + ["startingStation"] = alignment.StartingStation, + ["endingStation"] = alignment.EndingStation, + ["alignmentType"] = alignment.AlignmentType.ToString() + }; + + if (!alignment.IsSiteless) + { + alignmentProperties["siteId"] = alignment.SiteId.GetSpeckleApplicationId(); + } + + return alignmentProperties; + } + private Dictionary ExtractPipeProperties(CDB.Pipe pipe) { Dictionary pipeProperties = new() { + ["bearing"] = pipe.Bearing, ["innerDiameterOrWidth"] = pipe.InnerDiameterOrWidth, ["innerHeight"] = pipe.InnerHeight, ["slope"] = pipe.Slope, @@ -123,7 +162,7 @@ PipeNetworkHandler pipeNetworkHandler ["innerDiameterOrWidth"] = structure.InnerDiameterOrWidth }; - if (structure.BoundingShape == BoundingShapeType.Box) + if (structure.BoundingShape == CDB.BoundingShapeType.Box) { structureProperties["innerLength"] = structure.InnerLength; structureProperties["length"] = structure.Length; diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs index fd8ed7a3e..2dcbc4b4e 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs @@ -1,4 +1,5 @@ using System.Reflection; +using Speckle.Converters.Civil3dShared.Extensions; namespace Speckle.Converters.Civil3dShared.ToSpeckle; @@ -16,13 +17,222 @@ public GeneralPropertiesExtractor() { } /// public Dictionary? GetGeneralProperties(CDB.Entity entity) { - Dictionary? generalPropertiesDict = null; switch (entity) { // surface -> properties -> statistics -> general, extended, and tin/grid properties case CDB.Surface surface: - generalPropertiesDict = ExtractSurfaceProperties(surface); - break; + return ExtractSurfaceProperties(surface); + + // alignment -> properties -> station control -> station equations, station information, reference point + // alignment -> properties -> offset parameters -> parent alignment + case CDB.Alignment alignment: + return ExtractAlignmentProperties(alignment); + + // corridor -> properties -> codes, featurelines, surfaces + case CDB.Corridor corridor: + return ExtractCorridorProperties(corridor); + + //case CDB.Assembly assembly: + //return ExtractAssemblyProperties(assembly); + + //case CDB.Subassembly subassembly: + //return ExtractSubassemblyProperties(subassembly); + + default: + return null; + } + } + + //private Dictionary ExtractSubassemblyProperties(CDB.Subassembly subassembly) { } + + //private Dictionary ExtractAssemblyProperties(CDB.Assembly assembly) { } + + private void ProcessCorridorFeaturelinePoints( + CDB.CorridorFeatureLine featureline, + Dictionary> featureLinesDict + ) + { + if (featureLinesDict.TryGetValue(featureline.CodeName, out Dictionary value)) + { + Dictionary pointsDict = new(featureline.FeatureLinePoints.Count); + int pointCount = 0; + foreach (CDB.FeatureLinePoint point in featureline.FeatureLinePoints) + { + pointsDict[pointCount.ToString()] = new Dictionary() + { + ["station"] = point.Station, + ["xyz"] = point.XYZ.ToArray(), + ["isBreak"] = point.IsBreak, + ["offset"] = point.Offset + }; + + pointCount++; + } + + value["featureLinePoints"] = pointsDict; + } + } + + private Dictionary ExtractCorridorProperties(CDB.Corridor corridor) + { + Dictionary generalPropertiesDict = new(); + + // get codes props + Dictionary codesDict = + new() + { + ["link"] = corridor.GetLinkCodes(), + ["point"] = corridor.GetPointCodes(), + ["shape"] = corridor.GetShapeCodes() + }; + generalPropertiesDict["codes"] = codesDict; + + // get feature lines props + // this is pretty complicated: need to extract featureline points as dicts, but can only do this by iterating through baselines. Need to match the iterated featurelines with the featureline code info. + Dictionary> featureLinesDict = new(); + // first build dict from the code info + foreach (CDB.FeatureLineCodeInfo featureLineCode in corridor.FeatureLineCodeInfos) + { + featureLinesDict[featureLineCode.CodeName] = new Dictionary() + { + ["codeName"] = featureLineCode.CodeName, + ["isConnected"] = featureLineCode.IsConnected, + ["payItems"] = featureLineCode.PayItems + }; + } + // then iterate through baseline featurelines to populate point info + foreach (CDB.Baseline baseline in corridor.Baselines) + { + // main featurelines + foreach ( + CDB.FeatureLineCollection mainFeaturelineCollection in baseline + .MainBaselineFeatureLines + .FeatureLineCollectionMap + ) + { + foreach (CDB.CorridorFeatureLine featureline in mainFeaturelineCollection) + { + ProcessCorridorFeaturelinePoints(featureline, featureLinesDict); + } + } + + // offset featurelines + foreach (CDB.BaselineFeatureLines offsetFeaturelineCollection in baseline.OffsetBaselineFeatureLinesCol) + { + foreach ( + CDB.FeatureLineCollection featurelineCollection in offsetFeaturelineCollection.FeatureLineCollectionMap + ) + { + foreach (CDB.CorridorFeatureLine featureline in featurelineCollection) + { + ProcessCorridorFeaturelinePoints(featureline, featureLinesDict); + } + } + } + } + if (featureLinesDict.Count > 0) + { + generalPropertiesDict["Feature Lines"] = featureLinesDict; + } + + // get surfaces props + Dictionary surfacesDict = new(); + foreach (CDB.CorridorSurface surface in corridor.CorridorSurfaces) + { + surfacesDict[surface.Name] = new Dictionary() + { + ["name"] = surface.Name, + ["surfaceId"] = surface.SurfaceId.GetSpeckleApplicationId(), + ["description"] = surface.Description, + ["overhangCorrection"] = surface.OverhangCorrection.ToString() + }; + } + if (surfacesDict.Count > 0) + { + generalPropertiesDict["Surfaces"] = surfacesDict; + } + + return generalPropertiesDict; + } + + private Dictionary ExtractAlignmentProperties(CDB.Alignment alignment) + { + Dictionary generalPropertiesDict = new(); + + // get station control props + Dictionary stationControlDict = new(); + + Dictionary stationEquationsDict = new(); + int equationCount = 0; + foreach (var stationEquation in alignment.StationEquations) + { + stationEquationsDict[equationCount.ToString()] = new Dictionary() + { + ["rawStationBack"] = stationEquation.RawStationBack, + ["stationBack"] = stationEquation.StationBack, + ["stationAhead"] = stationEquation.StationAhead, + ["equationType"] = stationEquation.EquationType.ToString() + }; + equationCount++; + } + if (stationEquationsDict.Count > 0) + { + stationControlDict["Station Equations"] = stationEquationsDict; + } + + Dictionary referencePointDict = + new() + { + ["x"] = alignment.ReferencePoint.X, + ["y"] = alignment.ReferencePoint.Y, + ["station"] = alignment.ReferencePointStation + }; + stationControlDict["Reference Point"] = referencePointDict; + + if (stationControlDict.Count > 0) + { + generalPropertiesDict["Station Control"] = stationControlDict; + } + + // get design criteria props + Dictionary designCriteriaDict = new(); + + Dictionary designSpeedsDict = new(); + int speedsCount = 0; + foreach (CDB.DesignSpeed designSpeed in alignment.DesignSpeeds) + { + designSpeedsDict[speedsCount.ToString()] = new Dictionary() + { + ["number"] = designSpeed.SpeedNumber, + ["station"] = designSpeed.Station, + ["value"] = designSpeed.Value + }; + speedsCount++; + } + designCriteriaDict["Design Speeds"] = designSpeedsDict; + if (designSpeedsDict.Count > 0) + { + designCriteriaDict["Design Speeds"] = designSpeedsDict; + } + + if (designCriteriaDict.Count > 0) + { + generalPropertiesDict["Design Critera"] = designCriteriaDict; + } + + // get offset alignment props + if (alignment.IsOffsetAlignment) + { + var offsetInfo = alignment.OffsetAlignmentInfo; + Dictionary offsetAlignmentDict = + new() + { + ["side"] = offsetInfo.Side.ToString(), + ["parentAlignmentId"] = offsetInfo.ParentAlignmentId.GetSpeckleApplicationId(), + ["nominalOffset"] = offsetInfo.NominalOffset + }; + + generalPropertiesDict["Offset Parameters"] = offsetAlignmentDict; } return generalPropertiesDict; diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetDefinitionHandler.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetDefinitionHandler.cs index 73f210461..ef9a50a95 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetDefinitionHandler.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetDefinitionHandler.cs @@ -19,9 +19,7 @@ public class PropertySetDefinitionHandler /// /// The property set definition. Assumes this is opened for Read already. /// - public (Dictionary propertyDefinitionNames, string name) HandleDefinition( - AAECPDB.PropertySetDefinition setDefinition - ) + public Dictionary HandleDefinition(AAECPDB.PropertySetDefinition setDefinition) { Dictionary propertyDefinitionsDict = new(); // this is used to store on the property set definition Dictionary propertyDefinitionNames = new(); // this is used to pass to the instance for property value retrieval @@ -53,7 +51,7 @@ AAECPDB.PropertySetDefinition setDefinition if (Definitions.ContainsKey(name)) { - return (propertyDefinitionNames, name); + return propertyDefinitionNames; } Definitions[name] = new Dictionary() @@ -62,6 +60,6 @@ AAECPDB.PropertySetDefinition setDefinition ["propertyDefinitions"] = propertyDefinitionsDict }; - return (propertyDefinitionNames, name); + return propertyDefinitionNames; } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs index 6c56bae7b..6cb52a8dd 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs @@ -73,21 +73,22 @@ ILogger logger { // var isNullOrEmpty = value == null || (value is string s && string.IsNullOrEmpty(s)); // POC: should add same check as in revit for sending null or empty values - var setDefinition = (AAECPDB.PropertySetDefinition) tr.GetObject(propertySet.PropertySetDefinition, ADB.OpenMode.ForRead); + Dictionary? propertyDefinitionNames = null; + string name = setDefinition.Name; - (Dictionary propertyDefinitionNames, string name) = _propertySetDefinitionHandler.HandleDefinition( - setDefinition - ); + propertyDefinitionNames = _propertySetDefinitionHandler.HandleDefinition(setDefinition); // get all property values in the propertyset Dictionary properties = new(); foreach (AAECPDB.PropertySetData data in propertySet.PropertySetData) { - string dataName = propertyDefinitionNames.TryGetValue(data.Id, out string propertyDefinitionName) - ? propertyDefinitionName - : data.FieldBucketId; + string dataName = + propertyDefinitionNames is not null + && propertyDefinitionNames.TryGetValue(data.Id, out string propertyDefinitionName) + ? propertyDefinitionName + : data.FieldBucketId; var value = GetValue(data); diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityArcToSpeckleRawConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityArcToSpeckleRawConverter.cs new file mode 100644 index 000000000..5c6d9c563 --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityArcToSpeckleRawConverter.cs @@ -0,0 +1,98 @@ +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; +using Speckle.Sdk; + +namespace Speckle.Converters.Civil3dShared.ToSpeckle.Raw; + +public class AlignmentSubentityArcToSpeckleRawConverter : ITypedConverter +{ + private readonly ITypedConverter _planeConverter; + private readonly IConverterSettingsStore _settingsStore; + + public AlignmentSubentityArcToSpeckleRawConverter( + ITypedConverter planeConverter, + IConverterSettingsStore settingsStore + ) + { + _planeConverter = planeConverter; + _settingsStore = settingsStore; + } + + public SOG.Arc Convert(object target) => Convert((CDB.AlignmentSubEntityArc)target); + + public SOG.Arc Convert(CDB.AlignmentSubEntityArc target) + { + string units = _settingsStore.Current.SpeckleUnits; + + // calculate midpoint of chord as between start and end point + AG.Point2d chordMid = + new((target.StartPoint.X + target.EndPoint.X) / 2, (target.StartPoint.Y + target.EndPoint.Y) / 2); + + // calculate sagitta as radius minus distance between arc center and chord midpoint + double sagitta = target.Radius - target.CenterPoint.GetDistanceTo(chordMid); + + // get unit vector from arc center to chord mid + AG.Vector2d midVector = target.CenterPoint.GetVectorTo(chordMid); + AG.Vector2d unitMidVector = midVector.DivideBy(midVector.Length); + + // get midpoint of arc by moving chord mid point the length of the sagitta along mid vector + // if greater than 180 >, move in other direction of distance radius + radius - sagitta + // in the case of an exactly perfect half circle arc...🤷‍♀️ + AG.Point2d midPoint = chordMid.Add(unitMidVector.MultiplyBy(sagitta)); + try + { + if (target.GreaterThan180) // this can throw : The property gets an invalid value according to the entity's constraint type. + { + midPoint = chordMid.Add(unitMidVector.Negate().MultiplyBy(2 * target.Radius - sagitta)); + } + } + catch (Exception e) when (!e.IsFatal()) { } // continue with original midpoint if GreaterThan180 doesn't apply to this arc + + // find arc plane (normal is in clockwise dir) + var center3 = new AG.Point3d(target.CenterPoint.X, target.CenterPoint.Y, 0); + AG.Plane plane = target.Clockwise + ? new AG.Plane(center3, AG.Vector3d.ZAxis.MultiplyBy(-1)) + : new AG.Plane(center3, AG.Vector3d.ZAxis); + + // create arc + SOG.Arc arc = + new() + { + startPoint = new() + { + x = target.StartPoint.X, + y = target.StartPoint.Y, + z = 0, + units = units + }, + endPoint = new() + { + x = target.EndPoint.X, + y = target.EndPoint.Y, + z = 0, + units = units + }, + midPoint = new() + { + x = midPoint.X, + y = midPoint.Y, + z = 0, + units = units + }, + plane = _planeConverter.Convert(plane), + radius = target.Radius, + length = target.Length, + + // additional alignment subentity props + ["startStation"] = target.StartStation, + ["endStation"] = target.EndStation, + ["startDirection"] = target.StartDirection, + ["endDirection"] = target.EndDirection, + ["delta"] = target.Delta, + ["deflectedAngle"] = target.DeflectedAngle, + ["minumumRadius"] = target.MinimumRadius + }; + + return arc; + } +} diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityLineToSpeckleRawConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityLineToSpeckleRawConverter.cs new file mode 100644 index 000000000..f286129ea --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentityLineToSpeckleRawConverter.cs @@ -0,0 +1,49 @@ +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; + +namespace Speckle.Converters.Civil3dShared.ToSpeckle.Raw; + +public class AlignmentSubentityLineToSpeckleRawConverter : ITypedConverter +{ + private readonly IConverterSettingsStore _settingsStore; + + public AlignmentSubentityLineToSpeckleRawConverter(IConverterSettingsStore settingsStore) + { + _settingsStore = settingsStore; + } + + public SOG.Line Convert(object target) => Convert((CDB.AlignmentSubEntityLine)target); + + public SOG.Line Convert(CDB.AlignmentSubEntityLine target) + { + SOG.Point start = + new() + { + x = target.StartPoint.X, + y = target.StartPoint.Y, + z = 0, + units = _settingsStore.Current.SpeckleUnits + }; + + SOG.Point end = + new() + { + x = target.EndPoint.X, + y = target.EndPoint.Y, + z = 0, + units = _settingsStore.Current.SpeckleUnits + }; + + return new() + { + start = start, + end = end, + units = _settingsStore.Current.SpeckleUnits, + + // additional alignment props + ["direction"] = target.Direction, + ["startStation"] = target.StartStation, + ["endStation"] = target.EndStation + }; + } +} diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentitySpiralToSpeckleRawConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentitySpiralToSpeckleRawConverter.cs new file mode 100644 index 000000000..939548081 --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/AlignmentSubentitySpiralToSpeckleRawConverter.cs @@ -0,0 +1,75 @@ +using Speckle.Converters.Common; +using Speckle.Converters.Common.Objects; + +namespace Speckle.Converters.Civil3dShared.ToSpeckle.Raw; + +public class AlignmentSubentitySpiralToSpeckleRawConverter + : ITypedConverter<(CDB.AlignmentSubEntitySpiral, CDB.Alignment), SOG.Polyline> +{ + private readonly ITypedConverter _planeConverter; + private readonly IConverterSettingsStore _settingsStore; + + public AlignmentSubentitySpiralToSpeckleRawConverter( + ITypedConverter planeConverter, + IConverterSettingsStore settingsStore + ) + { + _planeConverter = planeConverter; + _settingsStore = settingsStore; + } + + public SOG.Polyline Convert(object target) => Convert(((CDB.AlignmentSubEntitySpiral, CDB.Alignment))target); + + public SOG.Polyline Convert((CDB.AlignmentSubEntitySpiral, CDB.Alignment) target) + { + CDB.AlignmentSubEntitySpiral spiral = target.Item1; + CDB.Alignment alignment = target.Item2; + + string units = _settingsStore.Current.SpeckleUnits; + + // create polyline, default tessellation length is 1 + var tessellation = 1; + int spiralSegmentCount = System.Convert.ToInt32(Math.Ceiling(spiral.Length / tessellation)); + spiralSegmentCount = (spiralSegmentCount < 10) ? 10 : spiralSegmentCount; + double spiralSegmentLength = spiral.Length / spiralSegmentCount; + List polylineValue = new(spiralSegmentCount * 3) { spiral.StartPoint.X, spiral.StartPoint.Y, 0 }; + for (int i = 1; i < spiralSegmentCount; i++) + { + double x = 0; + double y = 0; + double z = 0; + alignment.PointLocation(spiral.StartStation + i * spiralSegmentLength, 0, 0.001, ref x, ref y, ref z); + polylineValue.Add(x); + polylineValue.Add(y); + polylineValue.Add(z); + } + polylineValue.Add(spiral.EndPoint.X); + polylineValue.Add(spiral.EndPoint.Y); + polylineValue.Add(0); + + SOG.Polyline polyline = + new() + { + value = polylineValue, + units = units, + closed = spiral.StartPoint == spiral.EndPoint, + // add alignment spiral props + length = spiral.Length, + ["delta"] = spiral.Delta, + ["direction"] = spiral.Direction.ToString(), + ["spiralDefinition"] = spiral.SpiralDefinition.ToString(), + ["totalX"] = spiral.TotalX, + ["totalY"] = spiral.TotalY, + ["startStation"] = spiral.StartStation, + ["endStation"] = spiral.EndStation, + ["startDirection"] = spiral.StartDirection, + ["endDirection"] = spiral.EndDirection, + ["a"] = spiral.A, + ["k"] = spiral.K, + ["p"] = spiral.P, + ["minimumTransitionLength"] = spiral.MinimumTransitionLength + }; + + return polyline; + } +} From 6e56c3c190921d945fbfbce14cf8fe4c6d7e2610 Mon Sep 17 00:00:00 2001 From: Claire Kuang Date: Wed, 16 Oct 2024 16:57:49 +0100 Subject: [PATCH 03/13] feat(civil3d): adds subassembly and parcel props (#305) * adds general and class properties extractors * Update Speckle.Converters.Civil3dShared.projitems * adds class properties for catchments * adds catchment group proxies * catchment proxy bug fix * adds site props * Update ClassPropertiesExtractor.cs * Update ClassPropertiesExtractor.cs * adds network, structure, and pipes * registers pipe network * adds alignment basecurves and properties * adds profiles to alignments * adds corridors * fixes di and other corridor bugs * parses corridor solid property sets * Update CorridorHandler.cs * Update CorridorHandler.cs * adds body raw converter to autocad * adds calculated info * adds subassembly props * adds subassemblies, and parcels * adds volume surface stats * removes unnecessary * resolve merge conflict * handles name exception from some entity types * Update DBBodyToSpeckleRawConverter.cs --- .../Helpers/BaseCurveExtractor.cs | 2 + .../CivilEntityToSpeckleTopLevelConverter.cs | 32 +++++- .../Properties/ClassPropertiesExtractor.cs | 29 ++--- .../Properties/GeneralPropertiesExtractor.cs | 106 ++++++++++++++++-- 4 files changed, 147 insertions(+), 22 deletions(-) diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs index f8ee35255..c48fd3c98 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/BaseCurveExtractor.cs @@ -52,6 +52,8 @@ IConverterSettingsStore converterSettings case CDB.Alignment alignment: return GetAlignmentBaseCurves(alignment); + case CDB.Parcel parcel: + return new() { _curveConverter.Convert(parcel.BaseCurve) }; // for any entities that don't use their basecurve prop default: return null; diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs index 25243105c..fbb57679c 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs @@ -3,6 +3,7 @@ using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; using Speckle.Objects; +using Speckle.Sdk; using Speckle.Sdk.Models; namespace Speckle.Converters.Civil3dShared.ToSpeckle.BuiltElements; @@ -35,11 +36,18 @@ CorridorHandler corridorHandler public Base Convert(CDB.Entity target) { + string name = target.DisplayName; + try + { + name = target.Name; // this will throw for some entities like labels + } + catch (Exception e) when (!e.IsFatal()) { } + Base civilObject = new() { ["type"] = target.GetType().ToString().Split('.').Last(), - ["name"] = target.Name, + ["name"] = name, ["units"] = _settingsStore.Current.SpeckleUnits, applicationId = target.GetSpeckleApplicationId() }; @@ -79,7 +87,12 @@ public Base Convert(CDB.Entity target) case CDB.Corridor corridor: children = _corridorHandler.GetCorridorChildren(corridor); break; + + case CDB.Site site: + children = GetSiteChildren(site); + break; } + if (children is not null) { civilObject["@elements"] = children; @@ -88,6 +101,23 @@ public Base Convert(CDB.Entity target) return civilObject; } + private List? GetSiteChildren(CDB.Site site) + { + List parcels = new(); + + using (var tr = _settingsStore.Current.Document.Database.TransactionManager.StartTransaction()) + { + foreach (ADB.ObjectId parcelId in site.GetParcelIds()) + { + var parcel = (CDB.Parcel)tr.GetObject(parcelId, ADB.OpenMode.ForRead); + parcels.Add(Convert(parcel)); + } + + tr.Commit(); + } + return parcels.Count > 0 ? parcels : null; + } + private List? GetAlignmentChildren(CDB.Alignment alignment) { List profiles = new(); diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs index bfe72bccd..da40f1f6e 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs @@ -46,6 +46,8 @@ PipeNetworkHandler pipeNetworkHandler return ExtractCatchmentProperties(catchment); case CDB.Site site: return ExtractSiteProperties(site); + case CDB.Parcel parcel: + return ExtractParcelProperties(parcel); // pipe networks case CDB.Pipe pipe: @@ -59,28 +61,29 @@ PipeNetworkHandler pipeNetworkHandler case CDB.Profile profile: return ExtractProfileProperties(profile); + // assemblies + case CDB.Subassembly subassembly: + return ExtractSubassemblyProperties(subassembly); + default: return null; } } - // For more info on how points are used: https://help.autodesk.com/view/CIV3D/2024/ENU/?guid=GUID-CBABE972-D690-49AE-A7DE-60F2E1B0675D - private Dictionary ExtractPointProperties(CDB.Point point) + private Dictionary ExtractParcelProperties(CDB.Parcel parcel) { - Dictionary pointProperties = - new() - { - ["elevation"] = point.Elevation, - ["station"] = point.Station, - ["isLoopPoint"] = point.IsLoopPoint - }; + return new() { ["number"] = parcel.Number, ["taxId"] = parcel.TaxId }; + } - if (point.Codes.Count > 0) + private Dictionary ExtractSubassemblyProperties(CDB.Subassembly subassembly) + { + Dictionary subassemblyProperties = new(); + if (subassembly.HasSide) { - pointProperties["codes"] = point.Codes.ToList(); + subassemblyProperties["side"] = subassembly.Side; } - return pointProperties; + return subassemblyProperties; } private Dictionary ExtractProfileProperties(CDB.Profile profile) @@ -224,12 +227,10 @@ private void ExtractPartProperties(CDB.Part part, Dictionary di ["area"] = catchment.Area, ["area2d"] = catchment.Area2d, ["boundary"] = boundary, - ["exclusionary"] = catchment.Exclusionary, ["hydrologicalSoilGroup"] = catchment.HydrologicalSoilGroup.ToString(), ["imperviousArea"] = catchment.ImperviousArea, ["manningsCoefficient"] = catchment.ManningsCoefficient, ["perimeter2d"] = catchment.Perimeter2d, - ["runoffCoefficient"] = catchment.RunoffCoefficient, ["timeOfConcentration"] = catchment.TimeOfConcentration }; } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs index 2dcbc4b4e..cdcc17b45 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs @@ -1,4 +1,5 @@ using System.Reflection; +using Autodesk.Civil.Runtime; using Speckle.Converters.Civil3dShared.Extensions; namespace Speckle.Converters.Civil3dShared.ToSpeckle; @@ -19,6 +20,10 @@ public GeneralPropertiesExtractor() { } { switch (entity) { + // catchment -> properties -> Catchment Properties + case CDB.Catchment catchment: + return ExtractCatchmentProperties(catchment); + // surface -> properties -> statistics -> general, extended, and tin/grid properties case CDB.Surface surface: return ExtractSurfaceProperties(surface); @@ -32,20 +37,96 @@ public GeneralPropertiesExtractor() { } case CDB.Corridor corridor: return ExtractCorridorProperties(corridor); - //case CDB.Assembly assembly: - //return ExtractAssemblyProperties(assembly); - - //case CDB.Subassembly subassembly: - //return ExtractSubassemblyProperties(subassembly); + // subassembly -> properties -> parameters, codes + case CDB.Subassembly subassembly: + return ExtractSubassemblyProperties(subassembly); default: return null; } } - //private Dictionary ExtractSubassemblyProperties(CDB.Subassembly subassembly) { } + private Dictionary ExtractCatchmentProperties(CDB.Catchment catchment) + { + Dictionary generalPropertiesDict = new(); - //private Dictionary ExtractAssemblyProperties(CDB.Assembly assembly) { } + // get catchment properties props + Dictionary catchmentPropertiesDict = new(); + + Dictionary hydrologicalProps = new() { ["runoffCoefficient"] = catchment.RunoffCoefficient }; + catchmentPropertiesDict["Hydrological Properties"] = hydrologicalProps; + + Dictionary sheetFlow = + new() + { + ["sheetFlowSegments"] = catchment.SheetFlowSegments, + ["sheetFlowTravelTime"] = catchment.SheetFlowTravelTime + }; + catchmentPropertiesDict["Sheet Flow"] = sheetFlow; + + Dictionary shallowConcentratedFlow = + new() + { + ["shallowFlowSegments"] = catchment.ShallowFlowSegments, + ["shallowFlowTravelTime"] = catchment.ShallowFlowTravelTime + }; + catchmentPropertiesDict["Shallow Concentrated Flow"] = shallowConcentratedFlow; + + Dictionary channelFlow = + new() + { + ["channelFlowSegments"] = catchment.ChannelFlowSegments, + ["channelFlowTravelTime"] = catchment.ChannelFlowTravelTime + }; + catchmentPropertiesDict["Channel Flow"] = channelFlow; + + Dictionary timeOfConcentration = + new() + { + ["timeOfConcentration"] = catchment.TimeOfConcentration, + ["timeOfConcentrationCalculationMethod"] = catchment.TimeOfConcentrationCalculationMethod, + ["hydrologicallyMostDistantPoint"] = catchment.HydrologicallyMostDistantPoint.ToArray(), + ["hydrologicallyMostDistantLength"] = catchment.HydrologicallyMostDistantLength + }; + catchmentPropertiesDict["Time of Concentration"] = timeOfConcentration; + + if (catchmentPropertiesDict.Count > 0) + { + generalPropertiesDict["Catchment Properties"] = catchmentPropertiesDict; + } + + return generalPropertiesDict; + } + + private Dictionary ExtractSubassemblyProperties(CDB.Subassembly subassembly) + { + Dictionary generalPropertiesDict = new(); + + // get parameters props + Dictionary parametersDict = new(); + foreach (ParamBool p in subassembly.ParamsBool) + { + parametersDict[p.DisplayName] = p.Value; + } + foreach (ParamDouble p in subassembly.ParamsDouble) + { + parametersDict[p.DisplayName] = p.Value; + } + foreach (ParamString p in subassembly.ParamsString) + { + parametersDict[p.DisplayName] = p.Value; + } + foreach (ParamLong p in subassembly.ParamsLong) + { + parametersDict[p.DisplayName] = p.Value; + } + if (parametersDict.Count > 0) + { + generalPropertiesDict["Parameters"] = parametersDict; + } + + return generalPropertiesDict; + } private void ProcessCorridorFeaturelinePoints( CDB.CorridorFeatureLine featureline, @@ -252,6 +333,9 @@ CDB.FeatureLineCollection featurelineCollection in offsetFeaturelineCollection.F break; case CDB.TinVolumeSurface tinVolumeSurface: statisticsDict["TIN"] = ExtractPropertiesGeneric(tinVolumeSurface.GetTinProperties()); + statisticsDict["Volume"] = ExtractPropertiesGeneric( + tinVolumeSurface.GetVolumeProperties() + ); break; case CDB.GridSurface gridSurface: statisticsDict["Grid"] = ExtractPropertiesGeneric(gridSurface.GetGridProperties()); @@ -260,6 +344,9 @@ CDB.FeatureLineCollection featurelineCollection in offsetFeaturelineCollection.F statisticsDict["Grid"] = ExtractPropertiesGeneric( gridVolumeSurface.GetGridProperties() ); + statisticsDict["Volume"] = ExtractPropertiesGeneric( + gridVolumeSurface.GetVolumeProperties() + ); break; } @@ -278,6 +365,11 @@ CDB.FeatureLineCollection featurelineCollection in offsetFeaturelineCollection.F foreach (PropertyInfo? property in properties) { var value = property.GetValue(obj); + if (value is ADB.ObjectId id) + { + value = id.GetSpeckleApplicationId(); + } + propertiesDict[property.Name] = value; } From dd17d364c7892a3c7b9b65a0fb512f07f2d3a223 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Thu, 17 Oct 2024 16:53:45 +0100 Subject: [PATCH 04/13] fix(dui3): ensures we don't override structure layers where there's two materials of the same type in the same type, they would override each other; nevertheless, having two plywood layers for one wall is totally acceptable. --- .../ToSpeckle/Parameters/ParameterExtractor.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Parameters/ParameterExtractor.cs b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Parameters/ParameterExtractor.cs index 6f93643b4..5175d34a4 100644 --- a/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Parameters/ParameterExtractor.cs +++ b/Converters/Revit/Speckle.Converters.RevitShared/ToSpeckle/Parameters/ParameterExtractor.cs @@ -77,7 +77,8 @@ ILogger logger { if (_settingsStore.Current.Document.GetElement(layer.MaterialId) is DB.Material material) { - structureDictionary[material.Name] = new Dictionary() + var uniqueLayerName = $"{material.Name} ({layer.LayerId})"; + structureDictionary[uniqueLayerName] = new Dictionary() { ["material"] = material.Name, ["function"] = layer.Function.ToString(), From 7e5fb055c866d5db0a31a728fce7c2f6dc1db34c Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 11:53:39 +0100 Subject: [PATCH 05/13] fix: handles families hosted on curtain wall elements weirdness of revit api continues to impress --- .../HostApp/ElementUnpacker.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/ElementUnpacker.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/ElementUnpacker.cs index 235aba240..bc3304998 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/ElementUnpacker.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/HostApp/ElementUnpacker.cs @@ -93,8 +93,15 @@ private List UnpackElements(IEnumerable elements) private List PackCurtainWallElements(List elements) { var ids = elements.Select(el => el.Id).ToArray(); + var doc = _revitContext.UIApplication?.ActiveUIDocument.Document!; elements.RemoveAll(element => - (element is Mullion m && ids.Contains(m.Host.Id)) || (element is Panel p && ids.Contains(p.Host.Id)) + (element is Mullion m && ids.Contains(m.Host.Id)) + || (element is Panel p && ids.Contains(p.Host.Id)) + || ( + element is FamilyInstance { Host: not null } f + && doc.GetElement(f.Host.Id) is Wall { CurtainGrid: not null } + && ids.Contains(f.Host.Id) + ) ); return elements; } From 639e2c05bff4263c894fe6998fb3ef5473772284 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 12:07:18 +0100 Subject: [PATCH 06/13] fix(revit): send fail on deleted elements CNX-656 cc @bimgeek -> we should probably catch this in tests --- .../Bindings/RevitSendBinding.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs index df3d88257..db65aa3be 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs @@ -132,7 +132,9 @@ public async Task Send(string modelCardId) List revitObjects = modelCard .SendFilter.NotNull() .GetObjectIds() - .Select(uid => activeUIDoc.Document.GetElement(uid).Id) + .Select(uid => activeUIDoc.Document.GetElement(uid)) + .Where(el => el is not null) // NOTE: elements can get deleted from the host app. + .Select(el => el.Id) .ToList(); if (revitObjects.Count == 0) From a37d1c5f85590734a48b950208978008fef4d0a1 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 12:22:27 +0100 Subject: [PATCH 07/13] fix: card preview not working on deleted element ids --- .../Bindings/BasicConnectorBindingRevit.cs | 10 +++++++++- .../Speckle.Connectors.RevitShared/ElementIdHelper.cs | 9 ++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs index 98b5ab4d8..3b2c095fb 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/BasicConnectorBindingRevit.cs @@ -105,6 +105,8 @@ public async Task HighlightModel(string modelCardId) .SendFilter.NotNull() .GetObjectIds() .Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)) + .Where(el => el is not null) + .Cast() .ToList(); } @@ -113,6 +115,8 @@ public async Task HighlightModel(string modelCardId) elementIds = receiverModelCard .BakedObjectIds.NotNull() .Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)) + .Where(el => el is not null) + .Cast() .ToList(); } @@ -138,7 +142,11 @@ public async Task HighlightObjects(IReadOnlyList objectIds) ?? throw new SpeckleException("Unable to retrieve active UI document"); await HighlightObjectsOnView( - objectIds.Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)).ToList() + objectIds + .Select(uid => ElementIdHelper.GetElementIdFromUniqueId(activeUIDoc.Document, uid)) + .Where(el => el is not null) + .Cast() + .ToList() ) .ConfigureAwait(false); ; diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs index e49b6885e..1079af089 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs @@ -5,14 +5,9 @@ namespace Speckle.Connectors.RevitShared; public static class ElementIdHelper { - public static ElementId GetElementIdFromUniqueId(Document doc, string uniqueId) + public static ElementId? GetElementIdFromUniqueId(Document doc, string uniqueId) { Element element = doc.GetElement(uniqueId); - if (element == null) - { - throw new SpeckleException($"Cannot find element with UniqueId: {uniqueId}"); - } - - return element.Id; + return element?.Id; } } From 284c1cfaf6d9d39776a78fd2e4fc7f6eae3a4054 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 14:14:05 +0100 Subject: [PATCH 08/13] chore: comment --- .../Bindings/RevitSendBinding.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs index db65aa3be..62cde7438 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/Bindings/RevitSendBinding.cs @@ -251,6 +251,9 @@ private async Task RunExpirationChecks() } // Note: We're using unique ids as application ids in revit, so cache eviction must happen by those. + // NOTE: this is currently broken when deleting freestanding elements (e.g. unhosted elements) + // To reproduce, draw two unconnected walls, send, delete one wall -> no expiration notice + // I do not yet know the solution besides going back to element ids, but it would mean revisiting why we switched to unique ids (conflicting ids) var objUniqueIds = objectIdsList .Select(id => new ElementId(Convert.ToInt32(id))) .Select(doc.GetElement) From 2bfe780faf0f04374804bd05d66cd9c1fb52265b Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 14:29:22 +0100 Subject: [PATCH 09/13] chore: removes using statement --- .../Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs b/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs index 1079af089..f19938e0f 100644 --- a/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs +++ b/Connectors/Revit/Speckle.Connectors.RevitShared/ElementIdHelper.cs @@ -1,5 +1,4 @@ using Autodesk.Revit.DB; -using Speckle.Sdk; namespace Speckle.Connectors.RevitShared; From 5e3719559133ee1f1ebdab9fc6e82795c835f137 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 16:41:03 +0100 Subject: [PATCH 10/13] fix(rh): scaling incorrectly when copy pasting from one doc to another --- .../Bindings/RhinoBasicConnectorBinding.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs index 16d28833c..54abe87a7 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoBasicConnectorBinding.cs @@ -1,6 +1,7 @@ using Rhino; using Rhino.DocObjects; using Rhino.Geometry; +using Speckle.Connectors.Common.Caching; using Speckle.Connectors.DUI.Bindings; using Speckle.Connectors.DUI.Bridge; using Speckle.Connectors.DUI.Models; @@ -18,16 +19,19 @@ public sealed class RhinoBasicConnectorBinding : IBasicConnectorBinding public BasicConnectorBindingCommands Commands { get; } private readonly DocumentModelStore _store; + private readonly ISendConversionCache _sendConversionCache; private readonly ISpeckleApplication _speckleApplication; public RhinoBasicConnectorBinding( DocumentModelStore store, IBrowserBridge parent, + ISendConversionCache sendConversionCache, ISpeckleApplication speckleApplication ) { _store = store; Parent = parent; + _sendConversionCache = sendConversionCache; _speckleApplication = speckleApplication; Commands = new BasicConnectorBindingCommands(parent); @@ -35,6 +39,8 @@ ISpeckleApplication speckleApplication parent.TopLevelExceptionHandler.FireAndForget(async () => { await Commands.NotifyDocumentChanged().ConfigureAwait(false); + // Note: this prevents scaling issues when copy-pasting from one rhino doc to another in the same session. + _sendConversionCache.ClearCache(); }); } From 661273f7bd0fd0af07ff57efe5c373ca5e517fa5 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Fri, 18 Oct 2024 16:48:53 +0100 Subject: [PATCH 11/13] chore(rhino): ensure more robust expiration checks in rhino --- .../Bindings/RhinoSendBinding.cs | 42 ++++++++++++------- .../Plugin/Speckle.Connectors.RhinoPlugin.cs | 2 +- 2 files changed, 27 insertions(+), 17 deletions(-) diff --git a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs index 0670789a2..698fe7c2e 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Bindings/RhinoSendBinding.cs @@ -97,10 +97,11 @@ private void SubscribeToRhinoEvents() _topLevelExceptionHandler.CatchUnhandled(() => { // NOTE: This does not work if rhino starts and opens a blank doc; - if (!_store.IsDocumentInit) - { - return; - } + // These events always happen in a doc. Why guard agains a null doc? + // if (!_store.IsDocumentInit) + // { + // return; + // } ChangedObjectIds[e.ObjectId.ToString()] = 1; _idleManager.SubscribeToIdle(nameof(RhinoSendBinding), RunExpirationChecks); @@ -110,10 +111,11 @@ private void SubscribeToRhinoEvents() _topLevelExceptionHandler.CatchUnhandled(() => { // NOTE: This does not work if rhino starts and opens a blank doc; - if (!_store.IsDocumentInit) - { - return; - } + // These events always happen in a doc. Why guard agains a null doc? + // if (!_store.IsDocumentInit) + // { + // return; + // } ChangedObjectIds[e.ObjectId.ToString()] = 1; _idleManager.SubscribeToIdle(nameof(RhinoSendBinding), RunExpirationChecks); @@ -123,10 +125,11 @@ private void SubscribeToRhinoEvents() _topLevelExceptionHandler.CatchUnhandled(() => { // NOTE: This does not work if rhino starts and opens a blank doc; - if (!_store.IsDocumentInit) - { - return; - } + // These events always happen in a doc. Why guard agains a null doc? + // if (!_store.IsDocumentInit) + // { + // return; + // } // NOTE: not sure yet we want to track every attribute changes yet. TBD if (e.OldAttributes.LayerIndex != e.NewAttributes.LayerIndex) @@ -140,10 +143,11 @@ private void SubscribeToRhinoEvents() _topLevelExceptionHandler.CatchUnhandled(() => { // NOTE: This does not work if rhino starts and opens a blank doc; - if (!_store.IsDocumentInit) - { - return; - } + // These events always happen in a doc. Why guard agains a null doc? + // if (!_store.IsDocumentInit) + // { + // return; + // } ChangedObjectIds[e.NewRhinoObject.Id.ToString()] = 1; ChangedObjectIds[e.OldRhinoObject.Id.ToString()] = 1; @@ -220,6 +224,12 @@ await Commands /// private async Task RunExpirationChecks() { + // Note: added here a guard against executing this if there's no active doc present. + if (RhinoDoc.ActiveDoc == null) + { + _logger.LogError("Rhino expiration checks were running without an active doc."); + return; + } var senders = _store.GetSenders(); string[] objectIdsList = ChangedObjectIds.Keys.ToArray(); // NOTE: could not copy to array happens here List expiredSenderIds = new(); 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 66e1690d0..a172c693e 100644 --- a/Connectors/Rhino/Speckle.Connectors.RhinoShared/Plugin/Speckle.Connectors.RhinoPlugin.cs +++ b/Connectors/Rhino/Speckle.Connectors.RhinoShared/Plugin/Speckle.Connectors.RhinoPlugin.cs @@ -50,7 +50,7 @@ protected override LoadReturnCode OnLoad(ref string errorMessage) services.AddRhino(); services.AddRhinoConverters(); - // but the Rhino connector has `.rhp` as it's extension. + // but the Rhino connector has `.rhp` as it is extension. Container = services.BuildServiceProvider(); Container.UseDUI(); From 81bf501c85ed7ffa46af186db78b2aa8a10ba671 Mon Sep 17 00:00:00 2001 From: Claire Kuang Date: Mon, 21 Oct 2024 10:14:47 +0100 Subject: [PATCH 12/13] feat(civil3d): adds 2022, 2023, and 2025 versions (#306) * adds 2022,2023,and 2025 versions for civil3d * removes unnecessary assembly info * fixes version api issues * fixes more version api issues * Update CivilEntityToSpeckleTopLevelConverter.cs * more fixes * updates local --- .../Plugin/AppUtils.cs | 14 +- .../Speckle.Connectors.Civil3d2022.csproj | 25 ++ .../packages.lock.json | 392 ++++++++++++++++++ .../Speckle.Connectors.Civil3d2023.csproj | 26 ++ .../packages.lock.json | 392 ++++++++++++++++++ .../Speckle.Connectors.Civil3d2025.csproj | 30 ++ .../packages.lock.json | 370 +++++++++++++++++ .../Speckle.Connectors.Civil3dShared.shproj | 19 +- .../Speckle.Converters.Civil3d2022.csproj | 23 + .../packages.lock.json | 335 +++++++++++++++ .../Speckle.Converters.Civil3d2023.csproj | 23 + .../packages.lock.json | 335 +++++++++++++++ .../Speckle.Converters.Civil3d2025.csproj | 22 + .../packages.lock.json | 348 ++++++++++++++++ .../Civil3dToSpeckleUnitConverter.cs | 2 +- .../Helpers/BaseCurveExtractor.cs | 8 +- .../Helpers/CorridorHandler.cs | 9 +- .../Helpers/DisplayValueExtractor.cs | 26 +- .../CivilEntityToSpeckleTopLevelConverter.cs | 4 +- .../Properties/ClassPropertiesExtractor.cs | 4 + .../Properties/GeneralPropertiesExtractor.cs | 4 +- .../Properties/PropertySetExtractor.cs | 2 +- .../GridSurfaceToSpeckleMeshRawConverter.cs | 14 +- .../TinSurfaceToSpeckleMeshRawConverter.cs | 14 +- Directory.Packages.props | 6 +- Local.sln | 259 +++++++++++- Speckle.Connectors.sln | 156 ++++++- 27 files changed, 2788 insertions(+), 74 deletions(-) create mode 100644 Connectors/Autocad/Speckle.Connectors.Civil3d2022/Speckle.Connectors.Civil3d2022.csproj create mode 100644 Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json create mode 100644 Connectors/Autocad/Speckle.Connectors.Civil3d2023/Speckle.Connectors.Civil3d2023.csproj create mode 100644 Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json create mode 100644 Connectors/Autocad/Speckle.Connectors.Civil3d2025/Speckle.Connectors.Civil3d2025.csproj create mode 100644 Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3d2022/Speckle.Converters.Civil3d2022.csproj create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3d2023/Speckle.Converters.Civil3d2023.csproj create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3d2025/Speckle.Converters.Civil3d2025.csproj create mode 100644 Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json diff --git a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AppUtils.cs b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AppUtils.cs index 441773357..c80e86759 100644 --- a/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AppUtils.cs +++ b/Connectors/Autocad/Speckle.Connectors.AutocadShared/Plugin/AppUtils.cs @@ -10,21 +10,19 @@ public static class AppUtils #elif AUTOCAD HostApplications.AutoCAD; #else - throw new NotImplementedException(); + throw new NotSupportedException(); #endif public static HostAppVersion Version => -#if CIVIL3D2024 - HostAppVersion.v2024; -#elif AUTOCAD2025 +#if AUTOCAD2025 || CIVIL3D2025 HostAppVersion.v2025; -#elif AUTOCAD2024 +#elif AUTOCAD2024 || CIVIL3D2024 HostAppVersion.v2024; -#elif AUTOCAD2023 +#elif AUTOCAD2023|| CIVIL3D2023 HostAppVersion.v2023; -#elif AUTOCAD2022 +#elif AUTOCAD2022 || CIVIL3D2022 HostAppVersion.v2022; #else - throw new NotImplementedException(); + throw new NotSupportedException(); #endif } diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/Speckle.Connectors.Civil3d2022.csproj b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/Speckle.Connectors.Civil3d2022.csproj new file mode 100644 index 000000000..ce6dc4124 --- /dev/null +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/Speckle.Connectors.Civil3d2022.csproj @@ -0,0 +1,25 @@ + + + net48 + x64 + true + 2022 + $(DefineConstants);CIVIL3D;CIVIL3D2022;CIVIL3D2022_OR_GREATER + Debug;Release;Local + Program + $(ProgramW6432)\Autodesk\AutoCAD $(Civil3DVersion)\acad.exe + + + + + + + + + + + + + + + diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json new file mode 100644 index 000000000..6db57b5fb --- /dev/null +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/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.AutoCAD.API": { + "type": "Direct", + "requested": "[2022.0.2, )", + "resolved": "2022.0.2", + "contentHash": "NFHXnlkBjzM8Bau52d6eF6m0+etHddGx7qlWN8YyrfTtGyz+AmPvF8fgxcLgyjAcB3W4Wim11JeYuEoTNH1X0w==" + }, + "Speckle.Civil3D.API": { + "type": "Direct", + "requested": "[2022.0.2, )", + "resolved": "2022.0.2", + "contentHash": "H36v9rA2Ynh4gDCzpBeUcWs4BQwWi3MwgTAnClM22vNbQXZlxjK85iO8i/mJsX57hh8VfqLB8EA7CUw94gBddw==", + "dependencies": { + "Speckle.AutoCAD.API": "2022.0.2" + } + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "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.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.7", + "contentHash": "tiNmV1oPy+Z2R7Wd0bPB/FxCr8B+/5q11OpDMG751GA/YuOL7MZrBFfzv5oFRlFe08K6sjrnbrauzzGIeNrzLQ==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.7", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.7", + "contentHash": "21FRzcJhaTrlv7kTrqr/ltFcSQM2TyuTTPhUcjO8H73od7Bb3QraNW90c7lUucNI/245XPkKZG4fp7/7OsKCSg==", + "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==" + }, + "Polly": { + "type": "Transitive", + "resolved": "7.2.3", + "contentHash": "DeCY0OFbNdNxsjntr1gTXHJ5pKUwYzp04Er2LLeN3g6pWhffsGuKVfMBLe1lw7x76HrPkLxKEFxBlpRxS2nDEQ==" + }, + "Polly.Contrib.WaitAndRetry": { + "type": "Transitive", + "resolved": "1.1.1", + "contentHash": "1MUQLiSo4KDkQe6nzQRhIU05lm9jlexX5BVsbuw0SL82ynZ+GzAHQxJVDPVBboxV37Po3SG077aX8DuSy8TkaA==" + }, + "Polly.Extensions.Http": { + "type": "Transitive", + "resolved": "3.0.0", + "contentHash": "drrG+hB3pYFY7w1c3BD+lSGYvH2oIclH8GRSehgfyP5kjnFnHKQuuBhuHLv+PWyFuaTDyk/vfRpnxOzd11+J8g==", + "dependencies": { + "Polly": "7.1.0" + } + }, + "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.162, )", + "Speckle.Sdk": "[3.1.0-dev.162, )" + } + }, + "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.162, )", + "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.civil3d2022": { + "type": "Project", + "dependencies": { + "Speckle.AutoCAD.API": "[2022.0.2, )", + "Speckle.Civil3D.API": "[2022.0.2, )", + "Speckle.Converters.Common": "[1.0.0, )" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.162, )" + } + }, + "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.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.162" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.7", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Polly": "7.2.3", + "Polly.Contrib.WaitAndRetry": "1.1.1", + "Polly.Extensions.Http": "3.0.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2" + } + }, + "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/Connectors/Autocad/Speckle.Connectors.Civil3d2023/Speckle.Connectors.Civil3d2023.csproj b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/Speckle.Connectors.Civil3d2023.csproj new file mode 100644 index 000000000..3bcd62990 --- /dev/null +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/Speckle.Connectors.Civil3d2023.csproj @@ -0,0 +1,26 @@ + + + net48 + x64 + true + 2023 + $(DefineConstants);CIVIL3D;CIVIL3D2023;CIVIL3D2023_OR_GREATER + Debug;Release;Local + Program + $(ProgramW6432)\Autodesk\AutoCAD $(Civil3DVersion)\acad.exe + + + + + + + + + + + + + + + + diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json new file mode 100644 index 000000000..720e60ece --- /dev/null +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/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.AutoCAD.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "aNfiNw9zRW8pCl8AAQK7afEJuea4bJ4sFNsGVSDrdq1egaonZrwALU01dSyFNCE8tne86eVjlprpOGG6r0+G/A==" + }, + "Speckle.Civil3D.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "URb0wfrxm4jcAApRxZ15a1dmxWDRry8WAuGmUwC7saP5+ltkJOVSOYb6WeJKYhDiJbO3UlVCesTFNnsNjMFd5A==", + "dependencies": { + "Speckle.AutoCAD.API": "2022.0.2" + } + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "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.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.7", + "contentHash": "tiNmV1oPy+Z2R7Wd0bPB/FxCr8B+/5q11OpDMG751GA/YuOL7MZrBFfzv5oFRlFe08K6sjrnbrauzzGIeNrzLQ==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.7", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.7", + "contentHash": "21FRzcJhaTrlv7kTrqr/ltFcSQM2TyuTTPhUcjO8H73od7Bb3QraNW90c7lUucNI/245XPkKZG4fp7/7OsKCSg==", + "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==" + }, + "Polly": { + "type": "Transitive", + "resolved": "7.2.3", + "contentHash": "DeCY0OFbNdNxsjntr1gTXHJ5pKUwYzp04Er2LLeN3g6pWhffsGuKVfMBLe1lw7x76HrPkLxKEFxBlpRxS2nDEQ==" + }, + "Polly.Contrib.WaitAndRetry": { + "type": "Transitive", + "resolved": "1.1.1", + "contentHash": "1MUQLiSo4KDkQe6nzQRhIU05lm9jlexX5BVsbuw0SL82ynZ+GzAHQxJVDPVBboxV37Po3SG077aX8DuSy8TkaA==" + }, + "Polly.Extensions.Http": { + "type": "Transitive", + "resolved": "3.0.0", + "contentHash": "drrG+hB3pYFY7w1c3BD+lSGYvH2oIclH8GRSehgfyP5kjnFnHKQuuBhuHLv+PWyFuaTDyk/vfRpnxOzd11+J8g==", + "dependencies": { + "Polly": "7.1.0" + } + }, + "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.162, )", + "Speckle.Sdk": "[3.1.0-dev.162, )" + } + }, + "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.162, )", + "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.civil3d2023": { + "type": "Project", + "dependencies": { + "Speckle.AutoCAD.API": "[2023.0.0, )", + "Speckle.Civil3D.API": "[2023.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.162, )" + } + }, + "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.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.162" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.7", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Polly": "7.2.3", + "Polly.Contrib.WaitAndRetry": "1.1.1", + "Polly.Extensions.Http": "3.0.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2" + } + }, + "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/Connectors/Autocad/Speckle.Connectors.Civil3d2025/Speckle.Connectors.Civil3d2025.csproj b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/Speckle.Connectors.Civil3d2025.csproj new file mode 100644 index 000000000..2b4f6501a --- /dev/null +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/Speckle.Connectors.Civil3d2025.csproj @@ -0,0 +1,30 @@ + + + net8.0-windows + x64 + true + 2025 + $(DefineConstants);CIVIL3D2025;CIVIL3D + Debug;Release;Local + true + win-x64 + Program + $(ProgramW6432)\Autodesk\AutoCAD $(Civil3DVersion)\acad.exe + + + + + + + + + + + + + + + + + + diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json new file mode 100644 index 000000000..cf68806c5 --- /dev/null +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -0,0 +1,370 @@ +{ + "version": 2, + "dependencies": { + "net8.0-windows7.0": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net461": "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.AutoCAD.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "dqEgZ+bTqAG0tx0WwdnTZcbNKH2igzhOr3SMXtRYai7yIqXiz5btZ4Mf2bmfxbmxLucww3GKVpdZoI+PSZlMuQ==" + }, + "Speckle.Civil3D.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "zWxdzk7M2JE1+PgIpGrCycDUwbmTqJ+YCNMaJPbjUgVKoAiI5w7Ou9ynbFgmQkRuYrkTflbL+s799Fw62PJixQ==", + "dependencies": { + "Speckle.AutoCAD.API": "2025.0.0" + } + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "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.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.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.7", + "contentHash": "tiNmV1oPy+Z2R7Wd0bPB/FxCr8B+/5q11OpDMG751GA/YuOL7MZrBFfzv5oFRlFe08K6sjrnbrauzzGIeNrzLQ==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.7", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.7", + "contentHash": "21FRzcJhaTrlv7kTrqr/ltFcSQM2TyuTTPhUcjO8H73od7Bb3QraNW90c7lUucNI/245XPkKZG4fp7/7OsKCSg==", + "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.net461": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "AmOJZwCqnOCNp6PPcf9joyogScWLtwy0M1WkqfEQ0M9nYwyDD7EX9ZjscKS5iYnyvteX7kzSKFCKt9I9dXA6mA==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Polly": { + "type": "Transitive", + "resolved": "7.2.3", + "contentHash": "DeCY0OFbNdNxsjntr1gTXHJ5pKUwYzp04Er2LLeN3g6pWhffsGuKVfMBLe1lw7x76HrPkLxKEFxBlpRxS2nDEQ==" + }, + "Polly.Contrib.WaitAndRetry": { + "type": "Transitive", + "resolved": "1.1.1", + "contentHash": "1MUQLiSo4KDkQe6nzQRhIU05lm9jlexX5BVsbuw0SL82ynZ+GzAHQxJVDPVBboxV37Po3SG077aX8DuSy8TkaA==" + }, + "Polly.Extensions.Http": { + "type": "Transitive", + "resolved": "3.0.0", + "contentHash": "drrG+hB3pYFY7w1c3BD+lSGYvH2oIclH8GRSehgfyP5kjnFnHKQuuBhuHLv+PWyFuaTDyk/vfRpnxOzd11+J8g==", + "dependencies": { + "Polly": "7.1.0" + } + }, + "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.e_sqlite3": "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.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "CSlb5dUp1FMIkez9Iv5EXzpeq7rHryVNqwJMWnpq87j9zWZexaEMdisDktMsnnrzKM6ahNrsTkjqNodTBPBxtQ==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "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==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==" + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.1", + "contentHash": "Zh8t8oqolRaFa9vmOZfdQm/qKejdqz0J9kr7o2Fu0vPeoH3BL1EOXipKWwkWtLT1JPzjByrF19fGuFlNbmPpiw==" + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.162, )" + } + }, + "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.162, )", + "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.civil3d2025": { + "type": "Project", + "dependencies": { + "Speckle.AutoCAD.API": "[2025.0.0, )", + "Speckle.Civil3d.API": "[2025.0.0, )", + "Speckle.Connectors.DUI.WebView": "[1.0.0, )", + "Speckle.Converters.Common": "[1.0.0, )" + } + }, + "speckle.converters.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", + "Speckle.Objects": "[3.1.0-dev.162, )" + } + }, + "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.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.162" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.7", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Polly": "7.2.3", + "Polly.Contrib.WaitAndRetry": "1.1.1", + "Polly.Extensions.Http": "3.0.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2" + } + }, + "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": { + "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/Autocad/Speckle.Connectors.Civil3dShared/Speckle.Connectors.Civil3dShared.shproj b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Speckle.Connectors.Civil3dShared.shproj index 3d715ea4a..4421529b5 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Speckle.Connectors.Civil3dShared.shproj +++ b/Connectors/Autocad/Speckle.Connectors.Civil3dShared/Speckle.Connectors.Civil3dShared.shproj @@ -1,12 +1,11 @@ - - {41BC679F-887F-44CF-971D-A5502EE87DB0} - - - - - - - + + {EFD01520-93E8-4CCA-8E03-9CDC635F55F4} + + + + + + + \ No newline at end of file diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2022/Speckle.Converters.Civil3d2022.csproj b/Converters/Civil3d/Speckle.Converters.Civil3d2022/Speckle.Converters.Civil3d2022.csproj new file mode 100644 index 000000000..cc2816c43 --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2022/Speckle.Converters.Civil3d2022.csproj @@ -0,0 +1,23 @@ + + + + net48 + x64 + $(DefineConstants);CIVIL3D;CIVIL3D2022;CIVIL3D2022_OR_GREATER + Debug;Release;Local + + + + + + + + + + + + + + + + diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json new file mode 100644 index 000000000..4058ee8fc --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json @@ -0,0 +1,335 @@ +{ + "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.AutoCAD.API": { + "type": "Direct", + "requested": "[2022.0.2, )", + "resolved": "2022.0.2", + "contentHash": "NFHXnlkBjzM8Bau52d6eF6m0+etHddGx7qlWN8YyrfTtGyz+AmPvF8fgxcLgyjAcB3W4Wim11JeYuEoTNH1X0w==" + }, + "Speckle.Civil3D.API": { + "type": "Direct", + "requested": "[2022.0.2, )", + "resolved": "2022.0.2", + "contentHash": "H36v9rA2Ynh4gDCzpBeUcWs4BQwWi3MwgTAnClM22vNbQXZlxjK85iO8i/mJsX57hh8VfqLB8EA7CUw94gBddw==", + "dependencies": { + "Speckle.AutoCAD.API": "2022.0.2" + } + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "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.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.7", + "contentHash": "tiNmV1oPy+Z2R7Wd0bPB/FxCr8B+/5q11OpDMG751GA/YuOL7MZrBFfzv5oFRlFe08K6sjrnbrauzzGIeNrzLQ==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.7", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.7", + "contentHash": "21FRzcJhaTrlv7kTrqr/ltFcSQM2TyuTTPhUcjO8H73od7Bb3QraNW90c7lUucNI/245XPkKZG4fp7/7OsKCSg==", + "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==" + }, + "Polly": { + "type": "Transitive", + "resolved": "7.2.3", + "contentHash": "DeCY0OFbNdNxsjntr1gTXHJ5pKUwYzp04Er2LLeN3g6pWhffsGuKVfMBLe1lw7x76HrPkLxKEFxBlpRxS2nDEQ==" + }, + "Polly.Contrib.WaitAndRetry": { + "type": "Transitive", + "resolved": "1.1.1", + "contentHash": "1MUQLiSo4KDkQe6nzQRhIU05lm9jlexX5BVsbuw0SL82ynZ+GzAHQxJVDPVBboxV37Po3SG077aX8DuSy8TkaA==" + }, + "Polly.Extensions.Http": { + "type": "Transitive", + "resolved": "3.0.0", + "contentHash": "drrG+hB3pYFY7w1c3BD+lSGYvH2oIclH8GRSehgfyP5kjnFnHKQuuBhuHLv+PWyFuaTDyk/vfRpnxOzd11+J8g==", + "dependencies": { + "Polly": "7.1.0" + } + }, + "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.162, )" + } + }, + "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.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.162" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.7", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Polly": "7.2.3", + "Polly.Contrib.WaitAndRetry": "1.1.1", + "Polly.Extensions.Http": "3.0.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2" + } + } + } + } +} \ No newline at end of file diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2023/Speckle.Converters.Civil3d2023.csproj b/Converters/Civil3d/Speckle.Converters.Civil3d2023/Speckle.Converters.Civil3d2023.csproj new file mode 100644 index 000000000..a47a6d94a --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2023/Speckle.Converters.Civil3d2023.csproj @@ -0,0 +1,23 @@ + + + + net48 + x64 + $(DefineConstants);CIVIL3D;CIVIL3D2023;CIVIL3D2023_OR_GREATER + Debug;Release;Local + + + + + + + + + + + + + + + + diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json new file mode 100644 index 000000000..3c587512b --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json @@ -0,0 +1,335 @@ +{ + "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.AutoCAD.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "aNfiNw9zRW8pCl8AAQK7afEJuea4bJ4sFNsGVSDrdq1egaonZrwALU01dSyFNCE8tne86eVjlprpOGG6r0+G/A==" + }, + "Speckle.Civil3D.API": { + "type": "Direct", + "requested": "[2023.0.0, )", + "resolved": "2023.0.0", + "contentHash": "URb0wfrxm4jcAApRxZ15a1dmxWDRry8WAuGmUwC7saP5+ltkJOVSOYb6WeJKYhDiJbO3UlVCesTFNnsNjMFd5A==", + "dependencies": { + "Speckle.AutoCAD.API": "2022.0.2" + } + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "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.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.7", + "contentHash": "tiNmV1oPy+Z2R7Wd0bPB/FxCr8B+/5q11OpDMG751GA/YuOL7MZrBFfzv5oFRlFe08K6sjrnbrauzzGIeNrzLQ==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.7", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.7", + "contentHash": "21FRzcJhaTrlv7kTrqr/ltFcSQM2TyuTTPhUcjO8H73od7Bb3QraNW90c7lUucNI/245XPkKZG4fp7/7OsKCSg==", + "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==" + }, + "Polly": { + "type": "Transitive", + "resolved": "7.2.3", + "contentHash": "DeCY0OFbNdNxsjntr1gTXHJ5pKUwYzp04Er2LLeN3g6pWhffsGuKVfMBLe1lw7x76HrPkLxKEFxBlpRxS2nDEQ==" + }, + "Polly.Contrib.WaitAndRetry": { + "type": "Transitive", + "resolved": "1.1.1", + "contentHash": "1MUQLiSo4KDkQe6nzQRhIU05lm9jlexX5BVsbuw0SL82ynZ+GzAHQxJVDPVBboxV37Po3SG077aX8DuSy8TkaA==" + }, + "Polly.Extensions.Http": { + "type": "Transitive", + "resolved": "3.0.0", + "contentHash": "drrG+hB3pYFY7w1c3BD+lSGYvH2oIclH8GRSehgfyP5kjnFnHKQuuBhuHLv+PWyFuaTDyk/vfRpnxOzd11+J8g==", + "dependencies": { + "Polly": "7.1.0" + } + }, + "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.162, )" + } + }, + "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.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.162" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.7", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Polly": "7.2.3", + "Polly.Contrib.WaitAndRetry": "1.1.1", + "Polly.Extensions.Http": "3.0.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2" + } + } + } + } +} \ No newline at end of file diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/Speckle.Converters.Civil3d2025.csproj b/Converters/Civil3d/Speckle.Converters.Civil3d2025/Speckle.Converters.Civil3d2025.csproj new file mode 100644 index 000000000..11117c78b --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/Speckle.Converters.Civil3d2025.csproj @@ -0,0 +1,22 @@ + + + net8.0-windows + x64 + $(DefineConstants);CIVIL3d2025;CIVIL3D + Debug;Release;Local + + + + + + + + + + + + + + + + diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json new file mode 100644 index 000000000..f614fdbbf --- /dev/null +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -0,0 +1,348 @@ +{ + "version": 2, + "dependencies": { + "net8.0-windows7.0": { + "Microsoft.NETFramework.ReferenceAssemblies": { + "type": "Direct", + "requested": "[1.0.3, )", + "resolved": "1.0.3", + "contentHash": "vUc9Npcs14QsyOD01tnv/m8sQUnGTGOw1BCmKcv77LBJY7OxhJ+zJF7UD/sCL3lYNFuqmQEVlkfS4Quif6FyYg==", + "dependencies": { + "Microsoft.NETFramework.ReferenceAssemblies.net461": "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.AutoCAD.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "dqEgZ+bTqAG0tx0WwdnTZcbNKH2igzhOr3SMXtRYai7yIqXiz5btZ4Mf2bmfxbmxLucww3GKVpdZoI+PSZlMuQ==" + }, + "Speckle.Civil3D.API": { + "type": "Direct", + "requested": "[2025.0.0, )", + "resolved": "2025.0.0", + "contentHash": "zWxdzk7M2JE1+PgIpGrCycDUwbmTqJ+YCNMaJPbjUgVKoAiI5w7Ou9ynbFgmQkRuYrkTflbL+s799Fw62PJixQ==", + "dependencies": { + "Speckle.AutoCAD.API": "2025.0.0" + } + }, + "Speckle.InterfaceGenerator": { + "type": "Direct", + "requested": "[0.9.6, )", + "resolved": "0.9.6", + "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" + }, + "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.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.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.7", + "contentHash": "tiNmV1oPy+Z2R7Wd0bPB/FxCr8B+/5q11OpDMG751GA/YuOL7MZrBFfzv5oFRlFe08K6sjrnbrauzzGIeNrzLQ==", + "dependencies": { + "Microsoft.Data.Sqlite.Core": "7.0.7", + "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" + } + }, + "Microsoft.Data.Sqlite.Core": { + "type": "Transitive", + "resolved": "7.0.7", + "contentHash": "21FRzcJhaTrlv7kTrqr/ltFcSQM2TyuTTPhUcjO8H73od7Bb3QraNW90c7lUucNI/245XPkKZG4fp7/7OsKCSg==", + "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.net461": { + "type": "Transitive", + "resolved": "1.0.3", + "contentHash": "AmOJZwCqnOCNp6PPcf9joyogScWLtwy0M1WkqfEQ0M9nYwyDD7EX9ZjscKS5iYnyvteX7kzSKFCKt9I9dXA6mA==" + }, + "Microsoft.SourceLink.Common": { + "type": "Transitive", + "resolved": "8.0.0", + "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" + }, + "Polly": { + "type": "Transitive", + "resolved": "7.2.3", + "contentHash": "DeCY0OFbNdNxsjntr1gTXHJ5pKUwYzp04Er2LLeN3g6pWhffsGuKVfMBLe1lw7x76HrPkLxKEFxBlpRxS2nDEQ==" + }, + "Polly.Contrib.WaitAndRetry": { + "type": "Transitive", + "resolved": "1.1.1", + "contentHash": "1MUQLiSo4KDkQe6nzQRhIU05lm9jlexX5BVsbuw0SL82ynZ+GzAHQxJVDPVBboxV37Po3SG077aX8DuSy8TkaA==" + }, + "Polly.Extensions.Http": { + "type": "Transitive", + "resolved": "3.0.0", + "contentHash": "drrG+hB3pYFY7w1c3BD+lSGYvH2oIclH8GRSehgfyP5kjnFnHKQuuBhuHLv+PWyFuaTDyk/vfRpnxOzd11+J8g==", + "dependencies": { + "Polly": "7.1.0" + } + }, + "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.e_sqlite3": "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.e_sqlite3": { + "type": "Transitive", + "resolved": "2.1.4", + "contentHash": "CSlb5dUp1FMIkez9Iv5EXzpeq7rHryVNqwJMWnpq87j9zWZexaEMdisDktMsnnrzKM6ahNrsTkjqNodTBPBxtQ==", + "dependencies": { + "SQLitePCLRaw.core": "2.1.4" + } + }, + "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==" + }, + "System.Reactive": { + "type": "Transitive", + "resolved": "5.0.0", + "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==" + }, + "System.Runtime.CompilerServices.Unsafe": { + "type": "Transitive", + "resolved": "4.5.1", + "contentHash": "Zh8t8oqolRaFa9vmOZfdQm/qKejdqz0J9kr7o2Fu0vPeoH3BL1EOXipKWwkWtLT1JPzjByrF19fGuFlNbmPpiw==" + }, + "speckle.connectors.common": { + "type": "Project", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", + "Speckle.Connectors.Logging": "[1.0.0, )", + "Speckle.Objects": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.162, )" + } + }, + "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.162, )", + "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.162, )" + } + }, + "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.Objects": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "dependencies": { + "Speckle.Sdk": "3.1.0-dev.162" + } + }, + "Speckle.Sdk": { + "type": "CentralTransitive", + "requested": "[3.1.0-dev.162, )", + "resolved": "3.1.0-dev.162", + "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "dependencies": { + "GraphQL.Client": "6.0.0", + "Microsoft.CSharp": "4.7.0", + "Microsoft.Data.Sqlite": "7.0.7", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0", + "Microsoft.Extensions.Logging": "2.2.0", + "Polly": "7.2.3", + "Polly.Contrib.WaitAndRetry": "1.1.1", + "Polly.Extensions.Http": "3.0.0", + "Speckle.DoubleNumerics": "4.0.1", + "Speckle.Newtonsoft.Json": "13.0.2" + } + }, + "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/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs index 825bc0162..aba116c04 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Civil3dToSpeckleUnitConverter.cs @@ -28,7 +28,7 @@ public class Civil3dToSpeckleUnitConverter : IHostToSpeckleUnitConverter converterSettings case CDB.Alignment alignment: return GetAlignmentBaseCurves(alignment); - case CDB.Parcel parcel: - return new() { _curveConverter.Convert(parcel.BaseCurve) }; - // for any entities that don't use their basecurve prop + case CDB.FeatureLine: + case CDB.Parcel: + return new() { _curveConverter.Convert(entity.BaseCurve) }; + + // for any entities where basecurve prop doesn't make sense default: return null; } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs index 477bca041..4ced4dfe3 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/CorridorHandler.cs @@ -86,7 +86,11 @@ public List GetCorridorChildren(CDB.Corridor corridor) List regions = new(); foreach (CDB.BaselineRegion region in baseline.BaselineRegions) { +#if CIVIL3D2023_OR_GREATER string regionGuid = region.RegionGUID.ToString(); +#else + string regionGuid = ""; +#endif Base convertedRegion = new() @@ -151,7 +155,7 @@ public List GetCorridorChildren(CDB.Corridor corridor) subassemblyHandle ); - if (CorridorSolidsCache.TryGetValue(corridorSolidsKey, out List display)) + if (CorridorSolidsCache.TryGetValue(corridorSolidsKey, out List? display)) { convertedAppliedSubassembly["displayValue"] = display; } @@ -226,11 +230,13 @@ CDB.AppliedSubassembly appliedSubassembly /// /// Extracts the solids from a corridor and stores in according to property sets on the solid. + /// NOTE: The Export Solids method is only available for version 2024 or greater /// /// /// private void HandleCorridorSolids(CDB.Corridor corridor) { +#if CIVIL3D2024_OR_GREATER CDB.ExportCorridorSolidsParams param = new(); using (var tr = _settingsStore.Current.Document.Database.TransactionManager.StartTransaction()) @@ -273,6 +279,7 @@ private void HandleCorridorSolids(CDB.Corridor corridor) tr.Commit(); } +#endif } private (string, string, string, string, string)? GetCorridorSolidIdFromPropertySet( diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/DisplayValueExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/DisplayValueExtractor.cs index 0ab46cbb4..8bf7abeaa 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/DisplayValueExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/Helpers/DisplayValueExtractor.cs @@ -1,6 +1,7 @@ using Microsoft.Extensions.Logging; using Speckle.Converters.Common; using Speckle.Converters.Common.Objects; +using Speckle.Sdk.Models; namespace Speckle.Converters.Civil3dShared.Helpers; @@ -9,6 +10,7 @@ public sealed class DisplayValueExtractor private readonly ITypedConverter _solidConverter; private readonly ITypedConverter _tinSurfaceConverter; private readonly ITypedConverter _gridSurfaceConverter; + private readonly ITypedConverter _pointCollectionConverter; private readonly ILogger _logger; private readonly IConverterSettingsStore _converterSettings; @@ -16,6 +18,7 @@ public DisplayValueExtractor( ITypedConverter solidConverter, ITypedConverter tinSurfaceConverter, ITypedConverter gridSurfaceConverter, + ITypedConverter pointCollectionConverter, ILogger logger, IConverterSettingsStore converterSettings ) @@ -23,32 +26,37 @@ IConverterSettingsStore converterSettings _solidConverter = solidConverter; _tinSurfaceConverter = tinSurfaceConverter; _gridSurfaceConverter = gridSurfaceConverter; + _pointCollectionConverter = pointCollectionConverter; _logger = logger; _converterSettings = converterSettings; } - public List GetDisplayValue(CDB.Entity entity) + public List GetDisplayValue(CDB.Entity entity) { - List result = new(); switch (entity) { + case CDB.FeatureLine featureline: + SOG.Polyline featurelinePolyline = _pointCollectionConverter.Convert( + featureline.GetPoints(Autodesk.Civil.FeatureLinePointType.PIPoint) + ); + return new() { featurelinePolyline }; + // pipe networks: https://help.autodesk.com/view/CIV3D/2025/ENU/?guid=ade47b62-debf-f899-9b94-5645a620ab4f case CDB.Part part: SOG.Mesh partMesh = _solidConverter.Convert(part.Solid3dBody); - result.Add(partMesh); - break; + return new() { partMesh }; // surfaces: https://help.autodesk.com/view/CIV3D/2025/ENU/?guid=d741aa49-e7da-9513-6b0b-226ebe3fa43f // POC: volume surfaces not supported case CDB.TinSurface tinSurface: SOG.Mesh tinSurfaceMesh = _tinSurfaceConverter.Convert(tinSurface); - result.Add(tinSurfaceMesh); - break; + return new() { tinSurfaceMesh }; case CDB.GridSurface gridSurface: SOG.Mesh gridSurfaceMesh = _gridSurfaceConverter.Convert(gridSurface); - result.Add(gridSurfaceMesh); - break; + return new() { gridSurfaceMesh }; + + default: + return new(); } - return result; } } diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs index fbb57679c..e655036da 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/BuiltElements/CivilEntityToSpeckleTopLevelConverter.cs @@ -60,7 +60,7 @@ public Base Convert(CDB.Entity target) } // extract display value - List display = _displayValueExtractor.GetDisplayValue(target); + List display = _displayValueExtractor.GetDisplayValue(target); if (display.Count > 0) { civilObject["displayValue"] = display; @@ -95,7 +95,7 @@ public Base Convert(CDB.Entity target) if (children is not null) { - civilObject["@elements"] = children; + civilObject["elements"] = children; } return civilObject; diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs index da40f1f6e..c72a9e481 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/ClassPropertiesExtractor.cs @@ -72,7 +72,11 @@ PipeNetworkHandler pipeNetworkHandler private Dictionary ExtractParcelProperties(CDB.Parcel parcel) { +#if CIVIL3D2023_OR_GREATER return new() { ["number"] = parcel.Number, ["taxId"] = parcel.TaxId }; +#else + return new() { ["number"] = parcel.Number }; +#endif } private Dictionary ExtractSubassemblyProperties(CDB.Subassembly subassembly) diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs index cdcc17b45..e5e6ec213 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/GeneralPropertiesExtractor.cs @@ -56,6 +56,7 @@ public GeneralPropertiesExtractor() { } Dictionary hydrologicalProps = new() { ["runoffCoefficient"] = catchment.RunoffCoefficient }; catchmentPropertiesDict["Hydrological Properties"] = hydrologicalProps; +#if CIVIL3D2024_OR_GREATER Dictionary sheetFlow = new() { @@ -79,6 +80,7 @@ public GeneralPropertiesExtractor() { } ["channelFlowTravelTime"] = catchment.ChannelFlowTravelTime }; catchmentPropertiesDict["Channel Flow"] = channelFlow; +#endif Dictionary timeOfConcentration = new() @@ -133,7 +135,7 @@ private void ProcessCorridorFeaturelinePoints( Dictionary> featureLinesDict ) { - if (featureLinesDict.TryGetValue(featureline.CodeName, out Dictionary value)) + if (featureLinesDict.TryGetValue(featureline.CodeName, out Dictionary? value)) { Dictionary pointsDict = new(featureline.FeatureLinePoints.Count); int pointCount = 0; diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs index 6cb52a8dd..494bd26b9 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Properties/PropertySetExtractor.cs @@ -86,7 +86,7 @@ ILogger logger { string dataName = propertyDefinitionNames is not null - && propertyDefinitionNames.TryGetValue(data.Id, out string propertyDefinitionName) + && propertyDefinitionNames.TryGetValue(data.Id, out string? propertyDefinitionName) ? propertyDefinitionName : data.FieldBucketId; diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/GridSurfaceToSpeckleMeshRawConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/GridSurfaceToSpeckleMeshRawConverter.cs index 1c874940a..87f1637e1 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/GridSurfaceToSpeckleMeshRawConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/GridSurfaceToSpeckleMeshRawConverter.cs @@ -36,14 +36,16 @@ public SOG.Mesh Convert(CDB.GridSurface target) foreach (Point3d p in cellVertices) { - if (!indices.ContainsKey(p)) + if (indices.ContainsKey(p)) { - vertices.Add(p.X); - vertices.Add(p.Y); - vertices.Add(p.Z); - indices.Add(p, indexCounter); - indexCounter++; + continue; } + + vertices.Add(p.X); + vertices.Add(p.Y); + vertices.Add(p.Z); + indices.Add(p, indexCounter); + indexCounter++; } faces.Add(4); diff --git a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/TinSurfaceToSpeckleMeshRawConverter.cs b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/TinSurfaceToSpeckleMeshRawConverter.cs index aaf607bd9..d8cd83204 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/TinSurfaceToSpeckleMeshRawConverter.cs +++ b/Converters/Civil3d/Speckle.Converters.Civil3dShared/ToSpeckle/Raw/TinSurfaceToSpeckleMeshRawConverter.cs @@ -34,14 +34,16 @@ public SOG.Mesh Convert(CDB.TinSurface target) }; foreach (Point3d p in triangleVertices) { - if (!indices.ContainsKey(p)) + if (indices.ContainsKey(p)) { - vertices.Add(p.X); - vertices.Add(p.Y); - vertices.Add(p.Z); - indices.Add(p, indexCounter); - indexCounter++; + continue; } + + vertices.Add(p.X); + vertices.Add(p.Y); + vertices.Add(p.Z); + indices.Add(p, indexCounter); + indexCounter++; } faces.Add(3); faces.Add(indices[triangleVertices[0]]); diff --git a/Directory.Packages.props b/Directory.Packages.props index 88a142aae..cbbd05f8b 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -31,8 +31,8 @@ - - + + @@ -47,4 +47,4 @@ - + \ No newline at end of file diff --git a/Local.sln b/Local.sln index 3e877e6fc..e1ac66818 100644 --- a/Local.sln +++ b/Local.sln @@ -130,8 +130,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{B32A4121-C EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{844572F4-7281-49B4-BD92-722607606C98}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Civil3d", "Civil3d", "{333F2603-DE99-4133-A6C1-9CC1DBCFFD21}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{6186EF63-4978-4FA9-9893-7074F9FD0BA4}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2025", "2025", "{48B7AC68-AA4D-4B36-A5DE-7F19607892A6}" @@ -156,101 +154,317 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Revit202 EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Logging", "Sdk\Speckle.Connectors.Logging\Speckle.Connectors.Logging.csproj", "{38497468-6B28-4F8F-A9E0-3167E90DDD89}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connectors.Common", "Sdk\Speckle.Connectors.Common\Speckle.Connectors.Common.csproj", "{3747C01B-343E-4425-A973-4D9D181BE468}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Common", "Sdk\Speckle.Connectors.Common\Speckle.Connectors.Common.csproj", "{3747C01B-343E-4425-A973-4D9D181BE468}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Converters.Common.Tests", "Sdk\Speckle.Converters.Common.Tests\Speckle.Converters.Common.Tests.csproj", "{13225611-10EE-41BB-9198-C88D6E978DA6}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Common.Tests", "Sdk\Speckle.Converters.Common.Tests\Speckle.Converters.Common.Tests.csproj", "{13225611-10EE-41BB-9198-C88D6E978DA6}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tekla", "Tekla", "{AB1AD13B-163E-45F8-8F96-52A921501FA0}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Speckle.Connector.Tekla2024", "Connectors\Tekla\Speckle.Connector.Tekla2024\Speckle.Connector.Tekla2024.csproj", "{8077B6A7-86BD-4E87-8B23-6D168D0E14D9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connector.Tekla2024", "Connectors\Tekla\Speckle.Connector.Tekla2024\Speckle.Connector.Tekla2024.csproj", "{8077B6A7-86BD-4E87-8B23-6D168D0E14D9}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Civil3d2022", "Connectors\Autocad\Speckle.Connectors.Civil3d2022\Speckle.Connectors.Civil3d2022.csproj", "{C3879337-CD00-4011-89C5-585DD2CC3ED5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Civil3d2023", "Connectors\Autocad\Speckle.Connectors.Civil3d2023\Speckle.Connectors.Civil3d2023.csproj", "{FE4CB79D-4E59-4070-871C-108545537E6C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Civil3d2025", "Connectors\Autocad\Speckle.Connectors.Civil3d2025\Speckle.Connectors.Civil3d2025.csproj", "{D4566BF1-56CF-477A-8769-63299A9F45A3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2022", "Converters\Civil3d\Speckle.Converters.Civil3d2022\Speckle.Converters.Civil3d2022.csproj", "{B6C04EC4-ED81-4E61-B4B2-4902015808D7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2023", "Converters\Civil3d\Speckle.Converters.Civil3d2023\Speckle.Converters.Civil3d2023.csproj", "{1F93164A-42EE-4D72-B7CD-9CA831F60E09}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2025", "Converters\Civil3d\Speckle.Converters.Civil3d2025\Speckle.Converters.Civil3d2025.csproj", "{AE75B68F-3594-403B-9719-9C36DA0E3F8A}" +EndProject +Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.Civil3dShared", "Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.shproj", "{EFD01520-93E8-4CCA-8E03-9CDC635F55F4}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU Local|Any CPU = Local|Any CPU + Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {01F98733-7352-47AD-A594-537D979DE3DE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {01F98733-7352-47AD-A594-537D979DE3DE}.Debug|Any CPU.Build.0 = Debug|Any CPU {01F98733-7352-47AD-A594-537D979DE3DE}.Local|Any CPU.ActiveCfg = Local|Any CPU {01F98733-7352-47AD-A594-537D979DE3DE}.Local|Any CPU.Build.0 = Local|Any CPU + {01F98733-7352-47AD-A594-537D979DE3DE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {01F98733-7352-47AD-A594-537D979DE3DE}.Release|Any CPU.Build.0 = Release|Any CPU + {26391930-F86F-47E0-A5F6-B89919E38CE1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {26391930-F86F-47E0-A5F6-B89919E38CE1}.Debug|Any CPU.Build.0 = Debug|Any CPU {26391930-F86F-47E0-A5F6-B89919E38CE1}.Local|Any CPU.ActiveCfg = Local|Any CPU {26391930-F86F-47E0-A5F6-B89919E38CE1}.Local|Any CPU.Build.0 = Local|Any CPU + {26391930-F86F-47E0-A5F6-B89919E38CE1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {26391930-F86F-47E0-A5F6-B89919E38CE1}.Release|Any CPU.Build.0 = Release|Any CPU + {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Debug|Any CPU.Build.0 = Debug|Any CPU {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Local|Any CPU.ActiveCfg = Local|Any CPU {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Local|Any CPU.Build.0 = Local|Any CPU + {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Release|Any CPU.Build.0 = Release|Any CPU + {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Debug|Any CPU.Build.0 = Debug|Any CPU {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Local|Any CPU.ActiveCfg = Local|Any CPU {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Local|Any CPU.Build.0 = Local|Any CPU + {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Release|Any CPU.Build.0 = Release|Any CPU + {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Debug|Any CPU.Build.0 = Debug|Any CPU {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Local|Any CPU.ActiveCfg = Local|Any CPU {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Local|Any CPU.Build.0 = Local|Any CPU + {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Release|Any CPU.Build.0 = Release|Any CPU + {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Debug|Any CPU.Build.0 = Debug|Any CPU {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Local|Any CPU.ActiveCfg = Local|Any CPU {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Local|Any CPU.Build.0 = Local|Any CPU + {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Release|Any CPU.Build.0 = Release|Any CPU + {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Debug|Any CPU.Build.0 = Debug|Any CPU {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Local|Any CPU.ActiveCfg = Local|Any CPU {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Local|Any CPU.Build.0 = Local|Any CPU + {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Release|Any CPU.Build.0 = Release|Any CPU + {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Debug|Any CPU.Build.0 = Debug|Any CPU {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Local|Any CPU.ActiveCfg = Local|Any CPU {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Local|Any CPU.Build.0 = Local|Any CPU + {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Release|Any CPU.Build.0 = Release|Any CPU + {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Debug|Any CPU.Build.0 = Debug|Any CPU {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Local|Any CPU.ActiveCfg = Local|Any CPU {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Local|Any CPU.Build.0 = Local|Any CPU + {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Release|Any CPU.ActiveCfg = Release|Any CPU + {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Release|Any CPU.Build.0 = Release|Any CPU + {631C295A-7CCF-4B42-8686-7034E31469E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {631C295A-7CCF-4B42-8686-7034E31469E7}.Debug|Any CPU.Build.0 = Debug|Any CPU {631C295A-7CCF-4B42-8686-7034E31469E7}.Local|Any CPU.ActiveCfg = Local|Any CPU {631C295A-7CCF-4B42-8686-7034E31469E7}.Local|Any CPU.Build.0 = Local|Any CPU + {631C295A-7CCF-4B42-8686-7034E31469E7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {631C295A-7CCF-4B42-8686-7034E31469E7}.Release|Any CPU.Build.0 = Release|Any CPU + {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Debug|Any CPU.Build.0 = Debug|Any CPU {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Local|Any CPU.ActiveCfg = Local|Any CPU {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Local|Any CPU.Build.0 = Local|Any CPU + {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Release|Any CPU.Build.0 = Release|Any CPU + {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Debug|Any CPU.Build.0 = Debug|Any CPU {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Local|Any CPU.ActiveCfg = Local|Any CPU {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Local|Any CPU.Build.0 = Local|Any CPU + {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Release|Any CPU.Build.0 = Release|Any CPU + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Debug|Any CPU.Build.0 = Debug|Any CPU {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Local|Any CPU.ActiveCfg = Local|Any CPU {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Local|Any CPU.Build.0 = Local|Any CPU + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Release|Any CPU.Build.0 = Release|Any CPU + {C2DE264A-AA87-4012-B954-17E3F403A237}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C2DE264A-AA87-4012-B954-17E3F403A237}.Debug|Any CPU.Build.0 = Debug|Any CPU {C2DE264A-AA87-4012-B954-17E3F403A237}.Local|Any CPU.ActiveCfg = Local|Any CPU {C2DE264A-AA87-4012-B954-17E3F403A237}.Local|Any CPU.Build.0 = Local|Any CPU + {C2DE264A-AA87-4012-B954-17E3F403A237}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C2DE264A-AA87-4012-B954-17E3F403A237}.Release|Any CPU.Build.0 = Release|Any CPU + {25172C49-7AA4-4739-BB07-69785094C379}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {25172C49-7AA4-4739-BB07-69785094C379}.Debug|Any CPU.Build.0 = Debug|Any CPU {25172C49-7AA4-4739-BB07-69785094C379}.Local|Any CPU.ActiveCfg = Local|Any CPU {25172C49-7AA4-4739-BB07-69785094C379}.Local|Any CPU.Build.0 = Local|Any CPU + {25172C49-7AA4-4739-BB07-69785094C379}.Release|Any CPU.ActiveCfg = Release|Any CPU + {25172C49-7AA4-4739-BB07-69785094C379}.Release|Any CPU.Build.0 = Release|Any CPU + {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Debug|Any CPU.Build.0 = Debug|Any CPU {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Local|Any CPU.ActiveCfg = Local|Any CPU {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Local|Any CPU.Build.0 = Local|Any CPU + {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Release|Any CPU.Build.0 = Release|Any CPU + {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Debug|Any CPU.Build.0 = Debug|Any CPU {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Local|Any CPU.ActiveCfg = Local|Any CPU {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Local|Any CPU.Build.0 = Local|Any CPU + {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Release|Any CPU.ActiveCfg = Release|Any CPU + {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Release|Any CPU.Build.0 = Release|Any CPU + {A3869243-B462-4986-914B-94E407D8D20F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A3869243-B462-4986-914B-94E407D8D20F}.Debug|Any CPU.Build.0 = Debug|Any CPU {A3869243-B462-4986-914B-94E407D8D20F}.Local|Any CPU.ActiveCfg = Local|Any CPU {A3869243-B462-4986-914B-94E407D8D20F}.Local|Any CPU.Build.0 = Local|Any CPU + {A3869243-B462-4986-914B-94E407D8D20F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A3869243-B462-4986-914B-94E407D8D20F}.Release|Any CPU.Build.0 = Release|Any CPU + {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Debug|Any CPU.Build.0 = Debug|Any CPU {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Local|Any CPU.ActiveCfg = Local|Any CPU {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Local|Any CPU.Build.0 = Local|Any CPU + {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Release|Any CPU.Build.0 = Release|Any CPU + {67B888D9-C6C4-49F1-883C-5B964151D889}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {67B888D9-C6C4-49F1-883C-5B964151D889}.Debug|Any CPU.Build.0 = Debug|Any CPU {67B888D9-C6C4-49F1-883C-5B964151D889}.Local|Any CPU.ActiveCfg = Local|Any CPU {67B888D9-C6C4-49F1-883C-5B964151D889}.Local|Any CPU.Build.0 = Local|Any CPU + {67B888D9-C6C4-49F1-883C-5B964151D889}.Release|Any CPU.ActiveCfg = Release|Any CPU + {67B888D9-C6C4-49F1-883C-5B964151D889}.Release|Any CPU.Build.0 = Release|Any CPU + {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Debug|Any CPU.Build.0 = Debug|Any CPU {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Local|Any CPU.ActiveCfg = Local|Any CPU {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Local|Any CPU.Build.0 = Local|Any CPU + {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Release|Any CPU.Build.0 = Release|Any CPU + {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Debug|Any CPU.Build.0 = Debug|Any CPU {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Local|Any CPU.ActiveCfg = Local|Any CPU {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Local|Any CPU.Build.0 = Local|Any CPU + {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Release|Any CPU.Build.0 = Release|Any CPU + {4D40A101-07E6-4FF2-8934-83434932591D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4D40A101-07E6-4FF2-8934-83434932591D}.Debug|Any CPU.Build.0 = Debug|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Local|Any CPU.ActiveCfg = Local|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Local|Any CPU.Build.0 = Local|Any CPU + {4D40A101-07E6-4FF2-8934-83434932591D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4D40A101-07E6-4FF2-8934-83434932591D}.Release|Any CPU.Build.0 = Release|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.Build.0 = Debug|Any CPU {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Local|Any CPU.ActiveCfg = Local|Any CPU {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Local|Any CPU.Build.0 = Local|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.Build.0 = Release|Any CPU + {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Debug|Any CPU.Build.0 = Debug|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Local|Any CPU.ActiveCfg = Local|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Local|Any CPU.Build.0 = Local|Any CPU + {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Release|Any CPU.Build.0 = Release|Any CPU + {259A84F0-2D1E-49DE-9137-93BE6858A52C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {259A84F0-2D1E-49DE-9137-93BE6858A52C}.Debug|Any CPU.Build.0 = Debug|Any CPU {259A84F0-2D1E-49DE-9137-93BE6858A52C}.Local|Any CPU.ActiveCfg = Local|Any CPU {259A84F0-2D1E-49DE-9137-93BE6858A52C}.Local|Any CPU.Build.0 = Local|Any CPU + {259A84F0-2D1E-49DE-9137-93BE6858A52C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {259A84F0-2D1E-49DE-9137-93BE6858A52C}.Release|Any CPU.Build.0 = Release|Any CPU + {347CECE7-99DC-49A6-A508-7DE9907B887B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {347CECE7-99DC-49A6-A508-7DE9907B887B}.Debug|Any CPU.Build.0 = Debug|Any CPU {347CECE7-99DC-49A6-A508-7DE9907B887B}.Local|Any CPU.ActiveCfg = Local|Any CPU {347CECE7-99DC-49A6-A508-7DE9907B887B}.Local|Any CPU.Build.0 = Local|Any CPU + {347CECE7-99DC-49A6-A508-7DE9907B887B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {347CECE7-99DC-49A6-A508-7DE9907B887B}.Release|Any CPU.Build.0 = Release|Any CPU + {6F3FD892-6315-4F75-BFBD-843A489F8B94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6F3FD892-6315-4F75-BFBD-843A489F8B94}.Debug|Any CPU.Build.0 = Debug|Any CPU {6F3FD892-6315-4F75-BFBD-843A489F8B94}.Local|Any CPU.ActiveCfg = Local|Any CPU {6F3FD892-6315-4F75-BFBD-843A489F8B94}.Local|Any CPU.Build.0 = Local|Any CPU + {6F3FD892-6315-4F75-BFBD-843A489F8B94}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6F3FD892-6315-4F75-BFBD-843A489F8B94}.Release|Any CPU.Build.0 = Release|Any CPU + {57C1AA51-5BE2-40F3-8CB2-8B7D2AF0FF5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {57C1AA51-5BE2-40F3-8CB2-8B7D2AF0FF5C}.Debug|Any CPU.Build.0 = Debug|Any CPU {57C1AA51-5BE2-40F3-8CB2-8B7D2AF0FF5C}.Local|Any CPU.ActiveCfg = Local|Any CPU {57C1AA51-5BE2-40F3-8CB2-8B7D2AF0FF5C}.Local|Any CPU.Build.0 = Local|Any CPU + {57C1AA51-5BE2-40F3-8CB2-8B7D2AF0FF5C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {57C1AA51-5BE2-40F3-8CB2-8B7D2AF0FF5C}.Release|Any CPU.Build.0 = Release|Any CPU + {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229}.Debug|Any CPU.Build.0 = Debug|Any CPU {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229}.Local|Any CPU.ActiveCfg = Local|Any CPU {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229}.Local|Any CPU.Build.0 = Local|Any CPU + {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229}.Release|Any CPU.Build.0 = Release|Any CPU + {2F04E109-2B13-4DFC-961D-B7EEA94299BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2F04E109-2B13-4DFC-961D-B7EEA94299BD}.Debug|Any CPU.Build.0 = Debug|Any CPU {2F04E109-2B13-4DFC-961D-B7EEA94299BD}.Local|Any CPU.ActiveCfg = Local|Any CPU {2F04E109-2B13-4DFC-961D-B7EEA94299BD}.Local|Any CPU.Build.0 = Local|Any CPU + {2F04E109-2B13-4DFC-961D-B7EEA94299BD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2F04E109-2B13-4DFC-961D-B7EEA94299BD}.Release|Any CPU.Build.0 = Release|Any CPU + {EAAD080D-49AF-49BF-B8BD-A18CEB210734}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EAAD080D-49AF-49BF-B8BD-A18CEB210734}.Debug|Any CPU.Build.0 = Debug|Any CPU {EAAD080D-49AF-49BF-B8BD-A18CEB210734}.Local|Any CPU.ActiveCfg = Local|Any CPU {EAAD080D-49AF-49BF-B8BD-A18CEB210734}.Local|Any CPU.Build.0 = Local|Any CPU + {EAAD080D-49AF-49BF-B8BD-A18CEB210734}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EAAD080D-49AF-49BF-B8BD-A18CEB210734}.Release|Any CPU.Build.0 = Release|Any CPU + {62F50A22-8BBF-497A-B599-F858DFF1D31C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {62F50A22-8BBF-497A-B599-F858DFF1D31C}.Debug|Any CPU.Build.0 = Debug|Any CPU {62F50A22-8BBF-497A-B599-F858DFF1D31C}.Local|Any CPU.ActiveCfg = Local|Any CPU {62F50A22-8BBF-497A-B599-F858DFF1D31C}.Local|Any CPU.Build.0 = Local|Any CPU + {62F50A22-8BBF-497A-B599-F858DFF1D31C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {62F50A22-8BBF-497A-B599-F858DFF1D31C}.Release|Any CPU.Build.0 = Release|Any CPU + {1A2B994C-A36D-4827-8237-0817F56B37E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1A2B994C-A36D-4827-8237-0817F56B37E1}.Debug|Any CPU.Build.0 = Debug|Any CPU {1A2B994C-A36D-4827-8237-0817F56B37E1}.Local|Any CPU.ActiveCfg = Debug|Any CPU {1A2B994C-A36D-4827-8237-0817F56B37E1}.Local|Any CPU.Build.0 = Debug|Any CPU + {1A2B994C-A36D-4827-8237-0817F56B37E1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1A2B994C-A36D-4827-8237-0817F56B37E1}.Release|Any CPU.Build.0 = Release|Any CPU + {27AFBC57-F493-4B51-BEE0-0C364B6A6A13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {27AFBC57-F493-4B51-BEE0-0C364B6A6A13}.Debug|Any CPU.Build.0 = Debug|Any CPU {27AFBC57-F493-4B51-BEE0-0C364B6A6A13}.Local|Any CPU.ActiveCfg = Local|Any CPU {27AFBC57-F493-4B51-BEE0-0C364B6A6A13}.Local|Any CPU.Build.0 = Local|Any CPU + {27AFBC57-F493-4B51-BEE0-0C364B6A6A13}.Release|Any CPU.ActiveCfg = Release|Any CPU + {27AFBC57-F493-4B51-BEE0-0C364B6A6A13}.Release|Any CPU.Build.0 = Release|Any CPU + {5F91F0E5-E7FD-48C1-87C5-0913C55FF094}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5F91F0E5-E7FD-48C1-87C5-0913C55FF094}.Debug|Any CPU.Build.0 = Debug|Any CPU {5F91F0E5-E7FD-48C1-87C5-0913C55FF094}.Local|Any CPU.ActiveCfg = Local|Any CPU {5F91F0E5-E7FD-48C1-87C5-0913C55FF094}.Local|Any CPU.Build.0 = Local|Any CPU + {5F91F0E5-E7FD-48C1-87C5-0913C55FF094}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5F91F0E5-E7FD-48C1-87C5-0913C55FF094}.Release|Any CPU.Build.0 = Release|Any CPU + {C34D0246-6C16-4E81-AE57-2CE70F81484B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C34D0246-6C16-4E81-AE57-2CE70F81484B}.Debug|Any CPU.Build.0 = Debug|Any CPU {C34D0246-6C16-4E81-AE57-2CE70F81484B}.Local|Any CPU.ActiveCfg = Local|Any CPU {C34D0246-6C16-4E81-AE57-2CE70F81484B}.Local|Any CPU.Build.0 = Local|Any CPU + {C34D0246-6C16-4E81-AE57-2CE70F81484B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C34D0246-6C16-4E81-AE57-2CE70F81484B}.Release|Any CPU.Build.0 = Release|Any CPU + {38497468-6B28-4F8F-A9E0-3167E90DDD89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {38497468-6B28-4F8F-A9E0-3167E90DDD89}.Debug|Any CPU.Build.0 = Debug|Any CPU {38497468-6B28-4F8F-A9E0-3167E90DDD89}.Local|Any CPU.ActiveCfg = Debug|Any CPU {38497468-6B28-4F8F-A9E0-3167E90DDD89}.Local|Any CPU.Build.0 = Debug|Any CPU + {38497468-6B28-4F8F-A9E0-3167E90DDD89}.Release|Any CPU.ActiveCfg = Release|Any CPU + {38497468-6B28-4F8F-A9E0-3167E90DDD89}.Release|Any CPU.Build.0 = Release|Any CPU + {3747C01B-343E-4425-A973-4D9D181BE468}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3747C01B-343E-4425-A973-4D9D181BE468}.Debug|Any CPU.Build.0 = Debug|Any CPU {3747C01B-343E-4425-A973-4D9D181BE468}.Local|Any CPU.ActiveCfg = Local|Any CPU {3747C01B-343E-4425-A973-4D9D181BE468}.Local|Any CPU.Build.0 = Local|Any CPU + {3747C01B-343E-4425-A973-4D9D181BE468}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3747C01B-343E-4425-A973-4D9D181BE468}.Release|Any CPU.Build.0 = Release|Any CPU + {13225611-10EE-41BB-9198-C88D6E978DA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {13225611-10EE-41BB-9198-C88D6E978DA6}.Debug|Any CPU.Build.0 = Debug|Any CPU {13225611-10EE-41BB-9198-C88D6E978DA6}.Local|Any CPU.ActiveCfg = Local|Any CPU {13225611-10EE-41BB-9198-C88D6E978DA6}.Local|Any CPU.Build.0 = Local|Any CPU + {13225611-10EE-41BB-9198-C88D6E978DA6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {13225611-10EE-41BB-9198-C88D6E978DA6}.Release|Any CPU.Build.0 = Release|Any CPU + {8077B6A7-86BD-4E87-8B23-6D168D0E14D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8077B6A7-86BD-4E87-8B23-6D168D0E14D9}.Debug|Any CPU.Build.0 = Debug|Any CPU {8077B6A7-86BD-4E87-8B23-6D168D0E14D9}.Local|Any CPU.ActiveCfg = Debug|Any CPU {8077B6A7-86BD-4E87-8B23-6D168D0E14D9}.Local|Any CPU.Build.0 = Debug|Any CPU + {8077B6A7-86BD-4E87-8B23-6D168D0E14D9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8077B6A7-86BD-4E87-8B23-6D168D0E14D9}.Release|Any CPU.Build.0 = Release|Any CPU + {C3879337-CD00-4011-89C5-585DD2CC3ED5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C3879337-CD00-4011-89C5-585DD2CC3ED5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C3879337-CD00-4011-89C5-585DD2CC3ED5}.Local|Any CPU.ActiveCfg = Local|Any CPU + {C3879337-CD00-4011-89C5-585DD2CC3ED5}.Local|Any CPU.Build.0 = Local|Any CPU + {C3879337-CD00-4011-89C5-585DD2CC3ED5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C3879337-CD00-4011-89C5-585DD2CC3ED5}.Release|Any CPU.Build.0 = Release|Any CPU + {FE4CB79D-4E59-4070-871C-108545537E6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FE4CB79D-4E59-4070-871C-108545537E6C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FE4CB79D-4E59-4070-871C-108545537E6C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {FE4CB79D-4E59-4070-871C-108545537E6C}.Local|Any CPU.Build.0 = Local|Any CPU + {FE4CB79D-4E59-4070-871C-108545537E6C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FE4CB79D-4E59-4070-871C-108545537E6C}.Release|Any CPU.Build.0 = Release|Any CPU + {D4566BF1-56CF-477A-8769-63299A9F45A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D4566BF1-56CF-477A-8769-63299A9F45A3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D4566BF1-56CF-477A-8769-63299A9F45A3}.Local|Any CPU.ActiveCfg = Local|Any CPU + {D4566BF1-56CF-477A-8769-63299A9F45A3}.Local|Any CPU.Build.0 = Local|Any CPU + {D4566BF1-56CF-477A-8769-63299A9F45A3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D4566BF1-56CF-477A-8769-63299A9F45A3}.Release|Any CPU.Build.0 = Release|Any CPU + {B6C04EC4-ED81-4E61-B4B2-4902015808D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B6C04EC4-ED81-4E61-B4B2-4902015808D7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B6C04EC4-ED81-4E61-B4B2-4902015808D7}.Local|Any CPU.ActiveCfg = Local|Any CPU + {B6C04EC4-ED81-4E61-B4B2-4902015808D7}.Local|Any CPU.Build.0 = Local|Any CPU + {B6C04EC4-ED81-4E61-B4B2-4902015808D7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B6C04EC4-ED81-4E61-B4B2-4902015808D7}.Release|Any CPU.Build.0 = Release|Any CPU + {1F93164A-42EE-4D72-B7CD-9CA831F60E09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1F93164A-42EE-4D72-B7CD-9CA831F60E09}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1F93164A-42EE-4D72-B7CD-9CA831F60E09}.Local|Any CPU.ActiveCfg = Local|Any CPU + {1F93164A-42EE-4D72-B7CD-9CA831F60E09}.Local|Any CPU.Build.0 = Local|Any CPU + {1F93164A-42EE-4D72-B7CD-9CA831F60E09}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1F93164A-42EE-4D72-B7CD-9CA831F60E09}.Release|Any CPU.Build.0 = Release|Any CPU + {AE75B68F-3594-403B-9719-9C36DA0E3F8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AE75B68F-3594-403B-9719-9C36DA0E3F8A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AE75B68F-3594-403B-9719-9C36DA0E3F8A}.Local|Any CPU.ActiveCfg = Local|Any CPU + {AE75B68F-3594-403B-9719-9C36DA0E3F8A}.Local|Any CPU.Build.0 = Local|Any CPU + {AE75B68F-3594-403B-9719-9C36DA0E3F8A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AE75B68F-3594-403B-9719-9C36DA0E3F8A}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -276,10 +490,10 @@ Global {631C295A-7CCF-4B42-8686-7034E31469E7} = {B32A4121-C9A1-4098-81CD-D799E1491F54} {7420652C-3046-4F38-BE64-9B9E69D76FA2} = {FD4D6594-D81E-456F-8F2E-35B09E04A755} {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89} = {59E8E8F3-4E42-4E92-83B3-B1C2AB901D18} - {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1} = {333F2603-DE99-4133-A6C1-9CC1DBCFFD21} - {35175682-DA83-4C0A-A49D-B191F5885D8E} = {333F2603-DE99-4133-A6C1-9CC1DBCFFD21} + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1} = {844572F4-7281-49B4-BD92-722607606C98} + {35175682-DA83-4C0A-A49D-B191F5885D8E} = {6186EF63-4978-4FA9-9893-7074F9FD0BA4} {C2DE264A-AA87-4012-B954-17E3F403A237} = {844572F4-7281-49B4-BD92-722607606C98} - {25172C49-7AA4-4739-BB07-69785094C379} = {333F2603-DE99-4133-A6C1-9CC1DBCFFD21} + {25172C49-7AA4-4739-BB07-69785094C379} = {844572F4-7281-49B4-BD92-722607606C98} {E1C43415-3200-45F4-8BF9-A4DD7D7F2ED9} = {A5D616EA-1D91-48BE-BAB8-3501A29F1C20} {AC2DB416-F05C-4296-9040-56D6AD4FCD27} = {201AF4EA-F049-4332-A746-42D3413DAE08} {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051} = {E9DEBA00-50A4-485D-BA65-D8AB3E3467AB} @@ -306,7 +520,6 @@ Global {A5D616EA-1D91-48BE-BAB8-3501A29F1C20} = {9584AEE5-CD59-46E6-93E6-2DC2B5285B75} {B32A4121-C9A1-4098-81CD-D799E1491F54} = {804E065F-914C-414A-AF84-009312C3CFF6} {844572F4-7281-49B4-BD92-722607606C98} = {804E065F-914C-414A-AF84-009312C3CFF6} - {333F2603-DE99-4133-A6C1-9CC1DBCFFD21} = {804E065F-914C-414A-AF84-009312C3CFF6} {6186EF63-4978-4FA9-9893-7074F9FD0BA4} = {804E065F-914C-414A-AF84-009312C3CFF6} {48B7AC68-AA4D-4B36-A5DE-7F19607892A6} = {804E065F-914C-414A-AF84-009312C3CFF6} {1B1F674C-CFD5-4EAC-ADFD-F29A70B9D229} = {48B7AC68-AA4D-4B36-A5DE-7F19607892A6} @@ -323,6 +536,13 @@ Global {13225611-10EE-41BB-9198-C88D6E978DA6} = {2E00592E-558D-492D-88F9-3ECEE4C0C7DA} {AB1AD13B-163E-45F8-8F96-52A921501FA0} = {42826721-9A18-4762-8BA9-F1429DD5C5B1} {8077B6A7-86BD-4E87-8B23-6D168D0E14D9} = {AB1AD13B-163E-45F8-8F96-52A921501FA0} + {C3879337-CD00-4011-89C5-585DD2CC3ED5} = {B9CE43B9-31C9-4F02-A92C-658681AD75C6} + {FE4CB79D-4E59-4070-871C-108545537E6C} = {B32A4121-C9A1-4098-81CD-D799E1491F54} + {D4566BF1-56CF-477A-8769-63299A9F45A3} = {48B7AC68-AA4D-4B36-A5DE-7F19607892A6} + {B6C04EC4-ED81-4E61-B4B2-4902015808D7} = {B9CE43B9-31C9-4F02-A92C-658681AD75C6} + {1F93164A-42EE-4D72-B7CD-9CA831F60E09} = {B32A4121-C9A1-4098-81CD-D799E1491F54} + {AE75B68F-3594-403B-9719-9C36DA0E3F8A} = {48B7AC68-AA4D-4B36-A5DE-7F19607892A6} + {EFD01520-93E8-4CCA-8E03-9CDC635F55F4} = {6186EF63-4978-4FA9-9893-7074F9FD0BA4} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} @@ -333,7 +553,8 @@ Global 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 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{1e2644a9-6b31-4350-8772-ceaad6ee0b21}*SharedItemsImports = 5 - Converters\Revit\Speckle.Converters.RevitShared.DependencyInjection\Speckle.Converters.RevitShared.DependencyInjection.projitems*{20751904-0dfc-4126-bf2a-834b53841010}*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\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 @@ -352,31 +573,37 @@ Global 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 - Converters\Autocad\Speckle.Converters.AutocadShared.DependencyInjection\Speckle.Converters.AutocadShared.DependencyInjection.projitems*{6e7d959f-8383-4dc2-bfc2-fcea4ecc60b3}*SharedItemsImports = 13 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{6f3fd892-6315-4f75-bfbd-843a489f8b94}*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 - Converters\Revit\Speckle.Converters.RevitShared.DependencyInjection\Speckle.Converters.RevitShared.DependencyInjection.projitems*{7f3055ba-70aa-424c-8748-345af35127e9}*SharedItemsImports = 5 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{89c4cbc7-1606-40de-b6da-fbe3aac98395}*SharedItemsImports = 5 - Converters\Autocad\Speckle.Converters.AutocadShared.DependencyInjection\Speckle.Converters.AutocadShared.DependencyInjection.projitems*{960a9ed3-8377-4fbb-b781-77a4ecccbb89}*SharedItemsImports = 5 - Converters\Autocad\Speckle.Converters.AutocadShared.DependencyInjection\Speckle.Converters.AutocadShared.DependencyInjection.projitems*{97e20565-43e0-4eb5-a252-8a130eec5bb6}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{9add1b7a-6401-4202-8613-f668e2fbc0a4}*SharedItemsImports = 13 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 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{ac2db416-f05c-4296-9040-56d6ad4fcd27}*SharedItemsImports = 5 - Converters\Autocad\Speckle.Converters.AutocadShared.DependencyInjection\Speckle.Converters.AutocadShared.DependencyInjection.projitems*{af507d61-6766-4c20-9f58-23dc29508219}*SharedItemsImports = 5 + 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\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{b37d4b9a-8d3f-4fa5-b9c8-e6c5f8a0c1e2}*SharedItemsImports = 13 + 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 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 Converters\Revit\Speckle.Converters.RevitShared.Tests\Speckle.Converters.RevitShared.Tests.projitems*{c34d0246-6c16-4e81-ae57-2ce70f81484b}*SharedItemsImports = 5 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\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*SharedItemsImports = 5 - Converters\Autocad\Speckle.Converters.AutocadShared.DependencyInjection\Speckle.Converters.AutocadShared.DependencyInjection.projitems*{d940853c-003a-482c-bdb0-665367f274a0}*SharedItemsImports = 5 + Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*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 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\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\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 EndGlobal diff --git a/Speckle.Connectors.sln b/Speckle.Connectors.sln index 4a9f9659c..20a475d0c 100644 --- a/Speckle.Connectors.sln +++ b/Speckle.Connectors.sln @@ -127,8 +127,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2023", "2023", "{2D5AE63D-8 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "2024", "2024", "{2F45036E-D817-41E9-B82F-DBE013EC95D0}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Civil3d", "Civil3d", "{91D70DE1-DC8E-4AE1-B100-0671D6263FC5}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{4721AA15-AF6E-4A62-A2C3-65564DC563E6}" EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.RhinoShared", "Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.shproj", "{B37D4B9A-8D3F-4FA5-B9C8-E6C5F8A0C1E2}" @@ -163,168 +161,295 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Common.T EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Speckle.Connectors.Civil3dShared", "Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.shproj", "{A1B72EC1-5BC4-41FD-850F-5DA87DF49616}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Civil3d2022", "Connectors\Autocad\Speckle.Connectors.Civil3d2022\Speckle.Connectors.Civil3d2022.csproj", "{81FCEE13-FEAC-475D-9EF9-71132EF26909}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Civil3d2023", "Connectors\Autocad\Speckle.Connectors.Civil3d2023\Speckle.Connectors.Civil3d2023.csproj", "{AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2023", "Converters\Civil3d\Speckle.Converters.Civil3d2023\Speckle.Converters.Civil3d2023.csproj", "{5CDEC958-708E-4D19-A79E-0C1DB23A6039}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2022", "Converters\Civil3d\Speckle.Converters.Civil3d2022\Speckle.Converters.Civil3d2022.csproj", "{842F4BFD-3997-485D-BAB5-9419C1D982F2}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Connectors.Civil3d2025", "Connectors\Autocad\Speckle.Connectors.Civil3d2025\Speckle.Connectors.Civil3d2025.csproj", "{4459F2B1-A340-488E-A856-EB2AE9C72AD4}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Speckle.Converters.Civil3d2025", "Converters\Civil3d\Speckle.Converters.Civil3d2025\Speckle.Converters.Civil3d2025.csproj", "{DB31E57B-60FC-49BE-91E0-1374290BCF03}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Local|Any CPU = Local|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {01F98733-7352-47AD-A594-537D979DE3DE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {01F98733-7352-47AD-A594-537D979DE3DE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {01F98733-7352-47AD-A594-537D979DE3DE}.Local|Any CPU.ActiveCfg = Local|Any CPU + {01F98733-7352-47AD-A594-537D979DE3DE}.Local|Any CPU.Build.0 = Local|Any CPU {01F98733-7352-47AD-A594-537D979DE3DE}.Release|Any CPU.ActiveCfg = Release|Any CPU {01F98733-7352-47AD-A594-537D979DE3DE}.Release|Any CPU.Build.0 = Release|Any CPU {26391930-F86F-47E0-A5F6-B89919E38CE1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {26391930-F86F-47E0-A5F6-B89919E38CE1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {26391930-F86F-47E0-A5F6-B89919E38CE1}.Local|Any CPU.ActiveCfg = Local|Any CPU + {26391930-F86F-47E0-A5F6-B89919E38CE1}.Local|Any CPU.Build.0 = Local|Any CPU {26391930-F86F-47E0-A5F6-B89919E38CE1}.Release|Any CPU.ActiveCfg = Release|Any CPU {26391930-F86F-47E0-A5F6-B89919E38CE1}.Release|Any CPU.Build.0 = Release|Any CPU {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Local|Any CPU.ActiveCfg = Local|Any CPU + {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Local|Any CPU.Build.0 = Local|Any CPU {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Release|Any CPU.ActiveCfg = Release|Any CPU {D81C0B87-F0C1-4297-A147-02F001FB7E1E}.Release|Any CPU.Build.0 = Release|Any CPU {7291B93C-615D-42DE-B8C1-3F9DF643E0FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7291B93C-615D-42DE-B8C1-3F9DF643E0FC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7291B93C-615D-42DE-B8C1-3F9DF643E0FC}.Local|Any CPU.ActiveCfg = Local|Any CPU + {7291B93C-615D-42DE-B8C1-3F9DF643E0FC}.Local|Any CPU.Build.0 = Local|Any CPU {7291B93C-615D-42DE-B8C1-3F9DF643E0FC}.Release|Any CPU.ActiveCfg = Release|Any CPU {7291B93C-615D-42DE-B8C1-3F9DF643E0FC}.Release|Any CPU.Build.0 = Release|Any CPU {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Local|Any CPU.ActiveCfg = Local|Any CPU + {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Local|Any CPU.Build.0 = Local|Any CPU {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Release|Any CPU.ActiveCfg = Release|Any CPU {8AEF06C0-CA5C-4460-BC2D-ADE5F35D0434}.Release|Any CPU.Build.0 = Release|Any CPU {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Local|Any CPU.ActiveCfg = Local|Any CPU + {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Local|Any CPU.Build.0 = Local|Any CPU {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Release|Any CPU.ActiveCfg = Release|Any CPU {1E2644A9-6B31-4350-8772-CEAAD6EE0B21}.Release|Any CPU.Build.0 = Release|Any CPU {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Local|Any CPU.ActiveCfg = Local|Any CPU + {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Local|Any CPU.Build.0 = Local|Any CPU {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Release|Any CPU.ActiveCfg = Release|Any CPU {65A2F556-F14A-49F3-8A92-7F2E1E7ED3B5}.Release|Any CPU.Build.0 = Release|Any CPU {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Local|Any CPU.Build.0 = Local|Any CPU {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Release|Any CPU.ActiveCfg = Release|Any CPU {A97F7177-86C7-4B38-A6ED-DA51BF762471}.Release|Any CPU.Build.0 = Release|Any CPU {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Local|Any CPU.Build.0 = Local|Any CPU {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Release|Any CPU.ActiveCfg = Release|Any CPU {139F7A79-69E4-4B8A-B2A5-6A30A66C495C}.Release|Any CPU.Build.0 = Release|Any CPU {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Debug|Any CPU.Build.0 = Debug|Any CPU + {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Local|Any CPU.ActiveCfg = Local|Any CPU + {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Local|Any CPU.Build.0 = Local|Any CPU {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Release|Any CPU.ActiveCfg = Release|Any CPU {89C4CBC7-1606-40DE-B6DA-FBE3AAC98395}.Release|Any CPU.Build.0 = Release|Any CPU {631C295A-7CCF-4B42-8686-7034E31469E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {631C295A-7CCF-4B42-8686-7034E31469E7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {631C295A-7CCF-4B42-8686-7034E31469E7}.Local|Any CPU.ActiveCfg = Local|Any CPU + {631C295A-7CCF-4B42-8686-7034E31469E7}.Local|Any CPU.Build.0 = Local|Any CPU {631C295A-7CCF-4B42-8686-7034E31469E7}.Release|Any CPU.ActiveCfg = Release|Any CPU {631C295A-7CCF-4B42-8686-7034E31469E7}.Release|Any CPU.Build.0 = Release|Any CPU {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Local|Any CPU.ActiveCfg = Local|Any CPU + {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Local|Any CPU.Build.0 = Local|Any CPU {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Release|Any CPU.ActiveCfg = Release|Any CPU {7420652C-3046-4F38-BE64-9B9E69D76FA2}.Release|Any CPU.Build.0 = Release|Any CPU {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Local|Any CPU.ActiveCfg = Local|Any CPU + {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Local|Any CPU.Build.0 = Local|Any CPU {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Release|Any CPU.ActiveCfg = Release|Any CPU {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89}.Release|Any CPU.Build.0 = Release|Any CPU {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Local|Any CPU.ActiveCfg = Local|Any CPU + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Local|Any CPU.Build.0 = Local|Any CPU {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Release|Any CPU.ActiveCfg = Release|Any CPU {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1}.Release|Any CPU.Build.0 = Release|Any CPU {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0}.Local|Any CPU.ActiveCfg = Local|Any CPU + {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0}.Local|Any CPU.Build.0 = Local|Any CPU {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0}.Release|Any CPU.ActiveCfg = Release|Any CPU {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0}.Release|Any CPU.Build.0 = Release|Any CPU {5505B953-D434-49CE-8EBD-EFD7B3C378F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {5505B953-D434-49CE-8EBD-EFD7B3C378F7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5505B953-D434-49CE-8EBD-EFD7B3C378F7}.Local|Any CPU.ActiveCfg = Local|Any CPU + {5505B953-D434-49CE-8EBD-EFD7B3C378F7}.Local|Any CPU.Build.0 = Local|Any CPU {5505B953-D434-49CE-8EBD-EFD7B3C378F7}.Release|Any CPU.ActiveCfg = Release|Any CPU {5505B953-D434-49CE-8EBD-EFD7B3C378F7}.Release|Any CPU.Build.0 = Release|Any CPU {9166CC10-12E1-4A0F-916B-61F6F2004F5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9166CC10-12E1-4A0F-916B-61F6F2004F5A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9166CC10-12E1-4A0F-916B-61F6F2004F5A}.Local|Any CPU.ActiveCfg = Local|Any CPU + {9166CC10-12E1-4A0F-916B-61F6F2004F5A}.Local|Any CPU.Build.0 = Local|Any CPU {9166CC10-12E1-4A0F-916B-61F6F2004F5A}.Release|Any CPU.ActiveCfg = Release|Any CPU {9166CC10-12E1-4A0F-916B-61F6F2004F5A}.Release|Any CPU.Build.0 = Release|Any CPU {C2DE264A-AA87-4012-B954-17E3F403A237}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C2DE264A-AA87-4012-B954-17E3F403A237}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C2DE264A-AA87-4012-B954-17E3F403A237}.Local|Any CPU.ActiveCfg = Local|Any CPU + {C2DE264A-AA87-4012-B954-17E3F403A237}.Local|Any CPU.Build.0 = Local|Any CPU {C2DE264A-AA87-4012-B954-17E3F403A237}.Release|Any CPU.ActiveCfg = Release|Any CPU {C2DE264A-AA87-4012-B954-17E3F403A237}.Release|Any CPU.Build.0 = Release|Any CPU {25172C49-7AA4-4739-BB07-69785094C379}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {25172C49-7AA4-4739-BB07-69785094C379}.Debug|Any CPU.Build.0 = Debug|Any CPU + {25172C49-7AA4-4739-BB07-69785094C379}.Local|Any CPU.ActiveCfg = Local|Any CPU + {25172C49-7AA4-4739-BB07-69785094C379}.Local|Any CPU.Build.0 = Local|Any CPU {25172C49-7AA4-4739-BB07-69785094C379}.Release|Any CPU.ActiveCfg = Release|Any CPU {25172C49-7AA4-4739-BB07-69785094C379}.Release|Any CPU.Build.0 = Release|Any CPU {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Local|Any CPU.ActiveCfg = Local|Any CPU + {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Local|Any CPU.Build.0 = Local|Any CPU {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Release|Any CPU.ActiveCfg = Release|Any CPU {AC2DB416-F05C-4296-9040-56D6AD4FCD27}.Release|Any CPU.Build.0 = Release|Any CPU {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Debug|Any CPU.Build.0 = Debug|Any CPU + {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Local|Any CPU.ActiveCfg = Local|Any CPU + {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Local|Any CPU.Build.0 = Local|Any CPU {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Release|Any CPU.ActiveCfg = Release|Any CPU {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051}.Release|Any CPU.Build.0 = Release|Any CPU {A3869243-B462-4986-914B-94E407D8D20F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A3869243-B462-4986-914B-94E407D8D20F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A3869243-B462-4986-914B-94E407D8D20F}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A3869243-B462-4986-914B-94E407D8D20F}.Local|Any CPU.Build.0 = Local|Any CPU {A3869243-B462-4986-914B-94E407D8D20F}.Release|Any CPU.ActiveCfg = Release|Any CPU {A3869243-B462-4986-914B-94E407D8D20F}.Release|Any CPU.Build.0 = Release|Any CPU {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Local|Any CPU.ActiveCfg = Local|Any CPU + {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Local|Any CPU.Build.0 = Local|Any CPU {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Release|Any CPU.ActiveCfg = Release|Any CPU {617BD3C7-87D9-4D28-8AC9-4910945BB9FC}.Release|Any CPU.Build.0 = Release|Any CPU {67B888D9-C6C4-49F1-883C-5B964151D889}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {67B888D9-C6C4-49F1-883C-5B964151D889}.Debug|Any CPU.Build.0 = Debug|Any CPU + {67B888D9-C6C4-49F1-883C-5B964151D889}.Local|Any CPU.ActiveCfg = Local|Any CPU + {67B888D9-C6C4-49F1-883C-5B964151D889}.Local|Any CPU.Build.0 = Local|Any CPU {67B888D9-C6C4-49F1-883C-5B964151D889}.Release|Any CPU.ActiveCfg = Release|Any CPU {67B888D9-C6C4-49F1-883C-5B964151D889}.Release|Any CPU.Build.0 = Release|Any CPU {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Local|Any CPU.ActiveCfg = Local|Any CPU + {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Local|Any CPU.Build.0 = Local|Any CPU {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Release|Any CPU.ActiveCfg = Release|Any CPU {C32274D9-1B66-4D5C-82F9-EB3F10F46752}.Release|Any CPU.Build.0 = Release|Any CPU {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Local|Any CPU.Build.0 = Local|Any CPU {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Release|Any CPU.ActiveCfg = Release|Any CPU {A6DE3DA0-B242-4F49-AEF0-4E26AF92D16C}.Release|Any CPU.Build.0 = Release|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4D40A101-07E6-4FF2-8934-83434932591D}.Local|Any CPU.ActiveCfg = Local|Any CPU + {4D40A101-07E6-4FF2-8934-83434932591D}.Local|Any CPU.Build.0 = Local|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Release|Any CPU.ActiveCfg = Release|Any CPU {4D40A101-07E6-4FF2-8934-83434932591D}.Release|Any CPU.Build.0 = Release|Any CPU - {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.Build.0 = Release|Any CPU {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Local|Any CPU.ActiveCfg = Local|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Local|Any CPU.Build.0 = Local|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7F1FDCF2-0CE8-4119-B3C1-F2CC6D7E1C36}.Release|Any CPU.Build.0 = Release|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Local|Any CPU.ActiveCfg = Local|Any CPU + {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Local|Any CPU.Build.0 = Local|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Release|Any CPU.ActiveCfg = Release|Any CPU {19424B55-058C-4E9C-B86F-700AEF9EAEC3}.Release|Any CPU.Build.0 = Release|Any CPU {EB83A3A3-F9B6-4281-8EBF-F7289FB5D885}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {EB83A3A3-F9B6-4281-8EBF-F7289FB5D885}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EB83A3A3-F9B6-4281-8EBF-F7289FB5D885}.Local|Any CPU.ActiveCfg = Local|Any CPU + {EB83A3A3-F9B6-4281-8EBF-F7289FB5D885}.Local|Any CPU.Build.0 = Local|Any CPU {EB83A3A3-F9B6-4281-8EBF-F7289FB5D885}.Release|Any CPU.ActiveCfg = Release|Any CPU {EB83A3A3-F9B6-4281-8EBF-F7289FB5D885}.Release|Any CPU.Build.0 = Release|Any CPU {D8069A23-AD2E-4C9E-8574-7E8C45296A46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D8069A23-AD2E-4C9E-8574-7E8C45296A46}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D8069A23-AD2E-4C9E-8574-7E8C45296A46}.Local|Any CPU.ActiveCfg = Local|Any CPU + {D8069A23-AD2E-4C9E-8574-7E8C45296A46}.Local|Any CPU.Build.0 = Local|Any CPU {D8069A23-AD2E-4C9E-8574-7E8C45296A46}.Release|Any CPU.ActiveCfg = Release|Any CPU {D8069A23-AD2E-4C9E-8574-7E8C45296A46}.Release|Any CPU.Build.0 = Release|Any CPU {A6E3A82F-4696-4D92-ABA1-38AA80752067}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A6E3A82F-4696-4D92-ABA1-38AA80752067}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A6E3A82F-4696-4D92-ABA1-38AA80752067}.Local|Any CPU.ActiveCfg = Local|Any CPU + {A6E3A82F-4696-4D92-ABA1-38AA80752067}.Local|Any CPU.Build.0 = Local|Any CPU {A6E3A82F-4696-4D92-ABA1-38AA80752067}.Release|Any CPU.ActiveCfg = Release|Any CPU {A6E3A82F-4696-4D92-ABA1-38AA80752067}.Release|Any CPU.Build.0 = Release|Any CPU {56A909AE-6E99-4D4D-A22E-38BDC5528B8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {56A909AE-6E99-4D4D-A22E-38BDC5528B8E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {56A909AE-6E99-4D4D-A22E-38BDC5528B8E}.Local|Any CPU.ActiveCfg = Local|Any CPU + {56A909AE-6E99-4D4D-A22E-38BDC5528B8E}.Local|Any CPU.Build.0 = Local|Any CPU {56A909AE-6E99-4D4D-A22E-38BDC5528B8E}.Release|Any CPU.ActiveCfg = Release|Any CPU {56A909AE-6E99-4D4D-A22E-38BDC5528B8E}.Release|Any CPU.Build.0 = Release|Any CPU {C70EBB84-BA5B-4F2F-819E-25E0985BA13C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C70EBB84-BA5B-4F2F-819E-25E0985BA13C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C70EBB84-BA5B-4F2F-819E-25E0985BA13C}.Local|Any CPU.ActiveCfg = Local|Any CPU + {C70EBB84-BA5B-4F2F-819E-25E0985BA13C}.Local|Any CPU.Build.0 = Local|Any CPU {C70EBB84-BA5B-4F2F-819E-25E0985BA13C}.Release|Any CPU.ActiveCfg = Release|Any CPU {C70EBB84-BA5B-4F2F-819E-25E0985BA13C}.Release|Any CPU.Build.0 = Release|Any CPU {9D66EDE4-AFC2-4F00-B40C-A7E878A2972F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9D66EDE4-AFC2-4F00-B40C-A7E878A2972F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9D66EDE4-AFC2-4F00-B40C-A7E878A2972F}.Local|Any CPU.ActiveCfg = Local|Any CPU + {9D66EDE4-AFC2-4F00-B40C-A7E878A2972F}.Local|Any CPU.Build.0 = Local|Any CPU {9D66EDE4-AFC2-4F00-B40C-A7E878A2972F}.Release|Any CPU.ActiveCfg = Release|Any CPU {9D66EDE4-AFC2-4F00-B40C-A7E878A2972F}.Release|Any CPU.Build.0 = Release|Any CPU {5B9A550A-9314-4E91-884E-E54960F589FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {5B9A550A-9314-4E91-884E-E54960F589FB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5B9A550A-9314-4E91-884E-E54960F589FB}.Local|Any CPU.ActiveCfg = Local|Any CPU + {5B9A550A-9314-4E91-884E-E54960F589FB}.Local|Any CPU.Build.0 = Local|Any CPU {5B9A550A-9314-4E91-884E-E54960F589FB}.Release|Any CPU.ActiveCfg = Release|Any CPU {5B9A550A-9314-4E91-884E-E54960F589FB}.Release|Any CPU.Build.0 = Release|Any CPU {8098BAFC-DF1C-4AFA-A93E-08121E6D09D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {8098BAFC-DF1C-4AFA-A93E-08121E6D09D4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8098BAFC-DF1C-4AFA-A93E-08121E6D09D4}.Local|Any CPU.ActiveCfg = Local|Any CPU + {8098BAFC-DF1C-4AFA-A93E-08121E6D09D4}.Local|Any CPU.Build.0 = Local|Any CPU {8098BAFC-DF1C-4AFA-A93E-08121E6D09D4}.Release|Any CPU.ActiveCfg = Release|Any CPU {8098BAFC-DF1C-4AFA-A93E-08121E6D09D4}.Release|Any CPU.Build.0 = Release|Any CPU {2319C00F-B268-4E4C-9F88-6B379E2BBD22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2319C00F-B268-4E4C-9F88-6B379E2BBD22}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2319C00F-B268-4E4C-9F88-6B379E2BBD22}.Local|Any CPU.ActiveCfg = Release|Any CPU + {2319C00F-B268-4E4C-9F88-6B379E2BBD22}.Local|Any CPU.Build.0 = Release|Any CPU {2319C00F-B268-4E4C-9F88-6B379E2BBD22}.Release|Any CPU.ActiveCfg = Release|Any CPU {2319C00F-B268-4E4C-9F88-6B379E2BBD22}.Release|Any CPU.Build.0 = Release|Any CPU {9EF292C6-1333-4502-AD9C-224D99847185}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9EF292C6-1333-4502-AD9C-224D99847185}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9EF292C6-1333-4502-AD9C-224D99847185}.Local|Any CPU.ActiveCfg = Local|Any CPU + {9EF292C6-1333-4502-AD9C-224D99847185}.Local|Any CPU.Build.0 = Local|Any CPU {9EF292C6-1333-4502-AD9C-224D99847185}.Release|Any CPU.ActiveCfg = Release|Any CPU {9EF292C6-1333-4502-AD9C-224D99847185}.Release|Any CPU.Build.0 = Release|Any CPU + {81FCEE13-FEAC-475D-9EF9-71132EF26909}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {81FCEE13-FEAC-475D-9EF9-71132EF26909}.Debug|Any CPU.Build.0 = Debug|Any CPU + {81FCEE13-FEAC-475D-9EF9-71132EF26909}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {81FCEE13-FEAC-475D-9EF9-71132EF26909}.Local|Any CPU.Build.0 = Debug|Any CPU + {81FCEE13-FEAC-475D-9EF9-71132EF26909}.Release|Any CPU.ActiveCfg = Release|Any CPU + {81FCEE13-FEAC-475D-9EF9-71132EF26909}.Release|Any CPU.Build.0 = Release|Any CPU + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}.Local|Any CPU.Build.0 = Debug|Any CPU + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48}.Release|Any CPU.Build.0 = Release|Any CPU + {5CDEC958-708E-4D19-A79E-0C1DB23A6039}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5CDEC958-708E-4D19-A79E-0C1DB23A6039}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5CDEC958-708E-4D19-A79E-0C1DB23A6039}.Local|Any CPU.ActiveCfg = Local|Any CPU + {5CDEC958-708E-4D19-A79E-0C1DB23A6039}.Local|Any CPU.Build.0 = Local|Any CPU + {5CDEC958-708E-4D19-A79E-0C1DB23A6039}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5CDEC958-708E-4D19-A79E-0C1DB23A6039}.Release|Any CPU.Build.0 = Release|Any CPU + {842F4BFD-3997-485D-BAB5-9419C1D982F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {842F4BFD-3997-485D-BAB5-9419C1D982F2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {842F4BFD-3997-485D-BAB5-9419C1D982F2}.Local|Any CPU.ActiveCfg = Local|Any CPU + {842F4BFD-3997-485D-BAB5-9419C1D982F2}.Local|Any CPU.Build.0 = Local|Any CPU + {842F4BFD-3997-485D-BAB5-9419C1D982F2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {842F4BFD-3997-485D-BAB5-9419C1D982F2}.Release|Any CPU.Build.0 = Release|Any CPU + {4459F2B1-A340-488E-A856-EB2AE9C72AD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4459F2B1-A340-488E-A856-EB2AE9C72AD4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4459F2B1-A340-488E-A856-EB2AE9C72AD4}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {4459F2B1-A340-488E-A856-EB2AE9C72AD4}.Local|Any CPU.Build.0 = Debug|Any CPU + {4459F2B1-A340-488E-A856-EB2AE9C72AD4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4459F2B1-A340-488E-A856-EB2AE9C72AD4}.Release|Any CPU.Build.0 = Release|Any CPU + {DB31E57B-60FC-49BE-91E0-1374290BCF03}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DB31E57B-60FC-49BE-91E0-1374290BCF03}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DB31E57B-60FC-49BE-91E0-1374290BCF03}.Local|Any CPU.ActiveCfg = Debug|Any CPU + {DB31E57B-60FC-49BE-91E0-1374290BCF03}.Local|Any CPU.Build.0 = Debug|Any CPU + {DB31E57B-60FC-49BE-91E0-1374290BCF03}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DB31E57B-60FC-49BE-91E0-1374290BCF03}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -351,13 +476,13 @@ Global {631C295A-7CCF-4B42-8686-7034E31469E7} = {2D5AE63D-85C0-43D1-84BF-04418ED93F63} {7420652C-3046-4F38-BE64-9B9E69D76FA2} = {FD4D6594-D81E-456F-8F2E-35B09E04A755} {C50AA3E3-8C31-4131-9DEC-1D8B377D5A89} = {59E8E8F3-4E42-4E92-83B3-B1C2AB901D18} - {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1} = {91D70DE1-DC8E-4AE1-B100-0671D6263FC5} + {CA8EAE01-AB9F-4EC1-B6F3-73721487E9E1} = {2F45036E-D817-41E9-B82F-DBE013EC95D0} {35175682-DA83-4C0A-A49D-B191F5885D8E} = {4721AA15-AF6E-4A62-A2C3-65564DC563E6} {BBF2C19E-221E-4AA0-8521-FE75D8F4A2B0} = {52D71CA4-AE77-4DD4-9456-1E1489413607} {5505B953-D434-49CE-8EBD-EFD7B3C378F7} = {52D71CA4-AE77-4DD4-9456-1E1489413607} {9166CC10-12E1-4A0F-916B-61F6F2004F5A} = {2F45036E-D817-41E9-B82F-DBE013EC95D0} {C2DE264A-AA87-4012-B954-17E3F403A237} = {2F45036E-D817-41E9-B82F-DBE013EC95D0} - {25172C49-7AA4-4739-BB07-69785094C379} = {91D70DE1-DC8E-4AE1-B100-0671D6263FC5} + {25172C49-7AA4-4739-BB07-69785094C379} = {2F45036E-D817-41E9-B82F-DBE013EC95D0} {E1C43415-3200-45F4-8BF9-A4DD7D7F2ED9} = {9039209B-7244-483B-B668-D3CE31B304C1} {AC2DB416-F05C-4296-9040-56D6AD4FCD27} = {19006AA9-C099-467C-B07A-C64B3BFDA1F4} {68CF9BDF-94AC-4D2D-A7BD-D1C064F97051} = {E9DEBA00-50A4-485D-BA65-D8AB3E3467AB} @@ -380,7 +505,6 @@ Global {D8069A23-AD2E-4C9E-8574-7E8C45296A46} = {0AF38BA3-65A0-481B-8CBB-B82E406E1575} {2D5AE63D-85C0-43D1-84BF-04418ED93F63} = {804E065F-914C-414A-AF84-009312C3CFF6} {2F45036E-D817-41E9-B82F-DBE013EC95D0} = {804E065F-914C-414A-AF84-009312C3CFF6} - {91D70DE1-DC8E-4AE1-B100-0671D6263FC5} = {804E065F-914C-414A-AF84-009312C3CFF6} {4721AA15-AF6E-4A62-A2C3-65564DC563E6} = {804E065F-914C-414A-AF84-009312C3CFF6} {B37D4B9A-8D3F-4FA5-B9C8-E6C5F8A0C1E2} = {9039209B-7244-483B-B668-D3CE31B304C1} {19006AA9-C099-467C-B07A-C64B3BFDA1F4} = {9584AEE5-CD59-46E6-93E6-2DC2B5285B75} @@ -398,6 +522,12 @@ Global {2319C00F-B268-4E4C-9F88-6B379E2BBD22} = {696086E4-D8CC-4FE0-A9B3-5F10B9089B55} {9EF292C6-1333-4502-AD9C-224D99847185} = {2E00592E-558D-492D-88F9-3ECEE4C0C7DA} {A1B72EC1-5BC4-41FD-850F-5DA87DF49616} = {4721AA15-AF6E-4A62-A2C3-65564DC563E6} + {81FCEE13-FEAC-475D-9EF9-71132EF26909} = {52D71CA4-AE77-4DD4-9456-1E1489413607} + {AFAB80BD-A4DD-4CAD-9937-ACBFED668A48} = {2D5AE63D-85C0-43D1-84BF-04418ED93F63} + {5CDEC958-708E-4D19-A79E-0C1DB23A6039} = {2D5AE63D-85C0-43D1-84BF-04418ED93F63} + {842F4BFD-3997-485D-BAB5-9419C1D982F2} = {52D71CA4-AE77-4DD4-9456-1E1489413607} + {4459F2B1-A340-488E-A856-EB2AE9C72AD4} = {B2BF1FAE-D0F4-4961-84CB-A00D3CABD236} + {DB31E57B-60FC-49BE-91E0-1374290BCF03} = {B2BF1FAE-D0F4-4961-84CB-A00D3CABD236} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {EE253116-7070-4E9A-BCE8-2911C251B8C8} @@ -412,9 +542,13 @@ Global Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{26391930-f86f-47e0-a5f6-b89919e38ce1}*SharedItemsImports = 5 Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{35175682-da83-4c0a-a49d-b191f5885d8e}*SharedItemsImports = 13 Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{41bc679f-887f-44cf-971d-a5502ee87db0}*SharedItemsImports = 13 + Connectors\Autocad\Speckle.Connectors.AutocadShared\Speckle.Connectors.AutocadShared.projitems*{4459f2b1-a340-488e-a856-eb2ae9c72ad4}*SharedItemsImports = 5 + Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{4459f2b1-a340-488e-a856-eb2ae9c72ad4}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{4d40a101-07e6-4ff2-8934-83434932591d}*SharedItemsImports = 5 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{5505b953-d434-49ce-8ebd-efd7b3c378f7}*SharedItemsImports = 5 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{56a909ae-6e99-4d4d-a22e-38bdc5528b8e}*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\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 Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{631c295a-7ccf-4b42-8686-7034e31469e7}*SharedItemsImports = 5 @@ -425,6 +559,10 @@ Global Connectors\Revit\Speckle.Connectors.RevitShared.Cef\Speckle.Connectors.RevitShared.Cef.projitems*{6a40cbe4-ecab-4ced-9917-5c64cbf75da6}*SharedItemsImports = 13 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*{81fcee13-feac-475d-9ef9-71132ef26909}*SharedItemsImports = 5 + Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{81fcee13-feac-475d-9ef9-71132ef26909}*SharedItemsImports = 5 + 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\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 @@ -434,6 +572,8 @@ Global 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 Converters\Rhino\Speckle.Converters.RhinoShared\Speckle.Converters.RhinoShared.projitems*{ac2db416-f05c-4296-9040-56d6ad4fcd27}*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 Connectors\Rhino\Speckle.Connectors.RhinoShared\Speckle.Connectors.RhinoShared.projitems*{b37d4b9a-8d3f-4fa5-b9c8-e6c5f8a0c1e2}*SharedItemsImports = 13 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 @@ -444,6 +584,8 @@ Global Connectors\Autocad\Speckle.Connectors.Civil3dShared\Speckle.Connectors.Civil3dShared.projitems*{ca8eae01-ab9f-4ec1-b6f3-73721487e9e1}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared.Tests\Speckle.Converters.RevitShared.Tests.projitems*{d8069a23-ad2e-4c9e-8574-7e8c45296a46}*SharedItemsImports = 5 Converters\Revit\Speckle.Converters.RevitShared\Speckle.Converters.RevitShared.projitems*{d8069a23-ad2e-4c9e-8574-7e8c45296a46}*SharedItemsImports = 5 + Converters\Autocad\Speckle.Converters.AutocadShared\Speckle.Converters.AutocadShared.projitems*{db31e57b-60fc-49be-91e0-1374290bcf03}*SharedItemsImports = 5 + Converters\Civil3d\Speckle.Converters.Civil3dShared\Speckle.Converters.Civil3dShared.projitems*{db31e57b-60fc-49be-91e0-1374290bcf03}*SharedItemsImports = 5 Connectors\Revit\Speckle.Connectors.RevitShared\Speckle.Connectors.RevitShared.projitems*{dc570fff-6fe5-47bd-8bc1-b471a6067786}*SharedItemsImports = 13 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 From 7644decc6477af98c34f1ec395d50e7b7783b83a Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Mon, 21 Oct 2024 12:18:46 +0100 Subject: [PATCH 13/13] Update SDK to get tracing to backend (#313) * Update SDK to get tracing to backend * Update Civil versions --- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 20 +++++----- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 22 +++++----- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 20 +++++----- .../packages.lock.json | 40 +++++++++---------- .../Speckle.Connectors.DUI/packages.lock.json | 18 ++++----- Directory.Packages.props | 4 +- .../packages.lock.json | 14 +++---- .../packages.lock.json | 18 ++++----- .../packages.lock.json | 16 ++++---- .../packages.lock.json | 14 +++---- 43 files changed, 408 insertions(+), 408 deletions(-) diff --git a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json index 3d43e5fd2..f08669160 100644 --- a/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json +++ b/Connectors/ArcGIS/Speckle.Connectors.ArcGIS3/packages.lock.json @@ -244,8 +244,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -253,7 +253,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -278,7 +278,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -310,18 +310,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json index 1cd4a4adc..19af999f5 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2022/packages.lock.json @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -283,7 +283,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "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.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -346,18 +346,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json index c760a6a8c..4ec63d837 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2023/packages.lock.json @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -283,7 +283,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "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.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -346,18 +346,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json index 49a789a5b..9d2526713 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2024/packages.lock.json @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -283,7 +283,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "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.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -347,18 +347,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json index 4a022d9e4..a92584541 100644 --- a/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Autocad2025/packages.lock.json @@ -238,8 +238,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -247,7 +247,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -311,18 +311,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json index 6db57b5fb..d4631de1b 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2022/packages.lock.json @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -292,7 +292,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -318,7 +318,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -356,18 +356,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json index 720e60ece..244824e8d 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2023/packages.lock.json @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -292,7 +292,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -318,7 +318,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -356,18 +356,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json index 8e875b34f..b7fdad801 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2024/packages.lock.json @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -292,7 +292,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -318,7 +318,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -356,18 +356,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json index cf68806c5..808d2642a 100644 --- a/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json +++ b/Connectors/Autocad/Speckle.Connectors.Civil3d2025/packages.lock.json @@ -247,8 +247,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -256,7 +256,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -283,7 +283,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -321,18 +321,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json index 8e56f9e6b..73c41a8bb 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2022/packages.lock.json @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -311,7 +311,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -322,7 +322,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.converters.revit2022": { @@ -361,11 +361,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Revit.API": { @@ -376,9 +376,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json index ccab26bf5..e41140357 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2023/packages.lock.json @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -311,7 +311,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -322,7 +322,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.converters.revit2023": { @@ -361,11 +361,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Revit.API": { @@ -376,9 +376,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json index 12629c3d1..9c694a8c8 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2024/packages.lock.json @@ -302,8 +302,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -311,7 +311,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -322,7 +322,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.converters.revit2024": { @@ -361,11 +361,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Revit.API": { @@ -376,9 +376,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json index bef844ca0..716db46dc 100644 --- a/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json +++ b/Connectors/Revit/Speckle.Connectors.Revit2025/packages.lock.json @@ -260,8 +260,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -269,7 +269,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -287,7 +287,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.converters.revit2025": { @@ -332,11 +332,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Revit.API": { @@ -347,9 +347,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json index 8964caa3e..dd0abb152 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino7/packages.lock.json @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -292,7 +292,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "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.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.converters.rhino7": { @@ -355,18 +355,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json index e46e36d3e..f60e36ffd 100644 --- a/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json +++ b/Connectors/Rhino/Speckle.Connectors.Rhino8/packages.lock.json @@ -283,8 +283,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -292,7 +292,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "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.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.converters.rhino8": { @@ -355,18 +355,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json index a827a4946..18e93fa15 100644 --- a/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json +++ b/Connectors/Tekla/Speckle.Connector.Tekla2024/packages.lock.json @@ -399,8 +399,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -408,7 +408,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -457,18 +457,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json index ce5d5d0a4..406af65b4 100644 --- a/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json +++ b/Converters/ArcGIS/Speckle.Converters.ArcGIS3/packages.lock.json @@ -237,7 +237,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -260,18 +260,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json index d793366bf..f3c7bc64a 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2022/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json index 06502516a..c6e104c00 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2023/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json index ae3c4c29f..45823bf94 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2024/packages.lock.json @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -283,7 +283,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "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.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -339,18 +339,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json index aad3d3cc6..e9db2066a 100644 --- a/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json +++ b/Converters/Autocad/Speckle.Converters.Autocad2025/packages.lock.json @@ -238,8 +238,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -247,7 +247,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -265,7 +265,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -303,18 +303,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json index 4058ee8fc..4283d9f9a 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2022/packages.lock.json @@ -282,7 +282,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -305,18 +305,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json index 3c587512b..368f65b19 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2023/packages.lock.json @@ -282,7 +282,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -305,18 +305,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json index 1d5682905..dd7293f62 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2024/packages.lock.json @@ -282,7 +282,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -305,18 +305,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json index f614fdbbf..c3d5274c2 100644 --- a/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json +++ b/Converters/Civil3d/Speckle.Converters.Civil3d2025/packages.lock.json @@ -247,8 +247,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -256,7 +256,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -274,7 +274,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.DependencyInjection": { @@ -312,18 +312,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json index 693ece02c..322fadb88 100644 --- a/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2022.Tests/packages.lock.json @@ -363,7 +363,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.testing": { @@ -393,18 +393,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json index 4f91063c7..ff498feac 100644 --- a/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2022/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json index 70c7e011c..9d586b7e1 100644 --- a/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2023.Tests/packages.lock.json @@ -363,7 +363,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.testing": { @@ -393,18 +393,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json index 22fd4ef63..8ada0ee5b 100644 --- a/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2023/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json index 2112e0a11..8f6942e30 100644 --- a/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2024.Tests/packages.lock.json @@ -363,7 +363,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.testing": { @@ -393,18 +393,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json index 2b3064cd4..f21e26271 100644 --- a/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2024/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json index 0c3e5dbe5..5f01cf856 100644 --- a/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json +++ b/Converters/Revit/Speckle.Converters.Revit2025/packages.lock.json @@ -237,7 +237,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -260,18 +260,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json index f160cf303..03fef84bb 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino7.Tests/packages.lock.json @@ -363,7 +363,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.testing": { @@ -393,18 +393,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json index 36eff02fd..ded5ea524 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino7/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json index 5fa802b9a..fc7b11b50 100644 --- a/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json +++ b/Converters/Rhino/Speckle.Converters.Rhino8/packages.lock.json @@ -273,7 +273,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "Microsoft.Extensions.Logging": { @@ -296,18 +296,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json index e2c78991c..8908c3135 100644 --- a/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.Tests/packages.lock.json @@ -342,8 +342,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -351,7 +351,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -394,18 +394,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json index 914064d33..f83ebe60d 100644 --- a/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json +++ b/DUI3/Speckle.Connectors.DUI.WebView/packages.lock.json @@ -274,8 +274,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -283,7 +283,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -319,18 +319,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -588,8 +588,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.dui": { @@ -597,7 +597,7 @@ "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", "Speckle.Connectors.Common": "[1.0.0, )", - "Speckle.Sdk": "[3.1.0-dev.162, )", + "Speckle.Sdk": "[3.1.0-dev.164, )", "System.Threading.Tasks.Dataflow": "[6.0.0, )" } }, @@ -633,18 +633,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/DUI3/Speckle.Connectors.DUI/packages.lock.json b/DUI3/Speckle.Connectors.DUI/packages.lock.json index b88c79359..08f43f56a 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.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", @@ -325,8 +325,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.logging": { @@ -355,11 +355,11 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } } } diff --git a/Directory.Packages.props b/Directory.Packages.props index cbbd05f8b..319af5ed1 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -38,8 +38,8 @@ - - + + diff --git a/Sdk/Speckle.Connectors.Common/packages.lock.json b/Sdk/Speckle.Connectors.Common/packages.lock.json index 5b10bc71e..0f9411133 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.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "Direct", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Sdk/Speckle.Connectors.Tests/packages.lock.json b/Sdk/Speckle.Connectors.Tests/packages.lock.json index 89be98716..7faa56e38 100644 --- a/Sdk/Speckle.Connectors.Tests/packages.lock.json +++ b/Sdk/Speckle.Connectors.Tests/packages.lock.json @@ -342,8 +342,8 @@ "dependencies": { "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", "Speckle.Connectors.Logging": "[1.0.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )", - "Speckle.Sdk": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )", + "Speckle.Sdk": "[3.1.0-dev.164, )" } }, "speckle.connectors.logging": { @@ -385,18 +385,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json index f87ed6f29..f63e7a5e8 100644 --- a/Sdk/Speckle.Converters.Common.Tests/packages.lock.json +++ b/Sdk/Speckle.Converters.Common.Tests/packages.lock.json @@ -350,7 +350,7 @@ "type": "Project", "dependencies": { "Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )", - "Speckle.Objects": "[3.1.0-dev.162, )" + "Speckle.Objects": "[3.1.0-dev.164, )" } }, "speckle.testing": { @@ -380,18 +380,18 @@ }, "Speckle.Objects": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0", diff --git a/Sdk/Speckle.Converters.Common/packages.lock.json b/Sdk/Speckle.Converters.Common/packages.lock.json index 04a7d94ad..c51d87f00 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.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "1fyaPjC1kVtroKfoXI7edJX0Uho/TNRWG9mtmIQ7jKhX1zElrJPSoH8zEIMqckZhGmwUrYjlQFPssASNCP721Q==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "bvQ7xwOWFm9fYdWr111Q/PKgHaMEfV08uE0erQyZuLYCJ9sFJKRcbQlaf4d6VRzl/fVJm8ypqIdtXgQtsiMSlQ==", "dependencies": { - "Speckle.Sdk": "3.1.0-dev.162" + "Speckle.Sdk": "3.1.0-dev.164" } }, "GraphQL.Client": { @@ -319,9 +319,9 @@ }, "Speckle.Sdk": { "type": "CentralTransitive", - "requested": "[3.1.0-dev.162, )", - "resolved": "3.1.0-dev.162", - "contentHash": "ulT3XNgqIQSmpQFK5YEEwRq4RA6emXBKQHnZxtCz37SJin1PnVpH9m8vOAF9FmaWsgSAfjhhjIZDruMu1oKxSg==", + "requested": "[3.1.0-dev.164, )", + "resolved": "3.1.0-dev.164", + "contentHash": "b88QWWSPYs3h9H2Af78TrKclyjYd7OxmKwx4p2C7IgFzaDW51dSd9o0pEB7H3Ao4ydCoOW9Xey8v1lhfckl09w==", "dependencies": { "GraphQL.Client": "6.0.0", "Microsoft.CSharp": "4.7.0",