From 995685adfe44b1d57ea77a81acbbe441aef839d7 Mon Sep 17 00:00:00 2001 From: Lucien Greathouse Date: Thu, 3 Oct 2019 15:54:11 -0700 Subject: [PATCH] Expose instance ID and parent ID in web API --- rojo-test/serve-test-snapshots/serve_test__empty-2.snap | 2 ++ src/web/interface.rs | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/rojo-test/serve-test-snapshots/serve_test__empty-2.snap b/rojo-test/serve-test-snapshots/serve_test__empty-2.snap index 5ef25f8a..7cd6e0f9 100644 --- a/rojo-test/serve-test-snapshots/serve_test__empty-2.snap +++ b/rojo-test/serve-test-snapshots/serve_test__empty-2.snap @@ -6,6 +6,8 @@ sessionId: id-1 messageCursor: 0 instances: id-2: + Id: id-2 + Parent: ~ Name: empty ClassName: Folder Properties: {} diff --git a/src/web/interface.rs b/src/web/interface.rs index dcfc3bdf..ceab02fd 100644 --- a/src/web/interface.rs +++ b/src/web/interface.rs @@ -57,6 +57,8 @@ impl InstanceMetadata { #[derive(Debug, Serialize, Deserialize)] #[serde(rename_all = "PascalCase")] pub struct Instance<'a> { + pub id: RbxId, + pub parent: Option, pub name: Cow<'a, str>, pub class_name: Cow<'a, str>, pub properties: Cow<'a, HashMap>, @@ -67,6 +69,8 @@ pub struct Instance<'a> { impl<'a> Instance<'a> { pub(crate) fn from_rojo_instance<'b>(source: InstanceWithMeta<'b>) -> Instance<'b> { Instance { + id: source.id(), + parent: source.parent(), name: Cow::Borrowed(source.name()), class_name: Cow::Borrowed(source.class_name()), properties: Cow::Borrowed(source.properties()),