(.require
 [library
  [lux (.except)
   ["$" documentation]
   [data
    ["[0]" text (.only \n)
     ["%" \\format (.only format)]]]
   [meta
    [macro
     ["[0]" template]]]]]
 [\\library
  ["[0]" /]])

(`` (def .public documentation
      (List $.Documentation)
      (list ($.module /._
                      "")

            ($.definition /.hash)
            ($.definition /.equivalence)

            ($.definition /.Resolution
              "A screen resolution.")

            (,, (with_template [<name>]
                  [($.definition <name>
                     (let [name (|> (template.text [<name>])
                                    (text.replaced "_" " ")
                                    text.upper_cased)]
                       (format name " resolution: "
                               (%.nat (the /.#width <name>))
                               "x" (%.nat (the /.#height <name>))
                               ".")))]

                  [/.svga]
                  [/.wsvga]
                  [/.xga]
                  [/.xga+]
                  [/.wxga_16:9]
                  [/.wxga_5:3]
                  [/.wxga_16:10]
                  [/.sxga]
                  [/.wxga+]
                  [/.hd+]
                  [/.wsxga+]
                  [/.fhd]
                  [/.wuxga]
                  [/.wqhd]
                  [/.uhd_4k]
                  ))
            )))
