Compare commits

..

29 Commits

Author SHA1 Message Date
Oğuzhan Koral 634f3b89f7 Merge pull request #653 from specklesystems/dev
.NET Build and Publish / build-windows (push) Has been cancelled
.NET Build and Publish / build-linux (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update dev to release
2025-03-06 19:49:26 +03:00
Jedd Morgan e1e500d64d Merge pull request #642 from specklesystems/dev
Test release for IFC Importer
2025-03-04 16:22:04 +00:00
Jedd Morgan 32aec83cec Merge pull request #639 from specklesystems/dev
Test release to test CI changes on connector-installers
2025-03-03 14:33:25 +00:00
Oğuzhan Koral deb2d7fd37 Merge pull request #633 from specklesystems/dev
.NET Build and Publish / build-windows (push) Has been cancelled
.NET Build and Publish / build-linux (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update dev to release
2025-02-27 14:10:33 +03:00
Jedd Morgan 345a555eba Merge pull request #630 from specklesystems/dev
Release to test Tekla
2025-02-26 18:30:57 +00:00
Jedd Morgan 85b6468939 Merge pull request #626 from specklesystems/dev
Retrigger test release
2025-02-26 15:28:43 +00:00
Jedd Morgan c55db8e275 Merge pull request #625 from specklesystems/dev
Test release to test new installers
2025-02-26 11:51:29 +00:00
Jedd Morgan 641c36e9a8 Merge pull request #620 from specklesystems/dev
Test release again
2025-02-25 13:34:39 +00:00
Jedd Morgan c859a0c44d Merge pull request #618 from specklesystems/dev
Test release of desktop services and installers
2025-02-24 17:43:26 +00:00
Oğuzhan Koral 4bbddd46b5 Merge pull request #601 from specklesystems/dev
.NET Build and Publish / build-windows (push) Has been cancelled
.NET Build and Publish / build-linux (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update release to dev
2025-02-19 03:15:43 +03:00
Oğuzhan Koral 96e729ef50 Merge pull request #595 from specklesystems/dev
.NET Build and Publish / build-windows (push) Has been cancelled
.NET Build and Publish / build-linux (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update releases to dev
2025-02-18 19:38:22 +03:00
Björn Steinhagen 6d4e12dfae Merge pull request #591 from specklesystems/dev
test(etabs): bundled installer with ini file magic
2025-02-17 13:52:57 +01:00
Oğuzhan Koral 929db22785 Merge pull request #578 from specklesystems/dev
.NET Build and Publish / build-windows (push) Has been cancelled
.NET Build and Publish / build-linux (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
update release from dev
2025-02-10 17:53:46 +00:00
Jedd Morgan 931d7ff8d2 Merge pull request #577 from specklesystems/dev
test(etabs): installer
2025-02-10 10:27:38 +00:00
Jedd Morgan e78914955c Merge pull request #541 from specklesystems/dev
test(etabs): installer
2025-01-30 17:22:52 +00:00
Jedd Morgan 87569c9c66 Merge pull request #537 from specklesystems/dev
Test for ETABS installer
2025-01-29 15:19:34 +00:00
Oğuzhan Koral 189ea3a19b Merge pull request #501 from specklesystems/dev
.NET Build and Publish / build-windows (push) Has been cancelled
.NET Build and Publish / build-linux (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update dev to release
2025-01-16 19:18:02 +03:00
Oğuzhan Koral 370588fa89 Merge pull request #461 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update dev to release
2024-12-20 16:14:59 +03:00
Oğuzhan Koral c9802396f5 Merge pull request #448 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update dev to release
2024-12-13 01:54:05 +03:00
Oğuzhan Koral 9644444ea7 Merge pull request #437 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update dev to release
2024-12-04 22:38:16 +03:00
Alan Rynne bb0fffd4d7 Merge pull request #414 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update `release/3.0.0` with changes from `dev`
2024-11-27 16:23:50 +01:00
Alan Rynne c719cfd66f Merge pull request #383 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update `release/3.0.0` with changes from `dev`
2024-11-12 15:56:02 +01:00
Oğuzhan Koral 92435ce1a1 Merge pull request #376 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update release/3.0.0 with changes from dev
2024-11-08 18:16:16 +00:00
Oğuzhan Koral 71409e8af8 Merge pull request #374 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update release/3.0.0 with changes from dev
2024-11-08 15:13:47 +00:00
Alan Rynne 8060f46882 Merge pull request #359 from specklesystems/dev
Update `release/3.0.0` with changes from `dev`
2024-11-06 18:49:52 +01:00
Alan Rynne 6671edd36e Merge pull request #354 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update `release/3.0.0` with changes from `dev`
2024-11-06 14:22:08 +01:00
Alan Rynne bc15ff3a34 Merge pull request #347 from specklesystems/dev
Update `release/3.0.0` with changes from `dev`
2024-11-05 10:30:20 +01:00
Alan Rynne de275dcf02 Merge pull request #337 from specklesystems/dev
.NET Build and Publish / build (push) Has been cancelled
.NET Build and Publish / test (push) Has been cancelled
.NET Build and Publish / deploy-installers (push) Has been cancelled
Update `release/3.0.0` with changes from `dev`
2024-10-31 12:17:57 +01:00
Alan Rynne 6158739df0 Merge pull request #331 from specklesystems/dev
Update `release/3.0.0` with changes from `dev`
2024-10-28 13:05:26 +01:00
155 changed files with 1688 additions and 3822 deletions
+3 -3
View File
@@ -9,10 +9,10 @@
],
"rollForward": false
},
"dotnet-affected": {
"version": "5.0.0",
"gitversion.tool": {
"version": "6.0.2",
"commands": [
"dotnet-affected"
"dotnet-gitversion"
],
"rollForward": false
}
-4
View File
@@ -13,8 +13,6 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup .NET
uses: actions/setup-dotnet@v4
@@ -34,8 +32,6 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup .NET
uses: actions/setup-dotnet@v4
+16 -11
View File
@@ -2,14 +2,12 @@ name: .NET Build and Publish
on:
push:
branches: ["main", "installer-test/**"]
branches: ["main", "dev", "release/*"] # Continuous delivery on every long-lived branch
tags: ["v3.*"] # Manual delivery on every 3.x tag
jobs:
build-windows:
runs-on: windows-latest
env:
SPECKLE_VERSION: "unset"
outputs:
version: ${{ steps.set-version.outputs.version }}
steps:
@@ -29,27 +27,31 @@ jobs:
path: ~/.nuget/packages
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }}
- name: ⚒️ Run GitVersion on Windows
run: ./build.ps1 build-server-version
- name: ⚒️ Run build on Windows
run: ./build.ps1 zip
run: ./build.ps1
- name: ⬆️ Upload artifacts
uses: actions/upload-artifact@v4
with:
name: output-${{ env.SPECKLE_VERSION }}
name: output-${{ env.GitVersion_FullSemVer }}
path: output/*.*
if-no-files-found: error
retention-days: 1
compression-level: 0 # no compression
compression-level: 0 # no compression
- id: set-version
name: Set version to output
run: echo "version=${{ env.SPECKLE_VERSION }}" >> "$Env:GITHUB_OUTPUT"
run: echo "version=${{ env.GitVersion_FullSemVer }}" >> "$Env:GITHUB_OUTPUT"
deploy-installers:
runs-on: ubuntu-latest
needs: build-windows
env:
IS_PUBLIC_RELEASE: ${{ github.ref_type == 'tag' }}
IS_TEST_INSTALLER: ${{ github.ref_type != 'tag' }}
IS_TAG_BUILD: ${{ github.ref_type == 'tag' }}
IS_RELEASE_BRANCH: ${{ startsWith(github.ref_name, 'release/') || github.ref_name == 'main'}}
steps:
- name: 🔫 Trigger Build Installers
uses: ALEEF02/workflow-dispatch@v3.0.0
@@ -57,7 +59,7 @@ jobs:
workflow: Build Installers
repo: specklesystems/connector-installers
token: ${{ secrets.CONNECTORS_GH_TOKEN }}
inputs: '{ "run_id": "${{ github.run_id }}", "version": "${{ needs.build-windows.outputs.version }}", "public_release": ${{ env.IS_PUBLIC_RELEASE }}, "store_artifacts": ${{ env.IS_TEST_INSTALLER }} }'
inputs: '{ "run_id": "${{ github.run_id }}", "version": "${{ needs.build-windows.outputs.version }}", "public_release": ${{ env.IS_TAG_BUILD }}, "store_artifacts": ${{ env.IS_RELEASE_BRANCH }} }'
ref: main
wait-for-completion: true
wait-for-completion-interval: 10s
@@ -88,6 +90,9 @@ jobs:
path: ~/.nuget/packages
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }}
- name: ⚒️ Run GitVersion on Linux
run: ./build.sh build-server-version
- name: ⚒️ Run tests on Linux
run: ./build.sh test-only
@@ -101,5 +106,5 @@ jobs:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Push to nuget.org
if: (github.ref_type == 'tag')
if: ${{ github.ref_type == 'tag' }}
run: dotnet nuget push output/*.nupkg --source "https://api.nuget.org/v3/index.json" --api-key ${{secrets.CONNECTORS_NUGET_TOKEN }} --skip-duplicate
-119
View File
@@ -1,119 +0,0 @@
using GlobExpressions;
using Microsoft.Build.Construction;
using static SimpleExec.Command;
namespace Build;
public static class Affected
{
public static readonly string Root = Environment.CurrentDirectory;
public const string AFFECTED_PROJECT = "affected.proj";
private static IEnumerable<string> GetAffectedProjects()
{
var projFile = Path.Combine(Root, AFFECTED_PROJECT);
Console.WriteLine("Affected project file: " + projFile);
var project = ProjectRootElement.Open(projFile) ?? throw new InvalidOperationException();
var references = project.ItemGroups.SelectMany(x => x.Items).Where(x => x.ItemType == "ProjectReference");
foreach (var refe in references)
{
var referencePath = refe.Include[(Root.Length + 1)..];
referencePath = Path.GetDirectoryName(referencePath) ?? throw new InvalidOperationException();
if (Path.DirectorySeparatorChar != '/')
{
referencePath = referencePath.Replace(Path.DirectorySeparatorChar, '/');
}
yield return referencePath;
}
}
public static async Task<IEnumerable<string>> GetTestProjects()
{
await ComputeAffected();
var projFile = Path.Combine(Root, AFFECTED_PROJECT);
if (File.Exists(projFile))
{
var references = GetAffectedProjects();
return references.Where(x => x.Contains("Tests"));
}
return Glob.Files(Root, "**/*.Tests.csproj");
}
public static async Task<ProjectGroup[]> GetAffectedProjectGroups()
{
await ComputeAffected();
var projFile = Path.Combine(Root, AFFECTED_PROJECT);
if (File.Exists(projFile))
{
var references = GetAffectedProjects().ToList();
var groups = new List<ProjectGroup>();
foreach (var projectGroup in Consts.ProjectGroups)
{
foreach (var referencePath in references)
{
if (projectGroup.Projects.Any(x => x.ProjectPath.Contains(referencePath)))
{
groups.Add(projectGroup);
break;
}
}
}
foreach (var group in groups)
{
Console.WriteLine("Affected project group being built: " + group.HostAppSlug);
}
if (groups.Count > 0)
{
return groups.ToArray();
}
}
Console.WriteLine("Using all project groups: " + string.Join(',', Consts.ProjectGroups));
return Consts.ProjectGroups;
}
private static bool s_affectedComputed;
public static async Task ComputeAffected()
{
if (s_affectedComputed)
{
return;
}
var currentTag = await Versions.GetCurrentTag();
var currentVersion = await Versions.ComputeVersion();
var lastTag = await Versions.GetPreviousTag(currentTag);
var lastVersion = await Versions.ComputePreviousVersion(currentTag);
Console.WriteLine($"Last tag: {lastTag}, Current tag: {currentTag}");
Console.WriteLine($"Last parsed version: {lastVersion}, Current parsed version: {currentVersion}");
var sort = currentVersion.CompareSortOrderTo(lastVersion);
if (sort == -1)
{
Console.WriteLine($"Current version {currentVersion} is less than: {lastVersion}");
s_affectedComputed = true;
return;
}
var majorEquals = currentVersion.Major == lastVersion.Major;
if (!majorEquals)
{
Console.WriteLine($"Current version {currentVersion} is not matching major version: {lastVersion}");
s_affectedComputed = true;
return;
}
//use tags no matter the version if major versions match
var (currentCommit, _) = await ReadAsync("git", $"rev-list -n 1 {currentTag}");
var (lastCommit, _) = await ReadAsync("git", $"rev-list -n 1 {lastTag}");
await RunAsync("dotnet", $"affected -v --from {currentCommit.Trim()} --to {lastCommit.Trim()}", Root);
s_affectedComputed = true;
}
}
-1
View File
@@ -10,7 +10,6 @@
<PackageReference Include="Bullseye" />
<PackageReference Include="Glob" />
<PackageReference Include="Microsoft.Build" />
<PackageReference Include="Semver" />
<PackageReference Include="SimpleExec" />
</ItemGroup>
</Project>
+2 -2
View File
@@ -4,7 +4,7 @@ public static class Consts
{
public static readonly string[] Solutions = ["Speckle.Connectors.sln"];
public static readonly ProjectGroup[] ProjectGroups =
public static readonly InstallerProject[] InstallerManifests =
{
new("arcgis", [new("Connectors/ArcGIS/Speckle.Connectors.ArcGIS3", "net6.0-windows")]),
new(
@@ -69,7 +69,7 @@ public static class Consts
};
}
public readonly record struct ProjectGroup(string HostAppSlug, IReadOnlyList<InstallerAsset> Projects)
public readonly record struct InstallerProject(string HostAppSlug, IReadOnlyList<InstallerAsset> Projects)
{
public override string ToString() => $"{HostAppSlug}";
}
+76 -80
View File
@@ -12,12 +12,13 @@ const string TEST = "test";
const string TEST_ONLY = "test-only";
const string FORMAT = "format";
const string ZIP = "zip";
const string VERSION = "version";
const string RESTORE_TOOLS = "restore-tools";
const string BUILD_SERVER_VERSION = "build-server-version";
const string CLEAN_LOCKS = "clean-locks";
const string CHECK_SOLUTIONS = "check-solutions";
const string DEEP_CLEAN = "deep-clean";
const string DEEP_CLEAN_LOCAL = "deep-clean-local";
const string DETECT_AFFECTED = "detect-affected";
//need to pass arguments
/*var arguments = new List<string>();
@@ -33,14 +34,14 @@ void Build(string solution, string configuration)
Console.WriteLine();
Console.WriteLine($"Building solution '{solution}' as '{configuration}'");
Console.WriteLine();
Run("dotnet", $"build \".\\{solution}\" --configuration {configuration} --no-restore");
Run("dotnet", $"build .\\{solution} --configuration {configuration} --no-restore");
}
void Restore(string solution)
{
Console.WriteLine();
Console.WriteLine($"Restoring solution '{solution}'");
Console.WriteLine();
Run("dotnet", $"restore \".\\{solution}\" --no-cache");
Run("dotnet", $"restore .\\{solution} --no-cache");
}
void DeleteFiles(string pattern)
{
@@ -125,22 +126,21 @@ Target(
);
Target(
RESTORE_TOOLS,
() =>
VERSION,
async () =>
{
Run("dotnet", "tool restore");
var (output, _) = await ReadAsync("dotnet", "minver -v w");
output = output.Trim();
Console.WriteLine($"Version: {output}");
Run("echo", $"\"version={output}\" >> $GITHUB_OUTPUT");
}
);
Target(
DETECT_AFFECTED,
DependsOn(RESTORE_TOOLS),
async () =>
RESTORE_TOOLS,
() =>
{
foreach (var group in await Affected.GetAffectedProjectGroups())
{
Console.WriteLine("Affected project group being built: " + group.HostAppSlug);
}
Run("dotnet", "tool restore");
}
);
@@ -155,14 +155,20 @@ Target(
Target(
RESTORE,
DependsOn(FORMAT, DETECT_AFFECTED),
DependsOn(FORMAT),
Consts.Solutions,
async s =>
s =>
{
var version = await Versions.ComputeVersion();
var fileVersion = await Versions.ComputeFileVersion();
Console.WriteLine($"Restoring: {s} - Version: {version} & {fileVersion}");
await RunAsync("dotnet", $"restore \"{s}\" --locked-mode");
Run("dotnet", $"restore {s} --locked-mode");
}
);
Target(
BUILD_SERVER_VERSION,
DependsOn(RESTORE_TOOLS),
() =>
{
Run("dotnet", "tool run dotnet-gitversion /output json /output buildserver");
}
);
@@ -170,14 +176,14 @@ Target(
BUILD,
DependsOn(RESTORE),
Consts.Solutions,
async s =>
s =>
{
var version = await Versions.ComputeVersion();
var fileVersion = await Versions.ComputeFileVersion();
Console.WriteLine($"Restoring: {s} - Version: {version} & {fileVersion}");
await RunAsync(
var version = Environment.GetEnvironmentVariable("GitVersion_FullSemVer") ?? "3.0.0-localBuild";
var fileVersion = Environment.GetEnvironmentVariable("GitVersion_AssemblySemFileVer") ?? "3.0.0.0";
Console.WriteLine($"Version: {version} & {fileVersion}");
Run(
"dotnet",
$"build \"{s}\" -c Release --no-restore -warnaserror -p:Version={version} -p:FileVersion={fileVersion} -v:m"
$"build {s} -c Release --no-restore -warnaserror -p:Version={version} -p:FileVersion={fileVersion} -v:m"
);
}
);
@@ -187,26 +193,23 @@ Target(CHECK_SOLUTIONS, Solutions.CompareConnectorsToLocal);
Target(
TEST,
DependsOn(BUILD, CHECK_SOLUTIONS),
async () =>
Glob.Files(".", "**/*.Tests.csproj"),
file =>
{
foreach (var s in await Affected.GetTestProjects())
{
await RunAsync("dotnet", $"test \"{s}\" -c Release --no-build --no-restore --verbosity=minimal");
}
Run("dotnet", $"test {file} -c Release --no-build --no-restore --verbosity=minimal");
}
);
//all tests on purpose
Target(
TEST_ONLY,
DependsOn(FORMAT),
Glob.Files(".", "**/*.Tests.csproj"),
file =>
{
Run("dotnet", $"build \"{file}\" -c Release --no-incremental");
Run("dotnet", $"build {file} -c Release --no-incremental");
Run(
"dotnet",
$"test \"{file}\" -c Release --no-build --verbosity=minimal /p:AltCover=true /p:AltCoverAttributeFilter=ExcludeFromCodeCoverage /p:AltCoverVerbosity=Warning"
$"test {file} -c Release --no-build --verbosity=minimal /p:AltCover=true /p:AltCoverAttributeFilter=ExcludeFromCodeCoverage /p:AltCoverVerbosity=Warning"
);
}
);
@@ -215,20 +218,20 @@ Target(
BUILD_LINUX,
DependsOn(FORMAT),
Glob.Files(".", "**/Speckle.Importers.Ifc.csproj"),
async file =>
file =>
{
await RunAsync("dotnet", $"restore \"{file}\" --locked-mode");
var version = await Versions.ComputeVersion();
var fileVersion = await Versions.ComputeFileVersion();
Run("dotnet", $"restore {file} --locked-mode");
var version = Environment.GetEnvironmentVariable("GitVersion_FullSemVer") ?? "3.0.0-localBuild";
var fileVersion = Environment.GetEnvironmentVariable("GitVersion_AssemblySemFileVer") ?? "3.0.0.0";
Console.WriteLine($"Version: {version} & {fileVersion}");
await RunAsync(
Run(
"dotnet",
$"build \"{file}\" -c Release --no-restore -warnaserror -p:Version={version} -p:FileVersion={fileVersion} -v:m"
$"build {file} -c Release --no-restore -warnaserror -p:Version={version} -p:FileVersion={fileVersion} -v:m"
);
await RunAsync(
RunAsync(
"dotnet",
$"pack \"{file}\" -c Release -o output --no-build -p:Version={version} -p:FileVersion={fileVersion} -v:m"
$"pack {file} -c Release -o output --no-build -p:Version={version} -p:FileVersion={fileVersion} -v:m"
);
}
);
@@ -236,54 +239,47 @@ Target(
Target(
ZIP,
DependsOn(TEST),
async () =>
Consts.InstallerManifests,
x =>
{
var version = await Versions.ComputeVersion();
foreach (var group in await Affected.GetAffectedProjectGroups())
var outputDir = Path.Combine(".", "output");
var slugDir = Path.Combine(outputDir, x.HostAppSlug);
Directory.CreateDirectory(outputDir);
Directory.CreateDirectory(slugDir);
foreach (var asset in x.Projects)
{
Console.WriteLine($"Zipping: {group.HostAppSlug} as {version}");
var outputDir = Path.Combine(".", "output");
var slugDir = Path.Combine(outputDir, group.HostAppSlug);
Directory.CreateDirectory(outputDir);
Directory.CreateDirectory(slugDir);
foreach (var asset in group.Projects)
var fullPath = Path.Combine(".", asset.ProjectPath, "bin", "Release", asset.TargetName);
if (!Directory.Exists(fullPath))
{
var fullPath = Path.Combine(".", asset.ProjectPath, "bin", "Release", asset.TargetName);
if (!Directory.Exists(fullPath))
{
throw new InvalidOperationException("Could not find: " + fullPath);
}
var assetName = Path.GetFileName(asset.ProjectPath);
var connectorDir = Path.Combine(slugDir, assetName);
Directory.CreateDirectory(connectorDir);
foreach (var directory in Directory.EnumerateDirectories(fullPath, "*", SearchOption.AllDirectories))
{
Directory.CreateDirectory(directory.Replace(fullPath, connectorDir));
}
foreach (var file in Directory.EnumerateFiles(fullPath, "*", SearchOption.AllDirectories))
{
Console.WriteLine(file);
File.Copy(file, file.Replace(fullPath, connectorDir), true);
}
throw new InvalidOperationException("Could not find: " + fullPath);
}
var outputPath = Path.Combine(outputDir, $"{group.HostAppSlug}.zip");
File.Delete(outputPath);
Console.WriteLine($"Zipping: '{slugDir}' to '{outputPath}'");
ZipFile.CreateFromDirectory(slugDir, outputPath);
var assetName = Path.GetFileName(asset.ProjectPath);
var connectorDir = Path.Combine(slugDir, assetName);
Directory.CreateDirectory(connectorDir);
foreach (var directory in Directory.EnumerateDirectories(fullPath, "*", SearchOption.AllDirectories))
{
Directory.CreateDirectory(directory.Replace(fullPath, connectorDir));
}
foreach (var file in Directory.EnumerateFiles(fullPath, "*", SearchOption.AllDirectories))
{
Console.WriteLine(file);
File.Copy(file, file.Replace(fullPath, connectorDir), true);
}
}
string githubEnv = Environment.GetEnvironmentVariable("GITHUB_ENV") ?? "Unset";
Console.WriteLine($"GITHUB_ENV: {githubEnv}");
File.AppendAllText(githubEnv, $"SPECKLE_VERSION={version}{Environment.NewLine}");
var outputPath = Path.Combine(outputDir, $"{x.HostAppSlug}.zip");
File.Delete(outputPath);
Console.WriteLine($"Zipping: '{slugDir}' to '{outputPath}'");
ZipFile.CreateFromDirectory(slugDir, outputPath);
// Directory.Delete(slugDir, true);
}
);
Target("default", DependsOn(TEST), () => Console.WriteLine("Done!"));
Target("default", DependsOn(FORMAT, ZIP), () => Console.WriteLine("Done!"));
await RunTargetsAndExitAsync(args).ConfigureAwait(true);
-79
View File
@@ -1,79 +0,0 @@
using Semver;
using static SimpleExec.Command;
namespace Build;
public static class Versions
{
private static string? s_currentTag;
private static SemVersion? s_currentVersion;
public static async Task<string> GetCurrentTag()
{
if (s_currentTag is not null)
{
return s_currentTag;
}
//finds current tag or makes one
var (currentTag, _) = await ReadAsync("git", "describe --tags");
currentTag = currentTag.Trim();
s_currentTag = currentTag;
return s_currentTag;
}
public static async Task<SemVersion> ComputeVersion()
{
if (s_currentVersion is not null)
{
return s_currentVersion;
}
var currentTag = await GetCurrentTag();
if (!SemVersion.TryParse(currentTag, SemVersionStyles.AllowLowerV, out var currentVersion))
{
throw new InvalidOperationException($"Could not parse version: '{currentTag}'");
}
s_currentVersion = currentVersion;
return s_currentVersion;
}
private static string? s_currentFileVersion;
public static async Task<string> ComputeFileVersion()
{
if (s_currentFileVersion is not null)
{
return s_currentFileVersion;
}
var currentVersion = await ComputeVersion();
s_currentFileVersion = currentVersion.WithoutPrereleaseOrMetadata() + ".0";
return s_currentFileVersion;
}
public static async Task<string> GetPreviousTag(string currentTag)
{
//finds a tag starting with current tag and adds no abbrevation
var (lastTag, _) = await ReadAsync("git", $"describe --abbrev=0 --tags {currentTag}^");
lastTag = lastTag.Trim();
return lastTag;
}
private static SemVersion? s_previousVersion;
public static async Task<SemVersion> ComputePreviousVersion(string currentTag)
{
if (s_previousVersion is not null)
{
return s_previousVersion;
}
var lastTag = await GetPreviousTag(currentTag);
if (!SemVersion.TryParse(lastTag, SemVersionStyles.AllowLowerV, out var lastVersion))
{
throw new InvalidOperationException($"Could not parse version: '{lastTag}'");
}
s_previousVersion = lastVersion;
return s_previousVersion;
}
}
-14
View File
@@ -53,15 +53,6 @@
"resolved": "1.14.1",
"contentHash": "mOOmFYwad3MIOL14VCjj02LljyF1GNw1wP0YVlxtcPvqdxjGGMNdNJJxHptlry3MOd8b40Flm8RPOM8JOlN2sQ=="
},
"Semver": {
"type": "Direct",
"requested": "[3.0.0, )",
"resolved": "3.0.0",
"contentHash": "9jZCicsVgTebqkAujRWtC9J1A5EQVlu0TVKHcgoCuv345ve5DYf4D1MjhKEnQjdRZo6x/vdv6QQrYFs7ilGzLA==",
"dependencies": {
"Microsoft.Extensions.Primitives": "5.0.1"
}
},
"SimpleExec": {
"type": "Direct",
"requested": "[12.0.0, )",
@@ -84,11 +75,6 @@
"resolved": "8.0.0",
"contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ=="
},
"Microsoft.Extensions.Primitives": {
"type": "Transitive",
"resolved": "5.0.1",
"contentHash": "5WPSmL4YeP7eW+Vc8XZ4DwjYWBAiSwDV9Hm63JJWcz1Ie3Xjv4KuJXzgCstj48LkLfVCYa7mLcx7y+q6yqVvtw=="
},
"Microsoft.NET.StringTools": {
"type": "Transitive",
"resolved": "17.11.4",
@@ -67,8 +67,6 @@ public class BasicConnectorBinding : IBasicConnectorBinding
public void RemoveModel(ModelCard model) => _store.RemoveModel(model);
public void RemoveModels(List<ModelCard> models) => _store.RemoveModels(models);
public async Task HighlightObjects(IReadOnlyList<string> objectIds)
{
await HighlightObjectsOnView(objectIds.Select(x => new ObjectID(x)).ToList());
@@ -226,9 +226,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -236,8 +236,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -261,7 +261,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -299,18 +299,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -320,14 +320,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
"net6.0-windows7.0/win-x64": {
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -294,7 +294,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -338,18 +338,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -359,14 +359,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -294,7 +294,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -338,18 +338,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -359,14 +359,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -295,7 +295,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -215,9 +215,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -225,8 +225,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -251,7 +251,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -295,18 +295,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -315,14 +315,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
"net8.0-windows7.0/win-x64": {
@@ -79,8 +79,6 @@ public class AutocadBasicConnectorBinding : IBasicConnectorBinding
public void RemoveModel(ModelCard model) => _store.RemoveModel(model);
public void RemoveModels(List<ModelCard> models) => _store.RemoveModels(models);
public async Task HighlightObjects(IReadOnlyList<string> objectIds)
{
// POC: Will be addressed to move it into AutocadContext!
@@ -108,12 +108,6 @@ public abstract class AutocadReceiveBaseBinding : IReceiveBinding
{
// reenable document activation
Application.DocumentManager.DocumentActivationEnabled = true;
// regenerate doc to flush graphics, sometimes some objects (ellipses, nurbs curves) do not appear fully visible after receive.
// Adding a regen (must be run on main thread) here, but it doesn't seem to work:
// it's run on main thread, tried sending the "regen" string to execute, also tried regen after every object bake, but still can't fix.
// the objects should appear visible if you manually call the "regen" command after the operation finishes, or click on a view on the view cube which also calls regen.
Application.DocumentManager.CurrentDocument.Editor.Regen();
}
}
}
@@ -83,7 +83,7 @@ public class AutocadHostObjectBuilder(
colorBaker.ParseColors(unpackedRoot.ColorProxies, onOperationProgressed);
}
// 4 - Convert atomic objects
// 5 - Convert atomic objects
HashSet<ReceiveConversionResult> results = new();
HashSet<string> bakedObjectIds = new();
Dictionary<string, IReadOnlyCollection<Entity>> applicationIdMap = new();
@@ -116,7 +116,7 @@ public class AutocadHostObjectBuilder(
}
}
// 5 - Convert instances
// 6 - Convert instances
var (createdInstanceIds, consumedObjectIds, instanceConversionResults) = instanceBaker.BakeInstances(
instanceComponentsWithPath,
applicationIdMap,
@@ -129,7 +129,7 @@ public class AutocadHostObjectBuilder(
results.RemoveWhere(result => result.ResultId != null && consumedObjectIds.Contains(result.ResultId));
results.UnionWith(instanceConversionResults);
// 6 - Create groups
// 7 - Create groups
if (unpackedRoot.GroupProxies != null)
{
IReadOnlyCollection<ReceiveConversionResult> groupResults = groupBaker.CreateGroups(
@@ -268,9 +268,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -278,8 +278,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -304,7 +304,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -348,18 +348,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -369,14 +369,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -268,9 +268,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -278,8 +278,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -304,7 +304,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -348,18 +348,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -369,14 +369,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -268,9 +268,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -278,8 +278,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -304,7 +304,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -348,18 +348,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -369,14 +369,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -224,9 +224,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -234,8 +234,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -261,7 +261,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -305,18 +305,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -325,14 +325,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
"net8.0-windows7.0/win-x64": {
@@ -65,9 +65,6 @@ public class CsiSharedBasicConnectorBinding : IBasicConnectorBinding
public void RemoveModel(ModelCard model) =>
_topLevelExceptionHandler.CatchUnhandled(() => _threadContext.RunOnThread(() => _store.RemoveModel(model), true));
public void RemoveModels(List<ModelCard> models) =>
_topLevelExceptionHandler.CatchUnhandled(() => _threadContext.RunOnThread(() => _store.RemoveModels(models), true));
public Task HighlightModel(string modelCardId) => Task.CompletedTask;
public Task HighlightObjects(IReadOnlyList<string> objectIds) => Task.CompletedTask;
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.etabs21": {
@@ -337,18 +337,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -358,14 +358,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -215,9 +215,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -225,8 +225,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -243,7 +243,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.etabs22": {
@@ -293,18 +293,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -313,14 +313,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.navisworks2020": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
".NETFramework,Version=v4.8/win-x64": {
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.navisworks2021": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
".NETFramework,Version=v4.8/win-x64": {
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.navisworks2022": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
".NETFramework,Version=v4.8/win-x64": {
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.navisworks2023": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
".NETFramework,Version=v4.8/win-x64": {
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.navisworks2024": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
".NETFramework,Version=v4.8/win-x64": {
@@ -265,9 +265,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -275,8 +275,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -293,7 +293,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.navisworks2025": {
@@ -339,18 +339,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -360,14 +360,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
".NETFramework,Version=v4.8/win-x64": {
@@ -50,8 +50,6 @@ public class NavisworksBasicConnectorBinding : IBasicConnectorBinding
public void RemoveModel(ModelCard model) => _store.RemoveModel(model);
public void RemoveModels(List<ModelCard> models) => _store.RemoveModels(models);
public Task HighlightModel(string modelCardId) => Task.CompletedTask;
public async Task HighlightObjects(IReadOnlyList<string> objectIds) =>
@@ -106,21 +106,9 @@ public class NavisworksSendBinding : ISendBinding
using var cancellationItem = _cancellationManager.GetCancellationItem(modelCardId);
var progress = _operationProgressManager.CreateOperationProgressEventHandler(
Parent,
modelCard.ModelCardId.NotNull(),
cancellationItem.Token
);
var navisworksModelItems = GetNavisworksModelItems(modelCard);
var navisworksModelItems = await GetNavisworksModelItems(modelCard, progress);
var sendResult = await ExecuteSendOperation(
scope,
modelCard,
navisworksModelItems,
progress,
cancellationItem.Token
);
var sendResult = await ExecuteSendOperation(scope, modelCard, navisworksModelItems, cancellationItem.Token);
await Commands.SetModelSendResult(modelCardId, sendResult.RootObjId, sendResult.ConversionResults);
}
@@ -135,16 +123,12 @@ public class NavisworksSendBinding : ISendBinding
_logger.LogModelCardHandledError(ex);
await Commands.SetModelError(modelCardId, ex);
}
finally
{
// otherwise the id of the operation persists on the cancellation manager and triggers 'Operations cancelled because of document swap!' message to UI.
_cancellationManager.CancelOperation(modelCardId);
}
}
private SenderModelCard GetModelCard(string modelCardId) =>
_store.GetModelById(modelCardId) as SenderModelCard
?? throw new InvalidOperationException("No publish model card was found.");
_store.GetModelById(modelCardId) is not SenderModelCard modelCard
? throw new InvalidOperationException("No publish model card was found.")
: modelCard;
private void InitializeConverterSettings(IServiceScope scope, SenderModelCard modelCard) =>
scope
@@ -159,10 +143,7 @@ public class NavisworksSendBinding : ISendBinding
)
);
private async Task<List<NAV.ModelItem>> GetNavisworksModelItems(
SenderModelCard modelCard,
IProgress<CardProgress> onOperationProgressed
)
private List<NAV.ModelItem> GetNavisworksModelItems(SenderModelCard modelCard)
{
var selectedPaths = modelCard.SendFilter.NotNull().RefreshObjectIds();
var convertHiddenElementsSetting =
@@ -175,19 +156,13 @@ public class NavisworksSendBinding : ISendBinding
{
throw new SpeckleSendFilterException(message);
}
onOperationProgressed.Report(new CardProgress("Getting selection...", null));
await Task.CompletedTask;
var modelItems = new List<NAV.ModelItem>();
double count = 0;
foreach (var path in selectedPaths)
{
onOperationProgressed.Report(new CardProgress("Getting selection...", count / selectedPaths.Count));
await Task.CompletedTask;
var modelItem = _selectionService.GetModelItemFromPath(path);
modelItems.AddRange(_selectionService.GetGeometryNodes(modelItem).Where(_selectionService.IsVisible));
count++;
}
var modelItems = selectedPaths
.Select(_selectionService.GetModelItemFromPath)
.SelectMany(_selectionService.GetGeometryNodes)
.Where(_selectionService.IsVisible)
.ToList();
return modelItems.Count == 0 ? throw new SpeckleSendFilterException(message) : modelItems;
}
@@ -195,7 +170,6 @@ public class NavisworksSendBinding : ISendBinding
IServiceScope scope,
SenderModelCard modelCard,
List<NAV.ModelItem> navisworksModelItems,
IProgress<CardProgress> onOperationProgressed,
CancellationToken token
) =>
await scope
@@ -203,7 +177,7 @@ public class NavisworksSendBinding : ISendBinding
.Execute(
navisworksModelItems,
modelCard.GetSendInfo(_speckleApplication.ApplicationAndVersion),
onOperationProgressed,
_operationProgressManager.CreateOperationProgressEventHandler(Parent, modelCard.ModelCardId.NotNull(), token),
token
);
@@ -1,9 +1,15 @@
using Speckle.InterfaceGenerator;
using static Speckle.Converter.Navisworks.Helpers.ElementSelectionHelper;
using static Speckle.Converter.Navisworks.Helpers.ElementSelectionHelper;
namespace Speckle.Connector.Navisworks.Services;
[GenerateAutoInterface]
public interface IElementSelectionService
{
string GetModelItemPath(NAV.ModelItem modelItem);
NAV.ModelItem GetModelItemFromPath(string path);
bool IsVisible(NAV.ModelItem modelItem);
IReadOnlyCollection<NAV.ModelItem> GetGeometryNodes(NAV.ModelItem modelItem);
}
public class ElementSelectionService : IElementSelectionService
{
public string GetModelItemPath(NAV.ModelItem modelItem) => ResolveModelItemToIndexPath(modelItem);
@@ -12,5 +18,6 @@ public class ElementSelectionService : IElementSelectionService
public bool IsVisible(NAV.ModelItem modelItem) => IsElementVisible(modelItem);
public IEnumerable<NAV.ModelItem> GetGeometryNodes(NAV.ModelItem modelItem) => ResolveGeometryLeafNodes(modelItem);
public IReadOnlyCollection<NAV.ModelItem> GetGeometryNodes(NAV.ModelItem modelItem) =>
ResolveGeometryLeafNodes(modelItem);
}
@@ -287,9 +287,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -297,8 +297,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -308,7 +308,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.revit2022": {
@@ -353,11 +353,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Revit.API": {
@@ -368,9 +368,9 @@
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -380,14 +380,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -287,9 +287,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -297,8 +297,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -308,7 +308,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.revit2023": {
@@ -353,11 +353,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Revit.API": {
@@ -368,9 +368,9 @@
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -380,14 +380,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -287,9 +287,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -297,8 +297,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -308,7 +308,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.revit2024": {
@@ -353,11 +353,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Revit.API": {
@@ -368,9 +368,9 @@
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -380,14 +380,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -237,9 +237,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -247,8 +247,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.revit2025": {
@@ -303,11 +303,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Revit.API": {
@@ -318,9 +318,9 @@
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -329,14 +329,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
"net8.0-windows7.0/win-x64": {
@@ -82,8 +82,6 @@ internal sealed class BasicConnectorBindingRevit : IBasicConnectorBinding
public void RemoveModel(ModelCard model) => _store.RemoveModel(model);
public void RemoveModels(List<ModelCard> models) => _store.RemoveModels(models);
public async Task HighlightModel(string modelCardId)
{
var model = _store.GetModelById(modelCardId);
@@ -1,3 +1,4 @@
using System.Collections.Concurrent;
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.ExtensibleStorage;
using Microsoft.Extensions.DependencyInjection;
@@ -47,7 +48,7 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding
/// As to why a concurrent dictionary, it's because it's the cheapest/easiest way to do so.
/// https://stackoverflow.com/questions/18922985/concurrent-hashsett-in-net-framework
/// </summary>
private ConcurrentHashSet<ElementId> ChangedObjectIds { get; set; } = new();
private ConcurrentDictionary<ElementId, byte> ChangedObjectIds { get; set; } = new();
public RevitSendBinding(
IAppIdleManager idleManager,
@@ -240,17 +241,17 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding
foreach (ElementId elementId in addedElementIds)
{
ChangedObjectIds.Add(elementId);
ChangedObjectIds[elementId] = 1;
}
foreach (ElementId elementId in deletedElementIds)
{
ChangedObjectIds.Add(elementId);
ChangedObjectIds[elementId] = 1;
}
foreach (ElementId elementId in modifiedElementIds)
{
ChangedObjectIds.Add(elementId);
ChangedObjectIds[elementId] = 1;
}
if (addedElementIds.Count > 0)
@@ -271,7 +272,7 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding
var selectedObjects = sender.SendFilter.NotNull().SelectedObjectIds;
objectIds.AddRange(selectedObjects);
}
var unpackedObjectIds = _elementUnpacker.GetUnpackedElementIds(objectIds);
var unpackedObjectIds = _elementUnpacker.GetUnpackedElementIds(objectIds.ToList());
_sendConversionCache.EvictObjects(unpackedObjectIds);
}
@@ -336,7 +337,9 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding
// }
if (
ChangedObjectIds.Any(e => _revitContext.UIApplication.NotNull().ActiveUIDocument.Document.GetElement(e) is View)
ChangedObjectIds.Keys.Any(e =>
_revitContext.UIApplication.NotNull().ActiveUIDocument.Document.GetElement(e) is View
)
)
{
await Commands.RefreshSendFilters();
@@ -355,7 +358,7 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding
}
var objUniqueIds = new List<string>();
var changedIds = ChangedObjectIds.ToList();
var changedIds = ChangedObjectIds.Keys.ToList();
// Handling type changes: if an element's type is changed, we need to mark as changed all objects that have that type.
// Step 1: get any changed types
@@ -363,10 +366,10 @@ internal sealed class RevitSendBinding : RevitBaseBinding, ISendBinding
.Select(e => doc.GetElement(e))
.OfType<ElementType>()
.Select(el => el.Id)
.ToHashSet(); // ToHashSet() for faster Contains
.ToArray();
// Step 2: Find all elements of the changed types, and add them to the changed ids list.
if (elementTypeIdsList.Count != 0)
if (elementTypeIdsList.Length != 0)
{
using var collector = new FilteredElementCollector(doc);
var collectorElements = collector
@@ -56,16 +56,15 @@ internal sealed class SelectionBinding : RevitBaseBinding, ISelectionBinding, ID
}
var activeUIDoc = _revitContext.UIApplication.ActiveUIDocument.NotNull();
var doc = activeUIDoc.Document;
// POC: this was also being called on shutdown
// probably the bridge needs to be able to know if the plugin has been terminated
// also on termination the OnSelectionChanged event needs unwinding
var selectionIds = activeUIDoc.Selection.GetElementIds();
//reduce allocates by allocating what we need.
var selectionUniqueIds = new List<string>(selectionIds.Count);
selectionUniqueIds.AddRange(selectionIds.Select(eid => doc.GetElement(eid).UniqueId));
return new SelectionInfo(selectionUniqueIds, $"{selectionIds.Count} objects selected.");
var selectionIds = activeUIDoc
.Selection.GetElementIds()
.Select(eid => activeUIDoc.Document.GetElement(eid).UniqueId.ToString())
.ToList();
return new SelectionInfo(selectionIds, $"{selectionIds.Count} objects selected.");
}
public void Dispose()
@@ -43,7 +43,7 @@ public class ElementUnpacker
/// <remarks>
/// This is used to invalidate object ids in the send conversion cache when the selected object id is only the parent element id
/// </remarks>
public IEnumerable<string> GetUnpackedElementIds(IEnumerable<string> objectIds)
public IEnumerable<string> GetUnpackedElementIds(List<string> objectIds)
{
var doc = _revitContext.UIApplication?.ActiveUIDocument.Document!;
var docElements = doc.GetElements(objectIds);
@@ -40,17 +40,22 @@ public class RevitCategoriesFilter : DiscriminatedObject, ISendFilter, IRevitSen
/// <exception cref="SpeckleSendFilterException">Whenever no view is found.</exception>
public List<string> RefreshObjectIds()
{
var objectIds = new List<string>();
if (SelectedCategories is null)
{
return [];
return objectIds;
}
var elementIds = SelectedCategories.Select(c => ElementIdHelper.GetElementId(c)).Where(e => e is not null).ToList();
using var categoryFilter = new ElementMulticategoryFilter(elementIds);
using var collector = new FilteredElementCollector(_doc);
var elements = collector.WhereElementIsNotElementType().WhereElementIsViewIndependent().WherePasses(categoryFilter);
var objectIds = elements.Select(e => e.UniqueId).ToList();
var elements = collector
.WhereElementIsNotElementType()
.WhereElementIsViewIndependent()
.WherePasses(categoryFilter)
.ToList();
objectIds = elements.Select(e => e.UniqueId).ToList();
SelectedObjectIds = objectIds;
return objectIds;
}
@@ -53,9 +53,10 @@ public class RevitViewsFilter : DiscriminatedObject, ISendFilter, IRevitSendFilt
/// <exception cref="SpeckleSendFilterException">Whenever no view is found.</exception>
public List<string> RefreshObjectIds()
{
var objectIds = new List<string>();
if (SelectedView is null)
{
return [];
return objectIds;
}
// Paşa Bilal wants it like this... (three dots = important meaning for ogu)
@@ -74,8 +75,8 @@ public class RevitViewsFilter : DiscriminatedObject, ISendFilter, IRevitSendFilt
throw new SpeckleSendFilterException("View not found, please update your model send filter.");
}
using var viewCollector = new FilteredElementCollector(_doc, view.Id);
var elementsInView = viewCollector.ToElements();
var objectIds = elementsInView.Select(e => e.UniqueId).ToList();
List<Element> elementsInView = viewCollector.ToElements().ToList();
objectIds = elementsInView.Select(e => e.UniqueId).ToList();
SelectedObjectIds = objectIds;
return objectIds;
}
@@ -268,9 +268,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -278,8 +278,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -296,7 +296,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.rhino7": {
@@ -347,18 +347,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -368,14 +368,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -268,9 +268,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -278,8 +278,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -296,7 +296,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.converters.rhino8": {
@@ -347,18 +347,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -368,14 +368,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -72,8 +72,6 @@ public sealed class RhinoBasicConnectorBinding : IBasicConnectorBinding
public void RemoveModel(ModelCard model) => _store.RemoveModel(model);
public void RemoveModels(List<ModelCard> models) => _store.RemoveModels(models);
public Task HighlightObjects(IReadOnlyList<string> objectIds)
{
var objects = GetObjectsFromIds(objectIds);
@@ -325,9 +325,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -335,8 +335,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -362,7 +362,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"LibTessDotNet": {
@@ -412,18 +412,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -433,14 +433,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -406,9 +406,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -416,8 +416,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -443,7 +443,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"LibTessDotNet": {
@@ -493,18 +493,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -514,14 +514,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -60,8 +60,6 @@ public class TeklaBasicConnectorBinding : IBasicConnectorBinding
public void RemoveModel(ModelCard model) => _store.RemoveModel(model);
public void RemoveModels(List<ModelCard> models) => _store.RemoveModels(models);
public async Task HighlightModel(string modelCardId)
{
try
@@ -219,7 +219,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -248,18 +248,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -269,14 +269,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -287,7 +287,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -331,18 +331,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -352,14 +352,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -215,9 +215,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -225,8 +225,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -243,7 +243,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -307,14 +307,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -27,6 +27,7 @@
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Raw\AutocadPolycurveToHostPolyline2dRawConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Raw\AutocadPolycurveToHostPolyline3dRawConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Raw\AutocadPolycurveToHostPolylineRawConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Raw\PolycurveToHostSplineRawConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Geometry\CircleToHostConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Geometry\ArcToHostConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ToHost\Geometry\CurveToHostConverter.cs" />
@@ -11,24 +11,20 @@ namespace Speckle.Converters.AutocadShared.ToHost.Geometry;
/// Otherwise we convert it as spline (list of ADB.Entity) that switch cases according to each segment type.
/// </summary>
[NameAndRankValue(typeof(SOG.Polycurve), NameAndRankValueAttribute.SPECKLE_DEFAULT_RANK)]
public class PolycurveToHostConverter : IToHostTopLevelConverter, ITypedConverter<SOG.Polycurve, List<(Entity, Base)>>
public class PolycurveToHostConverter
: IToHostTopLevelConverter,
ITypedConverter<SOG.Polycurve, List<(Entity a, Base b)>>
{
private readonly ITypedConverter<SOG.Polycurve, ADB.Polyline> _polylineConverter;
private readonly ITypedConverter<SOG.Line, ADB.Line> _lineConverter;
private readonly ITypedConverter<SOG.Arc, ADB.Arc> _arcConverter;
private readonly ITypedConverter<SOG.Curve, ADB.Curve> _curveConverter;
private readonly ITypedConverter<SOG.Polycurve, List<(Entity, Base)>> _splineConverter;
public PolycurveToHostConverter(
ITypedConverter<SOG.Polycurve, ADB.Polyline> polylineConverter,
ITypedConverter<SOG.Line, ADB.Line> lineConverter,
ITypedConverter<SOG.Arc, ADB.Arc> arcConverter,
ITypedConverter<SOG.Curve, ADB.Curve> curveConverter
ITypedConverter<SOG.Polycurve, List<(Entity, Base)>> splineConverter
)
{
_polylineConverter = polylineConverter;
_lineConverter = lineConverter;
_arcConverter = arcConverter;
_curveConverter = curveConverter;
_splineConverter = splineConverter;
}
public object Convert(Base target) => Convert((SOG.Polycurve)target);
@@ -40,7 +36,7 @@ public class PolycurveToHostConverter : IToHostTopLevelConverter, ITypedConverte
if (convertAsSpline || !isPlanar)
{
return ConvertAsCurveSegments(target);
return _splineConverter.Convert(target);
}
else
{
@@ -94,34 +90,4 @@ public class PolycurveToHostConverter : IToHostTopLevelConverter, ITypedConverte
}
return true;
}
private List<(Entity, Base)> ConvertAsCurveSegments(SOG.Polycurve target)
{
// POC: We can improve this once we have IIndex of raw converters and we can get rid of case converters?
// POC: Should we join entities?
var list = new List<ADB.Entity>();
foreach (var segment in target.segments)
{
switch (segment)
{
case SOG.Arc arc:
list.Add(_arcConverter.Convert(arc));
break;
case SOG.Line line:
list.Add(_lineConverter.Convert(line));
break;
case SOG.Polyline polyline:
list.Add(_polylineConverter.Convert(polyline));
break;
case SOG.Curve curve:
list.Add(_curveConverter.Convert(curve));
break;
default:
break;
}
}
return list.Zip(target.segments, (a, b) => ((ADB.Entity)a, (Base)b)).ToList();
}
}
@@ -0,0 +1,59 @@
using Autodesk.AutoCAD.DatabaseServices;
using Speckle.Converters.Common.Objects;
using Speckle.Sdk.Models;
namespace Speckle.Converters.AutocadShared.ToHost.Raw;
/// <summary>
/// Polycurve segments might appear in different ICurve types which requires to handle separately for each segment.
/// </summary>
public class PolycurveToHostSplineRawConverter : ITypedConverter<SOG.Polycurve, List<(Entity, Base)>>
{
private readonly ITypedConverter<SOG.Line, ADB.Line> _lineConverter;
private readonly ITypedConverter<SOG.Polyline, ADB.Polyline3d> _polylineConverter;
private readonly ITypedConverter<SOG.Arc, ADB.Arc> _arcConverter;
private readonly ITypedConverter<SOG.Curve, ADB.Curve> _curveConverter;
public PolycurveToHostSplineRawConverter(
ITypedConverter<SOG.Line, ADB.Line> lineConverter,
ITypedConverter<SOG.Polyline, ADB.Polyline3d> polylineConverter,
ITypedConverter<SOG.Arc, ADB.Arc> arcConverter,
ITypedConverter<SOG.Curve, ADB.Curve> curveConverter
)
{
_lineConverter = lineConverter;
_polylineConverter = polylineConverter;
_arcConverter = arcConverter;
_curveConverter = curveConverter;
}
public List<(Entity, Base)> Convert(SOG.Polycurve target)
{
// POC: We can improve this once we have IIndex of raw converters and we can get rid of case converters?
// POC: Should we join entities?
var list = new List<ADB.Entity>();
foreach (var segment in target.segments)
{
switch (segment)
{
case SOG.Arc arc:
list.Add(_arcConverter.Convert(arc));
break;
case SOG.Line line:
list.Add(_lineConverter.Convert(line));
break;
case SOG.Polyline polyline:
list.Add(_polylineConverter.Convert(polyline));
break;
case SOG.Curve curve:
list.Add(_curveConverter.Convert(curve));
break;
default:
break;
}
}
return list.Zip(target.segments, (a, b) => ((ADB.Entity)a, (Base)b)).ToList();
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -214,7 +214,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -243,18 +243,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -263,14 +263,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -267,7 +267,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -296,18 +296,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -317,14 +317,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -267,7 +267,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -296,18 +296,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -317,14 +317,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -267,7 +267,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -296,18 +296,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -317,14 +317,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -224,9 +224,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -234,8 +234,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui.webview": {
@@ -252,7 +252,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -296,18 +296,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -316,14 +316,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -157,17 +157,7 @@ public sealed class CorridorDisplayValueExtractor
{
AAECPDB.PropertySet propertySet = (AAECPDB.PropertySet)tr.GetObject(id, ADB.OpenMode.ForRead);
string? propSetName;
try
{
propSetName = propertySet.PropertySetDefinitionName;
}
catch (Autodesk.AutoCAD.Runtime.Exception)
{
continue; // Skip to next property set
}
if (propSetName == "Corridor Identity")
if (propertySet.PropertySetDefinitionName == "Corridor Identity")
{
if (propertySet.PropertySetData[_corridorHandleIndex].GetData() is not string corridorHandle)
{
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -280,7 +280,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -318,18 +318,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -339,14 +339,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -280,7 +280,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -318,18 +318,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -339,14 +339,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -280,7 +280,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -318,18 +318,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -339,14 +339,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -280,7 +280,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -318,18 +318,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -339,14 +339,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -280,7 +280,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -318,18 +318,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -339,14 +339,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -280,7 +280,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.DependencyInjection": {
@@ -318,18 +318,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -339,14 +339,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -89,6 +89,6 @@ public static class ElementSelectionHelper
return modelItem.AncestorsAndSelf.All(item => !item.IsHidden);
}
public static IEnumerable<NAV.ModelItem> ResolveGeometryLeafNodes(NAV.ModelItem modelItem) =>
modelItem.DescendantsAndSelf.Where(x => x.HasGeometry);
public static List<NAV.ModelItem> ResolveGeometryLeafNodes(NAV.ModelItem modelItem) =>
modelItem.DescendantsAndSelf.Where(x => x.HasGeometry).ToList();
}
@@ -192,7 +192,7 @@ public class GeometryToSpeckleConverter
(triangle.Vertex3.Z + _transformVector.Z) * SCALE
]
);
faces.AddRange([3, t * 3, t * 3 + 1, t * 3 + 2]);
faces.AddRange([0, t * 3, t * 3 + 1, t * 3 + 2]);
}
return new Mesh
@@ -340,7 +340,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.testing": {
@@ -376,18 +376,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -396,14 +396,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -340,7 +340,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.testing": {
@@ -376,18 +376,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -396,14 +396,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -340,7 +340,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.testing": {
@@ -376,18 +376,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -396,14 +396,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -214,7 +214,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -243,18 +243,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -263,14 +263,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -1,29 +0,0 @@
namespace Speckle.Converters.RevitShared.Helpers;
public sealed class LevelExtractor
{
// stores the map of level id to level name
private readonly Dictionary<DB.ElementId, string> _levelCache = new();
public LevelExtractor() { }
public string? GetLevel(DB.Element element)
{
// get level, if any
if (element.LevelId != DB.ElementId.InvalidElementId)
{
if (_levelCache.TryGetValue(element.LevelId, out string? name))
{
return name;
}
if (element.Document.GetElement(element.LevelId) is DB.Level level)
{
_levelCache[element.LevelId] = level.Name;
return level.Name;
}
}
return null;
}
}
@@ -48,7 +48,6 @@ public static class ServiceRegistration
// register extractors
serviceCollection.AddScoped<ParameterValueExtractor>();
serviceCollection.AddScoped<DisplayValueExtractor>();
serviceCollection.AddScoped<LevelExtractor>();
serviceCollection.AddScoped<ParameterDefinitionHandler>();
serviceCollection.AddScoped<ParameterExtractor>();
serviceCollection.AddScoped<ClassPropertiesExtractor>();
@@ -9,7 +9,6 @@
<Import_RootNamespace>Speckle.Converters.RevitShared</Import_RootNamespace>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(MSBuildThisFileDirectory)Helpers\LevelExtractor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Helpers\RevitToHostCacheSingleton.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Helpers\RevitToSpeckleCacheSingleton.cs" />
<Compile Include="$(MSBuildThisFileDirectory)IReferencePointConverter.cs" />
@@ -16,20 +16,17 @@ public class ElementTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter
private readonly DisplayValueExtractor _displayValueExtractor;
private readonly PropertiesExtractor _propertiesExtractor;
private readonly ITypedConverter<DB.Location, Base> _locationConverter;
private readonly LevelExtractor _levelExtractor;
private readonly IConverterSettingsStore<RevitConversionSettings> _converterSettings;
public ElementTopLevelConverterToSpeckle(
DisplayValueExtractor displayValueExtractor,
PropertiesExtractor propertiesExtractor,
LevelExtractor levelExtractor,
ITypedConverter<DB.Location, Base> locationConverter,
IConverterSettingsStore<RevitConversionSettings> converterSettings
)
{
_displayValueExtractor = displayValueExtractor;
_propertiesExtractor = propertiesExtractor;
_levelExtractor = levelExtractor;
_locationConverter = locationConverter;
_converterSettings = converterSettings;
}
@@ -97,9 +94,6 @@ public class ElementTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter
// get the display value
List<Base> displayValue = _displayValueExtractor.GetDisplayValue(target);
// get level
string? level = _levelExtractor.GetLevel(target);
// get children elements
// this is a bespoke method by class type.
var children = GetElementChildren(target).ToList();
@@ -113,7 +107,6 @@ public class ElementTopLevelConverterToSpeckle : IToSpeckleTopLevelConverter
name = name,
type = typeName,
family = familyName,
level = level,
category = category,
location = convertedLocation,
elements = children,
@@ -340,7 +340,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"speckle.testing": {
@@ -376,18 +376,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -396,14 +396,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -258,7 +258,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"Microsoft.Extensions.Logging": {
@@ -287,18 +287,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -308,14 +308,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -5,15 +5,10 @@ using Speckle.Sdk.Common.Exceptions;
namespace Speckle.Converters.Rhino.ToHost.Raw;
public interface IFlatPointListToHostConverter : ITypedConverter<IReadOnlyList<double>, Point3dList>
{
IEnumerable<RG.Point3d> ConvertToEnum(IReadOnlyList<double> target);
}
/// <summary>
/// Converts a flat list of raw double values to a Point3dList.
/// </summary>
public class FlatPointListToHostConverter : IFlatPointListToHostConverter
public class FlatPointListToHostConverter : ITypedConverter<IReadOnlyList<double>, Point3dList>
{
/// <summary>
/// Converts a flat list of raw double values to a Point3dList.
@@ -25,19 +20,20 @@ public class FlatPointListToHostConverter : IFlatPointListToHostConverter
/// with the numbers being coordinates of each point in the format {x1, y1, z1, x2, y2, z2, ..., xN, yN, zN}
/// </remarks>
/// <exception cref="SpeckleException">Throws when the input list count is not a multiple of 3.</exception>
public Point3dList Convert(IReadOnlyList<double> target) => new(ConvertToEnum(target));
//avoids temporary collection by using this when necessary
public IEnumerable<RG.Point3d> ConvertToEnum(IReadOnlyList<double> target)
public Point3dList Convert(IReadOnlyList<double> target)
{
if (target.Count % 3 != 0)
{
throw new ValidationException("Array malformed: length%3 != 0.");
}
var points = new List<RG.Point3d>(target.Count / 3);
for (int i = 2; i < target.Count; i += 3)
{
yield return new RG.Point3d(target[i - 2], target[i - 1], target[i]);
points.Add(new RG.Point3d(target[i - 2], target[i - 1], target[i]));
}
return new Point3dList(points);
}
}
@@ -1,12 +1,20 @@
using System.Drawing;
using System.Drawing;
using Rhino.Collections;
using Speckle.Converters.Common.Objects;
using Speckle.Objects.Utils;
using Speckle.Sdk;
namespace Speckle.Converters.Rhino.ToHost.Raw;
public class MeshToHostConverter(IFlatPointListToHostConverter pointListConverter) : ITypedConverter<SOG.Mesh, RG.Mesh>
public class MeshToHostConverter : ITypedConverter<SOG.Mesh, RG.Mesh>
{
private readonly ITypedConverter<IReadOnlyList<double>, Point3dList> _pointListConverter;
public MeshToHostConverter(ITypedConverter<IReadOnlyList<double>, Point3dList> pointListConverter)
{
_pointListConverter = pointListConverter;
}
/// <summary>
/// Converts a Speckle mesh object to a Rhino mesh object.
/// </summary>
@@ -17,35 +25,26 @@ public class MeshToHostConverter(IFlatPointListToHostConverter pointListConverte
{
RG.Mesh m = new();
var vertices = pointListConverter.ConvertToEnum(target.vertices);
var vertices = _pointListConverter.Convert(target.vertices);
var colors = ConvertVertexColors(target.colors);
var vertexNormals = ConvertVertexNormals(target.vertexNormals);
var textureCoordinates = ConvertTextureCoordinates(target.textureCoordinates);
m.Vertices.AddVertices(vertices);
if (target.colors.Count != 0)
if (colors.Length != 0 && !m.VertexColors.SetColors(colors))
{
var colors = ConvertVertexColors(target.colors);
if (!m.VertexColors.SetColors(colors))
{
throw new SpeckleException("Failed to set Vertex Colors");
}
throw new SpeckleException("Failed to set Vertex Colors");
}
if (target.vertexNormals.Count != 0)
if (vertexNormals.Length != 0 && !m.Normals.SetNormals(vertexNormals))
{
var vertexNormals = ConvertVertexNormals(target.vertexNormals);
if (!m.Normals.SetNormals(vertexNormals))
{
throw new SpeckleException("Failed to set Vertex Normals");
}
throw new SpeckleException("Failed to set Vertex Normals");
}
if (target.textureCoordinates.Count != 0)
if (textureCoordinates.Length != 0 && !m.TextureCoordinates.SetTextureCoordinates(textureCoordinates))
{
var textureCoordinates = ConvertTextureCoordinates(target.textureCoordinates);
if (!m.TextureCoordinates.SetTextureCoordinates(textureCoordinates))
{
throw new SpeckleException("Failed to set Texture Coordinates");
}
throw new SpeckleException("Failed to set Texture Coordinates");
}
AssignMeshFaces(target, m);
@@ -61,7 +60,6 @@ public class MeshToHostConverter(IFlatPointListToHostConverter pointListConverte
while (i < target.faces.Count)
{
int n = target.faces[i];
// For backwards compatibility. Old meshes will have "0" for triangle face, "1" for quad face.
// Newer meshes have "3" for triangle face, "4" for quad" face and "5...n" for n-gon face.
if (n < 3)
@@ -69,25 +67,32 @@ public class MeshToHostConverter(IFlatPointListToHostConverter pointListConverte
n += 3; // 0 -> 3, 1 -> 4
}
switch (n)
if (n == 3)
{
case 3:
// triangle
m.Faces.AddFace(target.faces[i + 1], target.faces[i + 2], target.faces[i + 3]);
break;
case 4:
// quad
m.Faces.AddFace(target.faces[i + 1], target.faces[i + 2], target.faces[i + 3], target.faces[i + 4]);
break;
default:
// triangle
m.Faces.AddFace(new RG.MeshFace(target.faces[i + 1], target.faces[i + 2], target.faces[i + 3]));
}
else if (n == 4)
{
// quad
m.Faces.AddFace(
new RG.MeshFace(target.faces[i + 1], target.faces[i + 2], target.faces[i + 3], target.faces[i + 4])
);
}
else
{
// n-gon
var triangles = MeshTriangulationHelper.TriangulateFace(i, target, false);
var faceIndices = new List<int>(triangles.Count);
for (int t = 0; t < triangles.Count; t += 3)
{
// n-gon
var faceIndices = GetNgonFaceIndices(target, i, m).ToList();
var vertexIndices = GetNgonVertexIndices(target.faces, i, n).ToList();
RG.MeshNgon ngon = RG.MeshNgon.Create(vertexIndices, faceIndices);
m.Ngons.AddNgon(ngon);
break;
var face = new RG.MeshFace(triangles[t], triangles[t + 1], triangles[t + 2]);
faceIndices.Add(m.Faces.AddFace(face));
}
RG.MeshNgon ngon = RG.MeshNgon.Create(target.faces.GetRange(i + 1, n), faceIndices);
m.Ngons.AddNgon(ngon);
}
i += n + 1;
@@ -97,24 +102,6 @@ public class MeshToHostConverter(IFlatPointListToHostConverter pointListConverte
m.Faces.CullDegenerateFaces();
}
private static IEnumerable<int> GetNgonFaceIndices(SOG.Mesh target, int start, RG.Mesh m)
{
var triangles = MeshTriangulationHelper.TriangulateFace(start, target, false);
for (int t = 0; t < triangles.Count; t += 3)
{
int faceIndex = m.Faces.AddFace(triangles[t], triangles[t + 1], triangles[t + 2]);
yield return faceIndex;
}
}
private static IEnumerable<int> GetNgonVertexIndices(List<int> faces, int start, int vertexCount)
{
for (int n = 0; n < vertexCount; n++)
{
yield return faces[start + 1 + n];
}
}
private static RG.Point2f[] ConvertTextureCoordinates(IReadOnlyList<double> textureCoordinates)
{
var converted = new RG.Point2f[textureCoordinates.Count / 2];
@@ -29,11 +29,6 @@ public static class DisplayMeshExtractor
throw new ConversionException($"Unsupported object for display mesh generation {obj.GetType().FullName}");
}
}
if (renderMeshes == null)
{
//MeshingParametrs with small minimumEdgeLength often leads to `CreateFromBrep` returning null
throw new ConversionException($"Failed to meshify {obj.GetType()} (perhaps the brep is too small?)");
}
var joinedMesh = new RG.Mesh();
joinedMesh.Append(renderMeshes);
@@ -31,7 +31,7 @@ public class MeshToSpeckleConverter : ITypedConverter<RG.Mesh, SOG.Mesh>
{
throw new ValidationException("Cannot convert a mesh with 0 vertices/faces");
}
var vertexCoordinates = new double[target.Vertices.Count * 3];
Span<double> vertexCoordinates = stackalloc double[target.Vertices.Count * 3];
var x = 0;
for (int i = 0; i < target.Vertices.Count; i++)
{
@@ -54,7 +54,7 @@ public class MeshToSpeckleConverter : ITypedConverter<RG.Mesh, SOG.Mesh>
}
}
var textureCoordinates = new double[target.TextureCoordinates.Count * 2];
Span<double> textureCoordinates = stackalloc double[target.TextureCoordinates.Count * 2];
x = 0;
foreach (var textureCoord in target.TextureCoordinates)
{
@@ -62,14 +62,14 @@ public class MeshToSpeckleConverter : ITypedConverter<RG.Mesh, SOG.Mesh>
textureCoordinates[x++] = textureCoord.Y;
}
var colors = new int[target.VertexColors.Count];
Span<int> colors = stackalloc int[target.VertexColors.Count];
x = 0;
foreach (var c in target.VertexColors)
{
colors[x++] = c.ToArgb();
}
var vertexNormals = new double[target.Normals.Count * 3];
Span<double> vertexNormals = stackalloc double[target.Normals.Count * 3];
x = 0;
foreach (var n in target.Normals)
{
@@ -83,11 +83,11 @@ public class MeshToSpeckleConverter : ITypedConverter<RG.Mesh, SOG.Mesh>
return new SOG.Mesh
{
vertices = new(vertexCoordinates),
vertices = new(vertexCoordinates.ToArray()),
faces = faces,
colors = new(colors),
textureCoordinates = new(textureCoordinates),
vertexNormals = new(vertexNormals),
colors = new(colors.ToArray()),
textureCoordinates = new(textureCoordinates.ToArray()),
vertexNormals = new(vertexNormals.ToArray()),
units = _settingsStore.Current.SpeckleUnits,
volume = volume,
bbox = bbox
@@ -302,7 +302,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"LibTessDotNet": {
@@ -337,18 +337,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -358,14 +358,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
},
"Tekla.Structures.Dialog": {
"type": "CentralTransitive",
@@ -343,7 +343,7 @@
"type": "Project",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Objects": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )"
}
},
"LibTessDotNet": {
@@ -378,18 +378,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -399,14 +399,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
},
"Tekla.Structures.Plugins": {
"type": "CentralTransitive",
@@ -319,9 +319,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -329,8 +329,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -378,18 +378,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -398,14 +398,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -259,9 +259,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -269,8 +269,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -311,18 +311,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -332,14 +332,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
"net6.0-windows7.0": {
@@ -561,9 +561,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -571,8 +571,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -613,18 +613,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -634,14 +634,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
},
"net8.0-windows7.0": {
@@ -858,9 +858,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.dui": {
@@ -868,8 +868,8 @@
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "[2.2.0, )",
"Speckle.Connectors.Common": "[1.0.0, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -910,18 +910,18 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
},
"Speckle.Sdk": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -930,14 +930,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
}
}
}
@@ -17,6 +17,4 @@ public class AccountBinding : IBinding
}
public Account[] GetAccounts() => _accountManager.GetAccounts().ToArray();
public void RemoveAccount(string accountId) => _accountManager.RemoveAccount(accountId);
}
@@ -14,7 +14,6 @@ public interface IBasicConnectorBinding : IBinding
public void AddModel(ModelCard model);
public void UpdateModel(ModelCard model);
public void RemoveModel(ModelCard model);
public void RemoveModels(List<ModelCard> models);
/// <summary>
/// Highlights the objects attached to this sender in the host application.
@@ -32,6 +32,7 @@ public sealed class BrowserBridge : IBrowserBridge
private readonly ITopLevelExceptionHandler _topLevelExceptionHandler;
private readonly IThreadContext _threadContext;
private readonly IThreadOptions _threadOptions;
private readonly IBrowserScriptExecutor _browserScriptExecutor;
private readonly IJsonSerializer _jsonSerializer;
@@ -63,13 +64,16 @@ public sealed class BrowserBridge : IBrowserBridge
IJsonSerializer jsonSerializer,
ILogger<BrowserBridge> logger,
IBrowserScriptExecutor browserScriptExecutor,
IThreadOptions threadOptions,
ITopLevelExceptionHandler topLevelExceptionHandler
)
{
_threadContext = threadContext;
_jsonSerializer = jsonSerializer;
_logger = logger;
// Capture the main thread's SynchronizationContext
_browserScriptExecutor = browserScriptExecutor;
_threadOptions = threadOptions;
_topLevelExceptionHandler = topLevelExceptionHandler;
}
@@ -42,11 +42,8 @@ public abstract class DocumentModelStore(IJsonSerializer serializer)
// In theory this should never really happen, but if it does
public ModelCard GetModelById(string id)
{
lock (_models)
{
var model = _models.FirstOrDefault(model => model.ModelCardId == id) ?? throw new ModelNotFoundException();
return model;
}
var model = _models.First(model => model.ModelCardId == id) ?? throw new ModelNotFoundException();
return model;
}
public void AddModel(ModelCard model)
@@ -95,28 +92,6 @@ public abstract class DocumentModelStore(IJsonSerializer serializer)
}
}
public void RemoveModels(List<ModelCard> models)
{
lock (_models)
{
var listForMissingModelCards = new List<string>();
foreach (var model in models)
{
var index = _models.FindIndex(m => m.ModelCardId == model.ModelCardId);
if (index == -1)
{
listForMissingModelCards.Add(model.ModelCardId.NotNull());
}
_models.RemoveAt(index);
}
SaveState();
if (listForMissingModelCards.Count > 0)
{
throw new ModelNotFoundException($"Model cards with IDs {listForMissingModelCards} not found to remove.");
}
}
}
public IEnumerable<SenderModelCard> GetSenders()
{
lock (_models)
+42 -42
View File
@@ -41,9 +41,9 @@
},
"Speckle.Sdk": {
"type": "Direct",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -53,14 +53,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "Direct",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
},
"GraphQL.Client": {
"type": "Transitive",
@@ -282,9 +282,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -319,11 +319,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
}
},
@@ -367,9 +367,9 @@
},
"Speckle.Sdk": {
"type": "Direct",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.Bcl.AsyncInterfaces": "5.0.0",
@@ -379,14 +379,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "Direct",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
},
"GraphQL.Client": {
"type": "Transitive",
@@ -569,9 +569,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -606,11 +606,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
}
},
@@ -654,9 +654,9 @@
},
"Speckle.Sdk": {
"type": "Direct",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "aYiItasQxpGbSIQEg3sM8jk+5SV4jt2Gk+0wKr1EBUndA/l8eB5tAi6eMInL7pGnErEHjj+En9DJU4WRzo3wdw==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "XCA4dM4FuNkRwt0/zP8wyJKMwZXmyPp+QBkBwXQd3edwCunTul3pE/7/m87xDpBBy4/dnpWEHlnxbK3WGQpkGw==",
"dependencies": {
"GraphQL.Client": "6.0.0",
"Microsoft.CSharp": "4.7.0",
@@ -665,14 +665,14 @@
"Microsoft.Extensions.Logging": "2.2.0",
"Speckle.DoubleNumerics": "4.1.0",
"Speckle.Newtonsoft.Json": "13.0.2",
"Speckle.Sdk.Dependencies": "3.1.4"
"Speckle.Sdk.Dependencies": "3.1.0-dev.276"
}
},
"Speckle.Sdk.Dependencies": {
"type": "Direct",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "9w6uBekthmmKZhV4bau36Fu8HRPSq4UsS4UB1I9IUsh9xF9IPHt0hVvDBpwQB1P0Gy9fVrcZQeAuP4TMRQqv0A=="
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "iPqMbAElEDsfMia8fYHEiJp98xDpipOZ7DFLGdLP54Ct8NvBpEJRSwA7+s42uqQbCoCQC3aF4uZ6NMLJnDD0Xw=="
},
"GraphQL.Client": {
"type": "Transitive",
@@ -850,9 +850,9 @@
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "[2.2.0, )",
"Speckle.Connectors.Logging": "[1.0.0, )",
"Speckle.Objects": "[3.1.4, )",
"Speckle.Sdk": "[3.1.4, )",
"Speckle.Sdk.Dependencies": "[3.1.4, )"
"Speckle.Objects": "[3.1.0-dev.276, )",
"Speckle.Sdk": "[3.1.0-dev.276, )",
"Speckle.Sdk.Dependencies": "[3.1.0-dev.276, )"
}
},
"speckle.connectors.logging": {
@@ -887,11 +887,11 @@
},
"Speckle.Objects": {
"type": "CentralTransitive",
"requested": "[3.1.4, )",
"resolved": "3.1.4",
"contentHash": "3l7BaePUVvZ5LbXQoudZpSo7ntNkrXYVe5VhokKp0HsrnwPcA0A2WgDcuZC3mss204UNezu5lZUqv5lM2GXXgg==",
"requested": "[3.1.0-dev.276, )",
"resolved": "3.1.0-dev.276",
"contentHash": "q/E+FoRIGBDskZDr7eGiYk5YYCgd17Al1PH8LWR1JdL0i9CrLdeuJ+ozeKH6uqWOrlvdYQ75OjN1UwflMxew4w==",
"dependencies": {
"Speckle.Sdk": "3.1.4"
"Speckle.Sdk": "3.1.0-dev.276"
}
}
}

Some files were not shown because too many files have changed in this diff Show More