Skip to content

Commit

Permalink
feat: Added columns to FetchByUrl result table for plug-and-play with…
Browse files Browse the repository at this point in the history
… the viewer
  • Loading branch information
AlanRynne committed Aug 25, 2022
1 parent 685384b commit e903402
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 6 deletions.
26 changes: 22 additions & 4 deletions Speckle/Speckle.pq
Original file line number Diff line number Diff line change
Expand Up @@ -62,17 +62,35 @@ GetByUrl.Impl = (url as text) as table =>
commitId = if (List.Count(segments) = 4 and segments{2} = "commits" ) then segments{3} else null,
objectId = if (List.Count(segments) = 4 and segments{2} = "objects" ) then segments{3} else null,

commitTable =
urlType =
if (commitId <> null)
then "Commit"
else if (objectId <> null)
then "Object"
else if (branchName <> null)
then "Branch"
else
"Stream",

commitObjectsTable =
if (commitId <> null)
then Speckle.GetObjectFromCommit(server, streamId, commitId)
else if (objectId <> null)
then Speckle.GetObjectFromObject(server, streamId, objectId)
else if (branchName <> null)
then Speckle.GetObjectFromBranch(server,streamId,branchName)
else
Speckle.GetObjectFromStream(server, streamId)
Speckle.GetObjectFromStream(server, streamId),

addStreamUrl = Table.AddColumn(commitObjectsTable, "Stream URL", each server & "/streams/" & streamId),
addUrlType = Table.AddColumn(addStreamUrl, "URL Type", each urlType),
addStreamId = Table.AddColumn(addUrlType, "Stream ID", each streamId),
addBranchCol = Table.AddColumn(addStreamId, "Branch Name", each branchName),
addCommitCol = Table.AddColumn(addBranchCol, "Commit ID", each commitId),
addObjectCol = Table.AddColumn(addCommitCol, "Object ID", each objectId),
final = Table.ReorderColumns(addObjectCol, {"Stream URL", "Stream ID", "URL Type", "Branch Name", "Commit ID", "Object ID", "data"})
in
commitTable;
final;

Speckle.GetObjectFromStream = Value.ReplaceType(GetObjFromStream.Impl, GetObjFromStream.Type);

Expand Down Expand Up @@ -316,7 +334,7 @@ shared Hash = (Value as text) =>
Speckle.LogEvent = (server as text) =>
let
trackUrl = "https://analytics.speckle.systems/track?ip=1",
user = Speckle.Api.GetUser(server),
user = Speckle.Api.GetUser(server)[email],
body = [
event = "receive",
properties = [
Expand Down
4 changes: 2 additions & 2 deletions Speckle/Speckle.query.pq
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Use this file to write queries to test your data connector
let
result = Speckle.GetByUrl("https://speckle.xyz/streams/6ead215ec5/branches/main"){0}
result = Speckle.GetByUrl("https://latest.speckle.dev/streams/0c1e0c0266/branches/main")
in
result[data]
result

0 comments on commit e903402

Please sign in to comment.