[{"data":1,"prerenderedAt":1393},["ShallowReactive",2],{"docs-navigation:en":3,"content-page:docs:ZC3JC5DSgz-sL4TUB-UCN_r7gyTMqoiX-in8DZG5Wzo":133,"content-page-surround:docs:ZC3JC5DSgz-sL4TUB-UCN_r7gyTMqoiX-in8DZG5Wzo":1383,"i-logos:typescript-icon":1386,"i-lucide:clipboard":1390},[4,25,73,121,127],{"title":5,"id":6,"canonicalKey":7,"locale":8,"draft":9,"icon":10,"sidebar":11,"path":12,"children":13},"Getting Started","content:docs:1.getting-started:.navigation.yml","1","en",false,"lucide:rocket","group","\u002Fdocs\u002Fgetting-started",[14,20],{"title":15,"id":16,"canonicalKey":17,"locale":8,"draft":9,"icon":18,"path":19},"Installation","content:docs:1.getting-started:2.installation.md","1\u002F2","lucide:download","\u002Fdocs\u002Fgetting-started\u002Finstallation",{"title":21,"id":22,"canonicalKey":23,"locale":8,"draft":9,"icon":10,"path":24},"Quickstart","content:docs:1.getting-started:3.quickstart.md","1\u002F3","\u002Fdocs\u002Fgetting-started\u002Fquickstart",{"title":26,"page":9,"canonicalKey":27,"locale":8,"id":28,"draft":9,"icon":29,"sidebar":11,"children":30},"Guides","2","content:docs:2.guides:.navigation.yml","lucide:compass",[31,37,43,49,55,61,67],{"title":32,"id":33,"canonicalKey":34,"locale":8,"draft":9,"icon":35,"path":36},"Authoring","content:docs:2.guides:1.authoring.md","2\u002F1","lucide:component","\u002Fdocs\u002Fguides\u002Fauthoring",{"title":38,"id":39,"canonicalKey":40,"locale":8,"draft":9,"icon":41,"path":42},"Contents, links & bookmarks","content:docs:2.guides:2.contents-links-bookmarks.md","2\u002F2","lucide:list-tree","\u002Fdocs\u002Fguides\u002Fcontents-links-bookmarks",{"title":44,"id":45,"canonicalKey":46,"locale":8,"draft":9,"icon":47,"path":48},"Images & fonts","content:docs:2.guides:3.images-and-fonts.md","2\u002F3","lucide:image","\u002Fdocs\u002Fguides\u002Fimages-and-fonts",{"title":50,"id":51,"canonicalKey":52,"locale":8,"draft":9,"icon":53,"path":54},"SVG graphics","content:docs:2.guides:4.svg-graphics.md","2\u002F4","lucide:shapes","\u002Fdocs\u002Fguides\u002Fsvg-graphics",{"title":56,"id":57,"canonicalKey":58,"locale":8,"draft":9,"icon":59,"path":60},"Errors & debugging","content:docs:2.guides:5.errors-and-debugging.md","2\u002F5","lucide:bug","\u002Fdocs\u002Fguides\u002Ferrors-and-debugging",{"title":62,"id":63,"canonicalKey":64,"locale":8,"draft":9,"icon":65,"path":66},"Testing your PDFs","content:docs:2.guides:6.testing.md","2\u002F6","lucide:flask-conical","\u002Fdocs\u002Fguides\u002Ftesting",{"title":68,"id":69,"canonicalKey":70,"locale":8,"draft":9,"icon":71,"path":72},"Production recipes","content:docs:2.guides:7.recipes.md","2\u002F7","lucide:notebook-tabs","\u002Fdocs\u002Fguides\u002Frecipes",{"title":74,"page":9,"canonicalKey":75,"locale":8,"id":76,"draft":9,"icon":77,"sidebar":11,"children":78},"Reference","3","content:docs:3.reference:.navigation.yml","lucide:book-marked",[79,85,91,97,103,109,115],{"title":80,"id":81,"canonicalKey":82,"locale":8,"draft":9,"icon":83,"path":84},"definePdf","content:docs:3.reference:1.define-pdf.md","3\u002F1","lucide:settings-2","\u002Fdocs\u002Freference\u002Fdefine-pdf",{"title":86,"id":87,"canonicalKey":88,"locale":8,"draft":9,"icon":89,"path":90},"The #pdf registry","content:docs:3.reference:2.registry.md","3\u002F2","lucide:braces","\u002Fdocs\u002Freference\u002Fregistry",{"title":92,"id":93,"canonicalKey":94,"locale":8,"draft":9,"icon":95,"path":96},"Module options","content:docs:3.reference:3.module-options.md","3\u002F3","lucide:sliders","\u002Fdocs\u002Freference\u002Fmodule-options",{"title":98,"id":99,"canonicalKey":100,"locale":8,"draft":9,"icon":101,"path":102},"Primitives","content:docs:3.reference:4.primitives.md","3\u002F4","lucide:box","\u002Fdocs\u002Freference\u002Fprimitives",{"title":104,"id":105,"canonicalKey":106,"locale":8,"draft":9,"icon":107,"path":108},"Composables","content:docs:3.reference:5.composables.md","3\u002F5","lucide:function-square","\u002Fdocs\u002Freference\u002Fcomposables",{"title":110,"id":111,"canonicalKey":112,"locale":8,"draft":9,"icon":113,"path":114},"Test utilities","content:docs:3.reference:6.test-utilities.md","3\u002F6","lucide:test-tube","\u002Fdocs\u002Freference\u002Ftest-utilities",{"title":116,"id":117,"canonicalKey":118,"locale":8,"draft":9,"icon":119,"path":120},"Styles","content:docs:3.reference:7.styles.md","3\u002F7","lucide:palette","\u002Fdocs\u002Freference\u002Fstyles",{"title":122,"id":123,"canonicalKey":124,"locale":8,"draft":9,"icon":125,"sidebar":11,"path":126},"Conformance & Philosophy","content:docs:4.conformance:.navigation.yml","4","lucide:scale","\u002Fdocs\u002Fconformance",{"title":128,"id":129,"canonicalKey":130,"locale":8,"draft":9,"icon":131,"sidebar":11,"path":132},"Examples","content:docs:5.examples:.navigation.yml","5","lucide:layout-grid","\u002Fdocs\u002Fexamples",{"title":110,"description":134,"icon":113,"body":135,"type":1369,"id":111,"canonicalKey":112,"draft":9,"partial":9,"locale":8,"collection":1370,"navigationFile":9,"file":1371,"resolvedRefs":1377,"route":1378,"resolution":1380},"The render, parse, assert, and snapshot exports of @lupinum\u002Fnuxt-pdf\u002Ftest.",{"type":136,"children":137,"toc":1358},"root",[138,181,188,275,325,337,342,450,501,507,551,598,604,819,830,931,937,976,1007,1023,1068,1074,1344],{"type":139,"tag":140,"props":141,"children":142},"element","p",{},[143,150,152,157,159,164,166,171,173,179],{"type":139,"tag":144,"props":145,"children":146},"code",{},[147],{"type":148,"value":149},"text","@lupinum\u002Fnuxt-pdf\u002Ftest",{"type":148,"value":151}," exposes the helpers Nuxt PDF is tested with. They are\nrunner-agnostic (they throw ",{"type":139,"tag":144,"props":153,"children":154},{},[155],{"type":148,"value":156},"PdfAssertionError",{"type":148,"value":158},", not Vitest\u002FJest matchers) and\nload ",{"type":139,"tag":144,"props":160,"children":161},{},[162],{"type":148,"value":163},"pdfjs-dist",{"type":148,"value":165}," and ",{"type":139,"tag":144,"props":167,"children":168},{},[169],{"type":148,"value":170},"@napi-rs\u002Fcanvas",{"type":148,"value":172}," lazily. See\n",{"type":139,"tag":174,"props":175,"children":177},"a",{"href":176},"$docs\u002Fguides\u002Ftesting",[178],{"type":148,"value":62},{"type":148,"value":180}," for a worked example.",{"type":139,"tag":182,"props":183,"children":185},"h2",{"id":184},"renderpdftemplate",[186],{"type":148,"value":187},"renderPdfTemplate",{"type":139,"tag":189,"props":190,"children":194},"pre",{"language":191,"class":192,"tabindex":193},"ts","shiki shiki-themes light-plus dark-plus dark:dark-plus","0",[195],{"type":139,"tag":144,"props":196,"children":198},{"class":197},"language-ts",[199],{"type":139,"tag":200,"props":201,"children":204},"span",{"class":202,"style":203},"line","display: inline",[205,211,217,223,228,233,238,244,250,255,261,265,270],{"type":139,"tag":200,"props":206,"children":208},{"style":207},"color:#0000FF;--shiki-dark:#569CD6",[209],{"type":148,"value":210},"const",{"type":139,"tag":200,"props":212,"children":214},{"style":213},"color:#000000;--shiki-dark:#D4D4D4",[215],{"type":148,"value":216}," { ",{"type":139,"tag":200,"props":218,"children":220},{"style":219},"color:#0070C1;--shiki-dark:#4FC1FF",[221],{"type":148,"value":222},"bytes",{"type":139,"tag":200,"props":224,"children":225},{"style":213},[226],{"type":148,"value":227},", ",{"type":139,"tag":200,"props":229,"children":230},{"style":219},[231],{"type":148,"value":232},"parsed",{"type":139,"tag":200,"props":234,"children":235},{"style":213},[236],{"type":148,"value":237}," } = ",{"type":139,"tag":200,"props":239,"children":241},{"style":240},"color:#AF00DB;--shiki-dark:#C586C0",[242],{"type":148,"value":243},"await",{"type":139,"tag":200,"props":245,"children":247},{"style":246},"color:#795E26;--shiki-dark:#DCDCAA",[248],{"type":148,"value":249}," renderPdfTemplate",{"type":139,"tag":200,"props":251,"children":252},{"style":213},[253],{"type":148,"value":254},"(",{"type":139,"tag":200,"props":256,"children":258},{"style":257},"color:#001080;--shiki-dark:#9CDCFE",[259],{"type":148,"value":260},"Component",{"type":139,"tag":200,"props":262,"children":263},{"style":213},[264],{"type":148,"value":227},{"type":139,"tag":200,"props":266,"children":267},{"style":257},[268],{"type":148,"value":269},"props",{"type":139,"tag":200,"props":271,"children":272},{"style":213},[273],{"type":148,"value":274},")",{"type":139,"tag":140,"props":276,"children":277},{},[278,280,284,286,290,292,297,299,303,305,310,311,316,318,323],{"type":148,"value":279},"Renders a Vue PDF component through the real registry pipeline, with or without\na ",{"type":139,"tag":144,"props":281,"children":282},{},[283],{"type":148,"value":80},{"type":148,"value":285}," block. Returns the raw ",{"type":139,"tag":144,"props":287,"children":288},{},[289],{"type":148,"value":222},{"type":148,"value":291},", immutable ",{"type":139,"tag":144,"props":293,"children":294},{},[295],{"type":148,"value":296},"result",{"type":148,"value":298},", and a ",{"type":139,"tag":144,"props":300,"children":301},{},[302],{"type":148,"value":232},{"type":148,"value":304},"\ndocument. Options use the same input shapes as ",{"type":139,"tag":144,"props":306,"children":307},{},[308],{"type":148,"value":309},"pdf.remote",{"type":148,"value":165},{"type":139,"tag":144,"props":312,"children":313},{},[314],{"type":148,"value":315},"pdf.limits",{"type":148,"value":317},", so\npartial limits and URL-prefix allowlists can be shared with ",{"type":139,"tag":144,"props":319,"children":320},{},[321],{"type":148,"value":322},"nuxt.config",{"type":148,"value":324},".",{"type":139,"tag":140,"props":326,"children":327},{},[328,330,335],{"type":148,"value":329},"Use ",{"type":139,"tag":144,"props":331,"children":332},{},[333],{"type":148,"value":334},"renderPdfSfc",{"type":148,"value":336}," when the document depends on discovered local images or\ncustom font files. Prepared asset maps, embedded font descriptors, and template\nattribution are registry internals and are not public test configuration.",{"type":139,"tag":182,"props":338,"children":340},{"id":339},"renderpdfsfc",[341],{"type":148,"value":334},{"type":139,"tag":189,"props":343,"children":344},{"language":191,"class":192,"tabindex":193},[345],{"type":139,"tag":144,"props":346,"children":347},{"class":197},[348,397,399,441,442],{"type":139,"tag":200,"props":349,"children":350},{"class":202,"style":203},[351,355,360,365,369,374,378,384,388,392],{"type":139,"tag":200,"props":352,"children":353},{"style":207},[354],{"type":148,"value":210},{"type":139,"tag":200,"props":356,"children":357},{"style":219},[358],{"type":148,"value":359}," rendered",{"type":139,"tag":200,"props":361,"children":362},{"style":213},[363],{"type":148,"value":364}," = ",{"type":139,"tag":200,"props":366,"children":367},{"style":240},[368],{"type":148,"value":243},{"type":139,"tag":200,"props":370,"children":371},{"style":246},[372],{"type":148,"value":373}," renderPdfSfc",{"type":139,"tag":200,"props":375,"children":376},{"style":213},[377],{"type":148,"value":254},{"type":139,"tag":200,"props":379,"children":381},{"style":380},"color:#A31515;--shiki-dark:#CE9178",[382],{"type":148,"value":383},"'.\u002Fpdfs\u002Finvoice.vue'",{"type":139,"tag":200,"props":385,"children":386},{"style":213},[387],{"type":148,"value":227},{"type":139,"tag":200,"props":389,"children":390},{"style":257},[391],{"type":148,"value":269},{"type":139,"tag":200,"props":393,"children":394},{"style":213},[395],{"type":148,"value":396},", {",{"type":148,"value":398},"\n",{"type":139,"tag":200,"props":400,"children":401},{"class":202,"style":203},[402,407,412,417,422,426,431,436],{"type":139,"tag":200,"props":403,"children":404},{"style":257},[405],{"type":148,"value":406},"  fonts:",{"type":139,"tag":200,"props":408,"children":409},{"style":213},[410],{"type":148,"value":411}," [{ ",{"type":139,"tag":200,"props":413,"children":414},{"style":257},[415],{"type":148,"value":416},"family:",{"type":139,"tag":200,"props":418,"children":419},{"style":380},[420],{"type":148,"value":421}," 'Invoice Sans'",{"type":139,"tag":200,"props":423,"children":424},{"style":213},[425],{"type":148,"value":227},{"type":139,"tag":200,"props":427,"children":428},{"style":257},[429],{"type":148,"value":430},"src:",{"type":139,"tag":200,"props":432,"children":433},{"style":380},[434],{"type":148,"value":435}," 'InvoiceSans-Regular.ttf'",{"type":139,"tag":200,"props":437,"children":438},{"style":213},[439],{"type":148,"value":440}," }],",{"type":148,"value":398},{"type":139,"tag":200,"props":443,"children":444},{"class":202,"style":203},[445],{"type":139,"tag":200,"props":446,"children":447},{"style":213},[448],{"type":148,"value":449},"})",{"type":139,"tag":140,"props":451,"children":452},{},[453,455,460,462,467,469,474,475,479,481,485,487,492,494,499],{"type":148,"value":454},"Compiles a real template and its nested child SFCs with the production\ncompiler, discovers and validates ",{"type":139,"tag":144,"props":456,"children":457},{},[458],{"type":148,"value":459},"pdfs\u002Fassets",{"type":148,"value":461},", and bundles the declared faces\nfrom ",{"type":139,"tag":144,"props":463,"children":464},{},[465],{"type":148,"value":466},"pdfs\u002Ffonts",{"type":148,"value":468},". Its options mirror ",{"type":139,"tag":144,"props":470,"children":471},{},[472],{"type":148,"value":473},"pdf.fonts",{"type":148,"value":227},{"type":139,"tag":144,"props":476,"children":477},{},[478],{"type":148,"value":309},{"type":148,"value":480},", and ",{"type":139,"tag":144,"props":482,"children":483},{},[484],{"type":148,"value":315},{"type":148,"value":486},";\nthe application root and template identity are inferred from the ",{"type":139,"tag":144,"props":488,"children":489},{},[490],{"type":148,"value":491},"pdfs\u002F*.vue",{"type":148,"value":493},"\npath. ",{"type":139,"tag":144,"props":495,"children":496},{},[497],{"type":148,"value":498},"loadPdfSfc",{"type":148,"value":500}," exposes only the compile step when a test needs the Vue\ncomponent separately.",{"type":139,"tag":182,"props":502,"children":504},{"id":503},"parsepdf",[505],{"type":148,"value":506},"parsePdf",{"type":139,"tag":189,"props":508,"children":509},{"language":191,"class":192,"tabindex":193},[510],{"type":139,"tag":144,"props":511,"children":512},{"class":197},[513],{"type":139,"tag":200,"props":514,"children":515},{"class":202,"style":203},[516,520,525,529,533,538,542,547],{"type":139,"tag":200,"props":517,"children":518},{"style":207},[519],{"type":148,"value":210},{"type":139,"tag":200,"props":521,"children":522},{"style":219},[523],{"type":148,"value":524}," parsed",{"type":139,"tag":200,"props":526,"children":527},{"style":213},[528],{"type":148,"value":364},{"type":139,"tag":200,"props":530,"children":531},{"style":240},[532],{"type":148,"value":243},{"type":139,"tag":200,"props":534,"children":535},{"style":246},[536],{"type":148,"value":537}," parsePdf",{"type":139,"tag":200,"props":539,"children":540},{"style":213},[541],{"type":148,"value":254},{"type":139,"tag":200,"props":543,"children":544},{"style":257},[545],{"type":148,"value":546},"input",{"type":139,"tag":200,"props":548,"children":549},{"style":213},[550],{"type":148,"value":274},{"type":139,"tag":140,"props":552,"children":553},{},[554,556,561,563,568,569,574,576,582,584,589,591,596],{"type":148,"value":555},"Accepts PDF bytes (",{"type":139,"tag":144,"props":557,"children":558},{},[559],{"type":148,"value":560},"Uint8Array",{"type":148,"value":562},"\u002F",{"type":139,"tag":144,"props":564,"children":565},{},[566],{"type":148,"value":567},"ArrayBuffer",{"type":148,"value":562},{"type":139,"tag":144,"props":570,"children":571},{},[572],{"type":148,"value":573},"Buffer",{"type":148,"value":575},") ",{"type":139,"tag":577,"props":578,"children":579},"strong",{},[580],{"type":148,"value":581},"or",{"type":148,"value":583}," a\n",{"type":139,"tag":144,"props":585,"children":586},{},[587],{"type":148,"value":588},"PdfRenderResult",{"type":148,"value":590}," straight from the ",{"type":139,"tag":144,"props":592,"children":593},{},[594],{"type":148,"value":595},"#pdf",{"type":148,"value":597}," registry. Returns page text, page\ncount, flattened link annotations (named destination or external URL), and the\noutline hierarchy with its initial expanded\u002Fcollapsed state.",{"type":139,"tag":182,"props":599,"children":601},{"id":600},"expectpdf",[602],{"type":148,"value":603},"expectPdf",{"type":139,"tag":189,"props":605,"children":606},{"language":191,"class":192,"tabindex":193},[607],{"type":139,"tag":144,"props":608,"children":609},{"class":197},[610,629,630,656,657,698,699,742,743,772,773],{"type":139,"tag":200,"props":611,"children":612},{"class":202,"style":203},[613,617,621,625],{"type":139,"tag":200,"props":614,"children":615},{"style":246},[616],{"type":148,"value":603},{"type":139,"tag":200,"props":618,"children":619},{"style":213},[620],{"type":148,"value":254},{"type":139,"tag":200,"props":622,"children":623},{"style":257},[624],{"type":148,"value":232},{"type":139,"tag":200,"props":626,"children":627},{"style":213},[628],{"type":148,"value":274},{"type":148,"value":398},{"type":139,"tag":200,"props":631,"children":632},{"class":202,"style":203},[633,638,643,647,652],{"type":139,"tag":200,"props":634,"children":635},{"style":213},[636],{"type":148,"value":637},"  .",{"type":139,"tag":200,"props":639,"children":640},{"style":246},[641],{"type":148,"value":642},"toHavePageCount",{"type":139,"tag":200,"props":644,"children":645},{"style":213},[646],{"type":148,"value":254},{"type":139,"tag":200,"props":648,"children":650},{"style":649},"color:#098658;--shiki-dark:#B5CEA8",[651],{"type":148,"value":27},{"type":139,"tag":200,"props":653,"children":654},{"style":213},[655],{"type":148,"value":274},{"type":148,"value":398},{"type":139,"tag":200,"props":658,"children":659},{"class":202,"style":203},[660,664,669,673,678,683,688,693],{"type":139,"tag":200,"props":661,"children":662},{"style":213},[663],{"type":148,"value":637},{"type":139,"tag":200,"props":665,"children":666},{"style":246},[667],{"type":148,"value":668},"toContainText",{"type":139,"tag":200,"props":670,"children":671},{"style":213},[672],{"type":148,"value":254},{"type":139,"tag":200,"props":674,"children":675},{"style":380},[676],{"type":148,"value":677},"'Invoice for Acme Corp'",{"type":139,"tag":200,"props":679,"children":680},{"style":213},[681],{"type":148,"value":682},", { ",{"type":139,"tag":200,"props":684,"children":685},{"style":257},[686],{"type":148,"value":687},"page:",{"type":139,"tag":200,"props":689,"children":690},{"style":649},[691],{"type":148,"value":692}," 1",{"type":139,"tag":200,"props":694,"children":695},{"style":213},[696],{"type":148,"value":697}," })",{"type":148,"value":398},{"type":139,"tag":200,"props":700,"children":701},{"class":202,"style":203},[702,706,711,716,721,726,730,734,738],{"type":139,"tag":200,"props":703,"children":704},{"style":213},[705],{"type":148,"value":637},{"type":139,"tag":200,"props":707,"children":708},{"style":246},[709],{"type":148,"value":710},"toHaveLink",{"type":139,"tag":200,"props":712,"children":713},{"style":213},[714],{"type":148,"value":715},"({ ",{"type":139,"tag":200,"props":717,"children":718},{"style":257},[719],{"type":148,"value":720},"destination:",{"type":139,"tag":200,"props":722,"children":723},{"style":380},[724],{"type":148,"value":725}," 'terms'",{"type":139,"tag":200,"props":727,"children":728},{"style":213},[729],{"type":148,"value":227},{"type":139,"tag":200,"props":731,"children":732},{"style":257},[733],{"type":148,"value":687},{"type":139,"tag":200,"props":735,"children":736},{"style":649},[737],{"type":148,"value":692},{"type":139,"tag":200,"props":739,"children":740},{"style":213},[741],{"type":148,"value":697},{"type":148,"value":398},{"type":139,"tag":200,"props":744,"children":745},{"class":202,"style":203},[746,750,754,758,763,768],{"type":139,"tag":200,"props":747,"children":748},{"style":213},[749],{"type":148,"value":637},{"type":139,"tag":200,"props":751,"children":752},{"style":246},[753],{"type":148,"value":710},{"type":139,"tag":200,"props":755,"children":756},{"style":213},[757],{"type":148,"value":715},{"type":139,"tag":200,"props":759,"children":760},{"style":257},[761],{"type":148,"value":762},"url:",{"type":139,"tag":200,"props":764,"children":765},{"style":380},[766],{"type":148,"value":767}," 'https:\u002F\u002Fexample.com\u002F'",{"type":139,"tag":200,"props":769,"children":770},{"style":213},[771],{"type":148,"value":697},{"type":148,"value":398},{"type":139,"tag":200,"props":774,"children":775},{"class":202,"style":203},[776,780,785,790,795,800,804,809,814],{"type":139,"tag":200,"props":777,"children":778},{"style":213},[779],{"type":148,"value":637},{"type":139,"tag":200,"props":781,"children":782},{"style":246},[783],{"type":148,"value":784},"toHaveOutline",{"type":139,"tag":200,"props":786,"children":787},{"style":213},[788],{"type":148,"value":789},"([{ ",{"type":139,"tag":200,"props":791,"children":792},{"style":257},[793],{"type":148,"value":794},"title:",{"type":139,"tag":200,"props":796,"children":797},{"style":380},[798],{"type":148,"value":799}," 'Terms'",{"type":139,"tag":200,"props":801,"children":802},{"style":213},[803],{"type":148,"value":227},{"type":139,"tag":200,"props":805,"children":806},{"style":257},[807],{"type":148,"value":808},"expanded:",{"type":139,"tag":200,"props":810,"children":811},{"style":207},[812],{"type":148,"value":813}," true",{"type":139,"tag":200,"props":815,"children":816},{"style":213},[817],{"type":148,"value":818}," }])",{"type":139,"tag":140,"props":820,"children":821},{},[822,824,828],{"type":148,"value":823},"A chainable expectation that throws ",{"type":139,"tag":144,"props":825,"children":826},{},[827],{"type":148,"value":156},{"type":148,"value":829}," with an actionable\nmessage on failure.",{"type":139,"tag":831,"props":832,"children":833},"table",{},[834,853],{"type":139,"tag":835,"props":836,"children":837},"thead",{},[838],{"type":139,"tag":839,"props":840,"children":841},"tr",{},[842,848],{"type":139,"tag":843,"props":844,"children":845},"th",{},[846],{"type":148,"value":847},"Method",{"type":139,"tag":843,"props":849,"children":850},{},[851],{"type":148,"value":852},"Checks",{"type":139,"tag":854,"props":855,"children":856},"tbody",{},[857,879,899,915],{"type":139,"tag":839,"props":858,"children":859},{},[860,869],{"type":139,"tag":861,"props":862,"children":863},"td",{},[864],{"type":139,"tag":144,"props":865,"children":866},{},[867],{"type":148,"value":868},"toHavePageCount(n)",{"type":139,"tag":861,"props":870,"children":871},{},[872,874],{"type":148,"value":873},"Page count equals ",{"type":139,"tag":144,"props":875,"children":876},{},[877],{"type":148,"value":878},"n",{"type":139,"tag":839,"props":880,"children":881},{},[882,890],{"type":139,"tag":861,"props":883,"children":884},{},[885],{"type":139,"tag":144,"props":886,"children":887},{},[888],{"type":148,"value":889},"toContainText(text, { page? })",{"type":139,"tag":861,"props":891,"children":892},{},[893,895],{"type":148,"value":894},"Extracted text contains ",{"type":139,"tag":144,"props":896,"children":897},{},[898],{"type":148,"value":148},{"type":139,"tag":839,"props":900,"children":901},{},[902,910],{"type":139,"tag":861,"props":903,"children":904},{},[905],{"type":139,"tag":144,"props":906,"children":907},{},[908],{"type":148,"value":909},"toHaveLink({ destination?, url?, page? })",{"type":139,"tag":861,"props":911,"children":912},{},[913],{"type":148,"value":914},"A matching link annotation exists",{"type":139,"tag":839,"props":916,"children":917},{},[918,926],{"type":139,"tag":861,"props":919,"children":920},{},[921],{"type":139,"tag":144,"props":922,"children":923},{},[924],{"type":148,"value":925},"toHaveOutline(shape)",{"type":139,"tag":861,"props":927,"children":928},{},[929],{"type":148,"value":930},"The outline matches the title hierarchy and any requested expansion states",{"type":139,"tag":182,"props":932,"children":934},{"id":933},"rasterizepdf-and-comparepdfsnapshot",[935],{"type":148,"value":936},"rasterizePdf and comparePdfSnapshot",{"type":139,"tag":189,"props":938,"children":939},{"language":191,"class":192,"tabindex":193},[940],{"type":139,"tag":144,"props":941,"children":942},{"class":197},[943],{"type":139,"tag":200,"props":944,"children":945},{"class":202,"style":203},[946,950,955,959,963,967,972],{"type":139,"tag":200,"props":947,"children":948},{"style":240},[949],{"type":148,"value":243},{"type":139,"tag":200,"props":951,"children":952},{"style":246},[953],{"type":148,"value":954}," comparePdfSnapshot",{"type":139,"tag":200,"props":956,"children":957},{"style":213},[958],{"type":148,"value":254},{"type":139,"tag":200,"props":960,"children":961},{"style":257},[962],{"type":148,"value":222},{"type":139,"tag":200,"props":964,"children":965},{"style":213},[966],{"type":148,"value":227},{"type":139,"tag":200,"props":968,"children":969},{"style":380},[970],{"type":148,"value":971},"'.\u002Ftest\u002Fbaselines\u002Finvoice'",{"type":139,"tag":200,"props":973,"children":974},{"style":213},[975],{"type":148,"value":274},{"type":139,"tag":140,"props":977,"children":978},{},[979,984,986,991,993,998,1000,1005],{"type":139,"tag":144,"props":980,"children":981},{},[982],{"type":148,"value":983},"rasterizePdf",{"type":148,"value":985}," renders pages to PNGs; ",{"type":139,"tag":144,"props":987,"children":988},{},[989],{"type":148,"value":990},"comparePdfSnapshot",{"type":148,"value":992}," implements the\nreviewed-baseline flow. It writes per-page baselines when\n",{"type":139,"tag":144,"props":994,"children":995},{},[996],{"type":148,"value":997},"UPDATE_PDF_BASELINES=1",{"type":148,"value":999}," (or ",{"type":139,"tag":144,"props":1001,"children":1002},{},[1003],{"type":148,"value":1004},"{ update: true }",{"type":148,"value":1006},") and otherwise compares within a\npixel threshold.",{"type":139,"tag":140,"props":1008,"children":1009},{},[1010,1014,1016,1021],{"type":139,"tag":144,"props":1011,"children":1012},{},[1013],{"type":148,"value":506},{"type":148,"value":1015}," also returns page dimensions and normalized ",{"type":139,"tag":144,"props":1017,"children":1018},{},[1019],{"type":148,"value":1020},"textRuns",{"type":148,"value":1022}," with text,\nposition, size, font name, direction, width, and height. Use tolerant numeric\nassertions for geometry because font and raster backends can vary slightly\nbetween supported environments.",{"type":139,"tag":140,"props":1024,"children":1025},{},[1026,1028,1033,1034,1039,1040,1045,1047,1052,1054,1059,1061,1066],{"type":148,"value":1027},"When a raster comparison fails, the helper checks every page and writes\n",{"type":139,"tag":144,"props":1029,"children":1030},{},[1031],{"type":148,"value":1032},"expected",{"type":148,"value":227},{"type":139,"tag":144,"props":1035,"children":1036},{},[1037],{"type":148,"value":1038},"actual",{"type":148,"value":480},{"type":139,"tag":144,"props":1041,"children":1042},{},[1043],{"type":148,"value":1044},"diff",{"type":148,"value":1046}," PNGs plus a machine-readable ",{"type":139,"tag":144,"props":1048,"children":1049},{},[1050],{"type":148,"value":1051},"metrics.json",{"type":148,"value":1053}," to\n",{"type":139,"tag":144,"props":1055,"children":1056},{},[1057],{"type":148,"value":1058},"reports\u002Fpdf-snapshots\u002F\u003Cbaseline-name>",{"type":148,"value":1060},". Pass ",{"type":139,"tag":144,"props":1062,"children":1063},{},[1064],{"type":148,"value":1065},"{ artifactDir }",{"type":148,"value":1067}," to choose a\ndifferent CI artifact directory.",{"type":139,"tag":182,"props":1069,"children":1071},{"id":1070},"all-exports",[1072],{"type":148,"value":1073},"All exports",{"type":139,"tag":831,"props":1075,"children":1076},{},[1077,1098],{"type":139,"tag":835,"props":1078,"children":1079},{},[1080],{"type":139,"tag":839,"props":1081,"children":1082},{},[1083,1088,1093],{"type":139,"tag":843,"props":1084,"children":1085},{},[1086],{"type":148,"value":1087},"Export",{"type":139,"tag":843,"props":1089,"children":1090},{},[1091],{"type":148,"value":1092},"Kind",{"type":139,"tag":843,"props":1094,"children":1095},{},[1096],{"type":148,"value":1097},"Purpose",{"type":139,"tag":854,"props":1099,"children":1100},{},[1101,1121,1146,1165,1189,1208,1227,1247,1266,1286],{"type":139,"tag":839,"props":1102,"children":1103},{},[1104,1111,1116],{"type":139,"tag":861,"props":1105,"children":1106},{},[1107],{"type":139,"tag":144,"props":1108,"children":1109},{},[1110],{"type":148,"value":187},{"type":139,"tag":861,"props":1112,"children":1113},{},[1114],{"type":148,"value":1115},"function",{"type":139,"tag":861,"props":1117,"children":1118},{},[1119],{"type":148,"value":1120},"Render a component through the real pipeline",{"type":139,"tag":839,"props":1122,"children":1123},{},[1124,1131,1135],{"type":139,"tag":861,"props":1125,"children":1126},{},[1127],{"type":139,"tag":144,"props":1128,"children":1129},{},[1130],{"type":148,"value":334},{"type":139,"tag":861,"props":1132,"children":1133},{},[1134],{"type":148,"value":1115},{"type":139,"tag":861,"props":1136,"children":1137},{},[1138,1140,1144],{"type":148,"value":1139},"Compile and render a real nested ",{"type":139,"tag":144,"props":1141,"children":1142},{},[1143],{"type":148,"value":491},{"type":148,"value":1145}," graph",{"type":139,"tag":839,"props":1147,"children":1148},{},[1149,1156,1160],{"type":139,"tag":861,"props":1150,"children":1151},{},[1152],{"type":139,"tag":144,"props":1153,"children":1154},{},[1155],{"type":148,"value":498},{"type":139,"tag":861,"props":1157,"children":1158},{},[1159],{"type":148,"value":1115},{"type":139,"tag":861,"props":1161,"children":1162},{},[1163],{"type":148,"value":1164},"Compile a PDF SFC graph into a Vue component",{"type":139,"tag":839,"props":1166,"children":1167},{},[1168,1175,1179],{"type":139,"tag":861,"props":1169,"children":1170},{},[1171],{"type":139,"tag":144,"props":1172,"children":1173},{},[1174],{"type":148,"value":506},{"type":139,"tag":861,"props":1176,"children":1177},{},[1178],{"type":148,"value":1115},{"type":139,"tag":861,"props":1180,"children":1181},{},[1182,1184],{"type":148,"value":1183},"Parse bytes or a render result into a ",{"type":139,"tag":144,"props":1185,"children":1186},{},[1187],{"type":148,"value":1188},"ParsedPdf",{"type":139,"tag":839,"props":1190,"children":1191},{},[1192,1199,1203],{"type":139,"tag":861,"props":1193,"children":1194},{},[1195],{"type":139,"tag":144,"props":1196,"children":1197},{},[1198],{"type":148,"value":983},{"type":139,"tag":861,"props":1200,"children":1201},{},[1202],{"type":148,"value":1115},{"type":139,"tag":861,"props":1204,"children":1205},{},[1206],{"type":148,"value":1207},"Render pages to PNG images",{"type":139,"tag":839,"props":1209,"children":1210},{},[1211,1218,1222],{"type":139,"tag":861,"props":1212,"children":1213},{},[1214],{"type":139,"tag":144,"props":1215,"children":1216},{},[1217],{"type":148,"value":990},{"type":139,"tag":861,"props":1219,"children":1220},{},[1221],{"type":148,"value":1115},{"type":139,"tag":861,"props":1223,"children":1224},{},[1225],{"type":148,"value":1226},"Reviewed-baseline raster comparison",{"type":139,"tag":839,"props":1228,"children":1229},{},[1230,1238,1242],{"type":139,"tag":861,"props":1231,"children":1232},{},[1233],{"type":139,"tag":144,"props":1234,"children":1235},{},[1236],{"type":148,"value":1237},"toPdfBytes",{"type":139,"tag":861,"props":1239,"children":1240},{},[1241],{"type":148,"value":1115},{"type":139,"tag":861,"props":1243,"children":1244},{},[1245],{"type":148,"value":1246},"Normalize inputs to PDF bytes",{"type":139,"tag":839,"props":1248,"children":1249},{},[1250,1257,1261],{"type":139,"tag":861,"props":1251,"children":1252},{},[1253],{"type":139,"tag":144,"props":1254,"children":1255},{},[1256],{"type":148,"value":603},{"type":139,"tag":861,"props":1258,"children":1259},{},[1260],{"type":148,"value":1115},{"type":139,"tag":861,"props":1262,"children":1263},{},[1264],{"type":148,"value":1265},"Fluent, runner-agnostic assertions",{"type":139,"tag":839,"props":1267,"children":1268},{},[1269,1276,1281],{"type":139,"tag":861,"props":1270,"children":1271},{},[1272],{"type":139,"tag":144,"props":1273,"children":1274},{},[1275],{"type":148,"value":156},{"type":139,"tag":861,"props":1277,"children":1278},{},[1279],{"type":148,"value":1280},"class",{"type":139,"tag":861,"props":1282,"children":1283},{},[1284],{"type":148,"value":1285},"Thrown by assertions on failure",{"type":139,"tag":839,"props":1287,"children":1288},{},[1289,1334,1339],{"type":139,"tag":861,"props":1290,"children":1291},{},[1292,1296,1297,1302,1303,1308,1309,1314,1315,1320,1321,1326,1327,1332],{"type":139,"tag":144,"props":1293,"children":1294},{},[1295],{"type":148,"value":1188},{"type":148,"value":227},{"type":139,"tag":144,"props":1298,"children":1299},{},[1300],{"type":148,"value":1301},"ParsedPdfPage",{"type":148,"value":227},{"type":139,"tag":144,"props":1304,"children":1305},{},[1306],{"type":148,"value":1307},"ParsedPdfTextRun",{"type":148,"value":227},{"type":139,"tag":144,"props":1310,"children":1311},{},[1312],{"type":148,"value":1313},"ParsedPdfLink",{"type":148,"value":227},{"type":139,"tag":144,"props":1316,"children":1317},{},[1318],{"type":148,"value":1319},"PdfOutlineItem",{"type":148,"value":227},{"type":139,"tag":144,"props":1322,"children":1323},{},[1324],{"type":148,"value":1325},"PdfInput",{"type":148,"value":227},{"type":139,"tag":144,"props":1328,"children":1329},{},[1330],{"type":148,"value":1331},"PdfPageImage",{"type":148,"value":1333},", and related types",{"type":139,"tag":861,"props":1335,"children":1336},{},[1337],{"type":148,"value":1338},"types",{"type":139,"tag":861,"props":1340,"children":1341},{},[1342],{"type":148,"value":1343},"Parser and helper types",{"type":139,"tag":140,"props":1345,"children":1346},{},[1347,1351,1352,1356],{"type":139,"tag":144,"props":1348,"children":1349},{},[1350],{"type":148,"value":163},{"type":148,"value":165},{"type":139,"tag":144,"props":1353,"children":1354},{},[1355],{"type":148,"value":170},{"type":148,"value":1357}," are optional peer dependencies; install them\nin the project under test. They are absent from the module's production\ndependency graph.",{"title":1359,"searchDepth":1360,"depth":1360,"links":1361},"",4,[1362,1364,1365,1366,1367,1368],{"id":184,"depth":1363,"text":187},2,{"id":339,"depth":1363,"text":334},{"id":503,"depth":1363,"text":506},{"id":600,"depth":1363,"text":603},{"id":933,"depth":1363,"text":936},{"id":1070,"depth":1363,"text":1073},"markdown","docs",{"source":1372,"path":1373,"stem":1374,"dir":1375,"extension":1376},"content","docs\u002F3.reference\u002F6.test-utilities.md","docs\u002F3.reference\u002F6.test-utilities","reference","md",{"$docs\u002Fguides\u002Ftesting":66},{"requestedPath":114,"resolvedPath":114,"alternates":1379},[],{"requested":1381,"resolved":1382,"usedFallback":9},{},{"locale":8},{"previous":1384,"next":1385},{"title":104,"id":105,"canonicalKey":106,"locale":8,"draft":9,"path":108},{"title":116,"id":117,"canonicalKey":118,"locale":8,"draft":9,"path":120},{"left":1387,"top":1387,"width":1388,"height":1388,"rotate":1387,"vFlip":9,"hFlip":9,"body":1389},0,256,"\u003Cpath fill=\"#3178c6\" d=\"M20 0h216c11.046 0 20 8.954 20 20v216c0 11.046-8.954 20-20 20H20c-11.046 0-20-8.954-20-20V20C0 8.954 8.954 0 20 0\"\u002F>\u003Cpath fill=\"#fff\" d=\"M150.518 200.475v27.62q6.738 3.453 15.938 5.179T185.849 235q9.934 0 18.874-1.899t15.678-6.257q6.738-4.359 10.669-11.394q3.93-7.033 3.93-17.391q0-7.51-2.246-13.163a30.8 30.8 0 0 0-6.479-10.055q-4.232-4.402-10.149-7.898t-13.347-6.602q-5.442-2.245-9.761-4.359t-7.342-4.316q-3.024-2.2-4.665-4.661t-1.641-5.567q0-2.848 1.468-5.135q1.469-2.288 4.147-3.927t6.565-2.547q3.887-.906 8.638-.906q3.456 0 7.299.518q3.844.517 7.732 1.597a54 54 0 0 1 7.558 2.719a41.7 41.7 0 0 1 6.781 3.797v-25.807q-6.306-2.417-13.778-3.582T198.633 107q-9.847 0-18.658 2.115q-8.811 2.114-15.506 6.602q-6.694 4.49-10.582 11.437Q150 134.102 150 143.769q0 12.342 7.127 21.06t21.638 14.759a292 292 0 0 1 10.625 4.575q4.924 2.244 8.509 4.66t5.658 5.265t2.073 6.474a9.9 9.9 0 0 1-1.296 4.963q-1.295 2.287-3.93 3.97t-6.565 2.632t-9.2.95q-8.983 0-17.794-3.151t-16.327-9.451m-46.036-68.733H140V109H41v22.742h35.345V233h28.137z\"\u002F>",{"left":1387,"top":1387,"width":1391,"height":1391,"rotate":1387,"vFlip":9,"hFlip":9,"body":1392},24,"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Crect width=\"8\" height=\"4\" x=\"8\" y=\"2\" rx=\"1\" ry=\"1\"\u002F>\u003Cpath d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\"\u002F>\u003C\u002Fg>",1786511355699]