@thxgg/steward 0.1.25 → 0.1.26
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/.output/nitro.json +1 -1
- package/.output/public/_nuxt/{Bc2V3wPK.js → B2ow85x_.js} +2 -2
- package/.output/public/_nuxt/{U78rMDmo.js → B6CbIr08.js} +1 -1
- package/.output/public/_nuxt/{BknRrWsw.js → BLQAF8wp.js} +1 -1
- package/.output/public/_nuxt/BXuwtOqb.js +1 -0
- package/.output/public/_nuxt/CAMiEhze.js +1 -0
- package/.output/public/_nuxt/{BRQ9Cxaw.js → CIBCqZF5.js} +1 -1
- package/.output/public/_nuxt/Ce0-nlm9.js +1 -0
- package/.output/public/_nuxt/{T11EuTtn.js → ConzneVY.js} +1 -1
- package/.output/public/_nuxt/D0qxz_Pn.js +1310 -0
- package/.output/public/_nuxt/D3PDtLSF.js +3 -0
- package/.output/public/_nuxt/{C73kduX-.js → DdKC0UAK.js} +1 -1
- package/.output/public/_nuxt/Detail.BGdvrJGh.css +1 -0
- package/.output/public/_nuxt/{C53_p0K1.js → Dkh9ic1y.js} +1 -1
- package/.output/public/_nuxt/LEjJTR7-.js +1 -0
- package/.output/public/_nuxt/{BTmXUZ_s.js → UqZfMfrZ.js} +1 -1
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/25438e34-19a2-421d-aede-53fd18f1ccd4.json +1 -0
- package/.output/public/_nuxt/dckrK0oj.js +1 -0
- package/.output/public/_nuxt/entry.DT4p6_uW.css +1 -0
- package/.output/public/_nuxt/pIWeVmPw.js +1 -0
- package/.output/public/_nuxt/xrHaPo1U.js +60 -0
- package/.output/server/chunks/build/{Detail-DMMUwTWr.mjs → Detail-rpcemNXe.mjs} +674 -481
- package/.output/server/chunks/build/Detail-rpcemNXe.mjs.map +1 -0
- package/.output/server/chunks/build/DiffViewer-styles.B1FB5NJj.mjs +8 -0
- package/.output/server/chunks/build/DiffViewer-styles.B1FB5NJj.mjs.map +1 -0
- package/.output/server/chunks/build/{_prd_-ByugK4Yi.mjs → _prd_-CeibvZOH.mjs} +67 -233
- package/.output/server/chunks/build/_prd_-CeibvZOH.mjs.map +1 -0
- package/.output/server/chunks/build/client.precomputed.mjs +1 -1
- package/.output/server/chunks/build/{default-BKKgG7HJ.mjs → default-iq8SaDDN.mjs} +3 -3
- package/.output/server/chunks/build/default-iq8SaDDN.mjs.map +1 -0
- package/.output/server/chunks/build/{error-404-Bf6kdO80.mjs → error-404-DFale9A5.mjs} +2 -2
- package/.output/server/chunks/build/error-404-DFale9A5.mjs.map +1 -0
- package/.output/server/chunks/build/{index-DE1tjHAd.mjs → index-Po00RvHm.mjs} +2 -2
- package/.output/server/chunks/build/index-Po00RvHm.mjs.map +1 -0
- package/.output/server/chunks/build/{nuxt-link-SvT1nf8Z.mjs → nuxt-link-B4oWFn7n.mjs} +2 -2
- package/.output/server/chunks/build/nuxt-link-B4oWFn7n.mjs.map +1 -0
- package/.output/server/chunks/build/{repo-graph-DzT45gSB.mjs → repo-graph-BQVFpA-w.mjs} +5 -4
- package/.output/server/chunks/build/repo-graph-BQVFpA-w.mjs.map +1 -0
- package/.output/server/chunks/build/server.mjs +7 -7
- package/.output/server/chunks/build/styles.mjs +4 -5
- package/.output/server/chunks/build/{usePrd-hXZOmvAv.mjs → usePrd-Bb6jlnNZ.mjs} +2 -2
- package/.output/server/chunks/build/usePrd-Bb6jlnNZ.mjs.map +1 -0
- package/.output/server/chunks/nitro/nitro.mjs +663 -660
- package/.output/server/node_modules/@pierre/diffs/dist/components/File.js +324 -0
- package/.output/server/node_modules/@pierre/diffs/dist/components/FileDiff.js +395 -0
- package/.output/server/node_modules/@pierre/diffs/dist/components/FileStream.js +161 -0
- package/.output/server/node_modules/@pierre/diffs/dist/components/web-components.js +25 -0
- package/.output/server/node_modules/@pierre/diffs/dist/constants.js +23 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/areLanguagesAttached.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/attachResolvedLanguages.js +20 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/cleanUpResolvedLanguages.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/constants.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/getResolvedLanguages.js +16 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/getResolvedOrResolveLanguage.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/hasResolvedLanguages.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/resolveLanguage.js +30 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/languages/resolveLanguages.js +25 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/shared_highlighter.js +71 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/areThemesAttached.js +12 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/attachResolvedThemes.js +24 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/cleanUpResolvedThemes.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/constants.js +9 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/getResolvedOrResolveTheme.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/getResolvedThemes.js +16 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/hasResolvedThemes.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/registerCustomCSSVariableTheme.js +18 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/registerCustomTheme.js +14 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/resolveTheme.js +35 -0
- package/.output/server/node_modules/@pierre/diffs/dist/highlighter/themes/resolveThemes.js +21 -0
- package/.output/server/node_modules/@pierre/diffs/dist/index.js +84 -0
- package/.output/server/node_modules/@pierre/diffs/dist/managers/LineSelectionManager.js +282 -0
- package/.output/server/node_modules/@pierre/diffs/dist/managers/MouseEventManager.js +244 -0
- package/.output/server/node_modules/@pierre/diffs/dist/managers/ResizeManager.js +132 -0
- package/.output/server/node_modules/@pierre/diffs/dist/managers/ScrollSyncManager.js +62 -0
- package/.output/server/node_modules/@pierre/diffs/dist/managers/UniversalRenderingManager.js +32 -0
- package/.output/server/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js +655 -0
- package/.output/server/node_modules/@pierre/diffs/dist/renderers/FileRenderer.js +243 -0
- package/.output/server/node_modules/@pierre/diffs/dist/shiki-stream/stream.js +32 -0
- package/.output/server/node_modules/@pierre/diffs/dist/shiki-stream/tokenizer.js +71 -0
- package/.output/server/node_modules/@pierre/diffs/dist/sprite.js +55 -0
- package/.output/server/node_modules/@pierre/diffs/dist/style.js +6 -0
- package/.output/server/node_modules/@pierre/diffs/dist/themes/pierre-dark.js +1328 -0
- package/.output/server/node_modules/@pierre/diffs/dist/themes/pierre-light.js +1328 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/areFilesEqual.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/areObjectsEqual.js +18 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/areOptionsEqual.js +12 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/areSelectionsEqual.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/areThemesEqual.js +9 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/cleanLastNewline.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createAnnotationElement.js +21 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createAnnotationWrapperNode.js +12 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createCodeNode.js +12 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createEmptyRowBuffer.js +16 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createFileHeaderElement.js +84 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createHoverContentNode.js +15 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createNoNewlineElement.js +24 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createPreElement.js +28 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createRowNodes.js +20 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createSeparator.js +69 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createSpanNodeFromToken.js +13 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createStyleElement.js +19 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createTransformerWithState.js +56 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/createUnsafeCSSStyleNode.js +12 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/cssWrappers.js +21 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/diffAcceptRejectHunk.js +82 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/formatCSSVariablePrefix.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.js +343 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getHighlighterOptions.js +13 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getHighlighterThemeStyles.js +40 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getHunkSeparatorSlotName.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getIconForType.js +15 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getLineAnnotationName.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getLineEndingType.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getLineNodes.js +15 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getSingularPatch.js +20 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getThemes.js +16 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/getTotalLineCountFromHunks.js +10 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/hast_utils.js +42 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/isWorkerContext.js +8 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/parseDiffDecorations.js +34 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.js +23 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/parseLineType.js +17 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js +211 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/prerenderHTMLIfNecessary.js +10 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/processLine.js +42 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/renderDiffWithHighlighter.js +339 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/renderFileWithHighlighter.js +52 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/setLanguageOverride.js +11 -0
- package/.output/server/node_modules/@pierre/diffs/dist/utils/setWrapperNodeProps.js +29 -0
- package/.output/server/node_modules/@pierre/diffs/package.json +89 -0
- package/.output/server/node_modules/@shikijs/transformers/dist/index.mjs +831 -0
- package/.output/server/node_modules/@shikijs/transformers/package.json +37 -0
- package/.output/server/node_modules/diff/libesm/convert/dmp.js +21 -0
- package/.output/server/node_modules/diff/libesm/convert/xml.js +31 -0
- package/.output/server/node_modules/diff/libesm/diff/array.js +16 -0
- package/.output/server/node_modules/diff/libesm/diff/base.js +253 -0
- package/.output/server/node_modules/diff/libesm/diff/character.js +7 -0
- package/.output/server/node_modules/diff/libesm/diff/css.js +10 -0
- package/.output/server/node_modules/diff/libesm/diff/json.js +78 -0
- package/.output/server/node_modules/diff/libesm/diff/line.js +65 -0
- package/.output/server/node_modules/diff/libesm/diff/sentence.js +43 -0
- package/.output/server/node_modules/diff/libesm/diff/word.js +296 -0
- package/.output/server/node_modules/diff/libesm/index.js +30 -0
- package/.output/server/node_modules/diff/libesm/package.json +1 -0
- package/.output/server/node_modules/diff/libesm/patch/apply.js +257 -0
- package/.output/server/node_modules/diff/libesm/patch/create.js +228 -0
- package/.output/server/node_modules/diff/libesm/patch/line-endings.js +44 -0
- package/.output/server/node_modules/diff/libesm/patch/parse.js +147 -0
- package/.output/server/node_modules/diff/libesm/patch/reverse.js +23 -0
- package/.output/server/node_modules/diff/libesm/util/distance-iterator.js +37 -0
- package/.output/server/node_modules/diff/libesm/util/params.js +14 -0
- package/.output/server/node_modules/diff/libesm/util/string.js +128 -0
- package/.output/server/node_modules/diff/package.json +132 -0
- package/.output/server/package.json +4 -1
- package/dist/server/utils/git.js +8 -6
- package/package.json +2 -1
- package/.output/public/_nuxt/6tINjQEd.js +0 -141
- package/.output/public/_nuxt/B2mIQf5X.js +0 -3
- package/.output/public/_nuxt/C0BBSDJ7.js +0 -1
- package/.output/public/_nuxt/CN46Bgts.js +0 -1
- package/.output/public/_nuxt/CTJgb0zb.js +0 -1
- package/.output/public/_nuxt/Cce168lk.js +0 -30
- package/.output/public/_nuxt/CyVSeLw5.js +0 -1
- package/.output/public/_nuxt/Detail.CYc96mGf.css +0 -1
- package/.output/public/_nuxt/ZNypZshD.js +0 -13
- package/.output/public/_nuxt/builds/meta/9ce7f1bc-d5e2-47bf-8026-f4910c257b2e.json +0 -1
- package/.output/public/_nuxt/entry.Bw0CE6Iz.css +0 -1
- package/.output/public/_nuxt/pYJYAY-W.js +0 -60
- package/.output/server/chunks/build/Detail-DMMUwTWr.mjs.map +0 -1
- package/.output/server/chunks/build/DiffViewer-styles-1.mjs-d2dQvARr.mjs +0 -4
- package/.output/server/chunks/build/DiffViewer-styles-1.mjs-d2dQvARr.mjs.map +0 -1
- package/.output/server/chunks/build/DiffViewer-styles-2.mjs-X6QKNjM0.mjs +0 -4
- package/.output/server/chunks/build/DiffViewer-styles-2.mjs-X6QKNjM0.mjs.map +0 -1
- package/.output/server/chunks/build/DiffViewer-styles.0AbHFl6N.mjs +0 -8
- package/.output/server/chunks/build/DiffViewer-styles.0AbHFl6N.mjs.map +0 -1
- package/.output/server/chunks/build/DiffViewer-styles.BDwAqkTk.mjs +0 -8
- package/.output/server/chunks/build/DiffViewer-styles.BDwAqkTk.mjs.map +0 -1
- package/.output/server/chunks/build/DiffViewer-styles.DRJh5Ui4.mjs +0 -10
- package/.output/server/chunks/build/DiffViewer-styles.DRJh5Ui4.mjs.map +0 -1
- package/.output/server/chunks/build/_prd_-ByugK4Yi.mjs.map +0 -1
- package/.output/server/chunks/build/default-BKKgG7HJ.mjs.map +0 -1
- package/.output/server/chunks/build/error-404-Bf6kdO80.mjs.map +0 -1
- package/.output/server/chunks/build/index-DE1tjHAd.mjs.map +0 -1
- package/.output/server/chunks/build/nuxt-link-SvT1nf8Z.mjs.map +0 -1
- package/.output/server/chunks/build/repo-graph-DzT45gSB.mjs.map +0 -1
- package/.output/server/chunks/build/usePrd-hXZOmvAv.mjs.map +0 -1
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import{_ as ys}from"./LEjJTR7-.js";import{B as nn,C as Vn,L as ws,R as As,G as Ss}from"./D3PDtLSF.js";import{c as ft,d as Be,u as vs,a as Es,b as Rs,B as Ut,F as Cs}from"./CAMiEhze.js";import{C as Ls,E as Rn,c as Ds,M as Cn,a as Ln,b as Is,_ as Ps,T as Os,d as Ft,e as Ht,f as $s,g as Ms}from"./D0qxz_Pn.js";import{g as se,l as f,c as L,b as E,a as D,t as Z,n as ye,v as Qe,w as j,o as S,d as Le,s as H,k as Me,q as F,x as Ue,y as de,z as Qn,F as Xn,r as Kn,A as Ns,j as zs,B as Dn,C as Bs,m as In,i as Us}from"./B2ow85x_.js";import{A as Pn}from"./Ce0-nlm9.js";import{_ as Fs}from"./DlAUqK2U.js";import"./Dkh9ic1y.js";const Hs=ft("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);const Gs=ft("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const qs=ft("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);const On=ft("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);const Ws=ft("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]),js={key:0,class:"flex flex-wrap items-center gap-3 text-sm"},Ys={key:0,class:"flex items-center gap-1.5 text-muted-foreground"},Zs={key:1,class:"flex items-center gap-1.5 text-muted-foreground"},Vs=["href"],Qs={key:4,class:"flex items-center gap-1.5 text-muted-foreground"},Xs=se({__name:"Meta",props:{metadata:{}},setup(s){const e=s,n=H(()=>{const t=e.metadata.status?.toLowerCase();return t?t.includes("complete")||t.includes("done")||t.includes("progress")||t.includes("active")?"default":t.includes("draft")?"secondary":t.includes("blocked")||t.includes("paused")?"destructive":"secondary":"secondary"}),r=H(()=>e.metadata.author||e.metadata.date||e.metadata.status||e.metadata.shortcutStory);return(t,i)=>f(r)?(S(),L("div",js,[s.metadata.author?(S(),L("div",Ys,[E(f(Ws),{class:"size-3.5"}),D("span",null,Z(s.metadata.author),1)])):ye("",!0),s.metadata.date?(S(),L("div",Zs,[E(f(Ls),{class:"size-3.5"}),D("span",null,Z(s.metadata.date),1)])):ye("",!0),s.metadata.status?(S(),Qe(f(nn),{key:2,variant:f(n),class:"gap-1"},{default:j(()=>[E(f(Gs),{class:"size-3"}),Le(" "+Z(s.metadata.status),1)]),_:1},8,["variant"])):ye("",!0),s.metadata.shortcutStory&&s.metadata.shortcutUrl?(S(),L("a",{key:3,href:s.metadata.shortcutUrl,target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-1.5 text-primary hover:underline"},[E(f(Rn),{class:"size-3.5"}),D("span",null,Z(s.metadata.shortcutStory),1)],8,Vs)):s.metadata.shortcutStory?(S(),L("span",Qs,[E(f(Rn),{class:"size-3.5"}),D("span",null,Z(s.metadata.shortcutStory),1)])):ye("",!0)])):ye("",!0)}}),Ks=Object.assign(Xs,{__name:"PrdMeta"});function sn(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Fe=sn();function Jn(s){Fe=s}var Ne={exec:()=>null};function v(s,e=""){let n=typeof s=="string"?s:s.source,r={replace:(t,i)=>{let l=typeof i=="string"?i:i.source;return l=l.replace(X.caret,"$1"),n=n.replace(t,l),r},getRegex:()=>new RegExp(n,e)};return r}var Js=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),X={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:s=>new RegExp(`^( {0,3}${s})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}#`),htmlBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}>`)},er=/^(?:[ \t]*(?:\n|$))+/,tr=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,nr=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,gt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,sr=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,rn=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,es=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,ts=v(es).replace(/bull/g,rn).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),rr=v(es).replace(/bull/g,rn).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),an=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,ar=/^[^\n]+/,ln=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,lr=v(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",ln).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ir=v(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,rn).getRegex(),Lt="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",on=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,or=v("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",on).replace("tag",Lt).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ns=v(an).replace("hr",gt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Lt).getRegex(),cr=v(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",ns).getRegex(),cn={blockquote:cr,code:tr,def:lr,fences:nr,heading:sr,hr:gt,html:or,lheading:ts,list:ir,newline:er,paragraph:ns,table:Ne,text:ar},$n=v("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",gt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Lt).getRegex(),ur={...cn,lheading:rr,table:$n,paragraph:v(an).replace("hr",gt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",$n).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Lt).getRegex()},pr={...cn,html:v(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",on).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Ne,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:v(an).replace("hr",gt).replace("heading",` *#{1,6} *[^
|
|
2
|
+
]`).replace("lheading",ts).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},hr=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,dr=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ss=/^( {2,}|\\)\n(?!\s*$)/,fr=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Dt=/[\p{P}\p{S}]/u,un=/[\s\p{P}\p{S}]/u,rs=/[^\s\p{P}\p{S}]/u,gr=v(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,un).getRegex(),as=/(?!~)[\p{P}\p{S}]/u,mr=/(?!~)[\s\p{P}\p{S}]/u,kr=/(?:[^\s\p{P}\p{S}]|~)/u,ls=/(?![*_])[\p{P}\p{S}]/u,xr=/(?![*_])[\s\p{P}\p{S}]/u,br=/(?:[^\s\p{P}\p{S}]|[*_])/u,_r=v(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Js?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),is=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Tr=v(is,"u").replace(/punct/g,Dt).getRegex(),yr=v(is,"u").replace(/punct/g,as).getRegex(),os="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",wr=v(os,"gu").replace(/notPunctSpace/g,rs).replace(/punctSpace/g,un).replace(/punct/g,Dt).getRegex(),Ar=v(os,"gu").replace(/notPunctSpace/g,kr).replace(/punctSpace/g,mr).replace(/punct/g,as).getRegex(),Sr=v("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,rs).replace(/punctSpace/g,un).replace(/punct/g,Dt).getRegex(),vr=v(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,ls).getRegex(),Er="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",Rr=v(Er,"gu").replace(/notPunctSpace/g,br).replace(/punctSpace/g,xr).replace(/punct/g,ls).getRegex(),Cr=v(/\\(punct)/,"gu").replace(/punct/g,Dt).getRegex(),Lr=v(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Dr=v(on).replace("(?:-->|$)","-->").getRegex(),Ir=v("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Dr).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Et=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,Pr=v(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Et).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),cs=v(/^!?\[(label)\]\[(ref)\]/).replace("label",Et).replace("ref",ln).getRegex(),us=v(/^!?\[(ref)\](?:\[\])?/).replace("ref",ln).getRegex(),Or=v("reflink|nolink(?!\\()","g").replace("reflink",cs).replace("nolink",us).getRegex(),Mn=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,pn={_backpedal:Ne,anyPunctuation:Cr,autolink:Lr,blockSkip:_r,br:ss,code:dr,del:Ne,delLDelim:Ne,delRDelim:Ne,emStrongLDelim:Tr,emStrongRDelimAst:wr,emStrongRDelimUnd:Sr,escape:hr,link:Pr,nolink:us,punctuation:gr,reflink:cs,reflinkSearch:Or,tag:Ir,text:fr,url:Ne},$r={...pn,link:v(/^!?\[(label)\]\((.*?)\)/).replace("label",Et).getRegex(),reflink:v(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Et).getRegex()},Qt={...pn,emStrongRDelimAst:Ar,emStrongLDelim:yr,delLDelim:vr,delRDelim:Rr,url:v(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Mn).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:v(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Mn).getRegex()},Mr={...Qt,br:v(ss).replace("{2,}","*").getRegex(),text:v(Qt.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},wt={normal:cn,gfm:ur,pedantic:pr},lt={normal:pn,gfm:Qt,breaks:Mr,pedantic:$r},Nr={"&":"&","<":"<",">":">",'"':""","'":"'"},Nn=s=>Nr[s];function _e(s,e){if(e){if(X.escapeTest.test(s))return s.replace(X.escapeReplace,Nn)}else if(X.escapeTestNoEncode.test(s))return s.replace(X.escapeReplaceNoEncode,Nn);return s}function zn(s){try{s=encodeURI(s).replace(X.percentDecode,"%")}catch{return null}return s}function Bn(s,e){let n=s.replace(X.findPipe,(i,l,u)=>{let o=!1,g=l;for(;--g>=0&&u[g]==="\\";)o=!o;return o?"|":" |"}),r=n.split(X.splitPipe),t=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length<e;)r.push("");for(;t<r.length;t++)r[t]=r[t].trim().replace(X.slashPipe,"|");return r}function it(s,e,n){let r=s.length;if(r===0)return"";let t=0;for(;t<r&&s.charAt(r-t-1)===e;)t++;return s.slice(0,r-t)}function zr(s,e){if(s.indexOf(e[1])===-1)return-1;let n=0;for(let r=0;r<s.length;r++)if(s[r]==="\\")r++;else if(s[r]===e[0])n++;else if(s[r]===e[1]&&(n--,n<0))return r;return n>0?-2:-1}function Br(s,e=0){let n=e,r="";for(let t of s)if(t===" "){let i=4-n%4;r+=" ".repeat(i),n+=i}else r+=t,n++;return r}function Un(s,e,n,r,t){let i=e.href,l=e.title||null,u=s[1].replace(t.other.outputLinkReplace,"$1");r.state.inLink=!0;let o={type:s[0].charAt(0)==="!"?"image":"link",raw:n,href:i,title:l,text:u,tokens:r.inlineTokens(u)};return r.state.inLink=!1,o}function Ur(s,e,n){let r=s.match(n.other.indentCodeCompensation);if(r===null)return e;let t=r[1];return e.split(`
|
|
3
|
+
`).map(i=>{let l=i.match(n.other.beginningSpace);if(l===null)return i;let[u]=l;return u.length>=t.length?i.slice(t.length):i}).join(`
|
|
4
|
+
`)}var Rt=class{options;rules;lexer;constructor(s){this.options=s||Fe}space(s){let e=this.rules.block.newline.exec(s);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(s){let e=this.rules.block.code.exec(s);if(e){let n=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:it(n,`
|
|
5
|
+
`)}}}fences(s){let e=this.rules.block.fences.exec(s);if(e){let n=e[0],r=Ur(n,e[3]||"",this.rules);return{type:"code",raw:n,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(s){let e=this.rules.block.heading.exec(s);if(e){let n=e[2].trim();if(this.rules.other.endingHash.test(n)){let r=it(n,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(s){let e=this.rules.block.hr.exec(s);if(e)return{type:"hr",raw:it(e[0],`
|
|
6
|
+
`)}}blockquote(s){let e=this.rules.block.blockquote.exec(s);if(e){let n=it(e[0],`
|
|
7
|
+
`).split(`
|
|
8
|
+
`),r="",t="",i=[];for(;n.length>0;){let l=!1,u=[],o;for(o=0;o<n.length;o++)if(this.rules.other.blockquoteStart.test(n[o]))u.push(n[o]),l=!0;else if(!l)u.push(n[o]);else break;n=n.slice(o);let g=u.join(`
|
|
9
|
+
`),d=g.replace(this.rules.other.blockquoteSetextReplace,`
|
|
10
|
+
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");r=r?`${r}
|
|
11
|
+
${g}`:g,t=t?`${t}
|
|
12
|
+
${d}`:d;let m=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(d,i,!0),this.lexer.state.top=m,n.length===0)break;let b=i.at(-1);if(b?.type==="code")break;if(b?.type==="blockquote"){let y=b,_=y.raw+`
|
|
13
|
+
`+n.join(`
|
|
14
|
+
`),G=this.blockquote(_);i[i.length-1]=G,r=r.substring(0,r.length-y.raw.length)+G.raw,t=t.substring(0,t.length-y.text.length)+G.text;break}else if(b?.type==="list"){let y=b,_=y.raw+`
|
|
15
|
+
`+n.join(`
|
|
16
|
+
`),G=this.list(_);i[i.length-1]=G,r=r.substring(0,r.length-b.raw.length)+G.raw,t=t.substring(0,t.length-y.raw.length)+G.raw,n=_.substring(i.at(-1).raw.length).split(`
|
|
17
|
+
`);continue}}return{type:"blockquote",raw:r,tokens:i,text:t}}}list(s){let e=this.rules.block.list.exec(s);if(e){let n=e[1].trim(),r=n.length>1,t={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");let i=this.rules.other.listItemRegex(n),l=!1;for(;s;){let o=!1,g="",d="";if(!(e=i.exec(s))||this.rules.block.hr.test(s))break;g=e[0],s=s.substring(g.length);let m=Br(e[2].split(`
|
|
18
|
+
`,1)[0],e[1].length),b=s.split(`
|
|
19
|
+
`,1)[0],y=!m.trim(),_=0;if(this.options.pedantic?(_=2,d=m.trimStart()):y?_=e[1].length+1:(_=m.search(this.rules.other.nonSpaceChar),_=_>4?1:_,d=m.slice(_),_+=e[1].length),y&&this.rules.other.blankLine.test(b)&&(g+=b+`
|
|
20
|
+
`,s=s.substring(b.length+1),o=!0),!o){let G=this.rules.other.nextBulletRegex(_),q=this.rules.other.hrRegex(_),V=this.rules.other.fencesBeginRegex(_),A=this.rules.other.headingBeginRegex(_),I=this.rules.other.htmlBeginRegex(_),R=this.rules.other.blockquoteBeginRegex(_);for(;s;){let re=s.split(`
|
|
21
|
+
`,1)[0],ee;if(b=re,this.options.pedantic?(b=b.replace(this.rules.other.listReplaceNesting," "),ee=b):ee=b.replace(this.rules.other.tabCharGlobal," "),V.test(b)||A.test(b)||I.test(b)||R.test(b)||G.test(b)||q.test(b))break;if(ee.search(this.rules.other.nonSpaceChar)>=_||!b.trim())d+=`
|
|
22
|
+
`+ee.slice(_);else{if(y||m.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||V.test(m)||A.test(m)||q.test(m))break;d+=`
|
|
23
|
+
`+b}y=!b.trim(),g+=re+`
|
|
24
|
+
`,s=s.substring(re.length+1),m=ee.slice(_)}}t.loose||(l?t.loose=!0:this.rules.other.doubleBlankLine.test(g)&&(l=!0)),t.items.push({type:"list_item",raw:g,task:!!this.options.gfm&&this.rules.other.listIsTask.test(d),loose:!1,text:d,tokens:[]}),t.raw+=g}let u=t.items.at(-1);if(u)u.raw=u.raw.trimEnd(),u.text=u.text.trimEnd();else return;t.raw=t.raw.trimEnd();for(let o of t.items){if(this.lexer.state.top=!1,o.tokens=this.lexer.blockTokens(o.text,[]),o.task){if(o.text=o.text.replace(this.rules.other.listReplaceTask,""),o.tokens[0]?.type==="text"||o.tokens[0]?.type==="paragraph"){o.tokens[0].raw=o.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),o.tokens[0].text=o.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let d=this.lexer.inlineQueue.length-1;d>=0;d--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[d].src)){this.lexer.inlineQueue[d].src=this.lexer.inlineQueue[d].src.replace(this.rules.other.listReplaceTask,"");break}}let g=this.rules.other.listTaskCheckbox.exec(o.raw);if(g){let d={type:"checkbox",raw:g[0]+" ",checked:g[0]!=="[ ]"};o.checked=d.checked,t.loose?o.tokens[0]&&["paragraph","text"].includes(o.tokens[0].type)&&"tokens"in o.tokens[0]&&o.tokens[0].tokens?(o.tokens[0].raw=d.raw+o.tokens[0].raw,o.tokens[0].text=d.raw+o.tokens[0].text,o.tokens[0].tokens.unshift(d)):o.tokens.unshift({type:"paragraph",raw:d.raw,text:d.raw,tokens:[d]}):o.tokens.unshift(d)}}if(!t.loose){let g=o.tokens.filter(m=>m.type==="space"),d=g.length>0&&g.some(m=>this.rules.other.anyLine.test(m.raw));t.loose=d}}if(t.loose)for(let o of t.items){o.loose=!0;for(let g of o.tokens)g.type==="text"&&(g.type="paragraph")}return t}}html(s){let e=this.rules.block.html.exec(s);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(s){let e=this.rules.block.def.exec(s);if(e){let n=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),r=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",t=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:n,raw:e[0],href:r,title:t}}}table(s){let e=this.rules.block.table.exec(s);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let n=Bn(e[1]),r=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),t=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
|
|
25
|
+
`):[],i={type:"table",raw:e[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let l of r)this.rules.other.tableAlignRight.test(l)?i.align.push("right"):this.rules.other.tableAlignCenter.test(l)?i.align.push("center"):this.rules.other.tableAlignLeft.test(l)?i.align.push("left"):i.align.push(null);for(let l=0;l<n.length;l++)i.header.push({text:n[l],tokens:this.lexer.inline(n[l]),header:!0,align:i.align[l]});for(let l of t)i.rows.push(Bn(l,i.header.length).map((u,o)=>({text:u,tokens:this.lexer.inline(u),header:!1,align:i.align[o]})));return i}}lheading(s){let e=this.rules.block.lheading.exec(s);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(s){let e=this.rules.block.paragraph.exec(s);if(e){let n=e[1].charAt(e[1].length-1)===`
|
|
26
|
+
`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:n,tokens:this.lexer.inline(n)}}}text(s){let e=this.rules.block.text.exec(s);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(s){let e=this.rules.inline.escape.exec(s);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(s){let e=this.rules.inline.tag.exec(s);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(s){let e=this.rules.inline.link.exec(s);if(e){let n=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let i=it(n.slice(0,-1),"\\");if((n.length-i.length)%2===0)return}else{let i=zr(e[2],"()");if(i===-2)return;if(i>-1){let l=(e[0].indexOf("!")===0?5:4)+e[1].length+i;e[2]=e[2].substring(0,i),e[0]=e[0].substring(0,l).trim(),e[3]=""}}let r=e[2],t="";if(this.options.pedantic){let i=this.rules.other.pedanticHrefTitle.exec(r);i&&(r=i[1],t=i[3])}else t=e[3]?e[3].slice(1,-1):"";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?r=r.slice(1):r=r.slice(1,-1)),Un(e,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:t&&t.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(s,e){let n;if((n=this.rules.inline.reflink.exec(s))||(n=this.rules.inline.nolink.exec(s))){let r=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," "),t=e[r.toLowerCase()];if(!t){let i=n[0].charAt(0);return{type:"text",raw:i,text:i}}return Un(n,t,n[0],this.lexer,this.rules)}}emStrong(s,e,n=""){let r=this.rules.inline.emStrongLDelim.exec(s);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!(r[1]||r[2])||!n||this.rules.inline.punctuation.exec(n))){let t=[...r[0]].length-1,i,l,u=t,o=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,e=e.slice(-1*s.length+t);(r=g.exec(e))!=null;){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i)continue;if(l=[...i].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&t%3&&!((t+l)%3)){o+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+o);let d=[...r[0]][0].length,m=s.slice(0,t+r.index+d+l);if(Math.min(t,l)%2){let y=m.slice(1,-1);return{type:"em",raw:m,text:y,tokens:this.lexer.inlineTokens(y)}}let b=m.slice(2,-2);return{type:"strong",raw:m,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(s){let e=this.rules.inline.code.exec(s);if(e){let n=e[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(n),t=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&t&&(n=n.substring(1,n.length-1)),{type:"codespan",raw:e[0],text:n}}}br(s){let e=this.rules.inline.br.exec(s);if(e)return{type:"br",raw:e[0]}}del(s,e,n=""){let r=this.rules.inline.delLDelim.exec(s);if(r&&(!r[1]||!n||this.rules.inline.punctuation.exec(n))){let t=[...r[0]].length-1,i,l,u=t,o=this.rules.inline.delRDelim;for(o.lastIndex=0,e=e.slice(-1*s.length+t);(r=o.exec(e))!=null;){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i||(l=[...i].length,l!==t))continue;if(r[3]||r[4]){u+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u);let g=[...r[0]][0].length,d=s.slice(0,t+r.index+g+l),m=d.slice(t,-t);return{type:"del",raw:d,text:m,tokens:this.lexer.inlineTokens(m)}}}}autolink(s){let e=this.rules.inline.autolink.exec(s);if(e){let n,r;return e[2]==="@"?(n=e[1],r="mailto:"+n):(n=e[1],r=n),{type:"link",raw:e[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}}url(s){let e;if(e=this.rules.inline.url.exec(s)){let n,r;if(e[2]==="@")n=e[0],r="mailto:"+n;else{let t;do t=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(t!==e[0]);n=e[0],e[1]==="www."?r="http://"+e[0]:r=e[0]}return{type:"link",raw:e[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}}inlineText(s){let e=this.rules.inline.text.exec(s);if(e){let n=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:n}}}},pe=class Xt{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Fe,this.options.tokenizer=this.options.tokenizer||new Rt,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let n={other:X,block:wt.normal,inline:lt.normal};this.options.pedantic?(n.block=wt.pedantic,n.inline=lt.pedantic):this.options.gfm&&(n.block=wt.gfm,this.options.breaks?n.inline=lt.breaks:n.inline=lt.gfm),this.tokenizer.rules=n}static get rules(){return{block:wt,inline:lt}}static lex(e,n){return new Xt(n).lex(e)}static lexInline(e,n){return new Xt(n).inlineTokens(e)}lex(e){e=e.replace(X.carriageReturn,`
|
|
27
|
+
`),this.blockTokens(e,this.tokens);for(let n=0;n<this.inlineQueue.length;n++){let r=this.inlineQueue[n];this.inlineTokens(r.src,r.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,n=[],r=!1){for(this.options.pedantic&&(e=e.replace(X.tabCharGlobal," ").replace(X.spaceLine,""));e;){let t;if(this.options.extensions?.block?.some(l=>(t=l.call({lexer:this},e,n))?(e=e.substring(t.raw.length),n.push(t),!0):!1))continue;if(t=this.tokenizer.space(e)){e=e.substring(t.raw.length);let l=n.at(-1);t.raw.length===1&&l!==void 0?l.raw+=`
|
|
28
|
+
`:n.push(t);continue}if(t=this.tokenizer.code(e)){e=e.substring(t.raw.length);let l=n.at(-1);l?.type==="paragraph"||l?.type==="text"?(l.raw+=(l.raw.endsWith(`
|
|
29
|
+
`)?"":`
|
|
30
|
+
`)+t.raw,l.text+=`
|
|
31
|
+
`+t.text,this.inlineQueue.at(-1).src=l.text):n.push(t);continue}if(t=this.tokenizer.fences(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.heading(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.hr(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.blockquote(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.list(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.html(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.def(e)){e=e.substring(t.raw.length);let l=n.at(-1);l?.type==="paragraph"||l?.type==="text"?(l.raw+=(l.raw.endsWith(`
|
|
32
|
+
`)?"":`
|
|
33
|
+
`)+t.raw,l.text+=`
|
|
34
|
+
`+t.raw,this.inlineQueue.at(-1).src=l.text):this.tokens.links[t.tag]||(this.tokens.links[t.tag]={href:t.href,title:t.title},n.push(t));continue}if(t=this.tokenizer.table(e)){e=e.substring(t.raw.length),n.push(t);continue}if(t=this.tokenizer.lheading(e)){e=e.substring(t.raw.length),n.push(t);continue}let i=e;if(this.options.extensions?.startBlock){let l=1/0,u=e.slice(1),o;this.options.extensions.startBlock.forEach(g=>{o=g.call({lexer:this},u),typeof o=="number"&&o>=0&&(l=Math.min(l,o))}),l<1/0&&l>=0&&(i=e.substring(0,l+1))}if(this.state.top&&(t=this.tokenizer.paragraph(i))){let l=n.at(-1);r&&l?.type==="paragraph"?(l.raw+=(l.raw.endsWith(`
|
|
35
|
+
`)?"":`
|
|
36
|
+
`)+t.raw,l.text+=`
|
|
37
|
+
`+t.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):n.push(t),r=i.length!==e.length,e=e.substring(t.raw.length);continue}if(t=this.tokenizer.text(e)){e=e.substring(t.raw.length);let l=n.at(-1);l?.type==="text"?(l.raw+=(l.raw.endsWith(`
|
|
38
|
+
`)?"":`
|
|
39
|
+
`)+t.raw,l.text+=`
|
|
40
|
+
`+t.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):n.push(t);continue}if(e){let l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,n}inline(e,n=[]){return this.inlineQueue.push({src:e,tokens:n}),n}inlineTokens(e,n=[]){let r=e,t=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(t=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)o.includes(t[0].slice(t[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,t.index)+"["+"a".repeat(t[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(t=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,t.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(t=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)i=t[2]?t[2].length:0,r=r.slice(0,t.index+i)+"["+"a".repeat(t[0].length-i-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=this.options.hooks?.emStrongMask?.call({lexer:this},r)??r;let l=!1,u="";for(;e;){l||(u=""),l=!1;let o;if(this.options.extensions?.inline?.some(d=>(o=d.call({lexer:this},e,n))?(e=e.substring(o.raw.length),n.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let d=n.at(-1);o.type==="text"&&d?.type==="text"?(d.raw+=o.raw,d.text+=o.text):n.push(o);continue}if(o=this.tokenizer.emStrong(e,r,u)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.del(e,r,u)){e=e.substring(o.raw.length),n.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),n.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),n.push(o);continue}let g=e;if(this.options.extensions?.startInline){let d=1/0,m=e.slice(1),b;this.options.extensions.startInline.forEach(y=>{b=y.call({lexer:this},m),typeof b=="number"&&b>=0&&(d=Math.min(d,b))}),d<1/0&&d>=0&&(g=e.substring(0,d+1))}if(o=this.tokenizer.inlineText(g)){e=e.substring(o.raw.length),o.raw.slice(-1)!=="_"&&(u=o.raw.slice(-1)),l=!0;let d=n.at(-1);d?.type==="text"?(d.raw+=o.raw,d.text+=o.text):n.push(o);continue}if(e){let d="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(d);break}else throw new Error(d)}}return n}},Ct=class{options;parser;constructor(s){this.options=s||Fe}space(s){return""}code({text:s,lang:e,escaped:n}){let r=(e||"").match(X.notSpaceStart)?.[0],t=s.replace(X.endingNewline,"")+`
|
|
41
|
+
`;return r?'<pre><code class="language-'+_e(r)+'">'+(n?t:_e(t,!0))+`</code></pre>
|
|
42
|
+
`:"<pre><code>"+(n?t:_e(t,!0))+`</code></pre>
|
|
43
|
+
`}blockquote({tokens:s}){return`<blockquote>
|
|
44
|
+
${this.parser.parse(s)}</blockquote>
|
|
45
|
+
`}html({text:s}){return s}def(s){return""}heading({tokens:s,depth:e}){return`<h${e}>${this.parser.parseInline(s)}</h${e}>
|
|
46
|
+
`}hr(s){return`<hr>
|
|
47
|
+
`}list(s){let e=s.ordered,n=s.start,r="";for(let l=0;l<s.items.length;l++){let u=s.items[l];r+=this.listitem(u)}let t=e?"ol":"ul",i=e&&n!==1?' start="'+n+'"':"";return"<"+t+i+`>
|
|
48
|
+
`+r+"</"+t+`>
|
|
49
|
+
`}listitem(s){return`<li>${this.parser.parse(s.tokens)}</li>
|
|
50
|
+
`}checkbox({checked:s}){return"<input "+(s?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:s}){return`<p>${this.parser.parseInline(s)}</p>
|
|
51
|
+
`}table(s){let e="",n="";for(let t=0;t<s.header.length;t++)n+=this.tablecell(s.header[t]);e+=this.tablerow({text:n});let r="";for(let t=0;t<s.rows.length;t++){let i=s.rows[t];n="";for(let l=0;l<i.length;l++)n+=this.tablecell(i[l]);r+=this.tablerow({text:n})}return r&&(r=`<tbody>${r}</tbody>`),`<table>
|
|
52
|
+
<thead>
|
|
53
|
+
`+e+`</thead>
|
|
54
|
+
`+r+`</table>
|
|
55
|
+
`}tablerow({text:s}){return`<tr>
|
|
56
|
+
${s}</tr>
|
|
57
|
+
`}tablecell(s){let e=this.parser.parseInline(s.tokens),n=s.header?"th":"td";return(s.align?`<${n} align="${s.align}">`:`<${n}>`)+e+`</${n}>
|
|
58
|
+
`}strong({tokens:s}){return`<strong>${this.parser.parseInline(s)}</strong>`}em({tokens:s}){return`<em>${this.parser.parseInline(s)}</em>`}codespan({text:s}){return`<code>${_e(s,!0)}</code>`}br(s){return"<br>"}del({tokens:s}){return`<del>${this.parser.parseInline(s)}</del>`}link({href:s,title:e,tokens:n}){let r=this.parser.parseInline(n),t=zn(s);if(t===null)return r;s=t;let i='<a href="'+s+'"';return e&&(i+=' title="'+_e(e)+'"'),i+=">"+r+"</a>",i}image({href:s,title:e,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let t=zn(s);if(t===null)return _e(n);s=t;let i=`<img src="${s}" alt="${_e(n)}"`;return e&&(i+=` title="${_e(e)}"`),i+=">",i}text(s){return"tokens"in s&&s.tokens?this.parser.parseInline(s.tokens):"escaped"in s&&s.escaped?s.text:_e(s.text)}},hn=class{strong({text:s}){return s}em({text:s}){return s}codespan({text:s}){return s}del({text:s}){return s}html({text:s}){return s}text({text:s}){return s}link({text:s}){return""+s}image({text:s}){return""+s}br(){return""}checkbox({raw:s}){return s}},he=class Kt{options;renderer;textRenderer;constructor(e){this.options=e||Fe,this.options.renderer=this.options.renderer||new Ct,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new hn}static parse(e,n){return new Kt(n).parse(e)}static parseInline(e,n){return new Kt(n).parseInline(e)}parse(e){let n="";for(let r=0;r<e.length;r++){let t=e[r];if(this.options.extensions?.renderers?.[t.type]){let l=t,u=this.options.extensions.renderers[l.type].call({parser:this},l);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(l.type)){n+=u||"";continue}}let i=t;switch(i.type){case"space":{n+=this.renderer.space(i);break}case"hr":{n+=this.renderer.hr(i);break}case"heading":{n+=this.renderer.heading(i);break}case"code":{n+=this.renderer.code(i);break}case"table":{n+=this.renderer.table(i);break}case"blockquote":{n+=this.renderer.blockquote(i);break}case"list":{n+=this.renderer.list(i);break}case"checkbox":{n+=this.renderer.checkbox(i);break}case"html":{n+=this.renderer.html(i);break}case"def":{n+=this.renderer.def(i);break}case"paragraph":{n+=this.renderer.paragraph(i);break}case"text":{n+=this.renderer.text(i);break}default:{let l='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return n}parseInline(e,n=this.renderer){let r="";for(let t=0;t<e.length;t++){let i=e[t];if(this.options.extensions?.renderers?.[i.type]){let u=this.options.extensions.renderers[i.type].call({parser:this},i);if(u!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(i.type)){r+=u||"";continue}}let l=i;switch(l.type){case"escape":{r+=n.text(l);break}case"html":{r+=n.html(l);break}case"link":{r+=n.link(l);break}case"image":{r+=n.image(l);break}case"checkbox":{r+=n.checkbox(l);break}case"strong":{r+=n.strong(l);break}case"em":{r+=n.em(l);break}case"codespan":{r+=n.codespan(l);break}case"br":{r+=n.br(l);break}case"del":{r+=n.del(l);break}case"text":{r+=n.text(l);break}default:{let u='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(u),"";throw new Error(u)}}}return r}},dt=class{options;block;constructor(s){this.options=s||Fe}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(s){return s}postprocess(s){return s}processAllTokens(s){return s}emStrongMask(s){return s}provideLexer(){return this.block?pe.lex:pe.lexInline}provideParser(){return this.block?he.parse:he.parseInline}},Fr=class{defaults=sn();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=he;Renderer=Ct;TextRenderer=hn;Lexer=pe;Tokenizer=Rt;Hooks=dt;constructor(...s){this.use(...s)}walkTokens(s,e){let n=[];for(let r of s)switch(n=n.concat(e.call(this,r)),r.type){case"table":{let t=r;for(let i of t.header)n=n.concat(this.walkTokens(i.tokens,e));for(let i of t.rows)for(let l of i)n=n.concat(this.walkTokens(l.tokens,e));break}case"list":{let t=r;n=n.concat(this.walkTokens(t.items,e));break}default:{let t=r;this.defaults.extensions?.childTokens?.[t.type]?this.defaults.extensions.childTokens[t.type].forEach(i=>{let l=t[i].flat(1/0);n=n.concat(this.walkTokens(l,e))}):t.tokens&&(n=n.concat(this.walkTokens(t.tokens,e)))}}return n}use(...s){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return s.forEach(n=>{let r={...n};if(r.async=this.defaults.async||r.async||!1,n.extensions&&(n.extensions.forEach(t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){let i=e.renderers[t.name];i?e.renderers[t.name]=function(...l){let u=t.renderer.apply(this,l);return u===!1&&(u=i.apply(this,l)),u}:e.renderers[t.name]=t.renderer}if("tokenizer"in t){if(!t.level||t.level!=="block"&&t.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let i=e[t.level];i?i.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&(t.level==="block"?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:t.level==="inline"&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)}),r.extensions=e),n.renderer){let t=this.defaults.renderer||new Ct(this.defaults);for(let i in n.renderer){if(!(i in t))throw new Error(`renderer '${i}' does not exist`);if(["options","parser"].includes(i))continue;let l=i,u=n.renderer[l],o=t[l];t[l]=(...g)=>{let d=u.apply(t,g);return d===!1&&(d=o.apply(t,g)),d||""}}r.renderer=t}if(n.tokenizer){let t=this.defaults.tokenizer||new Rt(this.defaults);for(let i in n.tokenizer){if(!(i in t))throw new Error(`tokenizer '${i}' does not exist`);if(["options","rules","lexer"].includes(i))continue;let l=i,u=n.tokenizer[l],o=t[l];t[l]=(...g)=>{let d=u.apply(t,g);return d===!1&&(d=o.apply(t,g)),d}}r.tokenizer=t}if(n.hooks){let t=this.defaults.hooks||new dt;for(let i in n.hooks){if(!(i in t))throw new Error(`hook '${i}' does not exist`);if(["options","block"].includes(i))continue;let l=i,u=n.hooks[l],o=t[l];dt.passThroughHooks.has(i)?t[l]=g=>{if(this.defaults.async&&dt.passThroughHooksRespectAsync.has(i))return(async()=>{let m=await u.call(t,g);return o.call(t,m)})();let d=u.call(t,g);return o.call(t,d)}:t[l]=(...g)=>{if(this.defaults.async)return(async()=>{let m=await u.apply(t,g);return m===!1&&(m=await o.apply(t,g)),m})();let d=u.apply(t,g);return d===!1&&(d=o.apply(t,g)),d}}r.hooks=t}if(n.walkTokens){let t=this.defaults.walkTokens,i=n.walkTokens;r.walkTokens=function(l){let u=[];return u.push(i.call(this,l)),t&&(u=u.concat(t.call(this,l))),u}}this.defaults={...this.defaults,...r}}),this}setOptions(s){return this.defaults={...this.defaults,...s},this}lexer(s,e){return pe.lex(s,e??this.defaults)}parser(s,e){return he.parse(s,e??this.defaults)}parseMarkdown(s){return(e,n)=>{let r={...n},t={...this.defaults,...r},i=this.onError(!!t.silent,!!t.async);if(this.defaults.async===!0&&r.async===!1)return i(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return i(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return i(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(t.hooks&&(t.hooks.options=t,t.hooks.block=s),t.async)return(async()=>{let l=t.hooks?await t.hooks.preprocess(e):e,u=await(t.hooks?await t.hooks.provideLexer():s?pe.lex:pe.lexInline)(l,t),o=t.hooks?await t.hooks.processAllTokens(u):u;t.walkTokens&&await Promise.all(this.walkTokens(o,t.walkTokens));let g=await(t.hooks?await t.hooks.provideParser():s?he.parse:he.parseInline)(o,t);return t.hooks?await t.hooks.postprocess(g):g})().catch(i);try{t.hooks&&(e=t.hooks.preprocess(e));let l=(t.hooks?t.hooks.provideLexer():s?pe.lex:pe.lexInline)(e,t);t.hooks&&(l=t.hooks.processAllTokens(l)),t.walkTokens&&this.walkTokens(l,t.walkTokens);let u=(t.hooks?t.hooks.provideParser():s?he.parse:he.parseInline)(l,t);return t.hooks&&(u=t.hooks.postprocess(u)),u}catch(l){return i(l)}}}onError(s,e){return n=>{if(n.message+=`
|
|
59
|
+
Please report this to https://github.com/markedjs/marked.`,s){let r="<p>An error occurred:</p><pre>"+_e(n.message+"",!0)+"</pre>";return e?Promise.resolve(r):r}if(e)return Promise.reject(n);throw n}}},ze=new Fr;function C(s,e){return ze.parse(s,e)}C.options=C.setOptions=function(s){return ze.setOptions(s),C.defaults=ze.defaults,Jn(C.defaults),C};C.getDefaults=sn;C.defaults=Fe;C.use=function(...s){return ze.use(...s),C.defaults=ze.defaults,Jn(C.defaults),C};C.walkTokens=function(s,e){return ze.walkTokens(s,e)};C.parseInline=ze.parseInline;C.Parser=he;C.parser=he.parse;C.Renderer=Ct;C.TextRenderer=hn;C.Lexer=pe;C.lexer=pe.lex;C.Tokenizer=Rt;C.Hooks=dt;C.parse=C;C.options;C.setOptions;C.use;C.walkTokens;C.parseInline;he.parse;pe.lex;const{entries:ps,setPrototypeOf:Fn,isFrozen:Hr,getPrototypeOf:Gr,getOwnPropertyDescriptor:qr}=Object;let{freeze:K,seal:le,create:Jt}=Object,{apply:en,construct:tn}=typeof Reflect<"u"&&Reflect;K||(K=function(e){return e});le||(le=function(e){return e});en||(en=function(e,n){for(var r=arguments.length,t=new Array(r>2?r-2:0),i=2;i<r;i++)t[i-2]=arguments[i];return e.apply(n,t)});tn||(tn=function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),t=1;t<n;t++)r[t-1]=arguments[t];return new e(...r)});const At=J(Array.prototype.forEach),Wr=J(Array.prototype.lastIndexOf),Hn=J(Array.prototype.pop),ot=J(Array.prototype.push),jr=J(Array.prototype.splice),vt=J(String.prototype.toLowerCase),Gt=J(String.prototype.toString),qt=J(String.prototype.match),ct=J(String.prototype.replace),Yr=J(String.prototype.indexOf),Zr=J(String.prototype.trim),ue=J(Object.prototype.hasOwnProperty),Q=J(RegExp.prototype.test),ut=Vr(TypeError);function J(s){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var n=arguments.length,r=new Array(n>1?n-1:0),t=1;t<n;t++)r[t-1]=arguments[t];return en(s,e,r)}}function Vr(s){return function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];return tn(s,n)}}function w(s,e){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:vt;Fn&&Fn(s,null);let r=e.length;for(;r--;){let t=e[r];if(typeof t=="string"){const i=n(t);i!==t&&(Hr(e)||(e[r]=i),t=i)}s[t]=!0}return s}function Qr(s){for(let e=0;e<s.length;e++)ue(s,e)||(s[e]=null);return s}function Te(s){const e=Jt(null);for(const[n,r]of ps(s))ue(s,n)&&(Array.isArray(r)?e[n]=Qr(r):r&&typeof r=="object"&&r.constructor===Object?e[n]=Te(r):e[n]=r);return e}function pt(s,e){for(;s!==null;){const r=qr(s,e);if(r){if(r.get)return J(r.get);if(typeof r.value=="function")return J(r.value)}s=Gr(s)}function n(){return null}return n}const Gn=K(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Wt=K(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),jt=K(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Xr=K(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Yt=K(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Kr=K(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),qn=K(["#text"]),Wn=K(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),Zt=K(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),jn=K(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),St=K(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Jr=le(/\{\{[\w\W]*|[\w\W]*\}\}/gm),ea=le(/<%[\w\W]*|[\w\W]*%>/gm),ta=le(/\$\{[\w\W]*/gm),na=le(/^data-[\-\w.\u00B7-\uFFFF]+$/),sa=le(/^aria-[\-\w]+$/),hs=le(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ra=le(/^(?:\w+script|data):/i),aa=le(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),ds=le(/^html$/i),la=le(/^[a-z][.\w]*(-[.\w]+)+$/i);var Yn=Object.freeze({__proto__:null,ARIA_ATTR:sa,ATTR_WHITESPACE:aa,CUSTOM_ELEMENT:la,DATA_ATTR:na,DOCTYPE_NAME:ds,ERB_EXPR:ea,IS_ALLOWED_URI:hs,IS_SCRIPT_OR_DATA:ra,MUSTACHE_EXPR:Jr,TMPLIT_EXPR:ta});const ht={element:1,text:3,progressingInstruction:7,comment:8,document:9},ia=function(){return typeof window>"u"?null:window},oa=function(e,n){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null;const t="data-tt-policy-suffix";n&&n.hasAttribute(t)&&(r=n.getAttribute(t));const i="dompurify"+(r?"#"+r:"");try{return e.createPolicy(i,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Zn=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function fs(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ia();const e=x=>fs(x);if(e.version="3.3.1",e.removed=[],!s||!s.document||s.document.nodeType!==ht.document||!s.Element)return e.isSupported=!1,e;let{document:n}=s;const r=n,t=r.currentScript,{DocumentFragment:i,HTMLTemplateElement:l,Node:u,Element:o,NodeFilter:g,NamedNodeMap:d=s.NamedNodeMap||s.MozNamedAttrMap,HTMLFormElement:m,DOMParser:b,trustedTypes:y}=s,_=o.prototype,G=pt(_,"cloneNode"),q=pt(_,"remove"),V=pt(_,"nextSibling"),A=pt(_,"childNodes"),I=pt(_,"parentNode");if(typeof l=="function"){const x=n.createElement("template");x.content&&x.content.ownerDocument&&(n=x.content.ownerDocument)}let R,re="";const{implementation:ee,createNodeIterator:ie,createDocumentFragment:te,getElementsByTagName:Ie}=n,{importNode:Xe}=r;let M=Zn();e.isSupported=typeof ps=="function"&&typeof I=="function"&&ee&&ee.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:fe,ERB_EXPR:ge,TMPLIT_EXPR:oe,DATA_ATTR:me,ARIA_ATTR:ke,IS_SCRIPT_OR_DATA:Pe,ATTR_WHITESPACE:He,CUSTOM_ELEMENT:mt}=Yn;let{IS_ALLOWED_URI:Ke}=Yn,$=null;const Je=w({},[...Gn,...Wt,...jt,...Yt,...qn]);let z=null;const Ge=w({},[...Wn,...Zt,...jn,...St]);let P=Object.seal(Jt(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),we=null,et=null;const Ae=Object.seal(Jt(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let kt=!0,tt=!0,xt=!1,qe=!0,Se=!1,De=!0,ve=!1,nt=!1,st=!1,c=!1,p=!1,T=!1,U=!0,ae=!1;const It="user-content-";let rt=!0,Oe=!1,ce={},xe=null;const Pt=w({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let dn=null;const fn=w({},["audio","video","img","source","image","track"]);let Ot=null;const gn=w({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),bt="http://www.w3.org/1998/Math/MathML",_t="http://www.w3.org/2000/svg",Ee="http://www.w3.org/1999/xhtml";let We=Ee,$t=!1,Mt=null;const gs=w({},[bt,_t,Ee],Gt);let Tt=w({},["mi","mo","mn","ms","mtext"]),yt=w({},["annotation-xml"]);const ms=w({},["title","style","font","a","script"]);let at=null;const ks=["application/xhtml+xml","text/html"],xs="text/html";let B=null,je=null;const bs=n.createElement("form"),mn=function(a){return a instanceof RegExp||a instanceof Function},Nt=function(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(je&&je===a)){if((!a||typeof a!="object")&&(a={}),a=Te(a),at=ks.indexOf(a.PARSER_MEDIA_TYPE)===-1?xs:a.PARSER_MEDIA_TYPE,B=at==="application/xhtml+xml"?Gt:vt,$=ue(a,"ALLOWED_TAGS")?w({},a.ALLOWED_TAGS,B):Je,z=ue(a,"ALLOWED_ATTR")?w({},a.ALLOWED_ATTR,B):Ge,Mt=ue(a,"ALLOWED_NAMESPACES")?w({},a.ALLOWED_NAMESPACES,Gt):gs,Ot=ue(a,"ADD_URI_SAFE_ATTR")?w(Te(gn),a.ADD_URI_SAFE_ATTR,B):gn,dn=ue(a,"ADD_DATA_URI_TAGS")?w(Te(fn),a.ADD_DATA_URI_TAGS,B):fn,xe=ue(a,"FORBID_CONTENTS")?w({},a.FORBID_CONTENTS,B):Pt,we=ue(a,"FORBID_TAGS")?w({},a.FORBID_TAGS,B):Te({}),et=ue(a,"FORBID_ATTR")?w({},a.FORBID_ATTR,B):Te({}),ce=ue(a,"USE_PROFILES")?a.USE_PROFILES:!1,kt=a.ALLOW_ARIA_ATTR!==!1,tt=a.ALLOW_DATA_ATTR!==!1,xt=a.ALLOW_UNKNOWN_PROTOCOLS||!1,qe=a.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Se=a.SAFE_FOR_TEMPLATES||!1,De=a.SAFE_FOR_XML!==!1,ve=a.WHOLE_DOCUMENT||!1,c=a.RETURN_DOM||!1,p=a.RETURN_DOM_FRAGMENT||!1,T=a.RETURN_TRUSTED_TYPE||!1,st=a.FORCE_BODY||!1,U=a.SANITIZE_DOM!==!1,ae=a.SANITIZE_NAMED_PROPS||!1,rt=a.KEEP_CONTENT!==!1,Oe=a.IN_PLACE||!1,Ke=a.ALLOWED_URI_REGEXP||hs,We=a.NAMESPACE||Ee,Tt=a.MATHML_TEXT_INTEGRATION_POINTS||Tt,yt=a.HTML_INTEGRATION_POINTS||yt,P=a.CUSTOM_ELEMENT_HANDLING||{},a.CUSTOM_ELEMENT_HANDLING&&mn(a.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(P.tagNameCheck=a.CUSTOM_ELEMENT_HANDLING.tagNameCheck),a.CUSTOM_ELEMENT_HANDLING&&mn(a.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(P.attributeNameCheck=a.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),a.CUSTOM_ELEMENT_HANDLING&&typeof a.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(P.allowCustomizedBuiltInElements=a.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Se&&(tt=!1),p&&(c=!0),ce&&($=w({},qn),z=[],ce.html===!0&&(w($,Gn),w(z,Wn)),ce.svg===!0&&(w($,Wt),w(z,Zt),w(z,St)),ce.svgFilters===!0&&(w($,jt),w(z,Zt),w(z,St)),ce.mathMl===!0&&(w($,Yt),w(z,jn),w(z,St))),a.ADD_TAGS&&(typeof a.ADD_TAGS=="function"?Ae.tagCheck=a.ADD_TAGS:($===Je&&($=Te($)),w($,a.ADD_TAGS,B))),a.ADD_ATTR&&(typeof a.ADD_ATTR=="function"?Ae.attributeCheck=a.ADD_ATTR:(z===Ge&&(z=Te(z)),w(z,a.ADD_ATTR,B))),a.ADD_URI_SAFE_ATTR&&w(Ot,a.ADD_URI_SAFE_ATTR,B),a.FORBID_CONTENTS&&(xe===Pt&&(xe=Te(xe)),w(xe,a.FORBID_CONTENTS,B)),a.ADD_FORBID_CONTENTS&&(xe===Pt&&(xe=Te(xe)),w(xe,a.ADD_FORBID_CONTENTS,B)),rt&&($["#text"]=!0),ve&&w($,["html","head","body"]),$.table&&(w($,["tbody"]),delete we.tbody),a.TRUSTED_TYPES_POLICY){if(typeof a.TRUSTED_TYPES_POLICY.createHTML!="function")throw ut('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof a.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw ut('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');R=a.TRUSTED_TYPES_POLICY,re=R.createHTML("")}else R===void 0&&(R=oa(y,t)),R!==null&&typeof re=="string"&&(re=R.createHTML(""));K&&K(a),je=a}},kn=w({},[...Wt,...jt,...Xr]),xn=w({},[...Yt,...Kr]),_s=function(a){let h=I(a);(!h||!h.tagName)&&(h={namespaceURI:We,tagName:"template"});const k=vt(a.tagName),O=vt(h.tagName);return Mt[a.namespaceURI]?a.namespaceURI===_t?h.namespaceURI===Ee?k==="svg":h.namespaceURI===bt?k==="svg"&&(O==="annotation-xml"||Tt[O]):!!kn[k]:a.namespaceURI===bt?h.namespaceURI===Ee?k==="math":h.namespaceURI===_t?k==="math"&&yt[O]:!!xn[k]:a.namespaceURI===Ee?h.namespaceURI===_t&&!yt[O]||h.namespaceURI===bt&&!Tt[O]?!1:!xn[k]&&(ms[k]||!kn[k]):!!(at==="application/xhtml+xml"&&Mt[a.namespaceURI]):!1},be=function(a){ot(e.removed,{element:a});try{I(a).removeChild(a)}catch{q(a)}},$e=function(a,h){try{ot(e.removed,{attribute:h.getAttributeNode(a),from:h})}catch{ot(e.removed,{attribute:null,from:h})}if(h.removeAttribute(a),a==="is")if(c||p)try{be(h)}catch{}else try{h.setAttribute(a,"")}catch{}},bn=function(a){let h=null,k=null;if(st)a="<remove></remove>"+a;else{const N=qt(a,/^[\r\n\t ]+/);k=N&&N[0]}at==="application/xhtml+xml"&&We===Ee&&(a='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+a+"</body></html>");const O=R?R.createHTML(a):a;if(We===Ee)try{h=new b().parseFromString(O,at)}catch{}if(!h||!h.documentElement){h=ee.createDocument(We,"template",null);try{h.documentElement.innerHTML=$t?re:O}catch{}}const Y=h.body||h.documentElement;return a&&k&&Y.insertBefore(n.createTextNode(k),Y.childNodes[0]||null),We===Ee?Ie.call(h,ve?"html":"body")[0]:ve?h.documentElement:Y},_n=function(a){return ie.call(a.ownerDocument||a,a,g.SHOW_ELEMENT|g.SHOW_COMMENT|g.SHOW_TEXT|g.SHOW_PROCESSING_INSTRUCTION|g.SHOW_CDATA_SECTION,null)},zt=function(a){return a instanceof m&&(typeof a.nodeName!="string"||typeof a.textContent!="string"||typeof a.removeChild!="function"||!(a.attributes instanceof d)||typeof a.removeAttribute!="function"||typeof a.setAttribute!="function"||typeof a.namespaceURI!="string"||typeof a.insertBefore!="function"||typeof a.hasChildNodes!="function")},Tn=function(a){return typeof u=="function"&&a instanceof u};function Re(x,a,h){At(x,k=>{k.call(e,a,h,je)})}const yn=function(a){let h=null;if(Re(M.beforeSanitizeElements,a,null),zt(a))return be(a),!0;const k=B(a.nodeName);if(Re(M.uponSanitizeElement,a,{tagName:k,allowedTags:$}),De&&a.hasChildNodes()&&!Tn(a.firstElementChild)&&Q(/<[/\w!]/g,a.innerHTML)&&Q(/<[/\w!]/g,a.textContent)||a.nodeType===ht.progressingInstruction||De&&a.nodeType===ht.comment&&Q(/<[/\w]/g,a.data))return be(a),!0;if(!(Ae.tagCheck instanceof Function&&Ae.tagCheck(k))&&(!$[k]||we[k])){if(!we[k]&&An(k)&&(P.tagNameCheck instanceof RegExp&&Q(P.tagNameCheck,k)||P.tagNameCheck instanceof Function&&P.tagNameCheck(k)))return!1;if(rt&&!xe[k]){const O=I(a)||a.parentNode,Y=A(a)||a.childNodes;if(Y&&O){const N=Y.length;for(let ne=N-1;ne>=0;--ne){const Ce=G(Y[ne],!0);Ce.__removalCount=(a.__removalCount||0)+1,O.insertBefore(Ce,V(a))}}}return be(a),!0}return a instanceof o&&!_s(a)||(k==="noscript"||k==="noembed"||k==="noframes")&&Q(/<\/no(script|embed|frames)/i,a.innerHTML)?(be(a),!0):(Se&&a.nodeType===ht.text&&(h=a.textContent,At([fe,ge,oe],O=>{h=ct(h,O," ")}),a.textContent!==h&&(ot(e.removed,{element:a.cloneNode()}),a.textContent=h)),Re(M.afterSanitizeElements,a,null),!1)},wn=function(a,h,k){if(U&&(h==="id"||h==="name")&&(k in n||k in bs))return!1;if(!(tt&&!et[h]&&Q(me,h))){if(!(kt&&Q(ke,h))){if(!(Ae.attributeCheck instanceof Function&&Ae.attributeCheck(h,a))){if(!z[h]||et[h]){if(!(An(a)&&(P.tagNameCheck instanceof RegExp&&Q(P.tagNameCheck,a)||P.tagNameCheck instanceof Function&&P.tagNameCheck(a))&&(P.attributeNameCheck instanceof RegExp&&Q(P.attributeNameCheck,h)||P.attributeNameCheck instanceof Function&&P.attributeNameCheck(h,a))||h==="is"&&P.allowCustomizedBuiltInElements&&(P.tagNameCheck instanceof RegExp&&Q(P.tagNameCheck,k)||P.tagNameCheck instanceof Function&&P.tagNameCheck(k))))return!1}else if(!Ot[h]){if(!Q(Ke,ct(k,He,""))){if(!((h==="src"||h==="xlink:href"||h==="href")&&a!=="script"&&Yr(k,"data:")===0&&dn[a])){if(!(xt&&!Q(Pe,ct(k,He,"")))){if(k)return!1}}}}}}}return!0},An=function(a){return a!=="annotation-xml"&&qt(a,mt)},Sn=function(a){Re(M.beforeSanitizeAttributes,a,null);const{attributes:h}=a;if(!h||zt(a))return;const k={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:z,forceKeepAttr:void 0};let O=h.length;for(;O--;){const Y=h[O],{name:N,namespaceURI:ne,value:Ce}=Y,Ye=B(N),Bt=Ce;let W=N==="value"?Bt:Zr(Bt);if(k.attrName=Ye,k.attrValue=W,k.keepAttr=!0,k.forceKeepAttr=void 0,Re(M.uponSanitizeAttribute,a,k),W=k.attrValue,ae&&(Ye==="id"||Ye==="name")&&($e(N,a),W=It+W),De&&Q(/((--!?|])>)|<\/(style|title|textarea)/i,W)){$e(N,a);continue}if(Ye==="attributename"&&qt(W,"href")){$e(N,a);continue}if(k.forceKeepAttr)continue;if(!k.keepAttr){$e(N,a);continue}if(!qe&&Q(/\/>/i,W)){$e(N,a);continue}Se&&At([fe,ge,oe],En=>{W=ct(W,En," ")});const vn=B(a.nodeName);if(!wn(vn,Ye,W)){$e(N,a);continue}if(R&&typeof y=="object"&&typeof y.getAttributeType=="function"&&!ne)switch(y.getAttributeType(vn,Ye)){case"TrustedHTML":{W=R.createHTML(W);break}case"TrustedScriptURL":{W=R.createScriptURL(W);break}}if(W!==Bt)try{ne?a.setAttributeNS(ne,N,W):a.setAttribute(N,W),zt(a)?be(a):Hn(e.removed)}catch{$e(N,a)}}Re(M.afterSanitizeAttributes,a,null)},Ts=function x(a){let h=null;const k=_n(a);for(Re(M.beforeSanitizeShadowDOM,a,null);h=k.nextNode();)Re(M.uponSanitizeShadowNode,h,null),yn(h),Sn(h),h.content instanceof i&&x(h.content);Re(M.afterSanitizeShadowDOM,a,null)};return e.sanitize=function(x){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},h=null,k=null,O=null,Y=null;if($t=!x,$t&&(x="<!-->"),typeof x!="string"&&!Tn(x))if(typeof x.toString=="function"){if(x=x.toString(),typeof x!="string")throw ut("dirty is not a string, aborting")}else throw ut("toString is not a function");if(!e.isSupported)return x;if(nt||Nt(a),e.removed=[],typeof x=="string"&&(Oe=!1),Oe){if(x.nodeName){const Ce=B(x.nodeName);if(!$[Ce]||we[Ce])throw ut("root node is forbidden and cannot be sanitized in-place")}}else if(x instanceof u)h=bn("<!---->"),k=h.ownerDocument.importNode(x,!0),k.nodeType===ht.element&&k.nodeName==="BODY"||k.nodeName==="HTML"?h=k:h.appendChild(k);else{if(!c&&!Se&&!ve&&x.indexOf("<")===-1)return R&&T?R.createHTML(x):x;if(h=bn(x),!h)return c?null:T?re:""}h&&st&&be(h.firstChild);const N=_n(Oe?x:h);for(;O=N.nextNode();)yn(O),Sn(O),O.content instanceof i&&Ts(O.content);if(Oe)return x;if(c){if(p)for(Y=te.call(h.ownerDocument);h.firstChild;)Y.appendChild(h.firstChild);else Y=h;return(z.shadowroot||z.shadowrootmode)&&(Y=Xe.call(r,Y,!0)),Y}let ne=ve?h.outerHTML:h.innerHTML;return ve&&$["!doctype"]&&h.ownerDocument&&h.ownerDocument.doctype&&h.ownerDocument.doctype.name&&Q(ds,h.ownerDocument.doctype.name)&&(ne="<!DOCTYPE "+h.ownerDocument.doctype.name+`>
|
|
60
|
+
`+ne),Se&&At([fe,ge,oe],Ce=>{ne=ct(ne,Ce," ")}),R&&T?R.createHTML(ne):ne},e.setConfig=function(){let x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Nt(x),nt=!0},e.clearConfig=function(){je=null,nt=!1},e.isValidAttribute=function(x,a,h){je||Nt({});const k=B(x),O=B(a);return wn(k,O,h)},e.addHook=function(x,a){typeof a=="function"&&ot(M[x],a)},e.removeHook=function(x,a){if(a!==void 0){const h=Wr(M[x],a);return h===-1?void 0:jr(M[x],h,1)[0]}return Hn(M[x])},e.removeHooks=function(x){M[x]=[]},e.removeAllHooks=function(){M=Zn()},e}var ca=fs();const ua={class:"prd-viewer"},pa={key:0,class:"flex items-center justify-center py-8"},ha=["innerHTML"],da=se({__name:"Viewer",props:{content:{}},setup(s){const e=s,n=F(""),r=F(!0),t={ADD_TAGS:["style"],ADD_ATTR:["style","class","target","rel"]},i=new C.Renderer;i.link=({href:g,title:d,text:m})=>{const b=d?` title="${d}"`:"";return`<a href="${g}"${b} target="_blank" rel="noopener noreferrer">${m}</a>`};async function l(g,d){try{return await Ds(g,{lang:d||"text",themes:{light:"github-light",dark:"github-dark"}})}catch{return`<pre><code class="language-${d}">${u(g)}</code></pre>`}}function u(g){return g.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}async function o(g){const d=/```(\w*)\n([\s\S]*?)```/g,m=[];let b=0;const y=g.replace(d,(V,A,I)=>{const R=`CODEBLOCK${b++}PLACEHOLDER`;return m.push({placeholder:R,lang:A||"text",code:I.trim()}),R});C.setOptions({renderer:i,gfm:!0,breaks:!0});let _=await C.parse(y);const G=m.map(async({placeholder:V,lang:A,code:I})=>{const R=await l(I,A);return{placeholder:V,highlighted:R}}),q=await Promise.all(G);for(const{placeholder:V,highlighted:A}of q)_=_.replace(`<p>${V}</p>`,A),_=_.replace(V,A);return ca.sanitize(_,t)}return Me(()=>e.content,async g=>{if(!g){n.value="",r.value=!1;return}r.value=!0;try{n.value=await o(g)}finally{r.value=!1}},{immediate:!0}),(g,d)=>(S(),L("div",ua,[f(r)?(S(),L("div",pa,[...d[0]||(d[0]=[D("div",{class:"size-6 animate-spin rounded-full border-2 border-primary border-t-transparent"},null,-1)])])):(S(),L("div",{key:1,class:"prose prose-sm dark:prose-invert max-w-none",innerHTML:f(n)},null,8,ha))]))}}),fa=Object.assign(da,{__name:"PrdViewer"}),ga=se({__name:"Card",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("div",{"data-slot":"card",class:de(f(Be)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",e.class))},[Ue(n.$slots,"default")],2))}}),ma=Object.assign(ga,{__name:"UiCard"}),ka=se({__name:"CardAction",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("div",{"data-slot":"card-action",class:de(f(Be)("col-start-2 row-span-2 row-start-1 self-start justify-self-end",e.class))},[Ue(n.$slots,"default")],2))}});Object.assign(ka,{__name:"UiCardAction"});const xa=se({__name:"CardContent",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("div",{"data-slot":"card-content",class:de(f(Be)("px-6",e.class))},[Ue(n.$slots,"default")],2))}}),ba=Object.assign(xa,{__name:"UiCardContent"}),_a=se({__name:"CardDescription",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("p",{"data-slot":"card-description",class:de(f(Be)("text-muted-foreground text-sm",e.class))},[Ue(n.$slots,"default")],2))}});Object.assign(_a,{__name:"UiCardDescription"});const Ta=se({__name:"CardFooter",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("div",{"data-slot":"card-footer",class:de(f(Be)("flex items-center px-6 [.border-t]:pt-6",e.class))},[Ue(n.$slots,"default")],2))}});Object.assign(Ta,{__name:"UiCardFooter"});const ya=se({__name:"CardHeader",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("div",{"data-slot":"card-header",class:de(f(Be)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",e.class))},[Ue(n.$slots,"default")],2))}});Object.assign(ya,{__name:"UiCardHeader"});const wa=se({__name:"CardTitle",props:{class:{}},setup(s){const e=s;return(n,r)=>(S(),L("h3",{"data-slot":"card-title",class:de(f(Be)("leading-none font-semibold",e.class))},[Ue(n.$slots,"default")],2))}});Object.assign(wa,{__name:"UiCardTitle"});const Aa={class:"flex items-center justify-between gap-2 mb-1.5"},Sa={class:"text-sm font-medium leading-snug"},va={class:"text-muted-foreground"},Ea={key:0,class:"mt-2 flex items-center gap-1.5 text-xs text-destructive"},Ra=se({__name:"Card",props:{task:{},blockedBy:{}},emits:["click"],setup(s,{emit:e}){const n=s,r=e,t=H(()=>{switch(n.task.category){case"setup":return{label:"Setup",variant:"secondary"};case"feature":return{label:"Feature",variant:"default"};case"integration":return{label:"Integration",variant:"outline"};case"testing":return{label:"Testing",variant:"secondary"};case"documentation":return{label:"Docs",variant:"secondary"};default:return{label:n.task.category,variant:"secondary"}}}),i=H(()=>{switch(n.task.priority){case"critical":return{icon:Pn,class:"text-destructive",label:"Critical"};case"high":return{icon:Pn,class:"text-orange-500",label:"High"};case"medium":return{icon:Cn,class:"text-muted-foreground",label:"Medium"};case"low":return{icon:Hs,class:"text-muted-foreground",label:"Low"};default:return{icon:Cn,class:"text-muted-foreground",label:"Unknown"}}}),l=H(()=>n.blockedBy&&n.blockedBy.length>0),u=H(()=>{const m=n.task.id.match(/(\d+)$/)?.[1];return m?parseInt(m,10):0}),o=H(()=>n.blockedBy?.length??0);function g(){r("click",n.task)}return(d,m)=>(S(),Qe(f(ma),{class:de(["cursor-pointer py-0 gap-0 transition-all hover:shadow-md hover:border-primary/50",{"opacity-60":f(l)}]),onClick:g},{default:j(()=>[E(f(ba),{class:"p-2.5"},{default:j(()=>[D("div",Aa,[E(f(nn),{variant:f(t).variant,class:"text-xs"},{default:j(()=>[Le(Z(f(t).label),1)]),_:1},8,["variant"]),(S(),Qe(Qn(f(i).icon),{class:de(["size-4",f(i).class]),title:f(i).label},null,8,["class","title"]))]),D("h4",Sa,[D("span",va,"#"+Z(f(u)),1),Le(" "+Z(s.task.title),1)]),f(l)?(S(),L("div",Ea,[E(f(Vn),{class:"size-3.5"}),D("span",null,"Blocked by "+Z(f(o))+" task"+Z(f(o)===1?"":"s"),1)])):ye("",!0)]),_:1})]),_:1},8,["class"]))}}),Ca=Object.assign(Ra,{__name:"TasksCard"}),La={class:"flex h-full min-w-56 flex-1 flex-col overflow-hidden rounded-lg border border-border bg-card"},Da={class:"text-sm font-medium"},Ia={class:"ml-auto text-xs text-muted-foreground"},Pa={class:"scrollbar-hide min-h-0 flex-1 overflow-y-auto p-1.5"},Oa={class:"space-y-1.5"},$a={key:0,class:"py-8 text-center text-sm text-muted-foreground"},Ma=se({__name:"Column",props:{status:{},tasks:{},blockedByMap:{}},emits:["taskClick"],setup(s,{emit:e}){const n=s,r=e,t=H(()=>{switch(n.status){case"pending":return{label:"Pending",icon:Ln,headerClass:"bg-muted/50",iconClass:"text-muted-foreground"};case"in_progress":return{label:"In Progress",icon:qs,headerClass:"bg-blue-500/10",iconClass:"text-blue-500"};case"completed":return{label:"Completed",icon:Is,headerClass:"bg-green-500/10",iconClass:"text-green-500"};default:return{label:n.status,icon:Ln,headerClass:"bg-muted/50",iconClass:"text-muted-foreground"}}});function i(u){return n.blockedByMap?.get(u)??[]}function l(u){r("taskClick",u)}return(u,o)=>{const g=Ca;return S(),L("div",La,[D("div",{class:de(["flex items-center gap-2 rounded-t-lg border-b border-border px-3 py-2",f(t).headerClass])},[(S(),Qe(Qn(f(t).icon),{class:de(["size-4",f(t).iconClass])},null,8,["class"])),D("h3",Da,Z(f(t).label),1),D("span",Ia,Z(s.tasks.length),1)],2),D("div",Pa,[D("div",Oa,[(S(!0),L(Xn,null,Kn(s.tasks,d=>(S(),Qe(g,{key:d.id,task:d,"blocked-by":i(d.id),onClick:l},null,8,["task","blocked-by"]))),128)),s.tasks.length===0?(S(),L("div",$a," No tasks ")):ye("",!0)])])])}}}),Na=Object.assign(Fs(Ma,[["__scopeId","data-v-a1317eba"]]),{__name:"TasksColumn"}),za={class:"flex h-full gap-3 overflow-x-auto pb-2"},Ba=se({__name:"Board",props:{tasks:{}},emits:["taskClick"],setup(s,{emit:e}){const n=s,r=e;function t(m){const y=m.id.match(/(\d+)$/)?.[1];return y?parseInt(y,10):0}const i=H(()=>n.tasks.filter(m=>m.status==="pending").sort((m,b)=>t(m)-t(b))),l=H(()=>n.tasks.filter(m=>m.status==="in_progress").sort((m,b)=>t(m)-t(b))),u=H(()=>n.tasks.filter(m=>m.status==="completed").sort((m,b)=>{const y=m.completedAt?new Date(m.completedAt).getTime():0;return(b.completedAt?new Date(b.completedAt).getTime():0)-y})),o=H(()=>{const m=new Map,b=new Set(u.value.map(y=>y.id));for(const y of n.tasks)if(y.dependencies.length>0){const _=y.dependencies.filter(G=>!b.has(G));_.length>0&&m.set(y.id,_)}return m}),g=[{status:"pending",tasks:i},{status:"in_progress",tasks:l},{status:"completed",tasks:u}];function d(m){r("taskClick",m)}return(m,b)=>{const y=Na;return S(),L("div",za,[(S(),L(Xn,null,Kn(g,_=>E(y,{key:_.status,status:_.status,tasks:_.tasks.value,"blocked-by-map":f(o),onTaskClick:d},null,8,["status","tasks","blocked-by-map"])),64))])}}}),Ua=Object.assign(Ba,{__name:"TasksBoard"}),Fa={class:"h-full p-4 md:p-6"},Ha={key:0,class:"flex h-full items-center justify-center"},Ga={class:"flex flex-col items-center gap-4"},qa={key:1,class:"flex h-full items-center justify-center"},Wa={class:"flex max-w-md flex-col items-center gap-4 text-center"},ja={class:"text-sm text-muted-foreground"},Ya={class:"flex gap-3"},Za={key:2,class:"mx-auto max-w-6xl space-y-6"},Va={class:"flex flex-wrap items-start justify-between gap-3"},Qa={class:"space-y-2"},Xa={class:"flex flex-wrap items-center gap-2"},Ka={class:"text-2xl font-bold tracking-tight"},Ja={key:0},el={key:1},tl={key:0,class:"text-xs text-muted-foreground"},nl={class:"rounded-lg border border-border bg-card p-4 md:p-6"},sl={key:0,class:"h-[calc(100vh-280px)] min-h-[400px]"},rl={key:1,class:"py-12 text-center"},al={class:"h-[calc(100vh-300px)] min-h-[440px] motion-safe:transition-[opacity,transform] motion-safe:duration-200 motion-safe:ease-[var(--ease-out-cubic)] motion-reduce:transition-none"},Vt="prd-viewer-tab",Ze="task",Ve="taskPrd",fl=se({__name:"[prd]",setup(s){function e(c){return c==="document"||c==="board"||c==="graph"}function n(c){if(typeof c=="string"){const p=c.trim();return p.length>0?p:null}if(Array.isArray(c)&&c.length>0){const p=c[0];if(typeof p=="string"){const T=p.trim();return T.length>0?T:null}}return null}function r(c){const p=c;return p.statusCode??p.status}function t(c,p){const T=c;return T.data?.message||T.statusMessage||T.message||p}const i=Ns(),l=zs(),{selectRepo:u}=vs(),{prds:o,showArchived:g,setPrdArchived:d,fetchDocument:m,fetchTasks:b,fetchProgress:y,fetchTaskCommits:_,fetchPrdGraph:G}=Es(),{showError:q}=Rs(),V=H(()=>i.params.repo),A=H(()=>i.params.prd),I=F(null),R=F(null),re=F(null),ee=F(!0),ie=F(null),te=F("document"),Ie=F(null),Xe=F(!1),M=F(null),fe=F({}),ge=F(null),oe=F(null),me=F(!1),ke=F([]),Pe=F(!1),He=H(()=>n(i.query[Ze])),mt=H(()=>n(i.query[Ve])),Ke=H(()=>He.value?{taskId:He.value,prdSlug:mt.value||A.value}:null);function $(c,p){fe.value={...fe.value,[c]:p}}async function Je(c){if(c===A.value)return R.value;if(Object.prototype.hasOwnProperty.call(fe.value,c))return fe.value[c]??null;try{const p=await b(c);return $(c,p),p}catch(p){return q("Failed to load tasks",t(p,`Could not load tasks for ${c}.`)),null}}function z(){const c={};for(const[p,T]of Object.entries(i.query))if(!(p===Ze||p===Ve)){if(typeof T=="string"){c[p]=T;continue}if(Array.isArray(T)){const U=T.filter(ae=>typeof ae=="string");U.length>0&&(c[p]=U)}}return c}async function Ge(c,p=null){const T=z();c&&(T[Ze]=c,p&&p!==A.value&&(T[Ve]=p));const U=typeof T[Ze]=="string"?T[Ze]:null,ae=typeof T[Ve]=="string"?T[Ve]:null;He.value===U&&mt.value===ae||await l.replace({query:T})}async function P(c,p){ge.value=c,oe.value=p,me.value=!0,ke.value=[],await Ge(c.id,p);try{ke.value=await _(p,c.id)}catch(T){ke.value=[],q("Failed to load commits",t(T,"Could not resolve commits for this task."))}}async function we(){const c=Ke.value;if(!c){ge.value=null,oe.value=null,ke.value=[],me.value=!1;return}const T=(await Je(c.prdSlug))?.tasks.find(ae=>ae.id===c.taskId);if(!T){ge.value=null,oe.value=null,ke.value=[],me.value=!1,q("Task unavailable",`Could not find ${c.taskId} in ${c.prdSlug}.`),await Ge(null);return}const U=ge.value?.id===T.id&&oe.value===c.prdSlug;if(ge.value=T,oe.value=c.prdSlug,me.value=!0,!U)try{ke.value=await _(c.prdSlug,T.id)}catch(ae){ke.value=[],q("Failed to load commits",t(ae,"Could not resolve commits for this task."))}}const et=H(()=>{const c=new Map,p=oe.value||A.value,T=p===A.value?R.value:fe.value[p]??null;if(!T?.tasks)return c;for(const U of T.tasks)c.set(U.id,U.title);return c});function Ae(c){c.key===Vt&&c.newValue&&e(c.newValue)&&(te.value=c.newValue)}Dn(()=>{const c=localStorage.getItem(Vt);c&&e(c)&&(te.value=c),window.addEventListener("storage",Ae)}),Bs(()=>{window.removeEventListener("storage",Ae)}),Me(te,c=>{localStorage.setItem(Vt,c)});const kt=Us("fileChangeEvent",F(null));async function tt(){try{const c=await m(A.value);c&&(I.value=c,ie.value=null)}catch(c){if(r(c)===404){ie.value=`PRD "${A.value}" not found in this repository.`;return}q("Failed to reload PRD",t(c,"Could not refresh the PRD document."))}}async function xt(){try{const[c,p]=await Promise.all([b(A.value),y(A.value)]);R.value=c,re.value=p,$(A.value,c),await we()}catch(c){q("Failed to refresh task state",t(c,"Could not refresh tasks and progress."))}}async function qe(c=!1){Xe.value=!0;try{if(!c&&Ie.value?.prdSlug===A.value)return;const p=await G(A.value);if(!p){M.value="Failed to load PRD graph.";return}Ie.value=p,M.value=null}catch(p){M.value=t(p,"Failed to load PRD graph.")}finally{Xe.value=!1}}async function Se(c=!1){te.value==="graph"&&await qe(c)}async function De(){ee.value=!0,ie.value=null,M.value=null,Ie.value=null,fe.value={};try{u(V.value);const[c,p,T]=await Promise.all([m(A.value),b(A.value),y(A.value)]);if(!c){ie.value=`PRD "${A.value}" not found in this repository.`;return}I.value=c,R.value=p,re.value=T,$(A.value,p),!p&&te.value==="board"&&(te.value="document"),await Se(),await we()}catch(c){const p=r(c);p===404?ie.value=`PRD "${A.value}" not found. Check if the file exists in docs/prd/.`:p===500?(ie.value="Server error while loading the PRD. Check the file format.",q("Server error",t(c,"Failed to read PRD file"))):(ie.value="Failed to load PRD document. Please try again.",q("Load failed",t(c,"Could not fetch the PRD document")))}finally{ee.value=!1}}Me(te,async c=>{c==="graph"&&await Se()}),Me(()=>[i.query[Ze],i.query[Ve],A.value],async()=>{ee.value||await we()}),Me(me,async c=>{!c&&Ke.value&&await Ge(null)}),Me(()=>kt.value,async c=>{if(!c)return;if(c.category==="prd"){await tt(),te.value==="graph"&&await qe(!0);return}if(c.category!=="tasks"&&c.category!=="progress")return;const p=c.path?.includes(`/${A.value}/`)??!1;p&&(await xt(),Ie.value=null),te.value==="graph"&&p&&await qe(!0)}),Dn(De),Me([V,A],De);async function ve(c){await P(c,A.value)}async function nt(c){const T=(await Je(c.prdSlug))?.tasks.find(U=>U.id===c.taskId);if(!T){q("Task unavailable",`Could not find ${c.taskId} in ${c.prdSlug}.`);return}await P(T,c.prdSlug)}async function st(c){if(!(!I.value||Pe.value)){Pe.value=!0;try{const p=await d(A.value,c);if(I.value&&(I.value={...I.value,archived:p.archived,archivedAt:p.archivedAt}),c&&!g.value){const T=o.value?.find(U=>U.slug!==A.value);T?await l.push(`/${V.value}/${T.slug}`):await l.push("/")}}catch(p){q("Failed to update archive state",t(p,"Could not update this PRD archive state."))}finally{Pe.value=!1}}}return(c,p)=>{const T=ys,U=Ks,ae=fa,It=Ua,rt=$s,Oe=Ps;return S(),L("div",Fa,[f(ee)?(S(),L("div",Ha,[D("div",Ga,[E(f(ws),{class:"size-8 animate-spin text-primary"}),p[3]||(p[3]=D("p",{class:"text-sm text-muted-foreground"},"Loading PRD...",-1))])])):f(ie)?(S(),L("div",qa,[D("div",Wa,[E(f(Vn),{class:"size-12 text-destructive"}),p[6]||(p[6]=D("h2",{class:"text-lg font-semibold"},"Error Loading PRD",-1)),D("p",ja,Z(f(ie)),1),D("div",Ya,[E(f(Ut),{variant:"outline",size:"sm",onClick:De},{default:j(()=>[E(f(As),{class:"mr-2 size-4"}),p[4]||(p[4]=Le(" Retry ",-1))]),_:1}),E(T,{to:"/"},{default:j(()=>[E(f(Ut),{variant:"ghost",size:"sm"},{default:j(()=>[...p[5]||(p[5]=[Le(" Go back home ",-1)])]),_:1})]),_:1})])])])):f(I)?(S(),L("div",Za,[D("div",Va,[D("div",Qa,[D("div",Xa,[D("h1",Ka,Z(f(I).name),1),f(I).archived?(S(),Qe(f(nn),{key:0,variant:"outline",class:"text-[10px] uppercase tracking-wide"},{default:j(()=>[...p[7]||(p[7]=[Le(" Archived ",-1)])]),_:1})):ye("",!0)]),E(U,{metadata:f(I).metadata},null,8,["metadata"])]),E(f(Ut),{variant:"outline",size:"sm",disabled:f(Pe),onClick:p[0]||(p[0]=ce=>st(!f(I).archived))},{default:j(()=>[f(Pe)?(S(),L("span",Ja,"Saving...")):(S(),L("span",el,Z(f(I).archived?"Restore document":"Archive document"),1))]),_:1},8,["disabled"])]),E(f(Ms),{modelValue:f(te),"onUpdate:modelValue":p[1]||(p[1]=ce=>In(te)?te.value=ce:null),class:"w-full"},{default:j(()=>[E(f(Os),null,{default:j(()=>[E(f(Ft),{value:"document",class:"gap-2"},{default:j(()=>[E(f(Cs),{class:"size-4"}),p[8]||(p[8]=Le(" Document ",-1))]),_:1}),E(f(Ft),{value:"board",class:"gap-2",disabled:!f(R)},{default:j(()=>[E(f(On),{class:"size-4"}),p[9]||(p[9]=Le(" Task Board ",-1)),f(R)?(S(),L("span",tl," ("+Z(f(R).tasks.length)+") ",1)):ye("",!0)]),_:1},8,["disabled"]),E(f(Ft),{value:"graph",class:"gap-2"},{default:j(()=>[E(f(Ss),{class:"size-4"}),p[10]||(p[10]=Le(" Graph ",-1))]),_:1})]),_:1}),E(f(Ht),{value:"document",class:"mt-4"},{default:j(()=>[D("div",nl,[E(ae,{content:f(I).content},null,8,["content"])])]),_:1}),E(f(Ht),{value:"board",class:"mt-4"},{default:j(()=>[f(R)?(S(),L("div",sl,[E(It,{tasks:f(R).tasks,onTaskClick:ve},null,8,["tasks"])])):(S(),L("div",rl,[E(f(On),{class:"mx-auto size-12 text-muted-foreground/50"}),p[11]||(p[11]=D("p",{class:"mt-4 text-muted-foreground"}," No tasks found for this PRD ",-1)),p[12]||(p[12]=D("p",{class:"mt-1 text-sm text-muted-foreground/70"}," Task state has not been generated for this PRD yet. ",-1))]))]),_:1}),E(f(Ht),{value:"graph",class:"mt-4"},{default:j(()=>[D("div",al,[E(rt,{payload:f(Ie),scope:"prd",loading:f(Xe),error:f(M),onTaskClick:nt},null,8,["payload","loading","error"])])]),_:1})]),_:1},8,["modelValue"])])):ye("",!0),E(Oe,{open:f(me),"onUpdate:open":p[2]||(p[2]=ce=>In(me)?me.value=ce:null),task:f(ge),"task-titles":f(et),commits:f(ke),"repo-id":f(V),"task-prd-slug":f(oe),"current-prd-slug":f(A)},null,8,["open","task","task-titles","commits","repo-id","task-prd-slug","current-prd-slug"])])}}});export{fl as default};
|