@dskripchenko/ui 1.19.0 → 1.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -19,14 +19,14 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=requi
19
19
  `)),s=(0,t.computed)(()=>i.highlight&&_c(i.language)?vc(i.code,i.language):null),c=()=>s.value?.map(e=>e.type===`plain`?e.text:(0,t.h)(`span`,{class:`uid-code__tok uid-code__tok--${e.type}`},e.text)),l=(0,t.computed)(()=>!i.inline&&(i.language!==void 0||i.copy));async function u(){if(navigator?.clipboard)try{await navigator.clipboard.writeText(i.code),a.value=!0,setTimeout(()=>{a.value=!1},1500)}catch{}}return(i,d)=>n.inline?((0,t.openBlock)(),(0,t.createElementBlock)(`code`,yc,[(0,t.renderSlot)(i.$slots,`default`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(n.code),1)])])):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`uid-code`,{"uid-code--minimal":!l.value,"uid-code--wrap":n.wrap}]),style:(0,t.normalizeStyle)(n.maxHeight?{"--uid-code-max-height":n.maxHeight}:void 0)},[l.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,bc,[(0,t.createElementVNode)(`span`,xc,(0,t.toDisplayString)(n.language||``),1),n.copy?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:0,type:`button`,class:(0,t.normalizeClass)([`uid-code__copy`,{"uid-code__copy--copied":a.value}]),"aria-label":a.value?(0,t.unref)(r).copy.copied:(0,t.unref)(r).copy.copy,onClick:u},[(0,t.createVNode)(e.t,{icon:a.value?(0,t.unref)($e):(0,t.unref)(ct),size:12,"aria-hidden":`true`},null,8,[`icon`]),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(a.value?(0,t.unref)(r).copy.copied:(0,t.unref)(r).copy.copy),1)],10,Sc)):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,Cc,[n.lineNumbers?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,wc,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:n,class:`uid-code__line-number`},(0,t.toDisplayString)(n+1),1))),128))])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`pre`,Tc,[(0,t.createElementVNode)(`code`,{"data-language":n.language||void 0},[(0,t.renderSlot)(i.$slots,`default`,{},()=>[s.value?((0,t.openBlock)(),(0,t.createBlock)(c,{key:0})):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createTextVNode)((0,t.toDisplayString)(n.code),1)],64))])],8,Ec)])])],6))}}),Oc=(0,t.defineComponent)({__name:`UidMarkdownLiveBlock`,props:{code:{},language:{},mount:{type:Function}},setup(e){let n=e,r=(0,t.shallowRef)(null),i=null;function a(){if(!r.value)return;r.value.replaceChildren();let e=n.mount(r.value,{code:n.code,language:n.language,editable:!1,setCode:()=>{}});i=typeof e==`function`?{destroy:e}:e??{}}function o(){i?.destroy?.(),i=null}return(0,t.onMounted)(a),(0,t.onBeforeUnmount)(o),(0,t.watch)(()=>n.code,e=>{if(i?.update){i.update(e);return}o(),a()}),(0,t.watch)(()=>n.mount,()=>{o(),a()}),(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`el`,ref:r},null,512))}}),kc={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`};function Ac(e){return e.replace(/[&<>"']/g,e=>kc[e]??e)}function jc(e){return e.replace(/&lt;/g,`<`).replace(/&gt;/g,`>`).replace(/&quot;/g,`"`).replace(/&#39;/g,`'`).replace(/&amp;/g,`&`)}function Mc(){let e=new Map;return t=>{let n=t.toLowerCase().trim().replace(/[^\p{L}\p{N}\s_-]/gu,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)||`section`,r=e.get(n)??0;return e.set(n,r+1),r===0?n:`${n}-${r}`}}var Nc={note:`Note`,tip:`Tip`,important:`Important`,warning:`Warning`,caution:`Caution`};function Pc(e){let t=e.trim(),n=t.replace(/&#0*58;|&colon;/gi,`:`).replace(/\s+/g,``).toLowerCase(),r=/^([a-z][a-z0-9+.-]*):/.exec(n);return r&&![`http`,`https`,`mailto`].includes(r[1]??``)?null:t}function Fc(e){return!/^([a-z][a-z0-9+.-]*:|\/|#|\?)/i.test(e)}function Ic(e,t,n=!1){let r=jc(e);n&&(r=r.replace(/\.md(?=$|[?#])/i,``));try{let e=/^[a-z][a-z0-9+.-]*:\/\//i.test(t),n=new URL(r,e?t:`http://base.invalid${t.startsWith(`/`)?``:`/`}${t}`);return Ac(e?n.href:n.pathname+n.search+n.hash)}catch{return e}}function Lc(e,t={}){let n=[],r=e=>`${n.push(e)-1}`,i=e.replace(/(?<![`\\])(`+)(?!`)([\s\S]*?[^`])\1(?!`)/g,(e,t,n)=>r(`<code>${(/^ [\s\S]* $/.test(n)&&n.trim()!==``?n.slice(1,-1):n).replace(/\n/g,` `)}</code>`));i=i.replace(/(?:\\| {2,})\n/g,()=>r(`<br>`)),i=i.replace(/\\(&(?:lt|gt|amp|quot|#39);|[!-/:-@[-`{-~])/g,(e,t)=>r(t));let a=e=>e?` title="${e}"`:``;i=i.replace(/!\[([^\]]*)\]\(([^)\s]+)(?:\s+&quot;([^)]*?)&quot;)?\)/g,(e,n,i,o)=>{let s=Pc(i);return s===null?e:(t.imageBase&&Fc(s)&&(s=Ic(s,t.imageBase)),r(`<img src="${s}" alt="${n}"${a(o)} loading="lazy">`))}),i=i.replace(/\[([^\]]+)\]\(([^)\s]+)(?:\s+&quot;([^)]*?)&quot;)?\)/g,(e,n,i,o)=>{let s=Pc(i);if(s===null)return e;let c=Fc(s);t.linkBase&&c&&(s=Ic(s,t.linkBase,t.stripMdExtension??!1));let l=/^(https?:)?\/\//i.test(s)||/^mailto:/i.test(s);return r(t.internalLinksInPlace===!0&&!l?`<a href="${s}"${a(o)}>${n}</a>`:`<a href="${s}"${a(o)} target="_blank" rel="noopener noreferrer">${n}</a>`)}),i=i.replace(/\*\*(?=\S)(.+?)(?<=\S)\*\*/g,`<strong>$1</strong>`).replace(/(?<!\w)__(?=\S)(.+?)(?<=\S)__(?!\w)/g,`<strong>$1</strong>`).replace(/\*(?=\S)(.+?)(?<=\S)\*/g,`<em>$1</em>`).replace(/(?<!\w)_(?=\S)(.+?)(?<=\S)_(?!\w)/g,`<em>$1</em>`).replace(/~~(?=\S)(.+?)(?<=\S)~~/g,`<del>$1</del>`);let o=``;for(;o!==i;)o=i,i=i.replace(/(\d+)/g,(e,t)=>n[Number(t)]??``);return i}function Rc(e){return jc(e.replace(/<[^>]+>/g,``))}var zc=/^(\s*)([-*+]|\d+[.)])\s+(.*)$/,Bc=/^\s*\|?\s*:?-+:?\s*(\|\s*:?-+:?\s*)*\|?\s*$/;function Vc(e){let t=e.trim();return t.startsWith(`|`)&&(t=t.slice(1)),t.endsWith(`|`)&&!t.endsWith(`\\|`)&&(t=t.slice(0,-1)),t.split(/(?<!\\)\|/).map(e=>e.trim().replace(/\\\|/g,`|`))}var Hc={note:`note`,info:`note`,tip:`tip`,hint:`tip`,important:`important`,warning:`warning`,caution:`caution`,danger:`caution`,примечание:`note`,заметка:`note`,совет:`tip`,важно:`important`,внимание:`warning`,предупреждение:`warning`,осторожно:`caution`};function Uc(e,t){let n=e;return t.calloutTitles?.[n]??Nc[n]??Nc.note}function Wc(e,t={}){if(!e)return``;let n=Ac(e.replace(/\r\n?/g,`
20
20
  `)).split(`
21
21
  `),r=[],i=[],a=e=>Lc(e,t),o=()=>{i.length>0&&(r.push(`<p>${a(i.join(`
22
- `))}</p>`),i=[])};for(let e=0;e<n.length;e++){let s=n[e]??``,c=/^\s*(`{3,}|~{3,})\s*([\w+#.-]*)[^`]*$/.exec(s);if(c){o();let t=[],i=c[1]??"```",a=e=>{let t=e.trim();return t.length>=i.length&&t[0]===i[0]&&/^(`+|~+)$/.test(t)};for(e++;e<n.length&&!a(n[e]??``);)t.push(n[e]??``),e++;let s=c[2]?` class="language-${c[2]}"`:``;r.push(`<pre><code${s}>${t.join(`
22
+ `))}</p>`),i=[])};for(let e=0;e<n.length;e++){let s=n[e]??``,c=/^\s*(`{3,}|~{3,})\s*([\w+#.-]*)[^`]*$/.exec(s);if(c){o();let t=[],i=c[1]??"```",a=s.length-s.trimStart().length,l=e=>{let t=e.trim();return e.length-e.trimStart().length<=a+3&&t.length>=i.length&&t[0]===i[0]&&/^(`+|~+)$/.test(t)};for(e++;e<n.length&&!l(n[e]??``);)t.push(n[e]??``),e++;let u=c[2]?` class="language-${c[2]}"`:``;r.push(`<pre><code${u}>${t.join(`
23
23
  `)}</code></pre>`);continue}if(s.trim()===``){o();continue}let l=/^(#{1,6})\s+(.*?)\s*#*\s*$/.exec(s);if(l){o();let e=l[1]?.length??1,n=a(l[2]??``);if(t.slugger){let i=Rc(n),a=t.slugger(i);t.onHeading?.({level:e,text:i,id:a}),r.push(`<h${e} id="${Ac(a)}">${n}</h${e}>`)}else r.push(`<h${e}>${n}</h${e}>`);continue}if(/^\s*([-*_])(\s*\1){2,}\s*$/.test(s)){o(),r.push(`<hr>`);continue}if(s.includes(`|`)&&Bc.test(n[e+1]??``)&&(n[e+1]??``).includes(`|`)){o();let t=Vc(s),i=Vc(n[e+1]??``).map(e=>{let t=e.startsWith(`:`),n=e.endsWith(`:`);return t&&n?`center`:n?`right`:t?`left`:``}),c=(e,t,n)=>`<${e}${i[n]?` style="text-align:${i[n]}"`:``}>${a(t)}</${e}>`,l=[];for(e+=2;e<n.length&&(n[e]??``).includes(`|`)&&(n[e]??``).trim()!==``;){let r=Vc(n[e]??``);l.push(`<tr>${t.map((e,t)=>c(`td`,r[t]??``,t)).join(``)}</tr>`),e++}e--,r.push(`<div class="uid-markdown__table"><table><thead><tr>${t.map((e,t)=>c(`th`,e,t)).join(``)}</tr></thead><tbody>${l.join(``)}</tbody></table></div>`);continue}if(/^\s*&gt;/.test(s)){o();let i=[];for(;e<n.length&&/^\s*&gt;/.test(n[e]??``);)i.push((n[e]??``).replace(/^\s*&gt;\s?/,``)),e++;e--,r.push(Jc(i,t));continue}if(zc.test(s)){o();let i=qc(n,e,t);r.push(i.html),e=i.next-1;continue}i.push(s)}return o(),r.join(`
24
24
  `)}function Gc(e){return(/^[ \t]*/.exec(e)?.[0]??``).replace(/\t/g,` `).length}function Kc(e){return/^\s*(#{1,6}\s|&gt;|```|~~~|\|)/.test(e)||/^\s*([-*_])(\s*\1){2,}\s*$/.test(e)}function qc(e,t,n){let r=zc.exec(e[t]??``),i=Gc(r?.[1]??``),a=/\d/.test(r?.[2]??``),o=[],s=t;for(;s<e.length;){let t=zc.exec(e[s]??``);if(!t||Gc(t[1]??``)>i+1||Gc(t[1]??``)<i||/\d/.test(t[2]??``)!==a)break;let r=[t[3]??``],c=[];for(s++;s<e.length;){let t=e[s]??``;if(t.trim()===``){let t=s+1;for(;t<e.length&&(e[t]??``).trim()===``;)t++;if(t<e.length&&Gc(e[t]??``)>i+1){for(;s<t;s++)c.push(``);continue}break}if(Gc(t)>i+1){c.push(t),s++;continue}if(c.length===0&&!zc.test(t)&&!Kc(t)){r.push(t.trim()),s++;continue}break}let l=Lc(r.join(`
25
25
  `),n);if(c.some(e=>e.trim()!==``)){let e=Math.min(...c.filter(e=>e.trim()!==``).map(Gc)),t=c.map(t=>t.replace(/\t/g,` `).slice(e));l+=Yc(t,n)}o.push(`<li>${l}</li>`);let u=s;for(;u<e.length&&(e[u]??``).trim()===``;)u++;let d=zc.exec(e[u]??``);u>s&&d&&Gc(d[1]??``)<=i+1&&Gc(d[1]??``)>=i&&/\d/.test(d[2]??``)===a&&(s=u)}let c=a?`ol`:`ul`,l=a?Number.parseInt(r?.[2]??`1`,10):1;return{html:`<${c}${a&&l!==1&&Number.isFinite(l)?` start="${l}"`:``}>${o.join(``)}</${c}>`,next:s}}function Jc(e,t){let n=(e[0]??``).trim(),r=/^\[!(\w+)\]\s*$/.exec(n);if(r){let n=Hc[(r[1]??``).toLowerCase()];if(n)return`<blockquote class="uid-markdown__callout uid-markdown__callout--${n}">${`<p class="uid-markdown__callout-title">${Ac(Uc(n,t))}</p>`}${Yc(e.slice(1),t)}</blockquote>`}let i=/^\*\*([^*]+?):?\*\*:?/.exec(n);if(i){let n=Hc[(i[1]??``).trim().toLowerCase()];if(n)return`<blockquote class="uid-markdown__callout uid-markdown__callout--${n}">${Yc(e,t)}</blockquote>`}return`<blockquote>${Yc(e,t)}</blockquote>`}function Yc(e,t){return Wc(jc(e.join(`
26
26
  `)),t)}function Xc(e){if(!e)return[];let t=e.replace(/\r\n?/g,`
27
27
  `).split(`
28
28
  `),n=[],r=[],i=()=>{r.some(e=>e.trim()!==``)&&n.push({kind:`text`,source:r.join(`
29
- `)}),r=[]};for(let e=0;e<t.length;e++){let a=t[e]??``,o=/^ {0,3}(`{3,}|~{3,})\s*([\w+#.-]*)[^`]*$/.exec(a);if(!o){r.push(a);continue}i();let s=o[1]??"```",c=[];for(e++;e<t.length&&!(t[e]??``).trim().startsWith(s);)c.push(t[e]??``),e++;n.push({kind:`code`,code:c.join(`
29
+ `)}),r=[]};for(let e=0;e<t.length;e++){let a=t[e]??``,o=/^ {0,3}(`{3,}|~{3,})\s*([\w+#.-]*)[^`]*$/.exec(a);if(!o){r.push(a);continue}i();let s=o[1]??"```",c=a.length-a.trimStart().length,l=e=>{let t=e.trim();return e.length-e.trimStart().length<=c+3&&t.length>=s.length&&t[0]===s[0]&&/^(`+|~+)$/.test(t)},u=[];for(e++;e<t.length&&!l(t[e]??``);)u.push(t[e]??``),e++;n.push({kind:`code`,code:u.join(`
30
30
  `),language:(o[2]??``).toLowerCase()})}return i(),n}var Zc=Symbol(`UidMarkdownBlockRenderers`);function Qc(e){(0,t.provide)(Zc,e)}function $c(){return(0,t.inject)(Zc,{})}var el=[`innerHTML`],tl=[`data-language`,`innerHTML`],nl=[`data-language`],rl=[`data-language`],il={class:`uid-markdown__block-error-message`,role:`alert`},al=[`aria-label`],ol={class:`uid-markdown__toc-title`},sl=[`href`,`onClick`],cl=(0,t.defineComponent)({__name:`UidMarkdown`,props:{source:{default:``},toc:{type:Boolean,default:!1},tocDepth:{default:3},tocLabel:{default:void 0},linkBase:{default:void 0},stripMdExtension:{type:Boolean,default:void 0},imageBase:{default:void 0},internalLinksInPlace:{type:Boolean,default:!0},calloutTitles:{default:void 0},blockRenderers:{default:void 0}},setup(e){let n=e,r=X(),i=$c(),a={blade:`html`,console:`bash`,env:`bash`,dotenv:`bash`,terminal:`bash`,ps1:`bash`,jsonc:`json`,json5:`json`},o=(0,t.shallowRef)([]),s=(0,t.shallowRef)([]),c=0;function l(e,t,n){if(t!==c)return;let r=o.value[e];if(!r||r.kind!==`custom`)return;let i=o.value.slice();i[e]=n.mount?{...r,state:`live`,mount:n.mount}:n.error!==void 0||n.html===void 0?{...r,state:`error`,error:n.error??``}:{...r,state:`done`,html:n.html},o.value=i}function u(e){return e instanceof Error?e.message:String(e)}function d(){let e=++c,t={...i,...n.blockRenderers??{}},d=Mc(),f=[],p={...r.value.markdown,...n.calloutTitles??{}},m=[],h=0,g=o.value;o.value=Xc(n.source).map((e,r)=>{if(e.kind===`text`)return{kind:`html`,html:Wc(e.source,{slugger:d,onHeading:e=>f.push(e),linkBase:n.linkBase??null,stripMdExtension:n.stripMdExtension??!!n.linkBase,imageBase:n.imageBase??null,internalLinksInPlace:n.internalLinksInPlace,calloutTitles:p})};let i=e.language?t[e.language]:void 0,o={language:e.language,index:h++};if(!i)return{kind:`code`,code:e.code,language:a[e.language]??e.language};let s=g[r];return s?.kind===`custom`&&s.state===`live`&&s.language===e.language?{...s,code:e.code}:(m.push({index:r,run:()=>i(e.code,o)}),{kind:`custom`,code:e.code,language:e.language,state:`pending`})}),s.value=f;for(let{index:t,run:n}of m){let r;try{r=n()}catch(n){l(t,e,{error:u(n)});continue}r&&typeof r.then==`function`?r.then(n=>l(t,e,n??{error:``}),n=>l(t,e,{error:u(n)})):l(t,e,r??{error:``})}}(0,t.watch)(()=>[n.source,n.linkBase,n.stripMdExtension,n.imageBase,n.internalLinksInPlace,n.calloutTitles,n.blockRenderers,r.value],d,{immediate:!0});let f=(0,t.computed)(()=>Math.min(6,Math.max(2,n.tocDepth))),p=(0,t.computed)(()=>n.tocLabel||r.value.markdown.toc),m=(0,t.computed)(()=>n.toc?s.value.filter(e=>e.level>=2&&e.level<=f.value):[]),h=(0,t.shallowRef)(null);function g(e,t=!0){if(!e||!h.value)return!1;let n=Array.from(h.value.querySelectorAll(`[id]`)).find(t=>t.id===e);return n?(n.scrollIntoView?.({behavior:t?`smooth`:`auto`,block:`start`}),!0):!1}function _(e){g(e)&&typeof history<`u`&&history.replaceState(history.state,``,`#${encodeURIComponent(e)}`)}function v(e){if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=(e.target?.closest?.(`a`))?.getAttribute(`href`)??``;t.startsWith(`#`)&&(e.preventDefault(),_(decodeURIComponent(t.slice(1))))}return(0,t.onMounted)(()=>{typeof window>`u`||!window.location.hash||(0,t.nextTick)(()=>g(decodeURIComponent(window.location.hash.slice(1)),!1))}),(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`root`,ref:h,class:(0,t.normalizeClass)([`uid-markdown`,{"uid-markdown--toc":m.value.length>0}])},[(0,t.createElementVNode)(`div`,{class:`uid-markdown__body`,onClick:v},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n},[e.kind===`html`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`uid-markdown__html`,innerHTML:e.html},null,8,el)):e.kind===`code`?((0,t.openBlock)(),(0,t.createBlock)(Dc,{key:1,class:`uid-markdown__code`,code:e.code,language:e.language||void 0,copy:``},null,8,[`code`,`language`])):e.state===`done`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:`uid-markdown__block`,"data-language":e.language,innerHTML:e.html},null,8,tl)):e.state===`live`&&e.mount?((0,t.openBlock)(),(0,t.createBlock)(Oc,{key:3,class:`uid-markdown__block uid-markdown__block--live`,"data-language":e.language,code:e.code,language:e.language,mount:e.mount},null,8,[`data-language`,`code`,`language`,`mount`])):e.state===`pending`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:4,class:`uid-markdown__block uid-markdown__block--pending`,"data-language":e.language,"aria-busy":`true`},(0,t.toDisplayString)((0,t.unref)(r).markdown.blockPending),9,nl)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:5,class:`uid-markdown__block-error`,"data-language":e.language},[(0,t.createElementVNode)(`p`,il,(0,t.toDisplayString)(e.error?`${(0,t.unref)(r).markdown.blockError}: ${e.error}`:(0,t.unref)(r).markdown.blockError),1),(0,t.createVNode)(Dc,{class:`uid-markdown__code`,code:e.code,language:e.language||void 0,copy:``},null,8,[`code`,`language`])],8,rl))],64))),128))]),m.value.length>0?((0,t.openBlock)(),(0,t.createElementBlock)(`nav`,{key:0,class:`uid-markdown__toc`,"aria-label":p.value},[(0,t.createElementVNode)(`div`,ol,(0,t.toDisplayString)(p.value),1),(0,t.createElementVNode)(`ul`,null,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(m.value,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`li`,{key:e.id,class:(0,t.normalizeClass)([`uid-markdown__toc-item`,`uid-markdown__toc-item--l${e.level}`])},[(0,t.createElementVNode)(`a`,{href:`#${e.id}`,onClick:(0,t.withModifiers)(t=>_(e.id),[`prevent`])},(0,t.toDisplayString)(e.text),9,sl)],2))),128))])],8,al)):(0,t.createCommentVNode)(``,!0)],2))}}),ll=[`data-status`],ul=[`aria-label`],dl={key:0,class:`uid-image__placeholder`,"aria-hidden":`true`},fl=[`aria-label`],pl=[`src`,`alt`,`loading`],ml=[`src`,`alt`,`loading`],hl={class:`uid-image__preview`},gl=[`src`,`alt`],_l=(0,t.defineComponent)({__name:`UidImage`,props:{src:{},alt:{},width:{default:void 0},height:{default:void 0},fit:{default:`cover`},lazy:{type:Boolean,default:!0},fallbackSrc:{default:void 0},radius:{default:void 0},preview:{type:Boolean,default:!1},previewSrc:{default:void 0}},emits:[`load`,`error`],setup(n,{emit:r}){let i=n,a=r,o=X(),s=(0,t.ref)(`loading`),c=(0,t.ref)(!1),l=(0,t.ref)(!1);(0,t.watch)(()=>i.src,()=>{s.value=`loading`,c.value=!1});let u=(0,t.computed)(()=>c.value&&i.fallbackSrc?i.fallbackSrc:i.src),d=(0,t.computed)(()=>i.preview&&s.value!==`error`),f=[`none`,`sm`,`md`,`lg`,`full`];function p(e){if(e!==void 0)return typeof e==`number`?`${e}px`:e}let m=(0,t.computed)(()=>{let e=i.radius;return{width:p(i.width),height:p(i.height),"--uid-image-radius":e?f.includes(e)?`var(--uid-radius-${e})`:e:void 0,"--uid-image-fit":i.fit}});function h(e){s.value=`loaded`,a(`load`,e)}function g(e){if(i.fallbackSrc&&!c.value){c.value=!0,a(`error`,e);return}s.value=`error`,c.value||a(`error`,e)}function _(){d.value&&(l.value=!0)}return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`uid-image`,{"uid-image--preview":d.value}]),"data-status":s.value,style:(0,t.normalizeStyle)(m.value)},[s.value===`error`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`uid-image__fallback`,role:`img`,"aria-label":n.alt||((0,t.unref)(o).image?.error??`Image failed to load`)},[(0,t.renderSlot)(r.$slots,`fallback`,{},()=>[(0,t.createVNode)(e.t,{icon:(0,t.unref)(pt),size:24},null,8,[`icon`])])],8,ul)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[s.value===`loading`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,dl,[(0,t.renderSlot)(r.$slots,`placeholder`)])):(0,t.createCommentVNode)(``,!0),d.value?((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{key:1,type:`button`,class:`uid-image__trigger`,"aria-label":`${(0,t.unref)(o).image?.preview??`Open preview`}: ${n.alt}`,"aria-haspopup":`dialog`,onClick:_},[(0,t.createElementVNode)(`img`,{class:`uid-image__img`,src:u.value,alt:n.alt,loading:n.lazy?`lazy`:`eager`,decoding:`async`,onLoad:h,onError:g},null,40,pl)],8,fl)):((0,t.openBlock)(),(0,t.createElementBlock)(`img`,{key:2,class:`uid-image__img`,src:u.value,alt:n.alt,loading:n.lazy?`lazy`:`eager`,decoding:`async`,onLoad:h,onError:g},null,40,ml))],64)),n.preview?((0,t.openBlock)(),(0,t.createBlock)(vn,{key:2,modelValue:l.value,"onUpdate:modelValue":i[0]||=e=>l.value=e,size:`full`,title:n.alt},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,hl,[(0,t.createElementVNode)(`img`,{class:`uid-image__preview-img`,src:n.previewSrc||u.value,alt:n.alt},null,8,gl)])]),_:1},8,[`modelValue`,`title`])):(0,t.createCommentVNode)(``,!0)],14,ll))}});function vl(e,t=!1){(!Number.isFinite(e)||e<0)&&(e=0);let n=Math.floor(e),r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60,o=String(a).padStart(2,`0`);return r>0||t?`${r}:${String(i).padStart(2,`0`)}:${o}`:`${i}:${o}`}function yl(e){if(!e)return[];let t=[];for(let n=0;n<e.length;n++)t.push([e.start(n),e.end(n)]);return t}function bl(e,t,n=.25){let r=t;for(let[t,i]of e)t-n<=r&&i>r&&(r=i);return r}var xl=[`application/x-mpegurl`,`application/vnd.apple.mpegurl`,`audio/mpegurl`,`audio/x-mpegurl`];function Sl(e){let t=e.type?.toLowerCase().split(`;`)[0].trim();return t?xl.includes(t):/\.m3u8(\?|#|$)/i.test(e.src)}function Cl(e,t,n){let r=e=>{if(Sl(e))return n?2:0;if(!e.type)return 1;let r=t(e.type);return r===`probably`||r===`maybe`?2:0};return e.map((e,t)=>({s:e,i:t,score:r(e)})).sort((e,t)=>t.score-e.score||e.i-t.i).filter(e=>e.score>0).map(e=>e.s)}function wl(e){let t=e.trim().split(`:`),n=0;for(let e of t)n=n*60+parseFloat(e.replace(`,`,`.`));return n}function Tl(e){let t=e.replace(/\r\n?/g,`
31
31
  `).split(`
32
32
  `),n=[];for(let e=0;e<t.length;e++){let r=t[e];if(!r.includes(`-->`))continue;let[i,a]=r.split(`-->`),o=a.trim().split(/\s+/)[0],s=wl(i),c=wl(o),l=[];for(;e+1<t.length&&t[e+1].trim()!==``;)l.push(t[++e]);Number.isFinite(s)&&Number.isFinite(c)&&n.push({start:s,end:c,text:l.join(`
package/dist/index.mjs CHANGED
@@ -7094,13 +7094,13 @@ function Bl(e, t = {}) {
7094
7094
  let s = n[e] ?? "", c = /^\s*(`{3,}|~{3,})\s*([\w+#.-]*)[^`]*$/.exec(s);
7095
7095
  if (c) {
7096
7096
  o();
7097
- let t = [], i = c[1] ?? "```", a = (e) => {
7097
+ let t = [], i = c[1] ?? "```", a = s.length - s.trimStart().length, l = (e) => {
7098
7098
  let t = e.trim();
7099
- return t.length >= i.length && t[0] === i[0] && /^(`+|~+)$/.test(t);
7099
+ return e.length - e.trimStart().length <= a + 3 && t.length >= i.length && t[0] === i[0] && /^(`+|~+)$/.test(t);
7100
7100
  };
7101
- for (e++; e < n.length && !a(n[e] ?? "");) t.push(n[e] ?? ""), e++;
7102
- let s = c[2] ? ` class="language-${c[2]}"` : "";
7103
- r.push(`<pre><code${s}>${t.join("\n")}</code></pre>`);
7101
+ for (e++; e < n.length && !l(n[e] ?? "");) t.push(n[e] ?? ""), e++;
7102
+ let u = c[2] ? ` class="language-${c[2]}"` : "";
7103
+ r.push(`<pre><code${u}>${t.join("\n")}</code></pre>`);
7104
7104
  continue;
7105
7105
  }
7106
7106
  if (s.trim() === "") {
@@ -7236,11 +7236,14 @@ function Kl(e) {
7236
7236
  continue;
7237
7237
  }
7238
7238
  i();
7239
- let s = o[1] ?? "```", c = [];
7240
- for (e++; e < t.length && !(t[e] ?? "").trim().startsWith(s);) c.push(t[e] ?? ""), e++;
7239
+ let s = o[1] ?? "```", c = a.length - a.trimStart().length, l = (e) => {
7240
+ let t = e.trim();
7241
+ return e.length - e.trimStart().length <= c + 3 && t.length >= s.length && t[0] === s[0] && /^(`+|~+)$/.test(t);
7242
+ }, u = [];
7243
+ for (e++; e < t.length && !l(t[e] ?? "");) u.push(t[e] ?? ""), e++;
7241
7244
  n.push({
7242
7245
  kind: "code",
7243
- code: c.join("\n"),
7246
+ code: u.join("\n"),
7244
7247
  language: (o[2] ?? "").toLowerCase()
7245
7248
  });
7246
7249
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dskripchenko/ui",
3
- "version": "1.19.0",
3
+ "version": "1.19.1",
4
4
  "description": "Vue 3 component, token, and theme library on CSS custom properties",
5
5
  "keywords": [
6
6
  "vue",