(
defn
dashboard
[
transform-name
]
(
let
[
transform-spec
(
m/find-first
(
comp
#{
transform-name
}
:name
)
@
transform-specs
)
{
steps
false
provides
true
}
(
->>
transform-name
tf.materialize/get-collection
(
t2/select
'
Card
:collection_id
)
(
group-by
(
comp
some?
(
->
transform-spec
:provides
set
)
:name
)
)
)
sources
(
sources
steps
)
]
(
populate/create-dashboard
{
:cards
(
concat
(
cards->section
"sources"
sources
)
(
cards->section
"steps"
steps
)
(
cards->section
"provides"
provides
)
)
:title
(
str
transform-name
" automatically generated transform"
)
:description
(
:description
transform-spec
)
:groups
{
"sources"
{
:title
"Sources"
}
"steps"
{
:title
"Steps"
}
"provides"
{
:title
"Resulting datasets"
}
}
}
)
)
)