diff --git a/d2oracle/get.go b/d2oracle/get.go index c20f1f892..f45661e68 100644 --- a/d2oracle/get.go +++ b/d2oracle/get.go @@ -84,3 +84,18 @@ func IsLabelKeyID(key, label string) bool { return mk.Key.Path[len(mk.Key.Path)-1].Unbox().ScalarString() == label } + +func GetID(key string) string { + mk, err := d2parser.ParseMapKey(key) + if err != nil { + return "" + } + if len(mk.Edges) > 0 { + return "" + } + if mk.Key == nil { + return "" + } + + return mk.Key.Path[len(mk.Key.Path)-1].Unbox().ScalarString() +}