I think a better way to go about this is to change `TagAttrs` from a `Dict` to a `Mapping`. (The reason it didn't accept a `TagAttrDict` as a `TagAttrs` object is because `Dict` is invariant, whereas `Mapping` is covariant.)
TagAttrs = Mapping[str, TagAttrValue]
There is also a place where you'll have to test for isinstance(x, Mapping) instead of isinstance(x, dict).
There is also a place where you'll have to test for
isinstance(x, Mapping)
instead ofisinstance(x, dict)
.Originally posted by @wch in https://github.com/posit-dev/py-htmltools/issues/55#issuecomment-1791532660