From 7fcf1d61843cde87627b09730fbad01c7a9031be Mon Sep 17 00:00:00 2001
From: Albert Krewinkel <albert@zeitkraut.de>
Date: Wed, 27 Oct 2021 22:24:39 +0200
Subject: [PATCH] Lua: re-add `t` and `tag` property to Attr values

Removal of these properties from Attr values was a regression.
---
 src/Text/Pandoc/Lua/Marshaling/Attr.hs | 4 ++++
 test/lua/module/pandoc.lua             | 7 +++++++
 2 files changed, 11 insertions(+)

diff --git a/src/Text/Pandoc/Lua/Marshaling/Attr.hs b/src/Text/Pandoc/Lua/Marshaling/Attr.hs
index 1b35e40ad..f69acc61e 100644
--- a/src/Text/Pandoc/Lua/Marshaling/Attr.hs
+++ b/src/Text/Pandoc/Lua/Marshaling/Attr.hs
@@ -56,6 +56,10 @@ typeAttr = deftype "Attr"
     ### return
     <#> parameter peekAttr "attr" "Attr" ""
     =#> functionResult pushAttr "Attr" "new Attr element"
+  , readonly "tag" "element type tag (always 'Attr')"
+      (pushText, const "Attr")
+
+  , alias "t" "alias for `tag`" ["tag"]
   ]
 
 pushAttr :: LuaError e => Pusher e Attr
diff --git a/test/lua/module/pandoc.lua b/test/lua/module/pandoc.lua
index 9b6e360f3..9d0663696 100644
--- a/test/lua/module/pandoc.lua
+++ b/test/lua/module/pandoc.lua
@@ -40,6 +40,13 @@ return {
         end
       )
     },
+    group 'Properties' {
+      test('has t and tag property', function ()
+        local attr = pandoc.Attr('')
+        assert.are_equal(attr.t, 'Attr')
+        assert.are_equal(attr.tag, 'Attr')
+      end)
+    },
     group 'AttributeList' {
       test('allows access via fields', function ()
         local attributes = pandoc.Attr('', {}, {{'a', '1'}, {'b', '2'}}).attributes