local function ensureHtmlDeps() quarto.doc.addHtmlDependency({ name = "bootstrap-icons", version = "1.11.1", stylesheets = {"assets/css/all.css"} }) end local function isEmpty(s) return s == nil or s == '' end local str = pandoc.utils.stringify return { ["bi"] = function(args, kwargs) local icon = str(args[1]) local size = str(kwargs["size"]) local color = str(kwargs["color"]) local label = str(kwargs["label"]) local class = str(kwargs["class"]) if not isEmpty(size) then size = "font-size: " .. size .. ";" else size = '' end if not isEmpty(color) then color = "color: " .. color .. ";" else color = '' end local style = "style=\"" .. size .. color .. "\"" if not isEmpty(label) then label = " aria-label=\"" .. label .. "\"" end if isEmpty(class) then class = '' end local role = "role=\"img\"" local aria_hidden = "aria-hidden=\"true\"" if quarto.doc.isFormat("html:js") then ensureHtmlDeps() if isEmpty(label) then return pandoc.RawInline( 'html', "" ) else return pandoc.RawInline( 'html', "" ) end else return pandoc.Null() end end }