resources.dhall 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. let Prelude =
  2. https://prelude.dhall-lang.org/package.dhall sha256:534e4a9e687ba74bfac71b30fc27aa269c0465087ef79bf483e876781602a454
  3. let Types = ./../types/package.dhall
  4. let map = Prelude.`List`.map
  5. let RenderedResource =
  6. { name :
  7. Text
  8. , type :
  9. Text
  10. , source :
  11. Optional (List Types.TextTextPair)
  12. , version :
  13. Optional (List Types.TextTextPair)
  14. , params :
  15. Optional (List Types.TextTextPair)
  16. , check_every :
  17. Optional Text
  18. , tags :
  19. Optional (List Text)
  20. , webhook_token :
  21. Optional Text
  22. }
  23. let renderInBuiltResource = λ(x : Text) → x
  24. let renderCustomResource = λ(x : Types.CustomResourceType) → x.name
  25. let resourceTypeText =
  26. λ(resourceType : Types.ResourceType)
  27. → merge
  28. { InBuilt = renderInBuiltResource, Custom = renderCustomResource }
  29. resourceType
  30. let renderResource =
  31. λ(resource : Types.Resource)
  32. → resource ⫽ { type = resourceTypeText resource.type }
  33. let renderResources =
  34. λ(resources : List Types.Resource)
  35. → { resources =
  36. map Types.Resource RenderedResource renderResource resources
  37. }
  38. in renderResources