From 1dc748cad4f6a663dd01b7d7954fee91b15e6e18 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" Date: Thu, 4 Jan 2024 15:50:52 +0000 Subject: [PATCH] deploy: 9b3de27d8ad5f525ede9c8de19e2e93888a8988e --- 200.html | 38 +++---- 404.html | 38 +++---- __studio.json | 2 +- .../{Badge.SrXj_iIy.js => Badge.SouunExa.js} | 2 +- ...Hero.poWu1pY1.js => BlockHero.iMe1gqpW.js} | 2 +- ...ink.KvhTbcIS.js => ButtonLink.zZVq8ThH.js} | 2 +- ...allout.j9rHm2NJ.js => Callout.hSu6Wdkf.js} | 2 +- _nuxt/{Card.L9sNeYTi.js => Card.BzG3yGUC.js} | 2 +- ...dGrid.0MuI_gyy.js => CardGrid.rxd_hY7g.js} | 2 +- _nuxt/ChallengeV2.kmo3670I.js | 1 - ...hWqa73j.js => ChallengeV2.vue.MiUOdAxt.js} | 2 +- _nuxt/ChallengeV2.x2DxOGgI.js | 1 + ...Org3CNM.js => ChallengeV2Demo.gPrqhMW4.js} | 2 +- _nuxt/ChallengeV3.-HLbHbHP.js | 1 + _nuxt/ChallengeV3.BHTEn9Jm.js | 1 - ...UQOIvrh.js => ChallengeV3.vue.NIw8SbQz.js} | 2 +- ...1DElVUe.js => ChallengeV3Demo.nkgdJny3.js} | 2 +- _nuxt/Checkbox.MRQtbkdP.js | 1 + _nuxt/Checkbox.rmToST7V.js | 1 - ...e.zE85wFil.js => Checkbox.vue.7dAWGJOj.js} | 2 +- ...o.wwPeTTHd.js => CheckboxDemo.iQsxuYOJ.js} | 2 +- ...lock.H5YRz7mE.js => CodeBlock.Lugc7cba.js} | 2 +- ...roup.kKhKszRR.js => CodeGroup.21lmZNJJ.js} | 2 +- ...G5c.js => ComponentPlayground.G5gJQDAu.js} | 2 +- ...js => ComponentPlaygroundData.P9Det-rH.js} | 2 +- ...s => ComponentPlaygroundProps.eqJy9Iq7.js} | 2 +- _nuxt/ComponentPlaygroundSlots.8zrZ057N.js | 1 - _nuxt/ComponentPlaygroundSlots.r9v7_SJ5.js | 1 + ... ComponentPlaygroundSlots.vue.-pfk4FaA.js} | 2 +- _nuxt/ComponentPlaygroundTokens.hYqZwbxt.js | 1 + _nuxt/ComponentPlaygroundTokens.sTl3HQTK.js | 1 - ...ComponentPlaygroundTokens.vue.IQ2_8fNI.js} | 2 +- ...Doc.XNEVUcvJ.js => ContentDoc.VH_Hky9p.js} | 2 +- ...st.iLZmbKSm.js => ContentList.YCunzPlS.js} | 2 +- ...xFeAY.js => ContentNavigation.9YnVdsDD.js} | 2 +- ...y.poDPsyGM.js => ContentQuery.QtvwtBx0.js} | 2 +- ...mnD5r_q.js => ContentRenderer.M--L_q55.js} | 2 +- _nuxt/ContentRendererMarkdown.SeLRvQWx.js | 1 + _nuxt/ContentRendererMarkdown.WM_fk24R.js | 1 - ...> ContentRendererMarkdown.vue.ILa9pIED.js} | 2 +- _nuxt/ContentSlot.KD4hNNCp.js | 1 + _nuxt/ContentSlot.hAjWUk8S.js | 1 - ...ton.8nJ4x1BV.js => CopyButton.HioSLVCt.js} | 2 +- ...side.J9UiIJmE.js => DocsAside.J1JT7aj-.js} | 2 +- ...GLnnhrEg.js => DocsPageBottom.xF3M7Xuf.js} | 2 +- ...uxgc1_kz.js => DocsPageLayout.soTR2NFE.js} | 2 +- ...t.4e5rRBAE.js => DocsPrevNext.NyR6m4jP.js} | 2 +- ...ocsToc.PfHxU9at.js => DocsToc.ahcS4zzc.js} | 2 +- ...s.9MUhhUzY.js => DocsTocLinks.n_8BwfoV.js} | 2 +- ...uCj.js => DocumentDrivenEmpty.-WgfKx9h.js} | 2 +- ....js => DocumentDrivenNotFound.EW4TuDtB.js} | 2 +- _nuxt/EditOnLink.Am6BZK5o.js | 1 - _nuxt/EditOnLink.c1MbaT8y.js | 1 + ...ygqPpcZl.js => EditOnLink.vue.aDm18t_T.js} | 2 +- ...ipsis.flpaOiFy.js => Ellipsis.MWZY-yMY.js} | 2 +- ...conCSS.FVhw5sC8.js => IconCSS.mxCjQHSh.js} | 2 +- ...Z-QV741.js => IconCodeSandBox.JjBFbY0D.js} | 2 +- ...ocus.a4OyoZiK.js => IconDocus.ZKicOodD.js} | 2 +- ...nNuxt.GcwYnMUL.js => IconNuxt.zSFBKkBR.js} | 2 +- ...cwYnMUL.js => IconNuxtContent.zSFBKkBR.js} | 2 +- ...s.-k75stbx.js => IconNuxtLabs.TbnZSbTI.js} | 2 +- ...idr9sHr4.js => IconNuxtStudio.US0XkEUX.js} | 2 +- ...S2MfOnZJ.js => IconStackBlitz.Ti8Oiwdd.js} | 2 +- ...NU1tC6.js => IconVueTelescope.hijrETea.js} | 2 +- ...Demo.T7S8AmOE.js => IndexDemo.D_WynMN1.js} | 2 +- _nuxt/{List.S2mTRTab.js => List.X_fwvQfv.js} | 2 +- ...DCSlot.AOMUK9gf.js => MDCSlot.GLK9dOCB.js} | 2 +- _nuxt/Markdown.2dGs1H5r.js | 1 - _nuxt/Markdown.yuQLeeRs.js | 1 + ...ermaid.gkHdzvQG.js => Mermaid.kZxDpbbn.js} | 2 +- _nuxt/NuxtImg.U2vgguSn.js | 1 + _nuxt/NuxtImg.hV9pQHiq.js | 1 - ...ue.XitBA6AI.js => NuxtImg.vue.5zIl8PSO.js} | 2 +- ....Z_o72kN9.js => PreviewLayout.nAhreDSz.js} | 2 +- ....FCsViibh.js => PrimaryButton.3_DqpC_5.js} | 2 +- .../{Props.nUFwBsHm.js => Props.Yj9DgxsP.js} | 2 +- ...{ProseA.SwYyso4K.js => ProseA.OLhUCis1.js} | 2 +- ...juFzBWN.js => ProseBlockquote.nZcc5AiU.js} | 2 +- ...Code.I5U9uYQg.js => ProseCode.QKV6Fi3g.js} | 2 +- ...c8XXj9h.js => ProseCodeInline.nA1Kl2E3.js} | 2 +- ...roseEm.HSjpDM1n.js => ProseEm.XnUqj1mE.js} | 2 +- ...roseH1.HLcc66Rk.js => ProseH1.NoOkX9zJ.js} | 2 +- ...roseH2.uTSq3jPw.js => ProseH2.tWfneQ31.js} | 2 +- ...roseH3.b9Z2n1jz.js => ProseH3.OGmXOyf8.js} | 2 +- ...roseH4.vQBbqPgA.js => ProseH4.-m8eDGJi.js} | 2 +- ...roseH5.1HvbYaY9.js => ProseH5.V4b62H9u.js} | 2 +- ...roseH6.GpC4Gjjm.js => ProseH6.VstdmaUv.js} | 2 +- ...roseHr.yKV-ZC33.js => ProseHr.H5PQSAnt.js} | 2 +- ...seImg.y-BO5YTd.js => ProseImg.FhApv7Iv.js} | 2 +- ...roseLi.Vche_mwx.js => ProseLi.OVgRJVLF.js} | 2 +- ...roseOl.4SPj-qY8.js => ProseOl.vw7kQ1Lt.js} | 2 +- ...{ProseP.fE1xZC7w.js => ProseP.nG8WPuIi.js} | 2 +- ...sePre.m8am0nAB.js => ProsePre.vvEkmDus.js} | 2 +- ...ng.tNX6QKcF.js => ProseStrong.0e10zWIZ.js} | 2 +- ...ble.ye_FMdG5.js => ProseTable.vzNeH6Ay.js} | 2 +- ...ody.hZ4KuiN9.js => ProseTbody.NjmcGONp.js} | 2 +- ...roseTd.tYMvDBoc.js => ProseTd.5432dWNq.js} | 2 +- ...roseTh.Gp788PyL.js => ProseTh.Ip6941yd.js} | 2 +- ...ead.M6kiSErj.js => ProseThead.EEzaUJfp.js} | 2 +- ...roseTr.MziQFWhf.js => ProseTr._3o2EPc3.js} | 2 +- ...roseUl.GQ-g_JfG.js => ProseUl.XjDMb_cD.js} | 2 +- ...andbox.kzho3R6E.js => Sandbox.qG8woWRb.js} | 2 +- _nuxt/SourceLink.jxi0GOSi.js | 1 - _nuxt/SourceLink.vIxZlUnx.js | 1 + ...der.aoUmep7C.js => TabsHeader.p2gr41k7.js} | 2 +- ...minal.qDAZlX-Q.js => Terminal.ioBbO3yw.js} | 2 +- _nuxt/ThemeButton.1RrkhdJY.js | 1 + _nuxt/ThemeButton.eXbhwXzf.js | 1 - ...VGC5WYd.js => ThemeButton.vue.h40yM2hQ.js} | 2 +- ...ojWGG-.js => TokensPlayground.haxm6ye7.js} | 2 +- ...4p8.js => VeeValidateCheckbox.IqFUqOlv.js} | 2 +- ...9P.js => VeeValidateInvisible.5mThLuVF.js} | 2 +- ...er.nlPS_y-m.js => VideoPlayer.f-8bQb4l.js} | 2 +- ...ard.zjodTpgW.js => VoltaBoard.eNwT8-SJ.js} | 2 +- _nuxt/{arc.flIDfKC7.js => arc.kghs0U58.js} | 2 +- _nuxt/builds/latest.json | 2 +- .../3f717189-55ef-42ac-b745-955bd3939c4d.json | 1 + .../51da5e00-e6ef-48ae-b22a-db8c4398e774.json | 1 - ...7vYn.js => c4Diagram-817c8e44.wHCOifDg.js} | 2 +- ...5.js => classDiagram-48ab76fb.IXDIkmEp.js} | 2 +- ...s => classDiagram-v2-8ecb0bfc.eoEwq_qQ.js} | 2 +- ...t-db.pr2ddds2.js => client-db.4GqS-Rxy.js} | 2 +- ...2.a5wbyfd6.js => component-v2.AWWRLQbf.js} | 2 +- ...TCr.js => createText-aebacdfe.QPUQ3eAz.js} | 2 +- _nuxt/default.-lrvMl34.js | 1 - _nuxt/default.1eR79Hk0.js | 1 + ...w2jjxcZ.js => document-driven.QQDA_Gni.js} | 2 +- ...h90W1bSR.js => edges-80f1ebb6.gtortKGL.js} | 2 +- .../{entry.TEDHt2QA.js => entry.2w2g1VWZ.js} | 16 +-- ...qirZ.js => erDiagram-9cfc3649.yGBXaBAo.js} | 2 +- ...-404.Pmhd83su.js => error-404.M1fPf1Ez.js} | 2 +- ...-500.B-BWyDcD.js => error-500.o61tCZ3Q.js} | 2 +- ...q8ih4By.js => flowDb-170db09d.zcb_9fvH.js} | 2 +- ...PZ.js => flowDiagram-61eb444c.8YXXN8fx.js} | 2 +- _nuxt/flowDiagram-v2-2f8f667a.ExBBvo5t.js | 1 + _nuxt/flowDiagram-v2-2f8f667a.ToNiPqRe.js | 1 - ...chart-elk-definition-e097735e.Fftys7wX.js} | 2 +- ...g.js => ganttDiagram-db6931fb.epajDFpi.js} | 2 +- ...s => gitGraphDiagram-6b463803.AWiJsDP2.js} | 2 +- ...xm4RvesR.js => index-67a42d7d.k58ohfnG.js} | 2 +- .../{index.devlPsl3.js => index.OaNwcZ7q.js} | 2 +- ....esm.Trgrr3QY.js => index.esm.VSbdGIoo.js} | 2 +- ...Ul.js => infoDiagram-a336098b.RVDuPuO8.js} | 2 +- ...js => journeyDiagram-deae3313.2mgkPFCP.js} | 2 +- ...{layout.cBG5TzxH.js => layout.v3y_H6P2.js} | 2 +- _nuxt/{line.yVnlcbB_.js => line.uArpYtMu.js} | 2 +- ...{linear.vSTMcYPd.js => linear.znFunSuN.js} | 2 +- ...Cu814R.js => mermaid-934d9bea.JP-6_YN_.js} | 8 +- ...> mindmap-definition-617cf8dd.Lp42xUpv.js} | 2 +- _nuxt/{page.SQcsTZUr.js => page.6f8lq27m.js} | 2 +- ...6bg.js => pieDiagram-a5166659.mSSO3U9_.js} | 2 +- ...s => quadrantDiagram-6c355bbc.Z0DFXh7Q.js} | 2 +- ...> requirementDiagram-4038b16c.19aSfqcm.js} | 2 +- ....js => sankeyDiagram-6db3d513.jZmDBXiW.js} | 2 +- ...s => sequenceDiagram-465a088a.8KDelGu_.js} | 2 +- ...U.js => stateDiagram-b620d43f.cfadEOEs.js} | 2 +- ...s => stateDiagram-v2-2671c3d1.mHpKQIIc.js} | 2 +- ...A2HbVXa.js => styles-4ba6ed67.oBMPGM8a.js} | 2 +- ...jxwHMVL.js => styles-b966c4ae.XG1tK9wD.js} | 2 +- ...MtlFjLb.js => styles-bbc3fe3b.uGyWsvZU.js} | 2 +- ....js => svgDrawCommon-ad5ef572.X8xX495e.js} | 2 +- ... timeline-definition-732a2638.y_BGnUBk.js} | 2 +- ...udio.FJ3lfJLP.js => useStudio.x8TXSxM4.js} | 2 +- ...js => xychartDiagram-f746c04c.nQAhD605.js} | 2 +- _payload.json | 2 +- .../_payload.json | 2 +- .../index.html | 68 +++++------ ...02799570.json => cache.1704383405884.json} | 2 +- ...570.json => u7BbTyuhiE.1704383405884.json} | 0 ...570.json => 5o97oNYApY.1704383405884.json} | 0 ...570.json => 6Ma98zDOAL.1704383405884.json} | 0 ...570.json => 71x6tI7TZ6.1704383405884.json} | 0 ...570.json => 7iVMcekoeE.1704383405884.json} | 0 ...570.json => M3XVXw3HJU.1704383405884.json} | 0 ...570.json => MNRZfjwhUr.1704383405884.json} | 0 ...570.json => RR98Iqj5nh.1704383405884.json} | 0 ...570.json => SeoqWQG0fS.1704383405884.json} | 0 ...570.json => T9GHEEsuxc.1704383405884.json} | 0 ...570.json => TdqgdZYwVh.1704383405884.json} | 0 ...570.json => a9mJ5sb0Ut.1704383405884.json} | 0 ...570.json => brX4CwCJoQ.1704383405884.json} | 0 ...570.json => cYHfkdXNA9.1704383405884.json} | 0 ...570.json => cwi4DXcuTN.1704383405884.json} | 0 ...570.json => enlVh97sWo.1704383405884.json} | 0 ...570.json => ilY3438huT.1704383405884.json} | 0 ...570.json => llVwSUGQ8t.1704383405884.json} | 0 ...570.json => nEtvTjdOht.1704383405884.json} | 0 ...570.json => nkLpzwYCmw.1704383405884.json} | 0 ...570.json => o37MdY9M7h.1704383405884.json} | 0 ...570.json => qD1kmuf7LZ.1704383405884.json} | 0 ...570.json => qI1iJDV4vv.1704383405884.json} | 0 ...570.json => qIaVkSSVbL.1704383405884.json} | 0 ...570.json => s1rpjBKntu.1704383405884.json} | 0 ...570.json => udG4RswcBp.1704383405884.json} | 0 ...570.json => wrDfznErw4.1704383405884.json} | 0 ...570.json => xIJVJksIkT.1704383405884.json} | 0 ...570.json => xWeY3NfYtX.1704383405884.json} | 0 ...570.json => y5OZXjriWq.1704383405884.json} | 0 ...570.json => zlYjVpH9OK.1704383405884.json} | 0 components/_payload.json | 2 +- components/challenge-v2/_payload.json | 2 +- components/challenge-v2/index.html | 106 +++++++++--------- components/challenge-v3/_payload.json | 2 +- components/challenge-v3/index.html | 102 ++++++++--------- components/checkbox/_payload.json | 2 +- components/checkbox/index.html | 104 ++++++++--------- components/index.html | 82 +++++++------- composables/challenge-v2/_payload.json | 2 +- composables/challenge-v2/index.html | 72 ++++++------ composables/challenge-v3/_payload.json | 2 +- composables/challenge-v3/index.html | 74 ++++++------ composables/recaptcha-provider/_payload.json | 2 +- composables/recaptcha-provider/index.html | 66 +++++------ guide/_payload.json | 2 +- guide/enterprise/_payload.json | 2 +- guide/enterprise/index.html | 68 +++++------ guide/faq/_payload.json | 2 +- guide/faq/index.html | 64 +++++------ guide/index.html | 80 ++++++------- guide/migration/_payload.json | 2 +- guide/migration/index.html | 68 +++++------ guide/nuxt/_payload.json | 2 +- guide/nuxt/index.html | 82 +++++++------- index.html | 88 +++++++-------- integration/vee-validation/_payload.json | 2 +- integration/vee-validation/index.html | 92 +++++++-------- 226 files changed, 819 insertions(+), 819 deletions(-) rename _nuxt/{Badge.SrXj_iIy.js => Badge.SouunExa.js} (68%) rename _nuxt/{BlockHero.poWu1pY1.js => BlockHero.iMe1gqpW.js} (85%) rename _nuxt/{ButtonLink.KvhTbcIS.js => ButtonLink.zZVq8ThH.js} (91%) rename _nuxt/{Callout.j9rHm2NJ.js => Callout.hSu6Wdkf.js} (92%) rename _nuxt/{Card.L9sNeYTi.js => Card.BzG3yGUC.js} (89%) rename _nuxt/{CardGrid.0MuI_gyy.js => CardGrid.rxd_hY7g.js} (87%) delete mode 100644 _nuxt/ChallengeV2.kmo3670I.js rename _nuxt/{ChallengeV2.vue.VhWqa73j.js => ChallengeV2.vue.MiUOdAxt.js} (85%) create mode 100644 _nuxt/ChallengeV2.x2DxOGgI.js rename _nuxt/{ChallengeV2Demo.MOrg3CNM.js => ChallengeV2Demo.gPrqhMW4.js} (54%) create mode 100644 _nuxt/ChallengeV3.-HLbHbHP.js delete mode 100644 _nuxt/ChallengeV3.BHTEn9Jm.js rename _nuxt/{ChallengeV3.vue.jUQOIvrh.js => ChallengeV3.vue.NIw8SbQz.js} (82%) rename _nuxt/{ChallengeV3Demo.11DElVUe.js => ChallengeV3Demo.nkgdJny3.js} (56%) create mode 100644 _nuxt/Checkbox.MRQtbkdP.js delete mode 100644 _nuxt/Checkbox.rmToST7V.js rename _nuxt/{Checkbox.vue.zE85wFil.js => Checkbox.vue.7dAWGJOj.js} (75%) rename _nuxt/{CheckboxDemo.wwPeTTHd.js => CheckboxDemo.iQsxuYOJ.js} (57%) rename _nuxt/{CodeBlock.H5YRz7mE.js => CodeBlock.Lugc7cba.js} (69%) rename _nuxt/{CodeGroup.kKhKszRR.js => CodeGroup.21lmZNJJ.js} (88%) rename _nuxt/{ComponentPlayground.GvB8FG5c.js => ComponentPlayground.G5gJQDAu.js} (85%) rename _nuxt/{ComponentPlaygroundData.x5WYuf11.js => ComponentPlaygroundData.P9Det-rH.js} (63%) rename _nuxt/{ComponentPlaygroundProps.eS1hVNDa.js => ComponentPlaygroundProps.eqJy9Iq7.js} (81%) delete mode 100644 _nuxt/ComponentPlaygroundSlots.8zrZ057N.js create mode 100644 _nuxt/ComponentPlaygroundSlots.r9v7_SJ5.js rename _nuxt/{ComponentPlaygroundSlots.vue.hwYCvpaN.js => ComponentPlaygroundSlots.vue.-pfk4FaA.js} (80%) create mode 100644 _nuxt/ComponentPlaygroundTokens.hYqZwbxt.js delete mode 100644 _nuxt/ComponentPlaygroundTokens.sTl3HQTK.js rename _nuxt/{ComponentPlaygroundTokens.vue.x-4LJTSf.js => ComponentPlaygroundTokens.vue.IQ2_8fNI.js} (77%) rename _nuxt/{ContentDoc.XNEVUcvJ.js => ContentDoc.VH_Hky9p.js} (86%) rename _nuxt/{ContentList.iLZmbKSm.js => ContentList.YCunzPlS.js} (84%) rename _nuxt/{ContentNavigation.fgixFeAY.js => ContentNavigation.9YnVdsDD.js} (92%) rename _nuxt/{ContentQuery.poDPsyGM.js => ContentQuery.QtvwtBx0.js} (97%) rename _nuxt/{ContentRenderer.hmnD5r_q.js => ContentRenderer.M--L_q55.js} (89%) create mode 100644 _nuxt/ContentRendererMarkdown.SeLRvQWx.js delete mode 100644 _nuxt/ContentRendererMarkdown.WM_fk24R.js rename _nuxt/{ContentRendererMarkdown.vue.JkbsKsif.js => ContentRendererMarkdown.vue.ILa9pIED.js} (99%) create mode 100644 _nuxt/ContentSlot.KD4hNNCp.js delete mode 100644 _nuxt/ContentSlot.hAjWUk8S.js rename _nuxt/{CopyButton.8nJ4x1BV.js => CopyButton.HioSLVCt.js} (90%) rename _nuxt/{DocsAside.J9UiIJmE.js => DocsAside.J1JT7aj-.js} (89%) rename _nuxt/{DocsPageBottom.GLnnhrEg.js => DocsPageBottom.xF3M7Xuf.js} (87%) rename _nuxt/{DocsPageLayout.uxgc1_kz.js => DocsPageLayout.soTR2NFE.js} (85%) rename _nuxt/{DocsPrevNext.4e5rRBAE.js => DocsPrevNext.NyR6m4jP.js} (95%) rename _nuxt/{DocsToc.PfHxU9at.js => DocsToc.ahcS4zzc.js} (80%) rename _nuxt/{DocsTocLinks.9MUhhUzY.js => DocsTocLinks.n_8BwfoV.js} (96%) rename _nuxt/{DocumentDrivenEmpty.uAjfpuCj.js => DocumentDrivenEmpty.-WgfKx9h.js} (77%) rename _nuxt/{DocumentDrivenNotFound.xfb8EcE2.js => DocumentDrivenNotFound.EW4TuDtB.js} (81%) delete mode 100644 _nuxt/EditOnLink.Am6BZK5o.js create mode 100644 _nuxt/EditOnLink.c1MbaT8y.js rename _nuxt/{EditOnLink.vue.ygqPpcZl.js => EditOnLink.vue.aDm18t_T.js} (94%) rename _nuxt/{Ellipsis.flpaOiFy.js => Ellipsis.MWZY-yMY.js} (95%) rename _nuxt/{IconCSS.FVhw5sC8.js => IconCSS.mxCjQHSh.js} (92%) rename _nuxt/{IconCodeSandBox.iZ-QV741.js => IconCodeSandBox.JjBFbY0D.js} (85%) rename _nuxt/{IconDocus.a4OyoZiK.js => IconDocus.ZKicOodD.js} (91%) rename _nuxt/{IconNuxt.GcwYnMUL.js => IconNuxt.zSFBKkBR.js} (94%) rename _nuxt/{IconNuxtContent.GcwYnMUL.js => IconNuxtContent.zSFBKkBR.js} (94%) rename _nuxt/{IconNuxtLabs.-k75stbx.js => IconNuxtLabs.TbnZSbTI.js} (94%) rename _nuxt/{IconNuxtStudio.idr9sHr4.js => IconNuxtStudio.US0XkEUX.js} (89%) rename _nuxt/{IconStackBlitz.S2MfOnZJ.js => IconStackBlitz.Ti8Oiwdd.js} (82%) rename _nuxt/{IconVueTelescope.ETNU1tC6.js => IconVueTelescope.hijrETea.js} (91%) rename _nuxt/{IndexDemo.T7S8AmOE.js => IndexDemo.D_WynMN1.js} (75%) rename _nuxt/{List.S2mTRTab.js => List.X_fwvQfv.js} (92%) rename _nuxt/{MDCSlot.AOMUK9gf.js => MDCSlot.GLK9dOCB.js} (91%) delete mode 100644 _nuxt/Markdown.2dGs1H5r.js create mode 100644 _nuxt/Markdown.yuQLeeRs.js rename _nuxt/{Mermaid.gkHdzvQG.js => Mermaid.kZxDpbbn.js} (75%) create mode 100644 _nuxt/NuxtImg.U2vgguSn.js delete mode 100644 _nuxt/NuxtImg.hV9pQHiq.js rename _nuxt/{NuxtImg.vue.XitBA6AI.js => NuxtImg.vue.5zIl8PSO.js} (89%) rename _nuxt/{PreviewLayout.Z_o72kN9.js => PreviewLayout.nAhreDSz.js} (75%) rename _nuxt/{PrimaryButton.FCsViibh.js => PrimaryButton.3_DqpC_5.js} (75%) rename _nuxt/{Props.nUFwBsHm.js => Props.Yj9DgxsP.js} (87%) rename _nuxt/{ProseA.SwYyso4K.js => ProseA.OLhUCis1.js} (84%) rename _nuxt/{ProseBlockquote.TjuFzBWN.js => ProseBlockquote.nZcc5AiU.js} (73%) rename _nuxt/{ProseCode.I5U9uYQg.js => ProseCode.QKV6Fi3g.js} (96%) rename _nuxt/{ProseCodeInline.sc8XXj9h.js => ProseCodeInline.nA1Kl2E3.js} (72%) rename _nuxt/{ProseEm.HSjpDM1n.js => ProseEm.XnUqj1mE.js} (72%) rename _nuxt/{ProseH1.HLcc66Rk.js => ProseH1.NoOkX9zJ.js} (91%) rename _nuxt/{ProseH2.uTSq3jPw.js => ProseH2.tWfneQ31.js} (91%) rename _nuxt/{ProseH3.b9Z2n1jz.js => ProseH3.OGmXOyf8.js} (91%) rename _nuxt/{ProseH4.vQBbqPgA.js => ProseH4.-m8eDGJi.js} (91%) rename _nuxt/{ProseH5.1HvbYaY9.js => ProseH5.V4b62H9u.js} (91%) rename _nuxt/{ProseH6.GpC4Gjjm.js => ProseH6.VstdmaUv.js} (91%) rename _nuxt/{ProseHr.yKV-ZC33.js => ProseHr.H5PQSAnt.js} (64%) rename _nuxt/{ProseImg.y-BO5YTd.js => ProseImg.FhApv7Iv.js} (89%) rename _nuxt/{ProseLi.Vche_mwx.js => ProseLi.OVgRJVLF.js} (72%) rename _nuxt/{ProseOl.4SPj-qY8.js => ProseOl.vw7kQ1Lt.js} (72%) rename _nuxt/{ProseP.fE1xZC7w.js => ProseP.nG8WPuIi.js} (72%) rename _nuxt/{ProsePre.m8am0nAB.js => ProsePre.vvEkmDus.js} (82%) rename _nuxt/{ProseStrong.tNX6QKcF.js => ProseStrong.0e10zWIZ.js} (72%) rename _nuxt/{ProseTable.ye_FMdG5.js => ProseTable.vzNeH6Ay.js} (77%) rename _nuxt/{ProseTbody.hZ4KuiN9.js => ProseTbody.NjmcGONp.js} (66%) rename _nuxt/{ProseTd.tYMvDBoc.js => ProseTd.5432dWNq.js} (71%) rename _nuxt/{ProseTh.Gp788PyL.js => ProseTh.Ip6941yd.js} (72%) rename _nuxt/{ProseThead.M6kiSErj.js => ProseThead.EEzaUJfp.js} (72%) rename _nuxt/{ProseTr.MziQFWhf.js => ProseTr._3o2EPc3.js} (72%) rename _nuxt/{ProseUl.GQ-g_JfG.js => ProseUl.XjDMb_cD.js} (72%) rename _nuxt/{Sandbox.kzho3R6E.js => Sandbox.qG8woWRb.js} (91%) delete mode 100644 _nuxt/SourceLink.jxi0GOSi.js create mode 100644 _nuxt/SourceLink.vIxZlUnx.js rename _nuxt/{TabsHeader.aoUmep7C.js => TabsHeader.p2gr41k7.js} (94%) rename _nuxt/{Terminal.qDAZlX-Q.js => Terminal.ioBbO3yw.js} (89%) create mode 100644 _nuxt/ThemeButton.1RrkhdJY.js delete mode 100644 _nuxt/ThemeButton.eXbhwXzf.js rename _nuxt/{ThemeButton.vue.QVGC5WYd.js => ThemeButton.vue.h40yM2hQ.js} (87%) rename _nuxt/{TokensPlayground.TsojWGG-.js => TokensPlayground.haxm6ye7.js} (74%) rename _nuxt/{VeeValidateCheckbox.yTMsd4p8.js => VeeValidateCheckbox.IqFUqOlv.js} (75%) rename _nuxt/{VeeValidateInvisible.ctyKsI9P.js => VeeValidateInvisible.5mThLuVF.js} (74%) rename _nuxt/{VideoPlayer.nlPS_y-m.js => VideoPlayer.f-8bQb4l.js} (93%) rename _nuxt/{VoltaBoard.zjodTpgW.js => VoltaBoard.eNwT8-SJ.js} (78%) rename _nuxt/{arc.flIDfKC7.js => arc.kghs0U58.js} (96%) create mode 100644 _nuxt/builds/meta/3f717189-55ef-42ac-b745-955bd3939c4d.json delete mode 100644 _nuxt/builds/meta/51da5e00-e6ef-48ae-b22a-db8c4398e774.json rename _nuxt/{c4Diagram-817c8e44.vJjV7vYn.js => c4Diagram-817c8e44.wHCOifDg.js} (99%) rename _nuxt/{classDiagram-48ab76fb.5c6TuKe5.js => classDiagram-48ab76fb.IXDIkmEp.js} (97%) rename _nuxt/{classDiagram-v2-8ecb0bfc.5G0StPuQ.js => classDiagram-v2-8ecb0bfc.eoEwq_qQ.js} (92%) rename _nuxt/{client-db.pr2ddds2.js => client-db.4GqS-Rxy.js} (99%) rename _nuxt/{component-v2.a5wbyfd6.js => component-v2.AWWRLQbf.js} (90%) rename _nuxt/{createText-aebacdfe.b7sMoTCr.js => createText-aebacdfe.QPUQ3eAz.js} (99%) delete mode 100644 _nuxt/default.-lrvMl34.js create mode 100644 _nuxt/default.1eR79Hk0.js rename _nuxt/{document-driven.ww2jjxcZ.js => document-driven.QQDA_Gni.js} (85%) rename _nuxt/{edges-80f1ebb6.h90W1bSR.js => edges-80f1ebb6.gtortKGL.js} (99%) rename _nuxt/{entry.TEDHt2QA.js => entry.2w2g1VWZ.js} (57%) rename _nuxt/{erDiagram-9cfc3649.ybN3qirZ.js => erDiagram-9cfc3649.yGBXaBAo.js} (99%) rename _nuxt/{error-404.Pmhd83su.js => error-404.M1fPf1Ez.js} (97%) rename _nuxt/{error-500.B-BWyDcD.js => error-500.o61tCZ3Q.js} (96%) rename _nuxt/{flowDb-170db09d.Pq8ih4By.js => flowDb-170db09d.zcb_9fvH.js} (99%) rename _nuxt/{flowDiagram-61eb444c.aopSxhPZ.js => flowDiagram-61eb444c.8YXXN8fx.js} (97%) create mode 100644 _nuxt/flowDiagram-v2-2f8f667a.ExBBvo5t.js delete mode 100644 _nuxt/flowDiagram-v2-2f8f667a.ToNiPqRe.js rename _nuxt/{flowchart-elk-definition-e097735e.HZ7cBKko.js => flowchart-elk-definition-e097735e.Fftys7wX.js} (99%) rename _nuxt/{ganttDiagram-db6931fb.ot2isyFg.js => ganttDiagram-db6931fb.epajDFpi.js} (99%) rename _nuxt/{gitGraphDiagram-6b463803.hIPJn7TU.js => gitGraphDiagram-6b463803.AWiJsDP2.js} (99%) rename _nuxt/{index-67a42d7d.xm4RvesR.js => index-67a42d7d.k58ohfnG.js} (97%) rename _nuxt/{index.devlPsl3.js => index.OaNwcZ7q.js} (89%) rename _nuxt/{index.esm.Trgrr3QY.js => index.esm.VSbdGIoo.js} (99%) rename _nuxt/{infoDiagram-a336098b.Wd5ZJWUl.js => infoDiagram-a336098b.RVDuPuO8.js} (98%) rename _nuxt/{journeyDiagram-deae3313.TSLs3n0V.js => journeyDiagram-deae3313.2mgkPFCP.js} (98%) rename _nuxt/{layout.cBG5TzxH.js => layout.v3y_H6P2.js} (99%) rename _nuxt/{line.yVnlcbB_.js => line.uArpYtMu.js} (86%) rename _nuxt/{linear.vSTMcYPd.js => linear.znFunSuN.js} (99%) rename _nuxt/{mermaid-934d9bea.GjCu814R.js => mermaid-934d9bea.JP-6_YN_.js} (98%) rename _nuxt/{mindmap-definition-617cf8dd.0-YEhKQm.js => mindmap-definition-617cf8dd.Lp42xUpv.js} (99%) rename _nuxt/{page.SQcsTZUr.js => page.6f8lq27m.js} (90%) rename _nuxt/{pieDiagram-a5166659.vvnns6bg.js => pieDiagram-a5166659.mSSO3U9_.js} (98%) rename _nuxt/{quadrantDiagram-6c355bbc.KS07axX9.js => quadrantDiagram-6c355bbc.Z0DFXh7Q.js} (99%) rename _nuxt/{requirementDiagram-4038b16c.0PbzK17N.js => requirementDiagram-4038b16c.19aSfqcm.js} (99%) rename _nuxt/{sankeyDiagram-6db3d513.6LfS3rRU.js => sankeyDiagram-6db3d513.jZmDBXiW.js} (99%) rename _nuxt/{sequenceDiagram-465a088a.d3gG14vX.js => sequenceDiagram-465a088a.8KDelGu_.js} (99%) rename _nuxt/{stateDiagram-b620d43f.f7RfdstU.js => stateDiagram-b620d43f.cfadEOEs.js} (97%) rename _nuxt/{stateDiagram-v2-2671c3d1.QaAPyhc0.js => stateDiagram-v2-2671c3d1.mHpKQIIc.js} (92%) rename _nuxt/{styles-4ba6ed67.fA2HbVXa.js => styles-4ba6ed67.oBMPGM8a.js} (99%) rename _nuxt/{styles-b966c4ae.IjxwHMVL.js => styles-b966c4ae.XG1tK9wD.js} (98%) rename _nuxt/{styles-bbc3fe3b.3MtlFjLb.js => styles-bbc3fe3b.uGyWsvZU.js} (99%) rename _nuxt/{svgDrawCommon-ad5ef572.up_fh1Ps.js => svgDrawCommon-ad5ef572.X8xX495e.js} (95%) rename _nuxt/{timeline-definition-732a2638.ldnpttiB.js => timeline-definition-732a2638.y_BGnUBk.js} (99%) rename _nuxt/{useStudio.FJ3lfJLP.js => useStudio.x8TXSxM4.js} (99%) rename _nuxt/{xychartDiagram-f746c04c.1ExPLvQf.js => xychartDiagram-f746c04c.nQAhD605.js} (99%) rename api/_content/{cache.1704302799570.json => cache.1704383405884.json} (99%) rename api/_content/navigation/{u7BbTyuhiE.1704302799570.json => u7BbTyuhiE.1704383405884.json} (100%) rename api/_content/query/{5o97oNYApY.1704302799570.json => 5o97oNYApY.1704383405884.json} (100%) rename api/_content/query/{6Ma98zDOAL.1704302799570.json => 6Ma98zDOAL.1704383405884.json} (100%) rename api/_content/query/{71x6tI7TZ6.1704302799570.json => 71x6tI7TZ6.1704383405884.json} (100%) rename api/_content/query/{7iVMcekoeE.1704302799570.json => 7iVMcekoeE.1704383405884.json} (100%) rename api/_content/query/{M3XVXw3HJU.1704302799570.json => M3XVXw3HJU.1704383405884.json} (100%) rename api/_content/query/{MNRZfjwhUr.1704302799570.json => MNRZfjwhUr.1704383405884.json} (100%) rename api/_content/query/{RR98Iqj5nh.1704302799570.json => RR98Iqj5nh.1704383405884.json} (100%) rename api/_content/query/{SeoqWQG0fS.1704302799570.json => SeoqWQG0fS.1704383405884.json} (100%) rename api/_content/query/{T9GHEEsuxc.1704302799570.json => T9GHEEsuxc.1704383405884.json} (100%) rename api/_content/query/{TdqgdZYwVh.1704302799570.json => TdqgdZYwVh.1704383405884.json} (100%) rename api/_content/query/{a9mJ5sb0Ut.1704302799570.json => a9mJ5sb0Ut.1704383405884.json} (100%) rename api/_content/query/{brX4CwCJoQ.1704302799570.json => brX4CwCJoQ.1704383405884.json} (100%) rename api/_content/query/{cYHfkdXNA9.1704302799570.json => cYHfkdXNA9.1704383405884.json} (100%) rename api/_content/query/{cwi4DXcuTN.1704302799570.json => cwi4DXcuTN.1704383405884.json} (100%) rename api/_content/query/{enlVh97sWo.1704302799570.json => enlVh97sWo.1704383405884.json} (100%) rename api/_content/query/{ilY3438huT.1704302799570.json => ilY3438huT.1704383405884.json} (100%) rename api/_content/query/{llVwSUGQ8t.1704302799570.json => llVwSUGQ8t.1704383405884.json} (100%) rename api/_content/query/{nEtvTjdOht.1704302799570.json => nEtvTjdOht.1704383405884.json} (100%) rename api/_content/query/{nkLpzwYCmw.1704302799570.json => nkLpzwYCmw.1704383405884.json} (100%) rename api/_content/query/{o37MdY9M7h.1704302799570.json => o37MdY9M7h.1704383405884.json} (100%) rename api/_content/query/{qD1kmuf7LZ.1704302799570.json => qD1kmuf7LZ.1704383405884.json} (100%) rename api/_content/query/{qI1iJDV4vv.1704302799570.json => qI1iJDV4vv.1704383405884.json} (100%) rename api/_content/query/{qIaVkSSVbL.1704302799570.json => qIaVkSSVbL.1704383405884.json} (100%) rename api/_content/query/{s1rpjBKntu.1704302799570.json => s1rpjBKntu.1704383405884.json} (100%) rename api/_content/query/{udG4RswcBp.1704302799570.json => udG4RswcBp.1704383405884.json} (100%) rename api/_content/query/{wrDfznErw4.1704302799570.json => wrDfznErw4.1704383405884.json} (100%) rename api/_content/query/{xIJVJksIkT.1704302799570.json => xIJVJksIkT.1704383405884.json} (100%) rename api/_content/query/{xWeY3NfYtX.1704302799570.json => xWeY3NfYtX.1704383405884.json} (100%) rename api/_content/query/{y5OZXjriWq.1704302799570.json => y5OZXjriWq.1704383405884.json} (100%) rename api/_content/query/{zlYjVpH9OK.1704302799570.json => zlYjVpH9OK.1704383405884.json} (100%) diff --git a/200.html b/200.html index 8d4fddaab0..3da77fd88e 100644 --- a/200.html +++ b/200.html @@ -3,7 +3,7 @@ - + @@ -12,29 +12,29 @@ - - - - - - - - - - - + + + + + + + + + + + - - + + - + - + - -
- + \ No newline at end of file diff --git a/404.html b/404.html index 8d4fddaab0..3da77fd88e 100644 --- a/404.html +++ b/404.html @@ -3,7 +3,7 @@ - + @@ -12,29 +12,29 @@ - - - - - - - - - - - + + + + + + + + + + + - - + + - + - + - -
- + \ No newline at end of file diff --git a/__studio.json b/__studio.json index 9f33519387..aad9a29aaf 100644 --- a/__studio.json +++ b/__studio.json @@ -1 +1 @@ -{"version":"1.0.0","tokens":"","appConfigSchema":{"properties":{"id":"#appConfig","properties":{"nuxtIcon":{"title":"Nuxt Icon","description":"Configure the defaults of Nuxt Icon","id":"#appConfig/nuxtIcon","properties":{"size":{"title":"Icon Size","description":"Set the default icon size. Set to false to disable the sizing of icon in style.","tags":["@studioIcon material-symbols:format-size-rounded"],"tsType":"string | false","id":"#appConfig/nuxtIcon/size","default":"1em","type":"string"},"class":{"title":"CSS Class","description":"Set the default CSS class","tags":["@studioIcon material-symbols:css"],"id":"#appConfig/nuxtIcon/class","default":"","type":"string"},"aliases":{"title":"Icon aliases","description":"Define Icon aliases to update them easily without code changes.","tags":["@studioIcon material-symbols:star-rounded","@studioInputObjectValueType icon"],"tsType":"{ [alias: string]: string }","id":"#appConfig/nuxtIcon/aliases","default":{},"type":"object"}},"type":"object","default":{"size":"1em","class":"","aliases":{}}},"prose":{"title":"","description":"","tags":[],"id":"#appConfig/prose","properties":{"copyButton":{"title":"","description":"","tags":[],"id":"#appConfig/prose/copyButton","properties":{"iconCopy":{"title":"","description":"","tags":[],"id":"#appConfig/prose/copyButton/iconCopy","default":"ph:copy","type":"string"},"iconCopied":{"title":"","description":"","tags":[],"id":"#appConfig/prose/copyButton/iconCopied","default":"ph:check","type":"string"}},"type":"object","default":{"iconCopy":"ph:copy","iconCopied":"ph:check"}},"headings":{"title":"","description":"","tags":[],"id":"#appConfig/prose/headings","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/headings/icon","default":"ph:link","type":"string"}},"type":"object","default":{"icon":"ph:link"}},"h1":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h1","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h1/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h2":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h2","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h2/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h3":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h3","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h3/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h4":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h4","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h4/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h5":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h5","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h5/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h6":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h6","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h6/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}}},"type":"object","default":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"},"h1":{"icon":""},"h2":{"icon":""},"h3":{"icon":""},"h4":{"icon":""},"h5":{"icon":""},"h6":{"icon":""}}},"docus":{"title":"","description":"","tags":[],"id":"#appConfig/docus","properties":{"title":{"title":"","description":"","tags":[],"id":"#appConfig/docus/title","default":"Docus","type":"string"},"titleTemplate":{"title":"","description":"","tags":[],"id":"#appConfig/docus/titleTemplate","default":"%s · Docus","type":"string"},"description":{"title":"","description":"","tags":[],"id":"#appConfig/docus/description","default":"The best place to start your documentation.","type":"string"},"image":{"title":"","description":"","tags":[],"id":"#appConfig/docus/image","default":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","type":"string"},"socials":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials","properties":{"twitter":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/twitter","default":"","type":"string"},"github":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/github","default":"","type":"string"},"facebook":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/facebook","default":"","type":"string"},"instagram":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/instagram","default":"","type":"string"},"tiktok":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/tiktok","default":"","type":"string"},"youtube":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/youtube","default":"","type":"string"},"medium":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/medium","default":"","type":"string"}},"type":"object","default":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""}},"layout":{"title":"","description":"","tags":[],"tsType":"'default'|'page'","id":"#appConfig/docus/layout","default":"default","type":"string"},"aside":{"title":"","description":"","tags":[],"id":"#appConfig/docus/aside","properties":{"level":{"title":"","description":"","tags":[],"id":"#appConfig/docus/aside/level","default":0,"type":"number"},"collapsed":{"title":"","description":"","tags":[],"id":"#appConfig/docus/aside/collapsed","default":false,"type":"boolean"},"exclude":{"title":"","description":"","tags":[],"tsType":"string[]","id":"#appConfig/docus/aside/exclude","default":[],"type":"array","items":{"type":"any"}}},"type":"object","default":{"level":0,"collapsed":false,"exclude":[]}},"header":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header","properties":{"title":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header/title","default":"","type":"string"},"logo":{"title":"","description":"","tags":[],"tsType":"boolean|string|{dark: string, light: string}","id":"#appConfig/docus/header/logo","default":false,"type":"boolean"},"showLinkIcon":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header/showLinkIcon","default":false,"type":"boolean"},"exclude":{"title":"","description":"","tags":[],"tsType":"string[]","id":"#appConfig/docus/header/exclude","default":[],"type":"array","items":{"type":"any"}},"fluid":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header/fluid","default":false,"type":"boolean"}},"type":"object","default":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false}},"main":{"title":"","description":"","tags":[],"id":"#appConfig/docus/main","properties":{"fluid":{"title":"","description":"","tags":[],"id":"#appConfig/docus/main/fluid","default":false,"type":"boolean"},"padded":{"title":"","description":"","tags":[],"id":"#appConfig/docus/main/padded","default":true,"type":"boolean"}},"type":"object","default":{"fluid":false,"padded":true}},"footer":{"title":"","description":"","tags":[],"id":"#appConfig/docus/footer","properties":{"credits":{"title":"","description":"","tags":[],"tsType":"false|{icon: string, text: string, href: string}","id":"#appConfig/docus/footer/credits","properties":{"icon":{"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/credits/icon","default":"IconDocus","type":"string"},"text":{"type":"string","id":"#appConfig/docus/footer/credits/text","default":"Powered by Docus"},"href":{"type":"string","id":"#appConfig/docus/footer/credits/href","default":"https://docus.dev"}},"type":"object","default":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"}},"textLinks":{"type":"array","items":{"type":"object","required":["text","href"],"properties":{"href":{"type":"string","description":"URL when clicking the link"},"text":{"type":"string","description":"Text of the link"},"target":{"type":"string","description":"Target attribute of the link"},"rel":{"type":"string","description":"Rel attribute of the link"}}},"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/textLinks"},"iconLinks":{"type":"array","items":{"type":"object","required":["icon","href"],"properties":{"icon":{"type":"string","description":"Icon name"},"href":{"type":"string","description":"Link when clicking on the icon"},"label":{"type":"string","description":"Label of the icon"},"rel":{"type":"string","description":"Rel attribute of the link"}}},"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/iconLinks"},"fluid":{"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/fluid","default":true,"type":"boolean"}},"type":"object","default":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true}},"github":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github","properties":{"baseUrl":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/baseUrl","default":"https://github.com","type":"string"},"dir":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/dir","default":"","type":"string"},"branch":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/branch","default":"","type":"string"},"repo":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/repo","default":"","type":"string"},"owner":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/owner","default":"","type":"string"},"edit":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/edit","default":false,"type":"boolean"}},"type":"object","default":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}},"type":"object","default":{"title":"Docus","titleTemplate":"%s · Docus","description":"The best place to start your documentation.","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""},"layout":"default","aside":{"level":0,"collapsed":false,"exclude":[]},"header":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false},"main":{"fluid":false,"padded":true},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true},"github":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}}},"type":"object","default":{"nuxtIcon":{"size":"1em","class":"","aliases":{}},"prose":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"},"h1":{"icon":""},"h2":{"icon":""},"h3":{"icon":""},"h4":{"icon":""},"h5":{"icon":""},"h6":{"icon":""}},"docus":{"title":"Docus","titleTemplate":"%s · Docus","description":"The best place to start your documentation.","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""},"layout":"default","aside":{"level":0,"collapsed":false,"exclude":[]},"header":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false},"main":{"fluid":false,"padded":true},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true},"github":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}}},"default":{"nuxtIcon":{"size":"1em","class":"","aliases":{}},"prose":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"},"h1":{"icon":""},"h2":{"icon":""},"h3":{"icon":""},"h4":{"icon":""},"h5":{"icon":""},"h6":{"icon":""}},"docus":{"title":"Docus","titleTemplate":"%s · Docus","description":"The best place to start your documentation.","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""},"layout":"default","aside":{"level":0,"collapsed":false,"exclude":[]},"header":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false},"main":{"fluid":false,"padded":true},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true},"github":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}}},"appConfig":{"nuxt":{"buildId":"51da5e00-e6ef-48ae-b22a-db8c4398e774"},"prose":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"}},"docus":{"title":"vue-recaptcha","description":"Document for vue-recaptcha","url":"https://dansnow.github.io/vue-recaptcha","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"github":"DanSnow/vue-recaptcha"},"layout":"default","header":{"title":"","logo":false,"showLinkIcon":false,"fluid":false,"exclude":[]},"aside":{"level":0,"collapsed":false,"exclude":[]},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"textLinks":[],"iconLinks":[],"fluid":false},"github":{"dir":"docs/content","branch":"v3","repo":"vue-recaptcha","owner":"DanSnow","edit":true}}},"tokensConfigSchema":{"properties":{"id":"#tokensConfig","properties":{"media":{"title":"Your website media queries.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon material-symbols:screenshot-monitor-outline-rounded"],"id":"#tokensConfig/media","properties":{"xs":{"id":"#tokensConfig/media/xs","properties":{"value":{"type":"string","id":"#tokensConfig/media/xs/value","default":"(min-width: 475px)"}},"type":"object","default":{"value":"(min-width: 475px)"}},"sm":{"id":"#tokensConfig/media/sm","properties":{"value":{"type":"string","id":"#tokensConfig/media/sm/value","default":"(min-width: 640px)"}},"type":"object","default":{"value":"(min-width: 640px)"}},"md":{"id":"#tokensConfig/media/md","properties":{"value":{"type":"string","id":"#tokensConfig/media/md/value","default":"(min-width: 768px)"}},"type":"object","default":{"value":"(min-width: 768px)"}},"lg":{"id":"#tokensConfig/media/lg","properties":{"value":{"type":"string","id":"#tokensConfig/media/lg/value","default":"(min-width: 1024px)"}},"type":"object","default":{"value":"(min-width: 1024px)"}},"xl":{"id":"#tokensConfig/media/xl","properties":{"value":{"type":"string","id":"#tokensConfig/media/xl/value","default":"(min-width: 1280px)"}},"type":"object","default":{"value":"(min-width: 1280px)"}},"2xl":{"id":"#tokensConfig/media/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/media/2xl/value","default":"(min-width: 1536px)"}},"type":"object","default":{"value":"(min-width: 1536px)"}},"rm":{"id":"#tokensConfig/media/rm","properties":{"value":{"type":"string","id":"#tokensConfig/media/rm/value","default":"(prefers-reduced-motion: reduce)"}},"type":"object","default":{"value":"(prefers-reduced-motion: reduce)"}},"landscape":{"id":"#tokensConfig/media/landscape","properties":{"value":{"type":"string","id":"#tokensConfig/media/landscape/value","default":"only screen and (orientation: landscape)"}},"type":"object","default":{"value":"only screen and (orientation: landscape)"}},"portrait":{"id":"#tokensConfig/media/portrait","properties":{"value":{"type":"string","id":"#tokensConfig/media/portrait/value","default":"only screen and (orientation: portrait)"}},"type":"object","default":{"value":"only screen and (orientation: portrait)"}}},"type":"object","default":{"xs":{"value":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)"}}},"color":{"title":"Your website color palette.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon ph:palette"],"id":"#tokensConfig/color","properties":{"white":{"id":"#tokensConfig/color/white","properties":{"value":{"type":"string","id":"#tokensConfig/color/white/value","default":"#ffffff"}},"type":"object","default":{"value":"#ffffff"}},"black":{"id":"#tokensConfig/color/black","properties":{"value":{"type":"string","id":"#tokensConfig/color/black/value","default":"#0B0A0A"}},"type":"object","default":{"value":"#0B0A0A"}},"gray":{"id":"#tokensConfig/color/gray","properties":{"50":{"id":"#tokensConfig/color/gray/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/50/value","default":"#FBFBFB"}},"type":"object","default":{"value":"#FBFBFB"}},"100":{"id":"#tokensConfig/color/gray/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/100/value","default":"#F6F5F4"}},"type":"object","default":{"value":"#F6F5F4"}},"200":{"id":"#tokensConfig/color/gray/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/200/value","default":"#ECEBE8"}},"type":"object","default":{"value":"#ECEBE8"}},"300":{"id":"#tokensConfig/color/gray/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/300/value","default":"#DBD9D3"}},"type":"object","default":{"value":"#DBD9D3"}},"400":{"id":"#tokensConfig/color/gray/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/400/value","default":"#ADA9A4"}},"type":"object","default":{"value":"#ADA9A4"}},"500":{"id":"#tokensConfig/color/gray/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/500/value","default":"#97948F"}},"type":"object","default":{"value":"#97948F"}},"600":{"id":"#tokensConfig/color/gray/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/600/value","default":"#67635D"}},"type":"object","default":{"value":"#67635D"}},"700":{"id":"#tokensConfig/color/gray/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/700/value","default":"#36332E"}},"type":"object","default":{"value":"#36332E"}},"800":{"id":"#tokensConfig/color/gray/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/800/value","default":"#201E1B"}},"type":"object","default":{"value":"#201E1B"}},"900":{"id":"#tokensConfig/color/gray/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/900/value","default":"#121110"}},"type":"object","default":{"value":"#121110"}}},"type":"object","default":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}}},"green":{"id":"#tokensConfig/color/green","properties":{"50":{"id":"#tokensConfig/color/green/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/50/value","default":"#ECFFF7"}},"type":"object","default":{"value":"#ECFFF7"}},"100":{"id":"#tokensConfig/color/green/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/100/value","default":"#DEFFF1"}},"type":"object","default":{"value":"#DEFFF1"}},"200":{"id":"#tokensConfig/color/green/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/200/value","default":"#C3FFE6"}},"type":"object","default":{"value":"#C3FFE6"}},"300":{"id":"#tokensConfig/color/green/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/300/value","default":"#86FBCB"}},"type":"object","default":{"value":"#86FBCB"}},"400":{"id":"#tokensConfig/color/green/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/400/value","default":"#3CEEA5"}},"type":"object","default":{"value":"#3CEEA5"}},"500":{"id":"#tokensConfig/color/green/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/500/value","default":"#0DD885"}},"type":"object","default":{"value":"#0DD885"}},"600":{"id":"#tokensConfig/color/green/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/600/value","default":"#00B467"}},"type":"object","default":{"value":"#00B467"}},"700":{"id":"#tokensConfig/color/green/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/700/value","default":"#006037"}},"type":"object","default":{"value":"#006037"}},"800":{"id":"#tokensConfig/color/green/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/800/value","default":"#002817"}},"type":"object","default":{"value":"#002817"}},"900":{"id":"#tokensConfig/color/green/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/900/value","default":"#00190F"}},"type":"object","default":{"value":"#00190F"}}},"type":"object","default":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}}},"yellow":{"id":"#tokensConfig/color/yellow","properties":{"50":{"id":"#tokensConfig/color/yellow/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/50/value","default":"#FFFCEE"}},"type":"object","default":{"value":"#FFFCEE"}},"100":{"id":"#tokensConfig/color/yellow/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/100/value","default":"#FFF6D3"}},"type":"object","default":{"value":"#FFF6D3"}},"200":{"id":"#tokensConfig/color/yellow/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/200/value","default":"#FFF0B1"}},"type":"object","default":{"value":"#FFF0B1"}},"300":{"id":"#tokensConfig/color/yellow/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/300/value","default":"#FFE372"}},"type":"object","default":{"value":"#FFE372"}},"400":{"id":"#tokensConfig/color/yellow/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/400/value","default":"#FFDC4E"}},"type":"object","default":{"value":"#FFDC4E"}},"500":{"id":"#tokensConfig/color/yellow/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/500/value","default":"#FBCA05"}},"type":"object","default":{"value":"#FBCA05"}},"600":{"id":"#tokensConfig/color/yellow/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/600/value","default":"#CBA408"}},"type":"object","default":{"value":"#CBA408"}},"700":{"id":"#tokensConfig/color/yellow/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/700/value","default":"#614E02"}},"type":"object","default":{"value":"#614E02"}},"800":{"id":"#tokensConfig/color/yellow/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/800/value","default":"#292100"}},"type":"object","default":{"value":"#292100"}},"900":{"id":"#tokensConfig/color/yellow/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/900/value","default":"#1B1500"}},"type":"object","default":{"value":"#1B1500"}}},"type":"object","default":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}}},"orange":{"id":"#tokensConfig/color/orange","properties":{"50":{"id":"#tokensConfig/color/orange/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/50/value","default":"#ffe9d9"}},"type":"object","default":{"value":"#ffe9d9"}},"100":{"id":"#tokensConfig/color/orange/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/100/value","default":"#ffd3b3"}},"type":"object","default":{"value":"#ffd3b3"}},"200":{"id":"#tokensConfig/color/orange/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/200/value","default":"#ffbd8d"}},"type":"object","default":{"value":"#ffbd8d"}},"300":{"id":"#tokensConfig/color/orange/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/300/value","default":"#ffa666"}},"type":"object","default":{"value":"#ffa666"}},"400":{"id":"#tokensConfig/color/orange/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/400/value","default":"#ff9040"}},"type":"object","default":{"value":"#ff9040"}},"500":{"id":"#tokensConfig/color/orange/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/500/value","default":"#ff7a1a"}},"type":"object","default":{"value":"#ff7a1a"}},"600":{"id":"#tokensConfig/color/orange/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/600/value","default":"#e15e00"}},"type":"object","default":{"value":"#e15e00"}},"700":{"id":"#tokensConfig/color/orange/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/700/value","default":"#a94700"}},"type":"object","default":{"value":"#a94700"}},"800":{"id":"#tokensConfig/color/orange/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/800/value","default":"#702f00"}},"type":"object","default":{"value":"#702f00"}},"900":{"id":"#tokensConfig/color/orange/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/900/value","default":"#381800"}},"type":"object","default":{"value":"#381800"}}},"type":"object","default":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}}},"red":{"id":"#tokensConfig/color/red","properties":{"50":{"id":"#tokensConfig/color/red/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/50/value","default":"#FFF9F8"}},"type":"object","default":{"value":"#FFF9F8"}},"100":{"id":"#tokensConfig/color/red/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/100/value","default":"#FFF3F0"}},"type":"object","default":{"value":"#FFF3F0"}},"200":{"id":"#tokensConfig/color/red/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/200/value","default":"#FFDED7"}},"type":"object","default":{"value":"#FFDED7"}},"300":{"id":"#tokensConfig/color/red/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/300/value","default":"#FFA692"}},"type":"object","default":{"value":"#FFA692"}},"400":{"id":"#tokensConfig/color/red/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/400/value","default":"#FF7353"}},"type":"object","default":{"value":"#FF7353"}},"500":{"id":"#tokensConfig/color/red/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/500/value","default":"#FF3B10"}},"type":"object","default":{"value":"#FF3B10"}},"600":{"id":"#tokensConfig/color/red/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/600/value","default":"#BB2402"}},"type":"object","default":{"value":"#BB2402"}},"700":{"id":"#tokensConfig/color/red/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/700/value","default":"#701704"}},"type":"object","default":{"value":"#701704"}},"800":{"id":"#tokensConfig/color/red/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/800/value","default":"#340A01"}},"type":"object","default":{"value":"#340A01"}},"900":{"id":"#tokensConfig/color/red/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/900/value","default":"#1C0301"}},"type":"object","default":{"value":"#1C0301"}}},"type":"object","default":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}}},"pear":{"id":"#tokensConfig/color/pear","properties":{"50":{"id":"#tokensConfig/color/pear/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/50/value","default":"#f7f8dc"}},"type":"object","default":{"value":"#f7f8dc"}},"100":{"id":"#tokensConfig/color/pear/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/100/value","default":"#eff0ba"}},"type":"object","default":{"value":"#eff0ba"}},"200":{"id":"#tokensConfig/color/pear/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/200/value","default":"#e8e997"}},"type":"object","default":{"value":"#e8e997"}},"300":{"id":"#tokensConfig/color/pear/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/300/value","default":"#e0e274"}},"type":"object","default":{"value":"#e0e274"}},"400":{"id":"#tokensConfig/color/pear/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/400/value","default":"#d8da52"}},"type":"object","default":{"value":"#d8da52"}},"500":{"id":"#tokensConfig/color/pear/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/500/value","default":"#d0d32f"}},"type":"object","default":{"value":"#d0d32f"}},"600":{"id":"#tokensConfig/color/pear/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/600/value","default":"#a8aa24"}},"type":"object","default":{"value":"#a8aa24"}},"700":{"id":"#tokensConfig/color/pear/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/700/value","default":"#7e801b"}},"type":"object","default":{"value":"#7e801b"}},"800":{"id":"#tokensConfig/color/pear/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/800/value","default":"#545512"}},"type":"object","default":{"value":"#545512"}},"900":{"id":"#tokensConfig/color/pear/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/900/value","default":"#2a2b09"}},"type":"object","default":{"value":"#2a2b09"}}},"type":"object","default":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}}},"teal":{"id":"#tokensConfig/color/teal","properties":{"50":{"id":"#tokensConfig/color/teal/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/50/value","default":"#d7faf8"}},"type":"object","default":{"value":"#d7faf8"}},"100":{"id":"#tokensConfig/color/teal/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/100/value","default":"#aff4f0"}},"type":"object","default":{"value":"#aff4f0"}},"200":{"id":"#tokensConfig/color/teal/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/200/value","default":"#87efe9"}},"type":"object","default":{"value":"#87efe9"}},"300":{"id":"#tokensConfig/color/teal/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/300/value","default":"#5fe9e1"}},"type":"object","default":{"value":"#5fe9e1"}},"400":{"id":"#tokensConfig/color/teal/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/400/value","default":"#36e4da"}},"type":"object","default":{"value":"#36e4da"}},"500":{"id":"#tokensConfig/color/teal/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/500/value","default":"#1cd1c6"}},"type":"object","default":{"value":"#1cd1c6"}},"600":{"id":"#tokensConfig/color/teal/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/600/value","default":"#16a79e"}},"type":"object","default":{"value":"#16a79e"}},"700":{"id":"#tokensConfig/color/teal/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/700/value","default":"#117d77"}},"type":"object","default":{"value":"#117d77"}},"800":{"id":"#tokensConfig/color/teal/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/800/value","default":"#0b544f"}},"type":"object","default":{"value":"#0b544f"}},"900":{"id":"#tokensConfig/color/teal/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/900/value","default":"#062a28"}},"type":"object","default":{"value":"#062a28"}}},"type":"object","default":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}}},"lightblue":{"id":"#tokensConfig/color/lightblue","properties":{"50":{"id":"#tokensConfig/color/lightblue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/50/value","default":"#d9f8ff"}},"type":"object","default":{"value":"#d9f8ff"}},"100":{"id":"#tokensConfig/color/lightblue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/100/value","default":"#b3f1ff"}},"type":"object","default":{"value":"#b3f1ff"}},"200":{"id":"#tokensConfig/color/lightblue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/200/value","default":"#8deaff"}},"type":"object","default":{"value":"#8deaff"}},"300":{"id":"#tokensConfig/color/lightblue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/300/value","default":"#66e4ff"}},"type":"object","default":{"value":"#66e4ff"}},"400":{"id":"#tokensConfig/color/lightblue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/400/value","default":"#40ddff"}},"type":"object","default":{"value":"#40ddff"}},"500":{"id":"#tokensConfig/color/lightblue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/500/value","default":"#1ad6ff"}},"type":"object","default":{"value":"#1ad6ff"}},"600":{"id":"#tokensConfig/color/lightblue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/600/value","default":"#00b9e1"}},"type":"object","default":{"value":"#00b9e1"}},"700":{"id":"#tokensConfig/color/lightblue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/700/value","default":"#008aa9"}},"type":"object","default":{"value":"#008aa9"}},"800":{"id":"#tokensConfig/color/lightblue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/800/value","default":"#005c70"}},"type":"object","default":{"value":"#005c70"}},"900":{"id":"#tokensConfig/color/lightblue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/900/value","default":"#002e38"}},"type":"object","default":{"value":"#002e38"}}},"type":"object","default":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}}},"blue":{"id":"#tokensConfig/color/blue","properties":{"50":{"id":"#tokensConfig/color/blue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/50/value","default":"#F2FAFF"}},"type":"object","default":{"value":"#F2FAFF"}},"100":{"id":"#tokensConfig/color/blue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/100/value","default":"#DFF3FF"}},"type":"object","default":{"value":"#DFF3FF"}},"200":{"id":"#tokensConfig/color/blue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/200/value","default":"#C6EAFF"}},"type":"object","default":{"value":"#C6EAFF"}},"300":{"id":"#tokensConfig/color/blue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/300/value","default":"#A1DDFF"}},"type":"object","default":{"value":"#A1DDFF"}},"400":{"id":"#tokensConfig/color/blue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/400/value","default":"#64C7FF"}},"type":"object","default":{"value":"#64C7FF"}},"500":{"id":"#tokensConfig/color/blue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/500/value","default":"#1AADFF"}},"type":"object","default":{"value":"#1AADFF"}},"600":{"id":"#tokensConfig/color/blue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/600/value","default":"#0069A6"}},"type":"object","default":{"value":"#0069A6"}},"700":{"id":"#tokensConfig/color/blue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/700/value","default":"#014267"}},"type":"object","default":{"value":"#014267"}},"800":{"id":"#tokensConfig/color/blue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/800/value","default":"#002235"}},"type":"object","default":{"value":"#002235"}},"900":{"id":"#tokensConfig/color/blue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/900/value","default":"#00131D"}},"type":"object","default":{"value":"#00131D"}}},"type":"object","default":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}}},"indigoblue":{"id":"#tokensConfig/color/indigoblue","properties":{"50":{"id":"#tokensConfig/color/indigoblue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/50/value","default":"#d9e5ff"}},"type":"object","default":{"value":"#d9e5ff"}},"100":{"id":"#tokensConfig/color/indigoblue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/100/value","default":"#b3cbff"}},"type":"object","default":{"value":"#b3cbff"}},"200":{"id":"#tokensConfig/color/indigoblue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/200/value","default":"#8db0ff"}},"type":"object","default":{"value":"#8db0ff"}},"300":{"id":"#tokensConfig/color/indigoblue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/300/value","default":"#6696ff"}},"type":"object","default":{"value":"#6696ff"}},"400":{"id":"#tokensConfig/color/indigoblue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/400/value","default":"#407cff"}},"type":"object","default":{"value":"#407cff"}},"500":{"id":"#tokensConfig/color/indigoblue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/500/value","default":"#1a62ff"}},"type":"object","default":{"value":"#1a62ff"}},"600":{"id":"#tokensConfig/color/indigoblue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/600/value","default":"#0047e1"}},"type":"object","default":{"value":"#0047e1"}},"700":{"id":"#tokensConfig/color/indigoblue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/700/value","default":"#0035a9"}},"type":"object","default":{"value":"#0035a9"}},"800":{"id":"#tokensConfig/color/indigoblue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/800/value","default":"#002370"}},"type":"object","default":{"value":"#002370"}},"900":{"id":"#tokensConfig/color/indigoblue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/900/value","default":"#001238"}},"type":"object","default":{"value":"#001238"}}},"type":"object","default":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}}},"royalblue":{"id":"#tokensConfig/color/royalblue","properties":{"50":{"id":"#tokensConfig/color/royalblue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/50/value","default":"#dfdbfb"}},"type":"object","default":{"value":"#dfdbfb"}},"100":{"id":"#tokensConfig/color/royalblue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/100/value","default":"#c0b7f7"}},"type":"object","default":{"value":"#c0b7f7"}},"200":{"id":"#tokensConfig/color/royalblue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/200/value","default":"#a093f3"}},"type":"object","default":{"value":"#a093f3"}},"300":{"id":"#tokensConfig/color/royalblue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/300/value","default":"#806ff0"}},"type":"object","default":{"value":"#806ff0"}},"400":{"id":"#tokensConfig/color/royalblue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/400/value","default":"#614bec"}},"type":"object","default":{"value":"#614bec"}},"500":{"id":"#tokensConfig/color/royalblue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/500/value","default":"#4127e8"}},"type":"object","default":{"value":"#4127e8"}},"600":{"id":"#tokensConfig/color/royalblue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/600/value","default":"#2c15c4"}},"type":"object","default":{"value":"#2c15c4"}},"700":{"id":"#tokensConfig/color/royalblue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/700/value","default":"#211093"}},"type":"object","default":{"value":"#211093"}},"800":{"id":"#tokensConfig/color/royalblue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/800/value","default":"#160a62"}},"type":"object","default":{"value":"#160a62"}},"900":{"id":"#tokensConfig/color/royalblue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/900/value","default":"#0b0531"}},"type":"object","default":{"value":"#0b0531"}}},"type":"object","default":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}}},"purple":{"id":"#tokensConfig/color/purple","properties":{"50":{"id":"#tokensConfig/color/purple/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/50/value","default":"#ead9ff"}},"type":"object","default":{"value":"#ead9ff"}},"100":{"id":"#tokensConfig/color/purple/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/100/value","default":"#d5b3ff"}},"type":"object","default":{"value":"#d5b3ff"}},"200":{"id":"#tokensConfig/color/purple/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/200/value","default":"#c08dff"}},"type":"object","default":{"value":"#c08dff"}},"300":{"id":"#tokensConfig/color/purple/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/300/value","default":"#ab66ff"}},"type":"object","default":{"value":"#ab66ff"}},"400":{"id":"#tokensConfig/color/purple/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/400/value","default":"#9640ff"}},"type":"object","default":{"value":"#9640ff"}},"500":{"id":"#tokensConfig/color/purple/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/500/value","default":"#811aff"}},"type":"object","default":{"value":"#811aff"}},"600":{"id":"#tokensConfig/color/purple/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/600/value","default":"#6500e1"}},"type":"object","default":{"value":"#6500e1"}},"700":{"id":"#tokensConfig/color/purple/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/700/value","default":"#4c00a9"}},"type":"object","default":{"value":"#4c00a9"}},"800":{"id":"#tokensConfig/color/purple/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/800/value","default":"#330070"}},"type":"object","default":{"value":"#330070"}},"900":{"id":"#tokensConfig/color/purple/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/900/value","default":"#190038"}},"type":"object","default":{"value":"#190038"}}},"type":"object","default":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}}},"pink":{"id":"#tokensConfig/color/pink","properties":{"50":{"id":"#tokensConfig/color/pink/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/50/value","default":"#ffd9f2"}},"type":"object","default":{"value":"#ffd9f2"}},"100":{"id":"#tokensConfig/color/pink/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/100/value","default":"#ffb3e5"}},"type":"object","default":{"value":"#ffb3e5"}},"200":{"id":"#tokensConfig/color/pink/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/200/value","default":"#ff8dd8"}},"type":"object","default":{"value":"#ff8dd8"}},"300":{"id":"#tokensConfig/color/pink/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/300/value","default":"#ff66cc"}},"type":"object","default":{"value":"#ff66cc"}},"400":{"id":"#tokensConfig/color/pink/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/400/value","default":"#ff40bf"}},"type":"object","default":{"value":"#ff40bf"}},"500":{"id":"#tokensConfig/color/pink/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/500/value","default":"#ff1ab2"}},"type":"object","default":{"value":"#ff1ab2"}},"600":{"id":"#tokensConfig/color/pink/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/600/value","default":"#e10095"}},"type":"object","default":{"value":"#e10095"}},"700":{"id":"#tokensConfig/color/pink/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/700/value","default":"#a90070"}},"type":"object","default":{"value":"#a90070"}},"800":{"id":"#tokensConfig/color/pink/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/800/value","default":"#70004b"}},"type":"object","default":{"value":"#70004b"}},"900":{"id":"#tokensConfig/color/pink/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/900/value","default":"#380025"}},"type":"object","default":{"value":"#380025"}}},"type":"object","default":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}}},"ruby":{"id":"#tokensConfig/color/ruby","properties":{"50":{"id":"#tokensConfig/color/ruby/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/50/value","default":"#ffd9e4"}},"type":"object","default":{"value":"#ffd9e4"}},"100":{"id":"#tokensConfig/color/ruby/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/100/value","default":"#ffb3c9"}},"type":"object","default":{"value":"#ffb3c9"}},"200":{"id":"#tokensConfig/color/ruby/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/200/value","default":"#ff8dae"}},"type":"object","default":{"value":"#ff8dae"}},"300":{"id":"#tokensConfig/color/ruby/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/300/value","default":"#ff6694"}},"type":"object","default":{"value":"#ff6694"}},"400":{"id":"#tokensConfig/color/ruby/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/400/value","default":"#ff4079"}},"type":"object","default":{"value":"#ff4079"}},"500":{"id":"#tokensConfig/color/ruby/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/500/value","default":"#ff1a5e"}},"type":"object","default":{"value":"#ff1a5e"}},"600":{"id":"#tokensConfig/color/ruby/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/600/value","default":"#e10043"}},"type":"object","default":{"value":"#e10043"}},"700":{"id":"#tokensConfig/color/ruby/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/700/value","default":"#a90032"}},"type":"object","default":{"value":"#a90032"}},"800":{"id":"#tokensConfig/color/ruby/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/800/value","default":"#700021"}},"type":"object","default":{"value":"#700021"}},"900":{"id":"#tokensConfig/color/ruby/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/900/value","default":"#380011"}},"type":"object","default":{"value":"#380011"}}},"type":"object","default":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}}},"primary":{"id":"#tokensConfig/color/primary","properties":{"50":{"id":"#tokensConfig/color/primary/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/50/value","default":"#FFF6E5"}},"type":"object","default":{"value":"#FFF6E5"}},"100":{"id":"#tokensConfig/color/primary/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/100/value","default":"#FFEDCC"}},"type":"object","default":{"value":"#FFEDCC"}},"200":{"id":"#tokensConfig/color/primary/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/200/value","default":"#FFDB99"}},"type":"object","default":{"value":"#FFDB99"}},"300":{"id":"#tokensConfig/color/primary/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/300/value","default":"#FFC966"}},"type":"object","default":{"value":"#FFC966"}},"400":{"id":"#tokensConfig/color/primary/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/400/value","default":"#FFB833"}},"type":"object","default":{"value":"#FFB833"}},"500":{"id":"#tokensConfig/color/primary/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/500/value","default":"#FFA500"}},"type":"object","default":{"value":"#FFA500"}},"600":{"id":"#tokensConfig/color/primary/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/600/value","default":"#CC8500"}},"type":"object","default":{"value":"#CC8500"}},"700":{"id":"#tokensConfig/color/primary/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/700/value","default":"#996300"}},"type":"object","default":{"value":"#996300"}},"800":{"id":"#tokensConfig/color/primary/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/800/value","default":"#664200"}},"type":"object","default":{"value":"#664200"}},"900":{"id":"#tokensConfig/color/primary/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/900/value","default":"#332100"}},"type":"object","default":{"value":"#332100"}}},"type":"object","default":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}}},"secondary":{"id":"#tokensConfig/color/secondary","properties":{"50":{"id":"#tokensConfig/color/secondary/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/50/value","default":"{color.gray.50}"}},"type":"object","default":{"value":"{color.gray.50}"}},"100":{"id":"#tokensConfig/color/secondary/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/100/value","default":"{color.gray.100}"}},"type":"object","default":{"value":"{color.gray.100}"}},"200":{"id":"#tokensConfig/color/secondary/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/200/value","default":"{color.gray.200}"}},"type":"object","default":{"value":"{color.gray.200}"}},"300":{"id":"#tokensConfig/color/secondary/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/300/value","default":"{color.gray.300}"}},"type":"object","default":{"value":"{color.gray.300}"}},"400":{"id":"#tokensConfig/color/secondary/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/400/value","default":"{color.gray.400}"}},"type":"object","default":{"value":"{color.gray.400}"}},"500":{"id":"#tokensConfig/color/secondary/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/500/value","default":"{color.gray.500}"}},"type":"object","default":{"value":"{color.gray.500}"}},"600":{"id":"#tokensConfig/color/secondary/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/600/value","default":"{color.gray.600}"}},"type":"object","default":{"value":"{color.gray.600}"}},"700":{"id":"#tokensConfig/color/secondary/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/700/value","default":"{color.gray.700}"}},"type":"object","default":{"value":"{color.gray.700}"}},"800":{"id":"#tokensConfig/color/secondary/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/800/value","default":"{color.gray.800}"}},"type":"object","default":{"value":"{color.gray.800}"}},"900":{"id":"#tokensConfig/color/secondary/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/900/value","default":"{color.gray.900}"}},"type":"object","default":{"value":"{color.gray.900}"}}},"type":"object","default":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}},"shadow":{"id":"#tokensConfig/color/shadow","properties":{"value":{"id":"#tokensConfig/color/shadow/value","properties":{"initial":{"type":"string","id":"#tokensConfig/color/shadow/value/initial","default":"{color.gray.400}"},"dark":{"type":"string","id":"#tokensConfig/color/shadow/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}}},"type":"object","default":{"white":{"value":"#ffffff"},"black":{"value":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}},"green":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}},"red":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}},"blue":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}},"purple":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}},"pink":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}},"ruby":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}},"primary":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}},"shadow":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}}},"width":{"title":"Your website screen sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/width","properties":{"screen":{"id":"#tokensConfig/width/screen","properties":{"value":{"type":"string","id":"#tokensConfig/width/screen/value","default":"100vw"}},"type":"object","default":{"value":"100vw"}}},"type":"object","default":{"screen":{"value":"100vw"}}},"height":{"title":"Your website screen sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/height","properties":{"screen":{"id":"#tokensConfig/height/screen","properties":{"value":{"type":"string","id":"#tokensConfig/height/screen/value","default":"100vh"}},"type":"object","default":{"value":"100vh"}}},"type":"object","default":{"screen":{"value":"100vh"}}},"shadow":{"title":"Your website shadows.","tags":["@studioInput design-token","@studioInputTokenType shadow","@studioIcon mdi:box-shadow"],"id":"#tokensConfig/shadow","properties":{"xs":{"id":"#tokensConfig/shadow/xs","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/xs/value","default":"0px 1px 2px 0px {color.shadow}"}},"type":"object","default":{"value":"0px 1px 2px 0px {color.shadow}"}},"sm":{"id":"#tokensConfig/shadow/sm","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/sm/value","default":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"}},"type":"object","default":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"}},"md":{"id":"#tokensConfig/shadow/md","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/md/value","default":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"}},"type":"object","default":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"}},"lg":{"id":"#tokensConfig/shadow/lg","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/lg/value","default":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"}},"type":"object","default":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"}},"xl":{"id":"#tokensConfig/shadow/xl","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/xl/value","default":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"}},"type":"object","default":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"}},"2xl":{"id":"#tokensConfig/shadow/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/2xl/value","default":"0px 25px 50px -12px {color.shadow}"}},"type":"object","default":{"value":"0px 25px 50px -12px {color.shadow}"}},"none":{"id":"#tokensConfig/shadow/none","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/none/value","default":"0px 0px 0px 0px transparent"}},"type":"object","default":{"value":"0px 0px 0px 0px transparent"}}},"type":"object","default":{"xs":{"value":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent"}}},"radii":{"title":"Your website border radiuses.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:rounded-corner","@studioInpuTokenType size"],"id":"#tokensConfig/radii","properties":{"none":{"id":"#tokensConfig/radii/none","properties":{"value":{"type":"string","id":"#tokensConfig/radii/none/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"2xs":{"id":"#tokensConfig/radii/2xs","properties":{"value":{"type":"string","id":"#tokensConfig/radii/2xs/value","default":"0.125rem"}},"type":"object","default":{"value":"0.125rem"}},"xs":{"id":"#tokensConfig/radii/xs","properties":{"value":{"type":"string","id":"#tokensConfig/radii/xs/value","default":"0.25rem"}},"type":"object","default":{"value":"0.25rem"}},"sm":{"id":"#tokensConfig/radii/sm","properties":{"value":{"type":"string","id":"#tokensConfig/radii/sm/value","default":"0.375rem"}},"type":"object","default":{"value":"0.375rem"}},"md":{"id":"#tokensConfig/radii/md","properties":{"value":{"type":"string","id":"#tokensConfig/radii/md/value","default":"0.5rem"}},"type":"object","default":{"value":"0.5rem"}},"lg":{"id":"#tokensConfig/radii/lg","properties":{"value":{"type":"string","id":"#tokensConfig/radii/lg/value","default":"0.75rem"}},"type":"object","default":{"value":"0.75rem"}},"xl":{"id":"#tokensConfig/radii/xl","properties":{"value":{"type":"string","id":"#tokensConfig/radii/xl/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"2xl":{"id":"#tokensConfig/radii/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/radii/2xl/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"3xl":{"id":"#tokensConfig/radii/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/radii/3xl/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"full":{"id":"#tokensConfig/radii/full","properties":{"value":{"type":"string","id":"#tokensConfig/radii/full/value","default":"9999px"}},"type":"object","default":{"value":"9999px"}}},"type":"object","default":{"none":{"value":"0px"},"2xs":{"value":"0.125rem"},"xs":{"value":"0.25rem"},"sm":{"value":"0.375rem"},"md":{"value":"0.5rem"},"lg":{"value":"0.75rem"},"xl":{"value":"1rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.75rem"},"full":{"value":"9999px"}}},"size":{"title":"Your website sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/size","properties":{"0":{"id":"#tokensConfig/size/0","properties":{"value":{"type":"string","id":"#tokensConfig/size/0/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"2":{"id":"#tokensConfig/size/2","properties":{"value":{"type":"string","id":"#tokensConfig/size/2/value","default":"2px"}},"type":"object","default":{"value":"2px"}},"4":{"id":"#tokensConfig/size/4","properties":{"value":{"type":"string","id":"#tokensConfig/size/4/value","default":"4px"}},"type":"object","default":{"value":"4px"}},"6":{"id":"#tokensConfig/size/6","properties":{"value":{"type":"string","id":"#tokensConfig/size/6/value","default":"6px"}},"type":"object","default":{"value":"6px"}},"8":{"id":"#tokensConfig/size/8","properties":{"value":{"type":"string","id":"#tokensConfig/size/8/value","default":"8px"}},"type":"object","default":{"value":"8px"}},"12":{"id":"#tokensConfig/size/12","properties":{"value":{"type":"string","id":"#tokensConfig/size/12/value","default":"12px"}},"type":"object","default":{"value":"12px"}},"16":{"id":"#tokensConfig/size/16","properties":{"value":{"type":"string","id":"#tokensConfig/size/16/value","default":"16px"}},"type":"object","default":{"value":"16px"}},"20":{"id":"#tokensConfig/size/20","properties":{"value":{"type":"string","id":"#tokensConfig/size/20/value","default":"20px"}},"type":"object","default":{"value":"20px"}},"24":{"id":"#tokensConfig/size/24","properties":{"value":{"type":"string","id":"#tokensConfig/size/24/value","default":"24px"}},"type":"object","default":{"value":"24px"}},"32":{"id":"#tokensConfig/size/32","properties":{"value":{"type":"string","id":"#tokensConfig/size/32/value","default":"32px"}},"type":"object","default":{"value":"32px"}},"40":{"id":"#tokensConfig/size/40","properties":{"value":{"type":"string","id":"#tokensConfig/size/40/value","default":"40px"}},"type":"object","default":{"value":"40px"}},"48":{"id":"#tokensConfig/size/48","properties":{"value":{"type":"string","id":"#tokensConfig/size/48/value","default":"48px"}},"type":"object","default":{"value":"48px"}},"56":{"id":"#tokensConfig/size/56","properties":{"value":{"type":"string","id":"#tokensConfig/size/56/value","default":"56px"}},"type":"object","default":{"value":"56px"}},"64":{"id":"#tokensConfig/size/64","properties":{"value":{"type":"string","id":"#tokensConfig/size/64/value","default":"64px"}},"type":"object","default":{"value":"64px"}},"80":{"id":"#tokensConfig/size/80","properties":{"value":{"type":"string","id":"#tokensConfig/size/80/value","default":"80px"}},"type":"object","default":{"value":"80px"}},"104":{"id":"#tokensConfig/size/104","properties":{"value":{"type":"string","id":"#tokensConfig/size/104/value","default":"104px"}},"type":"object","default":{"value":"104px"}},"200":{"id":"#tokensConfig/size/200","properties":{"value":{"type":"string","id":"#tokensConfig/size/200/value","default":"200px"}},"type":"object","default":{"value":"200px"}},"xs":{"id":"#tokensConfig/size/xs","properties":{"value":{"type":"string","id":"#tokensConfig/size/xs/value","default":"20rem"}},"type":"object","default":{"value":"20rem"}},"sm":{"id":"#tokensConfig/size/sm","properties":{"value":{"type":"string","id":"#tokensConfig/size/sm/value","default":"24rem"}},"type":"object","default":{"value":"24rem"}},"md":{"id":"#tokensConfig/size/md","properties":{"value":{"type":"string","id":"#tokensConfig/size/md/value","default":"28rem"}},"type":"object","default":{"value":"28rem"}},"lg":{"id":"#tokensConfig/size/lg","properties":{"value":{"type":"string","id":"#tokensConfig/size/lg/value","default":"32rem"}},"type":"object","default":{"value":"32rem"}},"xl":{"id":"#tokensConfig/size/xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/xl/value","default":"36rem"}},"type":"object","default":{"value":"36rem"}},"2xl":{"id":"#tokensConfig/size/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/2xl/value","default":"42rem"}},"type":"object","default":{"value":"42rem"}},"3xl":{"id":"#tokensConfig/size/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/3xl/value","default":"48rem"}},"type":"object","default":{"value":"48rem"}},"4xl":{"id":"#tokensConfig/size/4xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/4xl/value","default":"56rem"}},"type":"object","default":{"value":"56rem"}},"5xl":{"id":"#tokensConfig/size/5xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/5xl/value","default":"64rem"}},"type":"object","default":{"value":"64rem"}},"6xl":{"id":"#tokensConfig/size/6xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/6xl/value","default":"72rem"}},"type":"object","default":{"value":"72rem"}},"7xl":{"id":"#tokensConfig/size/7xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/7xl/value","default":"80rem"}},"type":"object","default":{"value":"80rem"}},"full":{"id":"#tokensConfig/size/full","properties":{"value":{"type":"string","id":"#tokensConfig/size/full/value","default":"100%"}},"type":"object","default":{"value":"100%"}}},"type":"object","default":{"0":{"value":"0px"},"2":{"value":"2px"},"4":{"value":"4px"},"6":{"value":"6px"},"8":{"value":"8px"},"12":{"value":"12px"},"16":{"value":"16px"},"20":{"value":"20px"},"24":{"value":"24px"},"32":{"value":"32px"},"40":{"value":"40px"},"48":{"value":"48px"},"56":{"value":"56px"},"64":{"value":"64px"},"80":{"value":"80px"},"104":{"value":"104px"},"200":{"value":"200px"},"xs":{"value":"20rem"},"sm":{"value":"24rem"},"md":{"value":"28rem"},"lg":{"value":"32rem"},"xl":{"value":"36rem"},"2xl":{"value":"42rem"},"3xl":{"value":"48rem"},"4xl":{"value":"56rem"},"5xl":{"value":"64rem"},"6xl":{"value":"72rem"},"7xl":{"value":"80rem"},"full":{"value":"100%"}}},"space":{"title":"Your website spacings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/space","properties":{"0":{"id":"#tokensConfig/space/0","properties":{"value":{"type":"string","id":"#tokensConfig/space/0/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"1":{"id":"#tokensConfig/space/1","properties":{"value":{"type":"string","id":"#tokensConfig/space/1/value","default":"0.25rem"}},"type":"object","default":{"value":"0.25rem"}},"2":{"id":"#tokensConfig/space/2","properties":{"value":{"type":"string","id":"#tokensConfig/space/2/value","default":"0.5rem"}},"type":"object","default":{"value":"0.5rem"}},"3":{"id":"#tokensConfig/space/3","properties":{"value":{"type":"string","id":"#tokensConfig/space/3/value","default":"0.75rem"}},"type":"object","default":{"value":"0.75rem"}},"4":{"id":"#tokensConfig/space/4","properties":{"value":{"type":"string","id":"#tokensConfig/space/4/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"5":{"id":"#tokensConfig/space/5","properties":{"value":{"type":"string","id":"#tokensConfig/space/5/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"6":{"id":"#tokensConfig/space/6","properties":{"value":{"type":"string","id":"#tokensConfig/space/6/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"7":{"id":"#tokensConfig/space/7","properties":{"value":{"type":"string","id":"#tokensConfig/space/7/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"8":{"id":"#tokensConfig/space/8","properties":{"value":{"type":"string","id":"#tokensConfig/space/8/value","default":"2rem"}},"type":"object","default":{"value":"2rem"}},"9":{"id":"#tokensConfig/space/9","properties":{"value":{"type":"string","id":"#tokensConfig/space/9/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"10":{"id":"#tokensConfig/space/10","properties":{"value":{"type":"string","id":"#tokensConfig/space/10/value","default":"2.5rem"}},"type":"object","default":{"value":"2.5rem"}},"11":{"id":"#tokensConfig/space/11","properties":{"value":{"type":"string","id":"#tokensConfig/space/11/value","default":"2.75rem"}},"type":"object","default":{"value":"2.75rem"}},"12":{"id":"#tokensConfig/space/12","properties":{"value":{"type":"string","id":"#tokensConfig/space/12/value","default":"3rem"}},"type":"object","default":{"value":"3rem"}},"14":{"id":"#tokensConfig/space/14","properties":{"value":{"type":"string","id":"#tokensConfig/space/14/value","default":"3.5rem"}},"type":"object","default":{"value":"3.5rem"}},"16":{"id":"#tokensConfig/space/16","properties":{"value":{"type":"string","id":"#tokensConfig/space/16/value","default":"4rem"}},"type":"object","default":{"value":"4rem"}},"20":{"id":"#tokensConfig/space/20","properties":{"value":{"type":"string","id":"#tokensConfig/space/20/value","default":"5rem"}},"type":"object","default":{"value":"5rem"}},"24":{"id":"#tokensConfig/space/24","properties":{"value":{"type":"string","id":"#tokensConfig/space/24/value","default":"6rem"}},"type":"object","default":{"value":"6rem"}},"28":{"id":"#tokensConfig/space/28","properties":{"value":{"type":"string","id":"#tokensConfig/space/28/value","default":"7rem"}},"type":"object","default":{"value":"7rem"}},"32":{"id":"#tokensConfig/space/32","properties":{"value":{"type":"string","id":"#tokensConfig/space/32/value","default":"8rem"}},"type":"object","default":{"value":"8rem"}},"36":{"id":"#tokensConfig/space/36","properties":{"value":{"type":"string","id":"#tokensConfig/space/36/value","default":"9rem"}},"type":"object","default":{"value":"9rem"}},"40":{"id":"#tokensConfig/space/40","properties":{"value":{"type":"string","id":"#tokensConfig/space/40/value","default":"10rem"}},"type":"object","default":{"value":"10rem"}},"44":{"id":"#tokensConfig/space/44","properties":{"value":{"type":"string","id":"#tokensConfig/space/44/value","default":"11rem"}},"type":"object","default":{"value":"11rem"}},"48":{"id":"#tokensConfig/space/48","properties":{"value":{"type":"string","id":"#tokensConfig/space/48/value","default":"12rem"}},"type":"object","default":{"value":"12rem"}},"52":{"id":"#tokensConfig/space/52","properties":{"value":{"type":"string","id":"#tokensConfig/space/52/value","default":"13rem"}},"type":"object","default":{"value":"13rem"}},"56":{"id":"#tokensConfig/space/56","properties":{"value":{"type":"string","id":"#tokensConfig/space/56/value","default":"14rem"}},"type":"object","default":{"value":"14rem"}},"60":{"id":"#tokensConfig/space/60","properties":{"value":{"type":"string","id":"#tokensConfig/space/60/value","default":"15rem"}},"type":"object","default":{"value":"15rem"}},"64":{"id":"#tokensConfig/space/64","properties":{"value":{"type":"string","id":"#tokensConfig/space/64/value","default":"16rem"}},"type":"object","default":{"value":"16rem"}},"72":{"id":"#tokensConfig/space/72","properties":{"value":{"type":"string","id":"#tokensConfig/space/72/value","default":"18rem"}},"type":"object","default":{"value":"18rem"}},"80":{"id":"#tokensConfig/space/80","properties":{"value":{"type":"string","id":"#tokensConfig/space/80/value","default":"20rem"}},"type":"object","default":{"value":"20rem"}},"96":{"id":"#tokensConfig/space/96","properties":{"value":{"type":"string","id":"#tokensConfig/space/96/value","default":"24rem"}},"type":"object","default":{"value":"24rem"}},"128":{"id":"#tokensConfig/space/128","properties":{"value":{"type":"string","id":"#tokensConfig/space/128/value","default":"32rem"}},"type":"object","default":{"value":"32rem"}},"px":{"id":"#tokensConfig/space/px","properties":{"value":{"type":"string","id":"#tokensConfig/space/px/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"rem":{"id":"#tokensConfig/space/rem","properties":{"125":{"id":"#tokensConfig/space/rem/125","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/125/value","default":"0.125rem"}},"type":"object","default":{"value":"0.125rem"}},"375":{"id":"#tokensConfig/space/rem/375","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/375/value","default":"0.375rem"}},"type":"object","default":{"value":"0.375rem"}},"625":{"id":"#tokensConfig/space/rem/625","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/625/value","default":"0.625rem"}},"type":"object","default":{"value":"0.625rem"}},"875":{"id":"#tokensConfig/space/rem/875","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/875/value","default":"0.875rem"}},"type":"object","default":{"value":"0.875rem"}}},"type":"object","default":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}}},"type":"object","default":{"0":{"value":"0px"},"1":{"value":"0.25rem"},"2":{"value":"0.5rem"},"3":{"value":"0.75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"11":{"value":"2.75rem"},"12":{"value":"3rem"},"14":{"value":"3.5rem"},"16":{"value":"4rem"},"20":{"value":"5rem"},"24":{"value":"6rem"},"28":{"value":"7rem"},"32":{"value":"8rem"},"36":{"value":"9rem"},"40":{"value":"10rem"},"44":{"value":"11rem"},"48":{"value":"12rem"},"52":{"value":"13rem"},"56":{"value":"14rem"},"60":{"value":"15rem"},"64":{"value":"16rem"},"72":{"value":"18rem"},"80":{"value":"20rem"},"96":{"value":"24rem"},"128":{"value":"32rem"},"px":{"value":"1px"},"rem":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}}},"borderWidth":{"title":"Your website border widths.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:border-all-outline-rounded"],"id":"#tokensConfig/borderWidth","properties":{"noBorder":{"id":"#tokensConfig/borderWidth/noBorder","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/noBorder/value","default":"0"}},"type":"object","default":{"value":"0"}},"sm":{"id":"#tokensConfig/borderWidth/sm","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/sm/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"md":{"id":"#tokensConfig/borderWidth/md","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/md/value","default":"2px"}},"type":"object","default":{"value":"2px"}},"lg":{"id":"#tokensConfig/borderWidth/lg","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/lg/value","default":"3px"}},"type":"object","default":{"value":"3px"}}},"type":"object","default":{"noBorder":{"value":"0"},"sm":{"value":"1px"},"md":{"value":"2px"},"lg":{"value":"3px"}}},"opacity":{"title":"Your website opacities.","tags":["@studioInput design-token","@studioInputTokenType opacity","@studioIcon material-symbols:opacity"],"id":"#tokensConfig/opacity","properties":{"noOpacity":{"id":"#tokensConfig/opacity/noOpacity","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/noOpacity/value","default":"0"}},"type":"object","default":{"value":"0"}},"bright":{"id":"#tokensConfig/opacity/bright","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/bright/value","default":"0.1"}},"type":"object","default":{"value":"0.1"}},"light":{"id":"#tokensConfig/opacity/light","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/light/value","default":"0.15"}},"type":"object","default":{"value":"0.15"}},"soft":{"id":"#tokensConfig/opacity/soft","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/soft/value","default":"0.3"}},"type":"object","default":{"value":"0.3"}},"medium":{"id":"#tokensConfig/opacity/medium","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/medium/value","default":"0.5"}},"type":"object","default":{"value":"0.5"}},"high":{"id":"#tokensConfig/opacity/high","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/high/value","default":"0.8"}},"type":"object","default":{"value":"0.8"}},"total":{"id":"#tokensConfig/opacity/total","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/total/value","default":"1"}},"type":"object","default":{"value":"1"}}},"type":"object","default":{"noOpacity":{"value":"0"},"bright":{"value":"0.1"},"light":{"value":"0.15"},"soft":{"value":"0.3"},"medium":{"value":"0.5"},"high":{"value":"0.8"},"total":{"value":"1"}}},"font":{"title":"Your website fonts","tags":["@studioInput design-token","@studioInputTokenType font","@studioIcon material-symbols:font-download-rounded"],"id":"#tokensConfig/font","properties":{"sans":{"id":"#tokensConfig/font/sans","properties":{"value":{"type":"string","id":"#tokensConfig/font/sans/value","default":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"}},"type":"object","default":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"}},"serif":{"id":"#tokensConfig/font/serif","properties":{"value":{"type":"string","id":"#tokensConfig/font/serif/value","default":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"}},"type":"object","default":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"}},"mono":{"id":"#tokensConfig/font/mono","properties":{"value":{"type":"string","id":"#tokensConfig/font/mono/value","default":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"type":"object","default":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}}},"type":"object","default":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}}},"fontWeight":{"title":"Your website font weights.","tags":["@studioInput design-token","@studioInputTokenType font-weight","@studioIcon radix-icons:font-style"],"id":"#tokensConfig/fontWeight","properties":{"thin":{"id":"#tokensConfig/fontWeight/thin","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/thin/value","default":"100"}},"type":"object","default":{"value":"100"}},"extralight":{"id":"#tokensConfig/fontWeight/extralight","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/extralight/value","default":"200"}},"type":"object","default":{"value":"200"}},"light":{"id":"#tokensConfig/fontWeight/light","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/light/value","default":"300"}},"type":"object","default":{"value":"300"}},"normal":{"id":"#tokensConfig/fontWeight/normal","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/normal/value","default":"400"}},"type":"object","default":{"value":"400"}},"medium":{"id":"#tokensConfig/fontWeight/medium","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/medium/value","default":"500"}},"type":"object","default":{"value":"500"}},"semibold":{"id":"#tokensConfig/fontWeight/semibold","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/semibold/value","default":"600"}},"type":"object","default":{"value":"600"}},"bold":{"id":"#tokensConfig/fontWeight/bold","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/bold/value","default":"700"}},"type":"object","default":{"value":"700"}},"extrabold":{"id":"#tokensConfig/fontWeight/extrabold","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/extrabold/value","default":"800"}},"type":"object","default":{"value":"800"}},"black":{"id":"#tokensConfig/fontWeight/black","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/black/value","default":"900"}},"type":"object","default":{"value":"900"}}},"type":"object","default":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}}},"fontSize":{"title":"Your website font sizes.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon radix-icons:font-style"],"id":"#tokensConfig/fontSize","properties":{"xs":{"id":"#tokensConfig/fontSize/xs","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/xs/value","default":"0.75rem"}},"type":"object","default":{"value":"0.75rem"}},"sm":{"id":"#tokensConfig/fontSize/sm","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/sm/value","default":"0.875rem"}},"type":"object","default":{"value":"0.875rem"}},"base":{"id":"#tokensConfig/fontSize/base","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/base/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"lg":{"id":"#tokensConfig/fontSize/lg","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/lg/value","default":"1.125rem"}},"type":"object","default":{"value":"1.125rem"}},"xl":{"id":"#tokensConfig/fontSize/xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/xl/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"2xl":{"id":"#tokensConfig/fontSize/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/2xl/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"3xl":{"id":"#tokensConfig/fontSize/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/3xl/value","default":"1.875rem"}},"type":"object","default":{"value":"1.875rem"}},"4xl":{"id":"#tokensConfig/fontSize/4xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/4xl/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"5xl":{"id":"#tokensConfig/fontSize/5xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/5xl/value","default":"3rem"}},"type":"object","default":{"value":"3rem"}},"6xl":{"id":"#tokensConfig/fontSize/6xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/6xl/value","default":"3.75rem"}},"type":"object","default":{"value":"3.75rem"}},"7xl":{"id":"#tokensConfig/fontSize/7xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/7xl/value","default":"4.5rem"}},"type":"object","default":{"value":"4.5rem"}},"8xl":{"id":"#tokensConfig/fontSize/8xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/8xl/value","default":"6rem"}},"type":"object","default":{"value":"6rem"}},"9xl":{"id":"#tokensConfig/fontSize/9xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/9xl/value","default":"8rem"}},"type":"object","default":{"value":"8rem"}}},"type":"object","default":{"xs":{"value":"0.75rem"},"sm":{"value":"0.875rem"},"base":{"value":"1rem"},"lg":{"value":"1.125rem"},"xl":{"value":"1.25rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.875rem"},"4xl":{"value":"2.25rem"},"5xl":{"value":"3rem"},"6xl":{"value":"3.75rem"},"7xl":{"value":"4.5rem"},"8xl":{"value":"6rem"},"9xl":{"value":"8rem"}}},"letterSpacing":{"title":"Your website letter spacings.","tags":["@studioInput design-token","@studioInputTokenType letter-spacing","@studioIcon fluent:font-space-tracking-out-24-filled"],"id":"#tokensConfig/letterSpacing","properties":{"tighter":{"id":"#tokensConfig/letterSpacing/tighter","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/tighter/value","default":"-0.05em"}},"type":"object","default":{"value":"-0.05em"}},"tight":{"id":"#tokensConfig/letterSpacing/tight","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/tight/value","default":"-0.025em"}},"type":"object","default":{"value":"-0.025em"}},"normal":{"id":"#tokensConfig/letterSpacing/normal","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/normal/value","default":"0em"}},"type":"object","default":{"value":"0em"}},"wide":{"id":"#tokensConfig/letterSpacing/wide","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/wide/value","default":"0.025em"}},"type":"object","default":{"value":"0.025em"}},"wider":{"id":"#tokensConfig/letterSpacing/wider","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/wider/value","default":"0.05em"}},"type":"object","default":{"value":"0.05em"}},"widest":{"id":"#tokensConfig/letterSpacing/widest","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/widest/value","default":"0.1em"}},"type":"object","default":{"value":"0.1em"}}},"type":"object","default":{"tighter":{"value":"-0.05em"},"tight":{"value":"-0.025em"},"normal":{"value":"0em"},"wide":{"value":"0.025em"},"wider":{"value":"0.05em"},"widest":{"value":"0.1em"}}},"lead":{"title":"Your website line heights.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon icon-park-outline:auto-line-height"],"id":"#tokensConfig/lead","properties":{"1":{"id":"#tokensConfig/lead/1","properties":{"value":{"type":"string","id":"#tokensConfig/lead/1/value","default":".025rem"}},"type":"object","default":{"value":".025rem"}},"2":{"id":"#tokensConfig/lead/2","properties":{"value":{"type":"string","id":"#tokensConfig/lead/2/value","default":".5rem"}},"type":"object","default":{"value":".5rem"}},"3":{"id":"#tokensConfig/lead/3","properties":{"value":{"type":"string","id":"#tokensConfig/lead/3/value","default":".75rem"}},"type":"object","default":{"value":".75rem"}},"4":{"id":"#tokensConfig/lead/4","properties":{"value":{"type":"string","id":"#tokensConfig/lead/4/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"5":{"id":"#tokensConfig/lead/5","properties":{"value":{"type":"string","id":"#tokensConfig/lead/5/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"6":{"id":"#tokensConfig/lead/6","properties":{"value":{"type":"string","id":"#tokensConfig/lead/6/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"7":{"id":"#tokensConfig/lead/7","properties":{"value":{"type":"string","id":"#tokensConfig/lead/7/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"8":{"id":"#tokensConfig/lead/8","properties":{"value":{"type":"string","id":"#tokensConfig/lead/8/value","default":"2rem"}},"type":"object","default":{"value":"2rem"}},"9":{"id":"#tokensConfig/lead/9","properties":{"value":{"type":"string","id":"#tokensConfig/lead/9/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"10":{"id":"#tokensConfig/lead/10","properties":{"value":{"type":"string","id":"#tokensConfig/lead/10/value","default":"2.5rem"}},"type":"object","default":{"value":"2.5rem"}},"none":{"id":"#tokensConfig/lead/none","properties":{"value":{"type":"string","id":"#tokensConfig/lead/none/value","default":"1"}},"type":"object","default":{"value":"1"}},"tight":{"id":"#tokensConfig/lead/tight","properties":{"value":{"type":"string","id":"#tokensConfig/lead/tight/value","default":"1.25"}},"type":"object","default":{"value":"1.25"}},"snug":{"id":"#tokensConfig/lead/snug","properties":{"value":{"type":"string","id":"#tokensConfig/lead/snug/value","default":"1.375"}},"type":"object","default":{"value":"1.375"}},"normal":{"id":"#tokensConfig/lead/normal","properties":{"value":{"type":"string","id":"#tokensConfig/lead/normal/value","default":"1.5"}},"type":"object","default":{"value":"1.5"}},"relaxed":{"id":"#tokensConfig/lead/relaxed","properties":{"value":{"type":"string","id":"#tokensConfig/lead/relaxed/value","default":"1.625"}},"type":"object","default":{"value":"1.625"}},"loose":{"id":"#tokensConfig/lead/loose","properties":{"value":{"type":"string","id":"#tokensConfig/lead/loose/value","default":"2"}},"type":"object","default":{"value":"2"}}},"type":"object","default":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}}},"text":{"title":"Your website text scales.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:format-size-rounded"],"id":"#tokensConfig/text","properties":{"xs":{"id":"#tokensConfig/text/xs","properties":{"fontSize":{"id":"#tokensConfig/text/xs/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/xs/fontSize/value","default":"{fontSize.xs}"}},"type":"object","default":{"value":"{fontSize.xs}"}},"lineHeight":{"id":"#tokensConfig/text/xs/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/xs/lineHeight/value","default":"{lead.4}"}},"type":"object","default":{"value":"{lead.4}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}}},"sm":{"id":"#tokensConfig/text/sm","properties":{"fontSize":{"id":"#tokensConfig/text/sm/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/sm/fontSize/value","default":"{fontSize.sm}"}},"type":"object","default":{"value":"{fontSize.sm}"}},"lineHeight":{"id":"#tokensConfig/text/sm/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/sm/lineHeight/value","default":"{lead.5}"}},"type":"object","default":{"value":"{lead.5}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}}},"base":{"id":"#tokensConfig/text/base","properties":{"fontSize":{"id":"#tokensConfig/text/base/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/base/fontSize/value","default":"{fontSize.base}"}},"type":"object","default":{"value":"{fontSize.base}"}},"lineHeight":{"id":"#tokensConfig/text/base/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/base/lineHeight/value","default":"{lead.6}"}},"type":"object","default":{"value":"{lead.6}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}}},"lg":{"id":"#tokensConfig/text/lg","properties":{"fontSize":{"id":"#tokensConfig/text/lg/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/lg/fontSize/value","default":"{fontSize.lg}"}},"type":"object","default":{"value":"{fontSize.lg}"}},"lineHeight":{"id":"#tokensConfig/text/lg/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/lg/lineHeight/value","default":"{lead.7}"}},"type":"object","default":{"value":"{lead.7}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}}},"xl":{"id":"#tokensConfig/text/xl","properties":{"fontSize":{"id":"#tokensConfig/text/xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/xl/fontSize/value","default":"{fontSize.xl}"}},"type":"object","default":{"value":"{fontSize.xl}"}},"lineHeight":{"id":"#tokensConfig/text/xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/xl/lineHeight/value","default":"{lead.7}"}},"type":"object","default":{"value":"{lead.7}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}}},"2xl":{"id":"#tokensConfig/text/2xl","properties":{"fontSize":{"id":"#tokensConfig/text/2xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/2xl/fontSize/value","default":"{fontSize.2xl}"}},"type":"object","default":{"value":"{fontSize.2xl}"}},"lineHeight":{"id":"#tokensConfig/text/2xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/2xl/lineHeight/value","default":"{lead.8}"}},"type":"object","default":{"value":"{lead.8}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}}},"3xl":{"id":"#tokensConfig/text/3xl","properties":{"fontSize":{"id":"#tokensConfig/text/3xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/3xl/fontSize/value","default":"{fontSize.3xl}"}},"type":"object","default":{"value":"{fontSize.3xl}"}},"lineHeight":{"id":"#tokensConfig/text/3xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/3xl/lineHeight/value","default":"{lead.9}"}},"type":"object","default":{"value":"{lead.9}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}}},"4xl":{"id":"#tokensConfig/text/4xl","properties":{"fontSize":{"id":"#tokensConfig/text/4xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/4xl/fontSize/value","default":"{fontSize.4xl}"}},"type":"object","default":{"value":"{fontSize.4xl}"}},"lineHeight":{"id":"#tokensConfig/text/4xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/4xl/lineHeight/value","default":"{lead.10}"}},"type":"object","default":{"value":"{lead.10}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}}},"5xl":{"id":"#tokensConfig/text/5xl","properties":{"fontSize":{"id":"#tokensConfig/text/5xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/5xl/fontSize/value","default":"{fontSize.5xl}"}},"type":"object","default":{"value":"{fontSize.5xl}"}},"lineHeight":{"id":"#tokensConfig/text/5xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/5xl/lineHeight/value","default":"{lead.none}"}},"type":"object","default":{"value":"{lead.none}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}}},"6xl":{"id":"#tokensConfig/text/6xl","properties":{"fontSize":{"id":"#tokensConfig/text/6xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/6xl/fontSize/value","default":"{fontSize.6xl}"}},"type":"object","default":{"value":"{fontSize.6xl}"}},"lineHeight":{"id":"#tokensConfig/text/6xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/6xl/lineHeight/value","default":"{lead.none}"}},"type":"object","default":{"value":"{lead.none}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}}},"type":"object","default":{"xs":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}},"sm":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}},"base":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}},"lg":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}},"xl":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}},"2xl":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}},"3xl":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}},"4xl":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}},"5xl":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}},"6xl":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}}},"elements":{"title":"All the configurable tokens for your Elements.","tags":["@studioIcon uiw:component"],"id":"#tokensConfig/elements","properties":{"text":{"id":"#tokensConfig/elements/text","properties":{"primary":{"id":"#tokensConfig/elements/text/primary","properties":{"color":{"id":"#tokensConfig/elements/text/primary/color","properties":{"static":{"id":"#tokensConfig/elements/text/primary/color/static","properties":{"value":{"id":"#tokensConfig/elements/text/primary/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/text/primary/color/static/value/initial","default":"{color.gray.900}"},"dark":{"type":"string","id":"#tokensConfig/elements/text/primary/color/static/value/dark","default":"{color.gray.50}"}},"type":"object","default":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}}},"type":"object","default":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}}},"hover":{"id":"#tokensConfig/elements/text/primary/color/hover","type":"any","default":{}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}}},"type":"object","default":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}}},"secondary":{"id":"#tokensConfig/elements/text/secondary","properties":{"color":{"id":"#tokensConfig/elements/text/secondary/color","properties":{"static":{"id":"#tokensConfig/elements/text/secondary/color/static","properties":{"value":{"id":"#tokensConfig/elements/text/secondary/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/static/value/initial","default":"{color.gray.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/static/value/dark","default":"{color.gray.400}"}},"type":"object","default":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}}},"type":"object","default":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}}},"hover":{"id":"#tokensConfig/elements/text/secondary/color/hover","properties":{"value":{"id":"#tokensConfig/elements/text/secondary/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/hover/value/initial","default":"{color.gray.700}"},"dark":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/hover/value/dark","default":"{color.gray.200}"}},"type":"object","default":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}},"type":"object","default":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"type":"object","default":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}}},"type":"object","default":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}}},"container":{"title":"Main container sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:width-full-outline"],"id":"#tokensConfig/elements/container","properties":{"maxWidth":{"id":"#tokensConfig/elements/container/maxWidth","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/maxWidth/value","default":"80rem"}},"type":"object","default":{"value":"80rem"}},"padding":{"id":"#tokensConfig/elements/container/padding","properties":{"mobile":{"id":"#tokensConfig/elements/container/padding/mobile","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/mobile/value","default":"{space.4}"}},"type":"object","default":{"value":"{space.4}"}},"xs":{"id":"#tokensConfig/elements/container/padding/xs","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/xs/value","default":"{space.4}"}},"type":"object","default":{"value":"{space.4}"}},"sm":{"id":"#tokensConfig/elements/container/padding/sm","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/sm/value","default":"{space.6}"}},"type":"object","default":{"value":"{space.6}"}},"md":{"id":"#tokensConfig/elements/container/padding/md","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/md/value","default":"{space.6}"}},"type":"object","default":{"value":"{space.6}"}}},"type":"object","default":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}}},"type":"object","default":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}}},"backdrop":{"title":"Backdrops used in Elements.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:blur-circular"],"id":"#tokensConfig/elements/backdrop","properties":{"filter":{"id":"#tokensConfig/elements/backdrop/filter","properties":{"value":{"type":"string","id":"#tokensConfig/elements/backdrop/filter/value","default":"saturate(200%) blur(20px)"}},"type":"object","default":{"value":"saturate(200%) blur(20px)"}},"background":{"id":"#tokensConfig/elements/backdrop/background","properties":{"value":{"id":"#tokensConfig/elements/backdrop/background/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/backdrop/background/value/initial","default":"#fffc"},"dark":{"type":"string","id":"#tokensConfig/elements/backdrop/background/value/dark","default":"#0c0d0ccc"}},"type":"object","default":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"type":"object","default":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}}},"type":"object","default":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}}},"border":{"title":"Borders used in Elements.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon material-symbols:border-all-outline-rounded"],"id":"#tokensConfig/elements/border","properties":{"primary":{"id":"#tokensConfig/elements/border/primary","properties":{"static":{"id":"#tokensConfig/elements/border/primary/static","properties":{"value":{"id":"#tokensConfig/elements/border/primary/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/primary/static/value/initial","default":"{color.gray.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/border/primary/static/value/dark","default":"{color.gray.900}"}},"type":"object","default":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"type":"object","default":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"hover":{"id":"#tokensConfig/elements/border/primary/hover","properties":{"value":{"id":"#tokensConfig/elements/border/primary/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/primary/hover/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/border/primary/hover/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"secondary":{"id":"#tokensConfig/elements/border/secondary","properties":{"static":{"id":"#tokensConfig/elements/border/secondary/static","properties":{"value":{"id":"#tokensConfig/elements/border/secondary/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/secondary/static/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/border/secondary/static/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"hover":{"id":"#tokensConfig/elements/border/secondary/hover","properties":{"value":{"id":"#tokensConfig/elements/border/secondary/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/secondary/hover/value/initial","default":""},"dark":{"type":"string","id":"#tokensConfig/elements/border/secondary/hover/value/dark","default":""}},"type":"object","default":{"initial":"","dark":""}}},"type":"object","default":{"value":{"initial":"","dark":""}}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}}},"type":"object","default":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}}},"surface":{"title":"Surfaces used in Elements.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon fluent:surface-hub-20-filled"],"id":"#tokensConfig/elements/surface","properties":{"background":{"id":"#tokensConfig/elements/surface/background","properties":{"base":{"id":"#tokensConfig/elements/surface/background/base","properties":{"value":{"id":"#tokensConfig/elements/surface/background/base/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/surface/background/base/value/initial","default":"{color.gray.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/surface/background/base/value/dark","default":"{color.gray.900}"}},"type":"object","default":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"type":"object","default":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"type":"object","default":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"primary":{"id":"#tokensConfig/elements/surface/primary","properties":{"backgroundColor":{"id":"#tokensConfig/elements/surface/primary/backgroundColor","properties":{"value":{"id":"#tokensConfig/elements/surface/primary/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/surface/primary/backgroundColor/value/initial","default":"{color.gray.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/surface/primary/backgroundColor/value/dark","default":"{color.gray.900}"}},"type":"object","default":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"type":"object","default":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"secondary":{"id":"#tokensConfig/elements/surface/secondary","properties":{"backgroundColor":{"id":"#tokensConfig/elements/surface/secondary/backgroundColor","properties":{"value":{"id":"#tokensConfig/elements/surface/secondary/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/surface/secondary/backgroundColor/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/surface/secondary/backgroundColor/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}}},"type":"object","default":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}}},"state":{"title":"Color states used in Elements.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon mdi:palette-advanced"],"id":"#tokensConfig/elements/state","properties":{"primary":{"id":"#tokensConfig/elements/state/primary","properties":{"color":{"id":"#tokensConfig/elements/state/primary/color","properties":{"primary":{"id":"#tokensConfig/elements/state/primary/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/color/primary/value/initial","default":"{color.primary.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/color/primary/value/dark","default":"{color.primary.400}"}},"type":"object","default":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}}},"type":"object","default":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/primary/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/color/secondary/value/initial","default":"{color.primary.700}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/color/secondary/value/dark","default":"{color.primary.200}"}},"type":"object","default":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"type":"object","default":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/primary/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/primary/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/primary/value/initial","default":"{color.primary.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/primary/value/dark","default":"{color.primary.900}"}},"type":"object","default":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}}},"type":"object","default":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/primary/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/secondary/value/initial","default":"{color.primary.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/secondary/value/dark","default":"{color.primary.800}"}},"type":"object","default":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"type":"object","default":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/primary/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/primary/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/primary/value/initial","default":"{color.primary.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/primary/value/dark","default":"{color.primary.800}"}},"type":"object","default":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"type":"object","default":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/primary/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/secondary/value/initial","default":"{color.primary.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/secondary/value/dark","default":"{color.primary.700}"}},"type":"object","default":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}},"type":"object","default":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}}},"info":{"id":"#tokensConfig/elements/state/info","properties":{"color":{"id":"#tokensConfig/elements/state/info/color","properties":{"primary":{"id":"#tokensConfig/elements/state/info/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/info/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/color/primary/value/initial","default":"{color.blue.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/color/primary/value/dark","default":"{color.blue.400}"}},"type":"object","default":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}}},"type":"object","default":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/info/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/info/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/color/secondary/value/initial","default":"{color.blue.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/color/secondary/value/dark","default":"{color.blue.200}"}},"type":"object","default":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"type":"object","default":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/info/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/info/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/info/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/primary/value/initial","default":"{color.blue.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/primary/value/dark","default":"{color.blue.900}"}},"type":"object","default":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}}},"type":"object","default":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/info/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/info/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/secondary/value/initial","default":"{color.blue.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/secondary/value/dark","default":"{color.blue.800}"}},"type":"object","default":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"type":"object","default":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/info/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/info/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/info/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/primary/value/initial","default":"{color.blue.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/primary/value/dark","default":"{color.blue.800}"}},"type":"object","default":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"type":"object","default":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/info/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/info/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/secondary/value/initial","default":"{color.blue.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/secondary/value/dark","default":"{color.blue.700}"}},"type":"object","default":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}},"type":"object","default":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}}},"success":{"id":"#tokensConfig/elements/state/success","properties":{"color":{"id":"#tokensConfig/elements/state/success/color","properties":{"primary":{"id":"#tokensConfig/elements/state/success/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/success/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/color/primary/value/initial","default":"{color.green.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/color/primary/value/dark","default":"{color.green.400}"}},"type":"object","default":{"initial":"{color.green.500}","dark":"{color.green.400}"}}},"type":"object","default":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/success/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/success/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/color/secondary/value/initial","default":"{color.green.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/color/secondary/value/dark","default":"{color.green.200}"}},"type":"object","default":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"type":"object","default":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/success/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/success/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/success/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/primary/value/initial","default":"{color.green.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/primary/value/dark","default":"{color.green.900}"}},"type":"object","default":{"initial":"{color.green.50}","dark":"{color.green.900}"}}},"type":"object","default":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/success/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/success/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/secondary/value/initial","default":"{color.green.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/secondary/value/dark","default":"{color.green.800}"}},"type":"object","default":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"type":"object","default":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/success/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/success/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/success/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/primary/value/initial","default":"{color.green.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/primary/value/dark","default":"{color.green.800}"}},"type":"object","default":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"type":"object","default":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/success/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/success/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/secondary/value/initial","default":"{color.green.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/secondary/value/dark","default":"{color.green.700}"}},"type":"object","default":{"initial":"{color.green.200}","dark":"{color.green.700}"}}},"type":"object","default":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}}},"warning":{"id":"#tokensConfig/elements/state/warning","properties":{"color":{"id":"#tokensConfig/elements/state/warning/color","properties":{"primary":{"id":"#tokensConfig/elements/state/warning/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/color/primary/value/initial","default":"{color.yellow.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/color/primary/value/dark","default":"{color.yellow.400}"}},"type":"object","default":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/warning/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/color/secondary/value/initial","default":"{color.yellow.700}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/color/secondary/value/dark","default":"{color.yellow.200}"}},"type":"object","default":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/warning/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/warning/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/primary/value/initial","default":"{color.yellow.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/primary/value/dark","default":"{color.yellow.900}"}},"type":"object","default":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/warning/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/secondary/value/initial","default":"{color.yellow.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/secondary/value/dark","default":"{color.yellow.800}"}},"type":"object","default":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/warning/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/warning/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/primary/value/initial","default":"{color.yellow.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/primary/value/dark","default":"{color.yellow.800}"}},"type":"object","default":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/warning/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/secondary/value/initial","default":"{color.yellow.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/secondary/value/dark","default":"{color.yellow.700}"}},"type":"object","default":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}}},"danger":{"id":"#tokensConfig/elements/state/danger","properties":{"color":{"id":"#tokensConfig/elements/state/danger/color","properties":{"primary":{"id":"#tokensConfig/elements/state/danger/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/color/primary/value/initial","default":"{color.red.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/color/primary/value/dark","default":"{color.red.300}"}},"type":"object","default":{"initial":"{color.red.500}","dark":"{color.red.300}"}}},"type":"object","default":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}}},"secondary":{"id":"#tokensConfig/elements/state/danger/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/color/secondary/value/initial","default":"{color.red.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/color/secondary/value/dark","default":"{color.red.200}"}},"type":"object","default":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"type":"object","default":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/danger/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/danger/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/primary/value/initial","default":"{color.red.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/primary/value/dark","default":"{color.red.900}"}},"type":"object","default":{"initial":"{color.red.50}","dark":"{color.red.900}"}}},"type":"object","default":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/danger/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/secondary/value/initial","default":"{color.red.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/secondary/value/dark","default":"{color.red.800}"}},"type":"object","default":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"type":"object","default":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/danger/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/danger/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/primary/value/initial","default":"{color.red.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/primary/value/dark","default":"{color.red.800}"}},"type":"object","default":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"type":"object","default":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/danger/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/secondary/value/initial","default":"{color.red.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/secondary/value/dark","default":"{color.red.700}"}},"type":"object","default":{"initial":"{color.red.200}","dark":"{color.red.700}"}}},"type":"object","default":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"type":"object","default":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}}},"type":"object","default":{"text":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}}},"typography":{"title":"All the configurable tokens for your Typography.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon material-symbols:article"],"id":"#tokensConfig/typography","properties":{"body":{"id":"#tokensConfig/typography/body","properties":{"color":{"id":"#tokensConfig/typography/body/color","properties":{"value":{"id":"#tokensConfig/typography/body/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/typography/body/color/value/initial","default":"{color.black}"},"dark":{"type":"string","id":"#tokensConfig/typography/body/color/value/dark","default":"{color.white}"}},"type":"object","default":{"initial":"{color.black}","dark":"{color.white}"}}},"type":"object","default":{"value":{"initial":"{color.black}","dark":"{color.white}"}}},"backgroundColor":{"id":"#tokensConfig/typography/body/backgroundColor","properties":{"value":{"id":"#tokensConfig/typography/body/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/typography/body/backgroundColor/value/initial","default":"{color.white}"},"dark":{"type":"string","id":"#tokensConfig/typography/body/backgroundColor/value/dark","default":"{color.black}"}},"type":"object","default":{"initial":"{color.white}","dark":"{color.black}"}}},"type":"object","default":{"value":{"initial":"{color.white}","dark":"{color.black}"}}}},"type":"object","default":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}}},"verticalMargin":{"title":"Vertical spacings between paragraphs.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon mingcute:line-height-line"],"id":"#tokensConfig/typography/verticalMargin","properties":{"sm":{"id":"#tokensConfig/typography/verticalMargin/sm","properties":{"value":{"type":"string","id":"#tokensConfig/typography/verticalMargin/sm/value","default":"16px"}},"type":"object","default":{"value":"16px"}},"base":{"id":"#tokensConfig/typography/verticalMargin/base","properties":{"value":{"type":"string","id":"#tokensConfig/typography/verticalMargin/base/value","default":"24px"}},"type":"object","default":{"value":"24px"}}},"type":"object","default":{"sm":{"value":"16px"},"base":{"value":"24px"}}},"letterSpacing":{"title":"Horizontal spacings between letters.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon mingcute:letter-spacing-line"],"id":"#tokensConfig/typography/letterSpacing","properties":{"tight":{"id":"#tokensConfig/typography/letterSpacing/tight","properties":{"value":{"type":"string","id":"#tokensConfig/typography/letterSpacing/tight/value","default":"-0.025em"}},"type":"object","default":{"value":"-0.025em"}},"wide":{"id":"#tokensConfig/typography/letterSpacing/wide","properties":{"value":{"type":"string","id":"#tokensConfig/typography/letterSpacing/wide/value","default":"0.025em"}},"type":"object","default":{"value":"0.025em"}}},"type":"object","default":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}}},"fontSize":{"title":"Horizontal spacings between letters.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon mingcute:font-size-fill"],"id":"#tokensConfig/typography/fontSize","properties":{"xs":{"id":"#tokensConfig/typography/fontSize/xs","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/xs/value","default":"12px"}},"type":"object","default":{"value":"12px"}},"sm":{"id":"#tokensConfig/typography/fontSize/sm","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/sm/value","default":"14px"}},"type":"object","default":{"value":"14px"}},"base":{"id":"#tokensConfig/typography/fontSize/base","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/base/value","default":"16px"}},"type":"object","default":{"value":"16px"}},"lg":{"id":"#tokensConfig/typography/fontSize/lg","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/lg/value","default":"18px"}},"type":"object","default":{"value":"18px"}},"xl":{"id":"#tokensConfig/typography/fontSize/xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/xl/value","default":"20px"}},"type":"object","default":{"value":"20px"}},"2xl":{"id":"#tokensConfig/typography/fontSize/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/2xl/value","default":"24px"}},"type":"object","default":{"value":"24px"}},"3xl":{"id":"#tokensConfig/typography/fontSize/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/3xl/value","default":"30px"}},"type":"object","default":{"value":"30px"}},"4xl":{"id":"#tokensConfig/typography/fontSize/4xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/4xl/value","default":"36px"}},"type":"object","default":{"value":"36px"}},"5xl":{"id":"#tokensConfig/typography/fontSize/5xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/5xl/value","default":"48px"}},"type":"object","default":{"value":"48px"}},"6xl":{"id":"#tokensConfig/typography/fontSize/6xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/6xl/value","default":"60px"}},"type":"object","default":{"value":"60px"}},"7xl":{"id":"#tokensConfig/typography/fontSize/7xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/7xl/value","default":"72px"}},"type":"object","default":{"value":"72px"}},"8xl":{"id":"#tokensConfig/typography/fontSize/8xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/8xl/value","default":"96px"}},"type":"object","default":{"value":"96px"}},"9xl":{"id":"#tokensConfig/typography/fontSize/9xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/9xl/value","default":"128px"}},"type":"object","default":{"value":"128px"}}},"type":"object","default":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}}},"fontWeight":{"title":"Font weights used in typography.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon mingcute:bold-fill"],"id":"#tokensConfig/typography/fontWeight","properties":{"thin":{"id":"#tokensConfig/typography/fontWeight/thin","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/thin/value","default":"100"}},"type":"object","default":{"value":"100"}},"extralight":{"id":"#tokensConfig/typography/fontWeight/extralight","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/extralight/value","default":"200"}},"type":"object","default":{"value":"200"}},"light":{"id":"#tokensConfig/typography/fontWeight/light","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/light/value","default":"300"}},"type":"object","default":{"value":"300"}},"normal":{"id":"#tokensConfig/typography/fontWeight/normal","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/normal/value","default":"400"}},"type":"object","default":{"value":"400"}},"medium":{"id":"#tokensConfig/typography/fontWeight/medium","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/medium/value","default":"500"}},"type":"object","default":{"value":"500"}},"semibold":{"id":"#tokensConfig/typography/fontWeight/semibold","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/semibold/value","default":"600"}},"type":"object","default":{"value":"600"}},"bold":{"id":"#tokensConfig/typography/fontWeight/bold","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/bold/value","default":"700"}},"type":"object","default":{"value":"700"}},"extrabold":{"id":"#tokensConfig/typography/fontWeight/extrabold","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/extrabold/value","default":"800"}},"type":"object","default":{"value":"800"}},"black":{"id":"#tokensConfig/typography/fontWeight/black","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/black/value","default":"900"}},"type":"object","default":{"value":"900"}}},"type":"object","default":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}}},"lead":{"title":"Line heights used in your typography.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon material-symbols:height-rounded"],"id":"#tokensConfig/typography/lead","properties":{"1":{"id":"#tokensConfig/typography/lead/1","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/1/value","default":".025rem"}},"type":"object","default":{"value":".025rem"}},"2":{"id":"#tokensConfig/typography/lead/2","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/2/value","default":".5rem"}},"type":"object","default":{"value":".5rem"}},"3":{"id":"#tokensConfig/typography/lead/3","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/3/value","default":".75rem"}},"type":"object","default":{"value":".75rem"}},"4":{"id":"#tokensConfig/typography/lead/4","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/4/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"5":{"id":"#tokensConfig/typography/lead/5","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/5/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"6":{"id":"#tokensConfig/typography/lead/6","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/6/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"7":{"id":"#tokensConfig/typography/lead/7","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/7/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"8":{"id":"#tokensConfig/typography/lead/8","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/8/value","default":"2rem"}},"type":"object","default":{"value":"2rem"}},"9":{"id":"#tokensConfig/typography/lead/9","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/9/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"10":{"id":"#tokensConfig/typography/lead/10","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/10/value","default":"2.5rem"}},"type":"object","default":{"value":"2.5rem"}},"none":{"id":"#tokensConfig/typography/lead/none","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/none/value","default":"1"}},"type":"object","default":{"value":"1"}},"tight":{"id":"#tokensConfig/typography/lead/tight","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/tight/value","default":"1.25"}},"type":"object","default":{"value":"1.25"}},"snug":{"id":"#tokensConfig/typography/lead/snug","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/snug/value","default":"1.375"}},"type":"object","default":{"value":"1.375"}},"normal":{"id":"#tokensConfig/typography/lead/normal","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/normal/value","default":"1.5"}},"type":"object","default":{"value":"1.5"}},"relaxed":{"id":"#tokensConfig/typography/lead/relaxed","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/relaxed/value","default":"1.625"}},"type":"object","default":{"value":"1.625"}},"loose":{"id":"#tokensConfig/typography/lead/loose","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/loose/value","default":"2"}},"type":"object","default":{"value":"2"}}},"type":"object","default":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}}},"font":{"title":"Your typography fonts","tags":["@studioInput design-token","@studioInputTokenType font","@studioIcon material-symbols:font-download-rounded"],"id":"#tokensConfig/typography/font","properties":{"display":{"id":"#tokensConfig/typography/font/display","properties":{"value":{"type":"string","id":"#tokensConfig/typography/font/display/value","default":"{font.sans}"}},"type":"object","default":{"value":"{font.sans}"}},"body":{"id":"#tokensConfig/typography/font/body","properties":{"value":{"type":"string","id":"#tokensConfig/typography/font/body/value","default":"{font.sans}"}},"type":"object","default":{"value":"{font.sans}"}},"code":{"id":"#tokensConfig/typography/font/code","properties":{"value":{"type":"string","id":"#tokensConfig/typography/font/code/value","default":"{font.mono}"}},"type":"object","default":{"value":"{font.mono}"}}},"type":"object","default":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}}},"color":{"title":"Your typography color palette.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon ph:palette"],"id":"#tokensConfig/typography/color","properties":{"primary":{"id":"#tokensConfig/typography/color/primary","properties":{"50":{"id":"#tokensConfig/typography/color/primary/50","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/50/value","default":"{color.primary.50}"}},"type":"object","default":{"value":"{color.primary.50}"}},"100":{"id":"#tokensConfig/typography/color/primary/100","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/100/value","default":"{color.primary.100}"}},"type":"object","default":{"value":"{color.primary.100}"}},"200":{"id":"#tokensConfig/typography/color/primary/200","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/200/value","default":"{color.primary.200}"}},"type":"object","default":{"value":"{color.primary.200}"}},"300":{"id":"#tokensConfig/typography/color/primary/300","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/300/value","default":"{color.primary.300}"}},"type":"object","default":{"value":"{color.primary.300}"}},"400":{"id":"#tokensConfig/typography/color/primary/400","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/400/value","default":"{color.primary.400}"}},"type":"object","default":{"value":"{color.primary.400}"}},"500":{"id":"#tokensConfig/typography/color/primary/500","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/500/value","default":"{color.primary.500}"}},"type":"object","default":{"value":"{color.primary.500}"}},"600":{"id":"#tokensConfig/typography/color/primary/600","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/600/value","default":"{color.primary.600}"}},"type":"object","default":{"value":"{color.primary.600}"}},"700":{"id":"#tokensConfig/typography/color/primary/700","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/700/value","default":"{color.primary.700}"}},"type":"object","default":{"value":"{color.primary.700}"}},"800":{"id":"#tokensConfig/typography/color/primary/800","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/800/value","default":"{color.primary.800}"}},"type":"object","default":{"value":"{color.primary.800}"}},"900":{"id":"#tokensConfig/typography/color/primary/900","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/900/value","default":"{color.primary.900}"}},"type":"object","default":{"value":"{color.primary.900}"}}},"type":"object","default":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}}},"secondary":{"id":"#tokensConfig/typography/color/secondary","properties":{"50":{"id":"#tokensConfig/typography/color/secondary/50","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/50/value","default":"{color.gray.50}"}},"type":"object","default":{"value":"{color.gray.50}"}},"100":{"id":"#tokensConfig/typography/color/secondary/100","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/100/value","default":"{color.gray.100}"}},"type":"object","default":{"value":"{color.gray.100}"}},"200":{"id":"#tokensConfig/typography/color/secondary/200","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/200/value","default":"{color.gray.200}"}},"type":"object","default":{"value":"{color.gray.200}"}},"300":{"id":"#tokensConfig/typography/color/secondary/300","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/300/value","default":"{color.gray.300}"}},"type":"object","default":{"value":"{color.gray.300}"}},"400":{"id":"#tokensConfig/typography/color/secondary/400","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/400/value","default":"{color.gray.400}"}},"type":"object","default":{"value":"{color.gray.400}"}},"500":{"id":"#tokensConfig/typography/color/secondary/500","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/500/value","default":"{color.gray.500}"}},"type":"object","default":{"value":"{color.gray.500}"}},"600":{"id":"#tokensConfig/typography/color/secondary/600","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/600/value","default":"{color.gray.600}"}},"type":"object","default":{"value":"{color.gray.600}"}},"700":{"id":"#tokensConfig/typography/color/secondary/700","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/700/value","default":"{color.gray.700}"}},"type":"object","default":{"value":"{color.gray.700}"}},"800":{"id":"#tokensConfig/typography/color/secondary/800","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/800/value","default":"{color.gray.800}"}},"type":"object","default":{"value":"{color.gray.800}"}},"900":{"id":"#tokensConfig/typography/color/secondary/900","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/900/value","default":"{color.gray.900}"}},"type":"object","default":{"value":"{color.gray.900}"}}},"type":"object","default":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}},"type":"object","default":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}}},"type":"object","default":{"body":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px"},"base":{"value":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}},"fontSize":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"font":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}},"color":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}}},"prose":{"title":"All the configurable tokens for your Prose components.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon lucide:component"],"id":"#tokensConfig/prose","properties":{"p":{"id":"#tokensConfig/prose/p","properties":{"fontSize":{"id":"#tokensConfig/prose/p/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/fontSize/value","default":"{typography.fontSize.base}"}},"type":"object","default":{"value":"{typography.fontSize.base}"}},"lineHeight":{"id":"#tokensConfig/prose/p/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/lineHeight/value","default":"{typography.lead.normal}"}},"type":"object","default":{"value":"{typography.lead.normal}"}},"margin":{"id":"#tokensConfig/prose/p/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"br":{"id":"#tokensConfig/prose/p/br","properties":{"margin":{"id":"#tokensConfig/prose/p/br/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/br/margin/value","default":"{typography.verticalMargin.base} 0 0 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}}},"type":"object","default":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}}},"h1":{"id":"#tokensConfig/prose/h1","properties":{"margin":{"id":"#tokensConfig/prose/h1/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/margin/value","default":"0 0 2rem"}},"type":"object","default":{"value":"0 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h1/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/fontSize/value","default":"{typography.fontSize.5xl}"}},"type":"object","default":{"value":"{typography.fontSize.5xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h1/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/lineHeight/value","default":"{typography.lead.tight}"}},"type":"object","default":{"value":"{typography.lead.tight}"}},"fontWeight":{"id":"#tokensConfig/prose/h1/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/fontWeight/value","default":"{typography.fontWeight.bold}"}},"type":"object","default":{"value":"{typography.fontWeight.bold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h1/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h1/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/iconSize/value","default":"{typography.fontSize.3xl}"}},"type":"object","default":{"value":"{typography.fontSize.3xl}"}}},"type":"object","default":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}}},"h2":{"id":"#tokensConfig/prose/h2","properties":{"margin":{"id":"#tokensConfig/prose/h2/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h2/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/fontSize/value","default":"{typography.fontSize.4xl}"}},"type":"object","default":{"value":"{typography.fontSize.4xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h2/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/lineHeight/value","default":"{typography.lead.tight}"}},"type":"object","default":{"value":"{typography.lead.tight}"}},"fontWeight":{"id":"#tokensConfig/prose/h2/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h2/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h2/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/iconSize/value","default":"{typography.fontSize.2xl}"}},"type":"object","default":{"value":"{typography.fontSize.2xl}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}}},"h3":{"id":"#tokensConfig/prose/h3","properties":{"margin":{"id":"#tokensConfig/prose/h3/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h3/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/fontSize/value","default":"{typography.fontSize.3xl}"}},"type":"object","default":{"value":"{typography.fontSize.3xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h3/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/lineHeight/value","default":"{typography.lead.snug}"}},"type":"object","default":{"value":"{typography.lead.snug}"}},"fontWeight":{"id":"#tokensConfig/prose/h3/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h3/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h3/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/iconSize/value","default":"{typography.fontSize.xl}"}},"type":"object","default":{"value":"{typography.fontSize.xl}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}}},"h4":{"id":"#tokensConfig/prose/h4","properties":{"margin":{"id":"#tokensConfig/prose/h4/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h4/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/fontSize/value","default":"{typography.fontSize.2xl}"}},"type":"object","default":{"value":"{typography.fontSize.2xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h4/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/lineHeight/value","default":"{typography.lead.snug}"}},"type":"object","default":{"value":"{typography.lead.snug}"}},"fontWeight":{"id":"#tokensConfig/prose/h4/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h4/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h4/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/iconSize/value","default":"{typography.fontSize.lg}"}},"type":"object","default":{"value":"{typography.fontSize.lg}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}}},"h5":{"id":"#tokensConfig/prose/h5","properties":{"margin":{"id":"#tokensConfig/prose/h5/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h5/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/fontSize/value","default":"{typography.fontSize.xl}"}},"type":"object","default":{"value":"{typography.fontSize.xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h5/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/lineHeight/value","default":"{typography.lead.snug}"}},"type":"object","default":{"value":"{typography.lead.snug}"}},"fontWeight":{"id":"#tokensConfig/prose/h5/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"iconSize":{"id":"#tokensConfig/prose/h5/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/iconSize/value","default":"{typography.fontSize.lg}"}},"type":"object","default":{"value":"{typography.fontSize.lg}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}}},"h6":{"id":"#tokensConfig/prose/h6","properties":{"margin":{"id":"#tokensConfig/prose/h6/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h6/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/fontSize/value","default":"{typography.fontSize.lg}"}},"type":"object","default":{"value":"{typography.fontSize.lg}"}},"lineHeight":{"id":"#tokensConfig/prose/h6/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/lineHeight/value","default":"{typography.lead.normal}"}},"type":"object","default":{"value":"{typography.lead.normal}"}},"fontWeight":{"id":"#tokensConfig/prose/h6/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"iconSize":{"id":"#tokensConfig/prose/h6/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/iconSize/value","default":"{typography.fontSize.base}"}},"type":"object","default":{"value":"{typography.fontSize.base}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}}},"strong":{"id":"#tokensConfig/prose/strong","properties":{"fontWeight":{"id":"#tokensConfig/prose/strong/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/strong/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}}},"type":"object","default":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}}},"img":{"id":"#tokensConfig/prose/img","properties":{"margin":{"id":"#tokensConfig/prose/img/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/img/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"}}},"a":{"id":"#tokensConfig/prose/a","properties":{"textDecoration":{"id":"#tokensConfig/prose/a/textDecoration","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/textDecoration/value","default":"none"}},"type":"object","default":{"value":"none"}},"color":{"id":"#tokensConfig/prose/a/color","properties":{"static":{"id":"#tokensConfig/prose/a/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/color/static/value/initial","default":"inherit"},"dark":{"type":"string","id":"#tokensConfig/prose/a/color/static/value/dark","default":"inherit"}},"type":"object","default":{"initial":"inherit","dark":"inherit"}}},"type":"object","default":{"value":{"initial":"inherit","dark":"inherit"}}},"hover":{"id":"#tokensConfig/prose/a/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/color/hover/value/initial","default":"{typography.color.primary.500}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/color/hover/value/dark","default":"{typography.color.primary.400}"}},"type":"object","default":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"type":"object","default":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}}},"type":"object","default":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}}},"border":{"id":"#tokensConfig/prose/a/border","properties":{"width":{"id":"#tokensConfig/prose/a/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/a/border/style","properties":{"static":{"id":"#tokensConfig/prose/a/border/style/static","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/style/static/value","default":"dashed"}},"type":"object","default":{"value":"dashed"}},"hover":{"id":"#tokensConfig/prose/a/border/style/hover","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/style/hover/value","default":"solid"}},"type":"object","default":{"value":"solid"}}},"type":"object","default":{"static":{"value":"dashed"},"hover":{"value":"solid"}}},"color":{"id":"#tokensConfig/prose/a/border/color","properties":{"static":{"id":"#tokensConfig/prose/a/border/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/border/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/border/color/static/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/border/color/static/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}},"hover":{"id":"#tokensConfig/prose/a/border/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/border/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/border/color/hover/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/border/color/hover/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"distance":{"id":"#tokensConfig/prose/a/border/distance","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/distance/value","default":"2px"}},"type":"object","default":{"value":"2px"}}},"type":"object","default":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}}},"fontWeight":{"id":"#tokensConfig/prose/a/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/fontWeight/value","default":"{typography.fontWeight.medium}"}},"type":"object","default":{"value":"{typography.fontWeight.medium}"}},"hasCode":{"id":"#tokensConfig/prose/a/hasCode","properties":{"borderBottom":{"id":"#tokensConfig/prose/a/hasCode/borderBottom","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/hasCode/borderBottom/value","default":"none"}},"type":"object","default":{"value":"none"}}},"type":"object","default":{"borderBottom":{"value":"none"}}},"code":{"id":"#tokensConfig/prose/a/code","properties":{"border":{"id":"#tokensConfig/prose/a/code/border","properties":{"width":{"id":"#tokensConfig/prose/a/code/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/code/border/width/value","default":"{prose.a.border.width}"}},"type":"object","default":{"value":"{prose.a.border.width}"}},"style":{"id":"#tokensConfig/prose/a/code/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/code/border/style/value","default":"{prose.a.border.style.static}"}},"type":"object","default":{"value":"{prose.a.border.style.static}"}},"color":{"id":"#tokensConfig/prose/a/code/border/color","properties":{"static":{"id":"#tokensConfig/prose/a/code/border/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/code/border/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/static/value/initial","default":"{typography.color.secondary.400}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/static/value/dark","default":"{typography.color.secondary.600}"}},"type":"object","default":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}}},"hover":{"id":"#tokensConfig/prose/a/code/border/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/code/border/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/hover/value/initial","default":"{typography.color.primary.500}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/hover/value/dark","default":"{typography.color.primary.600}"}},"type":"object","default":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}},"type":"object","default":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"type":"object","default":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}}},"type":"object","default":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}}},"color":{"id":"#tokensConfig/prose/a/code/color","properties":{"static":{"id":"#tokensConfig/prose/a/code/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/code/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/color/static/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/color/static/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}},"hover":{"id":"#tokensConfig/prose/a/code/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/code/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/color/hover/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/color/hover/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"background":{"id":"#tokensConfig/prose/a/code/background","properties":{"static":{"id":"#tokensConfig/prose/a/code/background/static","type":"any","default":{}},"hover":{"id":"#tokensConfig/prose/a/code/background/hover","properties":{"value":{"id":"#tokensConfig/prose/a/code/background/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/background/hover/value/initial","default":"{typography.color.primary.50}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/background/hover/value/dark","default":"{typography.color.primary.900}"}},"type":"object","default":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}},"type":"object","default":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}},"type":"object","default":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"type":"object","default":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}}},"type":"object","default":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}}},"blockquote":{"id":"#tokensConfig/prose/blockquote","properties":{"margin":{"id":"#tokensConfig/prose/blockquote/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"paddingInlineStart":{"id":"#tokensConfig/prose/blockquote/paddingInlineStart","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/paddingInlineStart/value","default":"24px"}},"type":"object","default":{"value":"24px"}},"quotes":{"id":"#tokensConfig/prose/blockquote/quotes","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/quotes/value","default":"'201C' '201D' '2018' '2019'"}},"type":"object","default":{"value":"'201C' '201D' '2018' '2019'"}},"color":{"id":"#tokensConfig/prose/blockquote/color","properties":{"value":{"id":"#tokensConfig/prose/blockquote/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/blockquote/color/value/initial","default":"{typography.color.secondary.500}"},"dark":{"type":"string","id":"#tokensConfig/prose/blockquote/color/value/dark","default":"{typography.color.secondary.400}"}},"type":"object","default":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}}},"border":{"id":"#tokensConfig/prose/blockquote/border","properties":{"width":{"id":"#tokensConfig/prose/blockquote/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/border/width/value","default":"4px"}},"type":"object","default":{"value":"4px"}},"style":{"id":"#tokensConfig/prose/blockquote/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/border/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/blockquote/border/color","properties":{"value":{"id":"#tokensConfig/prose/blockquote/border/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/blockquote/border/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/blockquote/border/color/value/dark","default":"{typography.color.secondary.700}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"type":"object","default":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}}},"ul":{"id":"#tokensConfig/prose/ul","properties":{"listStyleType":{"id":"#tokensConfig/prose/ul/listStyleType","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ul/listStyleType/value","default":"disc"}},"type":"object","default":{"value":"disc"}},"margin":{"id":"#tokensConfig/prose/ul/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ul/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"paddingInlineStart":{"id":"#tokensConfig/prose/ul/paddingInlineStart","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ul/paddingInlineStart/value","default":"21px"}},"type":"object","default":{"value":"21px"}},"li":{"id":"#tokensConfig/prose/ul/li","properties":{"markerColor":{"id":"#tokensConfig/prose/ul/li/markerColor","properties":{"value":{"id":"#tokensConfig/prose/ul/li/markerColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/ul/li/markerColor/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/ul/li/markerColor/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"type":"object","default":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"ol":{"id":"#tokensConfig/prose/ol","properties":{"listStyleType":{"id":"#tokensConfig/prose/ol/listStyleType","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ol/listStyleType/value","default":"decimal"}},"type":"object","default":{"value":"decimal"}},"margin":{"id":"#tokensConfig/prose/ol/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ol/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"paddingInlineStart":{"id":"#tokensConfig/prose/ol/paddingInlineStart","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ol/paddingInlineStart/value","default":"21px"}},"type":"object","default":{"value":"21px"}},"li":{"id":"#tokensConfig/prose/ol/li","properties":{"markerColor":{"id":"#tokensConfig/prose/ol/li/markerColor","properties":{"value":{"id":"#tokensConfig/prose/ol/li/markerColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/ol/li/markerColor/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/ol/li/markerColor/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"type":"object","default":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"li":{"id":"#tokensConfig/prose/li","properties":{"margin":{"id":"#tokensConfig/prose/li/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/li/margin/value","default":"{typography.verticalMargin.sm} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.sm} 0"}},"listStylePosition":{"id":"#tokensConfig/prose/li/listStylePosition","properties":{"value":{"type":"string","id":"#tokensConfig/prose/li/listStylePosition/value","default":"outside"}},"type":"object","default":{"value":"outside"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}}},"hr":{"id":"#tokensConfig/prose/hr","properties":{"margin":{"id":"#tokensConfig/prose/hr/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/hr/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"style":{"id":"#tokensConfig/prose/hr/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/hr/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"width":{"id":"#tokensConfig/prose/hr/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/hr/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"color":{"id":"#tokensConfig/prose/hr/color","properties":{"value":{"id":"#tokensConfig/prose/hr/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/hr/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/hr/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"table":{"id":"#tokensConfig/prose/table","properties":{"margin":{"id":"#tokensConfig/prose/table/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"textAlign":{"id":"#tokensConfig/prose/table/textAlign","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/textAlign/value","default":"start"}},"type":"object","default":{"value":"start"}},"fontSize":{"id":"#tokensConfig/prose/table/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}},"lineHeight":{"id":"#tokensConfig/prose/table/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/lineHeight/value","default":"{typography.lead.6}"}},"type":"object","default":{"value":"{typography.lead.6}"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}}},"thead":{"id":"#tokensConfig/prose/thead","properties":{"border":{"id":"#tokensConfig/prose/thead/border","properties":{"width":{"id":"#tokensConfig/prose/thead/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/border/width/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"style":{"id":"#tokensConfig/prose/thead/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/border/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/thead/border/color","properties":{"value":{"id":"#tokensConfig/prose/thead/border/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/thead/border/color/value/initial","default":"{typography.color.secondary.300}"},"dark":{"type":"string","id":"#tokensConfig/prose/thead/border/color/value/dark","default":"{typography.color.secondary.600}"}},"type":"object","default":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}}},"type":"object","default":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}}},"borderBottom":{"id":"#tokensConfig/prose/thead/borderBottom","properties":{"width":{"id":"#tokensConfig/prose/thead/borderBottom/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/thead/borderBottom/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/thead/borderBottom/color","properties":{"value":{"id":"#tokensConfig/prose/thead/borderBottom/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"type":"object","default":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"th":{"id":"#tokensConfig/prose/th","properties":{"color":{"id":"#tokensConfig/prose/th/color","properties":{"value":{"id":"#tokensConfig/prose/th/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/th/color/value/initial","default":"{typography.color.secondary.600}"},"dark":{"type":"string","id":"#tokensConfig/prose/th/color/value/dark","default":"{typography.color.secondary.400}"}},"type":"object","default":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}}},"padding":{"id":"#tokensConfig/prose/th/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/th/padding/value","default":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"}},"type":"object","default":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"}},"fontWeight":{"id":"#tokensConfig/prose/th/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/th/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"textAlign":{"id":"#tokensConfig/prose/th/textAlign","properties":{"value":{"type":"string","id":"#tokensConfig/prose/th/textAlign/value","default":"inherit"}},"type":"object","default":{"value":"inherit"}}},"type":"object","default":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}}},"tbody":{"id":"#tokensConfig/prose/tbody","properties":{"tr":{"id":"#tokensConfig/prose/tbody/tr","properties":{"borderBottom":{"id":"#tokensConfig/prose/tbody/tr/borderBottom","properties":{"width":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/style/value","default":"dashed"}},"type":"object","default":{"value":"dashed"}},"color":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/color","properties":{"value":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"type":"object","default":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"td":{"id":"#tokensConfig/prose/tbody/td","properties":{"padding":{"id":"#tokensConfig/prose/tbody/td/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/td/padding/value","default":"{typography.verticalMargin.sm}"}},"type":"object","default":{"value":"{typography.verticalMargin.sm}"}}},"type":"object","default":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"code":{"id":"#tokensConfig/prose/tbody/code","properties":{"inline":{"id":"#tokensConfig/prose/tbody/code/inline","properties":{"fontSize":{"id":"#tokensConfig/prose/tbody/code/inline/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/code/inline/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}}},"type":"object","default":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"type":"object","default":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}}},"type":"object","default":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}}},"code":{"id":"#tokensConfig/prose/code","properties":{"block":{"id":"#tokensConfig/prose/code/block","properties":{"fontSize":{"id":"#tokensConfig/prose/code/block/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}},"margin":{"id":"#tokensConfig/prose/code/block/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"border":{"id":"#tokensConfig/prose/code/block/border","properties":{"width":{"id":"#tokensConfig/prose/code/block/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/border/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/code/block/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/border/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/code/block/border/color","properties":{"value":{"id":"#tokensConfig/prose/code/block/border/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/border/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/border/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"color":{"id":"#tokensConfig/prose/code/block/color","properties":{"value":{"id":"#tokensConfig/prose/code/block/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/color/value/initial","default":"{typography.color.secondary.700}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/color/value/dark","default":"{typography.color.secondary.200}"}},"type":"object","default":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"backgroundColor":{"id":"#tokensConfig/prose/code/block/backgroundColor","properties":{"value":{"id":"#tokensConfig/prose/code/block/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/backgroundColor/value/initial","default":"{typography.color.secondary.100}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/backgroundColor/value/dark","default":"{typography.color.secondary.900}"}},"type":"object","default":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}}},"backdropFilter":{"id":"#tokensConfig/prose/code/block/backdropFilter","properties":{"value":{"id":"#tokensConfig/prose/code/block/backdropFilter/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/backdropFilter/value/initial","default":"contrast(1)"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/backdropFilter/value/dark","default":"contrast(1)"}},"type":"object","default":{"initial":"contrast(1)","dark":"contrast(1)"}}},"type":"object","default":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}}},"pre":{"id":"#tokensConfig/prose/code/block/pre","properties":{"padding":{"id":"#tokensConfig/prose/code/block/pre/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/pre/padding/value","default":"{typography.verticalMargin.sm}"}},"type":"object","default":{"value":"{typography.verticalMargin.sm}"}}},"type":"object","default":{"padding":{"value":"{typography.verticalMargin.sm}"}}}},"type":"object","default":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}}},"inline":{"id":"#tokensConfig/prose/code/inline","properties":{"borderRadius":{"id":"#tokensConfig/prose/code/inline/borderRadius","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/borderRadius/value","default":"{radii.xs}"}},"type":"object","default":{"value":"{radii.xs}"}},"padding":{"id":"#tokensConfig/prose/code/inline/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/padding/value","default":"0.2rem 0.375rem 0.2rem 0.375rem"}},"type":"object","default":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"}},"fontSize":{"id":"#tokensConfig/prose/code/inline/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}},"fontWeight":{"id":"#tokensConfig/prose/code/inline/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/fontWeight/value","default":"{typography.fontWeight.normal}"}},"type":"object","default":{"value":"{typography.fontWeight.normal}"}},"color":{"id":"#tokensConfig/prose/code/inline/color","properties":{"value":{"id":"#tokensConfig/prose/code/inline/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/inline/color/value/initial","default":"{typography.color.secondary.700}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/inline/color/value/dark","default":"{typography.color.secondary.200}"}},"type":"object","default":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"backgroundColor":{"id":"#tokensConfig/prose/code/inline/backgroundColor","properties":{"value":{"id":"#tokensConfig/prose/code/inline/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/inline/backgroundColor/value/initial","default":"{typography.color.secondary.100}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/inline/backgroundColor/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"type":"object","default":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}}},"type":"object","default":{"p":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}},"hr":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}}},"docus":{"title":"All the configurable tokens from Docus.","tags":["@studioIcon material-symbols:docs"],"id":"#tokensConfig/docus","properties":{"body":{"id":"#tokensConfig/docus/body","properties":{"backgroundColor":{"id":"#tokensConfig/docus/body/backgroundColor","properties":{"value":{"id":"#tokensConfig/docus/body/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/body/backgroundColor/value/initial","default":"{color.white}"},"dark":{"type":"string","id":"#tokensConfig/docus/body/backgroundColor/value/dark","default":"{color.black}"}},"type":"object","default":{"initial":"{color.white}","dark":"{color.black}"}}},"type":"object","default":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"color":{"id":"#tokensConfig/docus/body/color","properties":{"value":{"id":"#tokensConfig/docus/body/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/body/color/value/initial","default":"{color.gray.800}"},"dark":{"type":"string","id":"#tokensConfig/docus/body/color/value/dark","default":"{color.gray.200}"}},"type":"object","default":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}}},"type":"object","default":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}}},"fontFamily":{"id":"#tokensConfig/docus/body/fontFamily","properties":{"value":{"type":"string","id":"#tokensConfig/docus/body/fontFamily/value","default":"{font.sans}"}},"type":"object","default":{"value":"{font.sans}"}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}}},"header":{"id":"#tokensConfig/docus/header","properties":{"height":{"id":"#tokensConfig/docus/header/height","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/height/value","default":"64px"}},"type":"object","default":{"value":"64px"}},"logo":{"id":"#tokensConfig/docus/header/logo","properties":{"height":{"id":"#tokensConfig/docus/header/logo/height","properties":{"value":{"id":"#tokensConfig/docus/header/logo/height/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/header/logo/height/value/initial","default":"{space.6}"},"sm":{"type":"string","id":"#tokensConfig/docus/header/logo/height/value/sm","default":"{space.7}"}},"type":"object","default":{"initial":"{space.6}","sm":"{space.7}"}}},"type":"object","default":{"value":{"initial":"{space.6}","sm":"{space.7}"}}}},"type":"object","default":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}}},"title":{"id":"#tokensConfig/docus/header/title","properties":{"fontSize":{"id":"#tokensConfig/docus/header/title/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/title/fontSize/value","default":"{fontSize.2xl}"}},"type":"object","default":{"value":"{fontSize.2xl}"}},"fontWeight":{"id":"#tokensConfig/docus/header/title/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/title/fontWeight/value","default":"{fontWeight.bold}"}},"type":"object","default":{"value":"{fontWeight.bold}"}},"color":{"id":"#tokensConfig/docus/header/title/color","properties":{"static":{"id":"#tokensConfig/docus/header/title/color/static","properties":{"value":{"id":"#tokensConfig/docus/header/title/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/header/title/color/static/value/initial","default":"{color.gray.900}"},"dark":{"type":"string","id":"#tokensConfig/docus/header/title/color/static/value/dark","default":"{color.gray.100}"}},"type":"object","default":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}}},"type":"object","default":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}}},"hover":{"id":"#tokensConfig/docus/header/title/color/hover","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/title/color/hover/value","default":"{color.primary.500}"}},"type":"object","default":{"value":"{color.primary.500}"}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"type":"object","default":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}}},"type":"object","default":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}}},"footer":{"id":"#tokensConfig/docus/footer","properties":{"height":{"id":"#tokensConfig/docus/footer/height","properties":{"value":{"id":"#tokensConfig/docus/footer/height/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/footer/height/value/initial","default":"145px"},"sm":{"type":"string","id":"#tokensConfig/docus/footer/height/value/sm","default":"100px"}},"type":"object","default":{"initial":"145px","sm":"100px"}}},"type":"object","default":{"value":{"initial":"145px","sm":"100px"}}},"padding":{"id":"#tokensConfig/docus/footer/padding","properties":{"value":{"type":"string","id":"#tokensConfig/docus/footer/padding/value","default":"{space.4} 0"}},"type":"object","default":{"value":"{space.4} 0"}}},"type":"object","default":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}}},"readableLine":{"id":"#tokensConfig/docus/readableLine","properties":{"value":{"type":"string","id":"#tokensConfig/docus/readableLine/value","default":"78ch"}},"type":"object","default":{"value":"78ch"}},"loadingBar":{"id":"#tokensConfig/docus/loadingBar","properties":{"height":{"id":"#tokensConfig/docus/loadingBar/height","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/height/value","default":"3px"}},"type":"object","default":{"value":"3px"}},"gradientColorStop1":{"id":"#tokensConfig/docus/loadingBar/gradientColorStop1","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/gradientColorStop1/value","default":"#00dc82"}},"type":"object","default":{"value":"#00dc82"}},"gradientColorStop2":{"id":"#tokensConfig/docus/loadingBar/gradientColorStop2","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/gradientColorStop2/value","default":"#34cdfe"}},"type":"object","default":{"value":"#34cdfe"}},"gradientColorStop3":{"id":"#tokensConfig/docus/loadingBar/gradientColorStop3","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/gradientColorStop3/value","default":"#0047e1"}},"type":"object","default":{"value":"#0047e1"}}},"type":"object","default":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}}},"search":{"id":"#tokensConfig/docus/search","properties":{"backdropFilter":{"id":"#tokensConfig/docus/search/backdropFilter","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/backdropFilter/value","default":"blur(24px)"}},"type":"object","default":{"value":"blur(24px)"}},"input":{"id":"#tokensConfig/docus/search/input","properties":{"borderRadius":{"id":"#tokensConfig/docus/search/input/borderRadius","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/borderRadius/value","default":"{radii.2xs}"}},"type":"object","default":{"value":"{radii.2xs}"}},"borderWidth":{"id":"#tokensConfig/docus/search/input/borderWidth","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/borderWidth/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"borderStyle":{"id":"#tokensConfig/docus/search/input/borderStyle","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/borderStyle/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"borderColor":{"id":"#tokensConfig/docus/search/input/borderColor","properties":{"value":{"id":"#tokensConfig/docus/search/input/borderColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/input/borderColor/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/docus/search/input/borderColor/value/dark","default":"transparent"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"transparent"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"transparent"}}},"fontSize":{"id":"#tokensConfig/docus/search/input/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/fontSize/value","default":"{fontSize.sm}"}},"type":"object","default":{"value":"{fontSize.sm}"}},"gap":{"id":"#tokensConfig/docus/search/input/gap","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/gap/value","default":"{space.2}"}},"type":"object","default":{"value":"{space.2}"}},"padding":{"id":"#tokensConfig/docus/search/input/padding","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/padding/value","default":"{space.2} {space.4}"}},"type":"object","default":{"value":"{space.2} {space.4}"}},"backgroundColor":{"id":"#tokensConfig/docus/search/input/backgroundColor","properties":{"value":{"id":"#tokensConfig/docus/search/input/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/input/backgroundColor/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/docus/search/input/backgroundColor/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"type":"object","default":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"results":{"id":"#tokensConfig/docus/search/results","properties":{"window":{"id":"#tokensConfig/docus/search/results/window","properties":{"marginX":{"id":"#tokensConfig/docus/search/results/window/marginX","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/marginX/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginX/value/initial","default":"0"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginX/value/sm","default":"{space.4}"}},"type":"object","default":{"initial":"0","sm":"{space.4}"}}},"type":"object","default":{"value":{"initial":"0","sm":"{space.4}"}}},"borderRadius":{"id":"#tokensConfig/docus/search/results/window/borderRadius","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/borderRadius/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/borderRadius/value/initial","default":"none"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/borderRadius/value/sm","default":"{radii.xs}"}},"type":"object","default":{"initial":"none","sm":"{radii.xs}"}}},"type":"object","default":{"value":{"initial":"none","sm":"{radii.xs}"}}},"marginTop":{"id":"#tokensConfig/docus/search/results/window/marginTop","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/marginTop/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginTop/value/initial","default":"0"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginTop/value/sm","default":"20vh"}},"type":"object","default":{"initial":"0","sm":"20vh"}}},"type":"object","default":{"value":{"initial":"0","sm":"20vh"}}},"maxWidth":{"id":"#tokensConfig/docus/search/results/window/maxWidth","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/results/window/maxWidth/value","default":"640px"}},"type":"object","default":{"value":"640px"}},"maxHeight":{"id":"#tokensConfig/docus/search/results/window/maxHeight","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/maxHeight/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/maxHeight/value/initial","default":"100%"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/maxHeight/value/sm","default":"320px"}},"type":"object","default":{"initial":"100%","sm":"320px"}}},"type":"object","default":{"value":{"initial":"100%","sm":"320px"}}}},"type":"object","default":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}}},"selected":{"id":"#tokensConfig/docus/search/results/selected","properties":{"backgroundColor":{"id":"#tokensConfig/docus/search/results/selected/backgroundColor","properties":{"value":{"id":"#tokensConfig/docus/search/results/selected/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/selected/backgroundColor/value/initial","default":"{color.gray.300}"},"dark":{"type":"string","id":"#tokensConfig/docus/search/results/selected/backgroundColor/value/dark","default":"{color.gray.700}"}},"type":"object","default":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"type":"object","default":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}}},"highlight":{"id":"#tokensConfig/docus/search/results/highlight","properties":{"color":{"id":"#tokensConfig/docus/search/results/highlight/color","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/results/highlight/color/value","default":"white"}},"type":"object","default":{"value":"white"}},"backgroundColor":{"id":"#tokensConfig/docus/search/results/highlight/backgroundColor","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/results/highlight/backgroundColor/value","default":"{color.primary.500}"}},"type":"object","default":{"value":"{color.primary.500}"}}},"type":"object","default":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}},"type":"object","default":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}},"type":"object","default":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}},"type":"object","default":{"body":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}},"header":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}},"readableLine":{"value":"78ch"},"loadingBar":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}}},"type":"object","default":{"media":{"xs":{"value":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)"}},"color":{"white":{"value":"#ffffff"},"black":{"value":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}},"green":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}},"red":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}},"blue":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}},"purple":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}},"pink":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}},"ruby":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}},"primary":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}},"shadow":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"width":{"screen":{"value":"100vw"}},"height":{"screen":{"value":"100vh"}},"shadow":{"xs":{"value":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent"}},"radii":{"none":{"value":"0px"},"2xs":{"value":"0.125rem"},"xs":{"value":"0.25rem"},"sm":{"value":"0.375rem"},"md":{"value":"0.5rem"},"lg":{"value":"0.75rem"},"xl":{"value":"1rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.75rem"},"full":{"value":"9999px"}},"size":{"0":{"value":"0px"},"2":{"value":"2px"},"4":{"value":"4px"},"6":{"value":"6px"},"8":{"value":"8px"},"12":{"value":"12px"},"16":{"value":"16px"},"20":{"value":"20px"},"24":{"value":"24px"},"32":{"value":"32px"},"40":{"value":"40px"},"48":{"value":"48px"},"56":{"value":"56px"},"64":{"value":"64px"},"80":{"value":"80px"},"104":{"value":"104px"},"200":{"value":"200px"},"xs":{"value":"20rem"},"sm":{"value":"24rem"},"md":{"value":"28rem"},"lg":{"value":"32rem"},"xl":{"value":"36rem"},"2xl":{"value":"42rem"},"3xl":{"value":"48rem"},"4xl":{"value":"56rem"},"5xl":{"value":"64rem"},"6xl":{"value":"72rem"},"7xl":{"value":"80rem"},"full":{"value":"100%"}},"space":{"0":{"value":"0px"},"1":{"value":"0.25rem"},"2":{"value":"0.5rem"},"3":{"value":"0.75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"11":{"value":"2.75rem"},"12":{"value":"3rem"},"14":{"value":"3.5rem"},"16":{"value":"4rem"},"20":{"value":"5rem"},"24":{"value":"6rem"},"28":{"value":"7rem"},"32":{"value":"8rem"},"36":{"value":"9rem"},"40":{"value":"10rem"},"44":{"value":"11rem"},"48":{"value":"12rem"},"52":{"value":"13rem"},"56":{"value":"14rem"},"60":{"value":"15rem"},"64":{"value":"16rem"},"72":{"value":"18rem"},"80":{"value":"20rem"},"96":{"value":"24rem"},"128":{"value":"32rem"},"px":{"value":"1px"},"rem":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}},"borderWidth":{"noBorder":{"value":"0"},"sm":{"value":"1px"},"md":{"value":"2px"},"lg":{"value":"3px"}},"opacity":{"noOpacity":{"value":"0"},"bright":{"value":"0.1"},"light":{"value":"0.15"},"soft":{"value":"0.3"},"medium":{"value":"0.5"},"high":{"value":"0.8"},"total":{"value":"1"}},"font":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"fontSize":{"xs":{"value":"0.75rem"},"sm":{"value":"0.875rem"},"base":{"value":"1rem"},"lg":{"value":"1.125rem"},"xl":{"value":"1.25rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.875rem"},"4xl":{"value":"2.25rem"},"5xl":{"value":"3rem"},"6xl":{"value":"3.75rem"},"7xl":{"value":"4.5rem"},"8xl":{"value":"6rem"},"9xl":{"value":"8rem"}},"letterSpacing":{"tighter":{"value":"-0.05em"},"tight":{"value":"-0.025em"},"normal":{"value":"0em"},"wide":{"value":"0.025em"},"wider":{"value":"0.05em"},"widest":{"value":"0.1em"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"text":{"xs":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}},"sm":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}},"base":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}},"lg":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}},"xl":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}},"2xl":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}},"3xl":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}},"4xl":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}},"5xl":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}},"6xl":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}},"elements":{"text":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"typography":{"body":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px"},"base":{"value":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}},"fontSize":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"font":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}},"color":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}},"prose":{"p":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}},"hr":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"docus":{"body":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}},"header":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}},"readableLine":{"value":"78ch"},"loadingBar":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}}},"default":{"media":{"xs":{"value":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)"}},"color":{"white":{"value":"#ffffff"},"black":{"value":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}},"green":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}},"red":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}},"blue":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}},"purple":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}},"pink":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}},"ruby":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}},"primary":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}},"shadow":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"width":{"screen":{"value":"100vw"}},"height":{"screen":{"value":"100vh"}},"shadow":{"xs":{"value":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent"}},"radii":{"none":{"value":"0px"},"2xs":{"value":"0.125rem"},"xs":{"value":"0.25rem"},"sm":{"value":"0.375rem"},"md":{"value":"0.5rem"},"lg":{"value":"0.75rem"},"xl":{"value":"1rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.75rem"},"full":{"value":"9999px"}},"size":{"0":{"value":"0px"},"2":{"value":"2px"},"4":{"value":"4px"},"6":{"value":"6px"},"8":{"value":"8px"},"12":{"value":"12px"},"16":{"value":"16px"},"20":{"value":"20px"},"24":{"value":"24px"},"32":{"value":"32px"},"40":{"value":"40px"},"48":{"value":"48px"},"56":{"value":"56px"},"64":{"value":"64px"},"80":{"value":"80px"},"104":{"value":"104px"},"200":{"value":"200px"},"xs":{"value":"20rem"},"sm":{"value":"24rem"},"md":{"value":"28rem"},"lg":{"value":"32rem"},"xl":{"value":"36rem"},"2xl":{"value":"42rem"},"3xl":{"value":"48rem"},"4xl":{"value":"56rem"},"5xl":{"value":"64rem"},"6xl":{"value":"72rem"},"7xl":{"value":"80rem"},"full":{"value":"100%"}},"space":{"0":{"value":"0px"},"1":{"value":"0.25rem"},"2":{"value":"0.5rem"},"3":{"value":"0.75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"11":{"value":"2.75rem"},"12":{"value":"3rem"},"14":{"value":"3.5rem"},"16":{"value":"4rem"},"20":{"value":"5rem"},"24":{"value":"6rem"},"28":{"value":"7rem"},"32":{"value":"8rem"},"36":{"value":"9rem"},"40":{"value":"10rem"},"44":{"value":"11rem"},"48":{"value":"12rem"},"52":{"value":"13rem"},"56":{"value":"14rem"},"60":{"value":"15rem"},"64":{"value":"16rem"},"72":{"value":"18rem"},"80":{"value":"20rem"},"96":{"value":"24rem"},"128":{"value":"32rem"},"px":{"value":"1px"},"rem":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}},"borderWidth":{"noBorder":{"value":"0"},"sm":{"value":"1px"},"md":{"value":"2px"},"lg":{"value":"3px"}},"opacity":{"noOpacity":{"value":"0"},"bright":{"value":"0.1"},"light":{"value":"0.15"},"soft":{"value":"0.3"},"medium":{"value":"0.5"},"high":{"value":"0.8"},"total":{"value":"1"}},"font":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"fontSize":{"xs":{"value":"0.75rem"},"sm":{"value":"0.875rem"},"base":{"value":"1rem"},"lg":{"value":"1.125rem"},"xl":{"value":"1.25rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.875rem"},"4xl":{"value":"2.25rem"},"5xl":{"value":"3rem"},"6xl":{"value":"3.75rem"},"7xl":{"value":"4.5rem"},"8xl":{"value":"6rem"},"9xl":{"value":"8rem"}},"letterSpacing":{"tighter":{"value":"-0.05em"},"tight":{"value":"-0.025em"},"normal":{"value":"0em"},"wide":{"value":"0.025em"},"wider":{"value":"0.05em"},"widest":{"value":"0.1em"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"text":{"xs":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}},"sm":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}},"base":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}},"lg":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}},"xl":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}},"2xl":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}},"3xl":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}},"4xl":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}},"5xl":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}},"6xl":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}},"elements":{"text":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"typography":{"body":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px"},"base":{"value":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}},"fontSize":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"font":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}},"color":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}},"prose":{"p":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}},"hr":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"docus":{"body":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}},"header":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}},"readableLine":{"value":"78ch"},"loadingBar":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}}},"tokensConfig":{"media":{"xs":{"value":"(min-width: 475px)","variable":"var(--media-xs)","raw":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)","variable":"var(--media-sm)","raw":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)","variable":"var(--media-md)","raw":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)","variable":"var(--media-lg)","raw":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)","variable":"var(--media-xl)","raw":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)","variable":"var(--media-2xl)","raw":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)","variable":"var(--media-rm)","raw":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)","variable":"var(--media-landscape)","raw":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)","variable":"var(--media-portrait)","raw":"only screen and (orientation: portrait)"}},"color":{"white":{"value":"#ffffff","variable":"var(--color-white)","raw":"#ffffff"},"black":{"value":"#0B0A0A","variable":"var(--color-black)","raw":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB","variable":"var(--color-gray-50)","raw":"#FBFBFB"},"100":{"value":"#F6F5F4","variable":"var(--color-gray-100)","raw":"#F6F5F4"},"200":{"value":"#ECEBE8","variable":"var(--color-gray-200)","raw":"#ECEBE8"},"300":{"value":"#DBD9D3","variable":"var(--color-gray-300)","raw":"#DBD9D3"},"400":{"value":"#ADA9A4","variable":"var(--color-gray-400)","raw":"#ADA9A4"},"500":{"value":"#97948F","variable":"var(--color-gray-500)","raw":"#97948F"},"600":{"value":"#67635D","variable":"var(--color-gray-600)","raw":"#67635D"},"700":{"value":"#36332E","variable":"var(--color-gray-700)","raw":"#36332E"},"800":{"value":"#201E1B","variable":"var(--color-gray-800)","raw":"#201E1B"},"900":{"value":"#121110","variable":"var(--color-gray-900)","raw":"#121110"}},"green":{"50":{"value":"#ECFFF7","variable":"var(--color-green-50)","raw":"#ECFFF7"},"100":{"value":"#DEFFF1","variable":"var(--color-green-100)","raw":"#DEFFF1"},"200":{"value":"#C3FFE6","variable":"var(--color-green-200)","raw":"#C3FFE6"},"300":{"value":"#86FBCB","variable":"var(--color-green-300)","raw":"#86FBCB"},"400":{"value":"#3CEEA5","variable":"var(--color-green-400)","raw":"#3CEEA5"},"500":{"value":"#0DD885","variable":"var(--color-green-500)","raw":"#0DD885"},"600":{"value":"#00B467","variable":"var(--color-green-600)","raw":"#00B467"},"700":{"value":"#006037","variable":"var(--color-green-700)","raw":"#006037"},"800":{"value":"#002817","variable":"var(--color-green-800)","raw":"#002817"},"900":{"value":"#00190F","variable":"var(--color-green-900)","raw":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE","variable":"var(--color-yellow-50)","raw":"#FFFCEE"},"100":{"value":"#FFF6D3","variable":"var(--color-yellow-100)","raw":"#FFF6D3"},"200":{"value":"#FFF0B1","variable":"var(--color-yellow-200)","raw":"#FFF0B1"},"300":{"value":"#FFE372","variable":"var(--color-yellow-300)","raw":"#FFE372"},"400":{"value":"#FFDC4E","variable":"var(--color-yellow-400)","raw":"#FFDC4E"},"500":{"value":"#FBCA05","variable":"var(--color-yellow-500)","raw":"#FBCA05"},"600":{"value":"#CBA408","variable":"var(--color-yellow-600)","raw":"#CBA408"},"700":{"value":"#614E02","variable":"var(--color-yellow-700)","raw":"#614E02"},"800":{"value":"#292100","variable":"var(--color-yellow-800)","raw":"#292100"},"900":{"value":"#1B1500","variable":"var(--color-yellow-900)","raw":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9","variable":"var(--color-orange-50)","raw":"#ffe9d9"},"100":{"value":"#ffd3b3","variable":"var(--color-orange-100)","raw":"#ffd3b3"},"200":{"value":"#ffbd8d","variable":"var(--color-orange-200)","raw":"#ffbd8d"},"300":{"value":"#ffa666","variable":"var(--color-orange-300)","raw":"#ffa666"},"400":{"value":"#ff9040","variable":"var(--color-orange-400)","raw":"#ff9040"},"500":{"value":"#ff7a1a","variable":"var(--color-orange-500)","raw":"#ff7a1a"},"600":{"value":"#e15e00","variable":"var(--color-orange-600)","raw":"#e15e00"},"700":{"value":"#a94700","variable":"var(--color-orange-700)","raw":"#a94700"},"800":{"value":"#702f00","variable":"var(--color-orange-800)","raw":"#702f00"},"900":{"value":"#381800","variable":"var(--color-orange-900)","raw":"#381800"}},"red":{"50":{"value":"#FFF9F8","variable":"var(--color-red-50)","raw":"#FFF9F8"},"100":{"value":"#FFF3F0","variable":"var(--color-red-100)","raw":"#FFF3F0"},"200":{"value":"#FFDED7","variable":"var(--color-red-200)","raw":"#FFDED7"},"300":{"value":"#FFA692","variable":"var(--color-red-300)","raw":"#FFA692"},"400":{"value":"#FF7353","variable":"var(--color-red-400)","raw":"#FF7353"},"500":{"value":"#FF3B10","variable":"var(--color-red-500)","raw":"#FF3B10"},"600":{"value":"#BB2402","variable":"var(--color-red-600)","raw":"#BB2402"},"700":{"value":"#701704","variable":"var(--color-red-700)","raw":"#701704"},"800":{"value":"#340A01","variable":"var(--color-red-800)","raw":"#340A01"},"900":{"value":"#1C0301","variable":"var(--color-red-900)","raw":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc","variable":"var(--color-pear-50)","raw":"#f7f8dc"},"100":{"value":"#eff0ba","variable":"var(--color-pear-100)","raw":"#eff0ba"},"200":{"value":"#e8e997","variable":"var(--color-pear-200)","raw":"#e8e997"},"300":{"value":"#e0e274","variable":"var(--color-pear-300)","raw":"#e0e274"},"400":{"value":"#d8da52","variable":"var(--color-pear-400)","raw":"#d8da52"},"500":{"value":"#d0d32f","variable":"var(--color-pear-500)","raw":"#d0d32f"},"600":{"value":"#a8aa24","variable":"var(--color-pear-600)","raw":"#a8aa24"},"700":{"value":"#7e801b","variable":"var(--color-pear-700)","raw":"#7e801b"},"800":{"value":"#545512","variable":"var(--color-pear-800)","raw":"#545512"},"900":{"value":"#2a2b09","variable":"var(--color-pear-900)","raw":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8","variable":"var(--color-teal-50)","raw":"#d7faf8"},"100":{"value":"#aff4f0","variable":"var(--color-teal-100)","raw":"#aff4f0"},"200":{"value":"#87efe9","variable":"var(--color-teal-200)","raw":"#87efe9"},"300":{"value":"#5fe9e1","variable":"var(--color-teal-300)","raw":"#5fe9e1"},"400":{"value":"#36e4da","variable":"var(--color-teal-400)","raw":"#36e4da"},"500":{"value":"#1cd1c6","variable":"var(--color-teal-500)","raw":"#1cd1c6"},"600":{"value":"#16a79e","variable":"var(--color-teal-600)","raw":"#16a79e"},"700":{"value":"#117d77","variable":"var(--color-teal-700)","raw":"#117d77"},"800":{"value":"#0b544f","variable":"var(--color-teal-800)","raw":"#0b544f"},"900":{"value":"#062a28","variable":"var(--color-teal-900)","raw":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff","variable":"var(--color-lightblue-50)","raw":"#d9f8ff"},"100":{"value":"#b3f1ff","variable":"var(--color-lightblue-100)","raw":"#b3f1ff"},"200":{"value":"#8deaff","variable":"var(--color-lightblue-200)","raw":"#8deaff"},"300":{"value":"#66e4ff","variable":"var(--color-lightblue-300)","raw":"#66e4ff"},"400":{"value":"#40ddff","variable":"var(--color-lightblue-400)","raw":"#40ddff"},"500":{"value":"#1ad6ff","variable":"var(--color-lightblue-500)","raw":"#1ad6ff"},"600":{"value":"#00b9e1","variable":"var(--color-lightblue-600)","raw":"#00b9e1"},"700":{"value":"#008aa9","variable":"var(--color-lightblue-700)","raw":"#008aa9"},"800":{"value":"#005c70","variable":"var(--color-lightblue-800)","raw":"#005c70"},"900":{"value":"#002e38","variable":"var(--color-lightblue-900)","raw":"#002e38"}},"blue":{"50":{"value":"#F2FAFF","variable":"var(--color-blue-50)","raw":"#F2FAFF"},"100":{"value":"#DFF3FF","variable":"var(--color-blue-100)","raw":"#DFF3FF"},"200":{"value":"#C6EAFF","variable":"var(--color-blue-200)","raw":"#C6EAFF"},"300":{"value":"#A1DDFF","variable":"var(--color-blue-300)","raw":"#A1DDFF"},"400":{"value":"#64C7FF","variable":"var(--color-blue-400)","raw":"#64C7FF"},"500":{"value":"#1AADFF","variable":"var(--color-blue-500)","raw":"#1AADFF"},"600":{"value":"#0069A6","variable":"var(--color-blue-600)","raw":"#0069A6"},"700":{"value":"#014267","variable":"var(--color-blue-700)","raw":"#014267"},"800":{"value":"#002235","variable":"var(--color-blue-800)","raw":"#002235"},"900":{"value":"#00131D","variable":"var(--color-blue-900)","raw":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff","variable":"var(--color-indigoblue-50)","raw":"#d9e5ff"},"100":{"value":"#b3cbff","variable":"var(--color-indigoblue-100)","raw":"#b3cbff"},"200":{"value":"#8db0ff","variable":"var(--color-indigoblue-200)","raw":"#8db0ff"},"300":{"value":"#6696ff","variable":"var(--color-indigoblue-300)","raw":"#6696ff"},"400":{"value":"#407cff","variable":"var(--color-indigoblue-400)","raw":"#407cff"},"500":{"value":"#1a62ff","variable":"var(--color-indigoblue-500)","raw":"#1a62ff"},"600":{"value":"#0047e1","variable":"var(--color-indigoblue-600)","raw":"#0047e1"},"700":{"value":"#0035a9","variable":"var(--color-indigoblue-700)","raw":"#0035a9"},"800":{"value":"#002370","variable":"var(--color-indigoblue-800)","raw":"#002370"},"900":{"value":"#001238","variable":"var(--color-indigoblue-900)","raw":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb","variable":"var(--color-royalblue-50)","raw":"#dfdbfb"},"100":{"value":"#c0b7f7","variable":"var(--color-royalblue-100)","raw":"#c0b7f7"},"200":{"value":"#a093f3","variable":"var(--color-royalblue-200)","raw":"#a093f3"},"300":{"value":"#806ff0","variable":"var(--color-royalblue-300)","raw":"#806ff0"},"400":{"value":"#614bec","variable":"var(--color-royalblue-400)","raw":"#614bec"},"500":{"value":"#4127e8","variable":"var(--color-royalblue-500)","raw":"#4127e8"},"600":{"value":"#2c15c4","variable":"var(--color-royalblue-600)","raw":"#2c15c4"},"700":{"value":"#211093","variable":"var(--color-royalblue-700)","raw":"#211093"},"800":{"value":"#160a62","variable":"var(--color-royalblue-800)","raw":"#160a62"},"900":{"value":"#0b0531","variable":"var(--color-royalblue-900)","raw":"#0b0531"}},"purple":{"50":{"value":"#ead9ff","variable":"var(--color-purple-50)","raw":"#ead9ff"},"100":{"value":"#d5b3ff","variable":"var(--color-purple-100)","raw":"#d5b3ff"},"200":{"value":"#c08dff","variable":"var(--color-purple-200)","raw":"#c08dff"},"300":{"value":"#ab66ff","variable":"var(--color-purple-300)","raw":"#ab66ff"},"400":{"value":"#9640ff","variable":"var(--color-purple-400)","raw":"#9640ff"},"500":{"value":"#811aff","variable":"var(--color-purple-500)","raw":"#811aff"},"600":{"value":"#6500e1","variable":"var(--color-purple-600)","raw":"#6500e1"},"700":{"value":"#4c00a9","variable":"var(--color-purple-700)","raw":"#4c00a9"},"800":{"value":"#330070","variable":"var(--color-purple-800)","raw":"#330070"},"900":{"value":"#190038","variable":"var(--color-purple-900)","raw":"#190038"}},"pink":{"50":{"value":"#ffd9f2","variable":"var(--color-pink-50)","raw":"#ffd9f2"},"100":{"value":"#ffb3e5","variable":"var(--color-pink-100)","raw":"#ffb3e5"},"200":{"value":"#ff8dd8","variable":"var(--color-pink-200)","raw":"#ff8dd8"},"300":{"value":"#ff66cc","variable":"var(--color-pink-300)","raw":"#ff66cc"},"400":{"value":"#ff40bf","variable":"var(--color-pink-400)","raw":"#ff40bf"},"500":{"value":"#ff1ab2","variable":"var(--color-pink-500)","raw":"#ff1ab2"},"600":{"value":"#e10095","variable":"var(--color-pink-600)","raw":"#e10095"},"700":{"value":"#a90070","variable":"var(--color-pink-700)","raw":"#a90070"},"800":{"value":"#70004b","variable":"var(--color-pink-800)","raw":"#70004b"},"900":{"value":"#380025","variable":"var(--color-pink-900)","raw":"#380025"}},"ruby":{"50":{"value":"#ffd9e4","variable":"var(--color-ruby-50)","raw":"#ffd9e4"},"100":{"value":"#ffb3c9","variable":"var(--color-ruby-100)","raw":"#ffb3c9"},"200":{"value":"#ff8dae","variable":"var(--color-ruby-200)","raw":"#ff8dae"},"300":{"value":"#ff6694","variable":"var(--color-ruby-300)","raw":"#ff6694"},"400":{"value":"#ff4079","variable":"var(--color-ruby-400)","raw":"#ff4079"},"500":{"value":"#ff1a5e","variable":"var(--color-ruby-500)","raw":"#ff1a5e"},"600":{"value":"#e10043","variable":"var(--color-ruby-600)","raw":"#e10043"},"700":{"value":"#a90032","variable":"var(--color-ruby-700)","raw":"#a90032"},"800":{"value":"#700021","variable":"var(--color-ruby-800)","raw":"#700021"},"900":{"value":"#380011","variable":"var(--color-ruby-900)","raw":"#380011"}},"primary":{"50":{"value":"#FFF6E5","variable":"var(--color-primary-50)","raw":"#FFF6E5"},"100":{"value":"#FFEDCC","variable":"var(--color-primary-100)","raw":"#FFEDCC"},"200":{"value":"#FFDB99","variable":"var(--color-primary-200)","raw":"#FFDB99"},"300":{"value":"#FFC966","variable":"var(--color-primary-300)","raw":"#FFC966"},"400":{"value":"#FFB833","variable":"var(--color-primary-400)","raw":"#FFB833"},"500":{"value":"#FFA500","variable":"var(--color-primary-500)","raw":"#FFA500"},"600":{"value":"#CC8500","variable":"var(--color-primary-600)","raw":"#CC8500"},"700":{"value":"#996300","variable":"var(--color-primary-700)","raw":"#996300"},"800":{"value":"#664200","variable":"var(--color-primary-800)","raw":"#664200"},"900":{"value":"#332100","variable":"var(--color-primary-900)","raw":"#332100"}},"secondary":{"50":{"value":"var(--color-gray-50)","variable":"var(--color-secondary-50)","raw":"{color.gray.50}"},"100":{"value":"var(--color-gray-100)","variable":"var(--color-secondary-100)","raw":"{color.gray.100}"},"200":{"value":"var(--color-gray-200)","variable":"var(--color-secondary-200)","raw":"{color.gray.200}"},"300":{"value":"var(--color-gray-300)","variable":"var(--color-secondary-300)","raw":"{color.gray.300}"},"400":{"value":"var(--color-gray-400)","variable":"var(--color-secondary-400)","raw":"{color.gray.400}"},"500":{"value":"var(--color-gray-500)","variable":"var(--color-secondary-500)","raw":"{color.gray.500}"},"600":{"value":"var(--color-gray-600)","variable":"var(--color-secondary-600)","raw":"{color.gray.600}"},"700":{"value":"var(--color-gray-700)","variable":"var(--color-secondary-700)","raw":"{color.gray.700}"},"800":{"value":"var(--color-gray-800)","variable":"var(--color-secondary-800)","raw":"{color.gray.800}"},"900":{"value":"var(--color-gray-900)","variable":"var(--color-secondary-900)","raw":"{color.gray.900}"}},"shadow":{"value":{"initial":"var(--color-gray-400)","dark":"var(--color-gray-800)"},"variable":"var(--color-shadow)","raw":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"width":{"screen":{"value":"100vw","variable":"var(--width-screen)","raw":"100vw"}},"height":{"screen":{"value":"100vh","variable":"var(--height-screen)","raw":"100vh"}},"shadow":{"xs":{"value":"0px 1px 2px 0px var(--color-shadow)","variable":"var(--shadow-xs)","raw":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px var(--color-shadow), 0px 1px 2px -1px var(--color-shadow)","variable":"var(--shadow-sm)","raw":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px var(--color-shadow), 0px 2px 4px -2px var(--color-shadow)","variable":"var(--shadow-md)","raw":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px var(--color-shadow), 0px 4px 6px -4px var(--color-shadow)","variable":"var(--shadow-lg)","raw":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px var(--color-shadow), 0px 8px 10px -6px var(--color-shadow)","variable":"var(--shadow-xl)","raw":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px var(--color-shadow)","variable":"var(--shadow-2xl)","raw":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent","variable":"var(--shadow-none)","raw":"0px 0px 0px 0px transparent"}},"radii":{"none":{"value":"0px","variable":"var(--radii-none)","raw":"0px"},"2xs":{"value":"0.125rem","variable":"var(--radii-2xs)","raw":"0.125rem"},"xs":{"value":"0.25rem","variable":"var(--radii-xs)","raw":"0.25rem"},"sm":{"value":"0.375rem","variable":"var(--radii-sm)","raw":"0.375rem"},"md":{"value":"0.5rem","variable":"var(--radii-md)","raw":"0.5rem"},"lg":{"value":"0.75rem","variable":"var(--radii-lg)","raw":"0.75rem"},"xl":{"value":"1rem","variable":"var(--radii-xl)","raw":"1rem"},"2xl":{"value":"1.5rem","variable":"var(--radii-2xl)","raw":"1.5rem"},"3xl":{"value":"1.75rem","variable":"var(--radii-3xl)","raw":"1.75rem"},"full":{"value":"9999px","variable":"var(--radii-full)","raw":"9999px"}},"size":{"0":{"value":"0px","variable":"var(--size-0)","raw":"0px"},"2":{"value":"2px","variable":"var(--size-2)","raw":"2px"},"4":{"value":"4px","variable":"var(--size-4)","raw":"4px"},"6":{"value":"6px","variable":"var(--size-6)","raw":"6px"},"8":{"value":"8px","variable":"var(--size-8)","raw":"8px"},"12":{"value":"12px","variable":"var(--size-12)","raw":"12px"},"16":{"value":"16px","variable":"var(--size-16)","raw":"16px"},"20":{"value":"20px","variable":"var(--size-20)","raw":"20px"},"24":{"value":"24px","variable":"var(--size-24)","raw":"24px"},"32":{"value":"32px","variable":"var(--size-32)","raw":"32px"},"40":{"value":"40px","variable":"var(--size-40)","raw":"40px"},"48":{"value":"48px","variable":"var(--size-48)","raw":"48px"},"56":{"value":"56px","variable":"var(--size-56)","raw":"56px"},"64":{"value":"64px","variable":"var(--size-64)","raw":"64px"},"80":{"value":"80px","variable":"var(--size-80)","raw":"80px"},"104":{"value":"104px","variable":"var(--size-104)","raw":"104px"},"200":{"value":"200px","variable":"var(--size-200)","raw":"200px"},"xs":{"value":"20rem","variable":"var(--size-xs)","raw":"20rem"},"sm":{"value":"24rem","variable":"var(--size-sm)","raw":"24rem"},"md":{"value":"28rem","variable":"var(--size-md)","raw":"28rem"},"lg":{"value":"32rem","variable":"var(--size-lg)","raw":"32rem"},"xl":{"value":"36rem","variable":"var(--size-xl)","raw":"36rem"},"2xl":{"value":"42rem","variable":"var(--size-2xl)","raw":"42rem"},"3xl":{"value":"48rem","variable":"var(--size-3xl)","raw":"48rem"},"4xl":{"value":"56rem","variable":"var(--size-4xl)","raw":"56rem"},"5xl":{"value":"64rem","variable":"var(--size-5xl)","raw":"64rem"},"6xl":{"value":"72rem","variable":"var(--size-6xl)","raw":"72rem"},"7xl":{"value":"80rem","variable":"var(--size-7xl)","raw":"80rem"},"full":{"value":"100%","variable":"var(--size-full)","raw":"100%"}},"space":{"0":{"value":"0px","variable":"var(--space-0)","raw":"0px"},"1":{"value":"0.25rem","variable":"var(--space-1)","raw":"0.25rem"},"2":{"value":"0.5rem","variable":"var(--space-2)","raw":"0.5rem"},"3":{"value":"0.75rem","variable":"var(--space-3)","raw":"0.75rem"},"4":{"value":"1rem","variable":"var(--space-4)","raw":"1rem"},"5":{"value":"1.25rem","variable":"var(--space-5)","raw":"1.25rem"},"6":{"value":"1.5rem","variable":"var(--space-6)","raw":"1.5rem"},"7":{"value":"1.75rem","variable":"var(--space-7)","raw":"1.75rem"},"8":{"value":"2rem","variable":"var(--space-8)","raw":"2rem"},"9":{"value":"2.25rem","variable":"var(--space-9)","raw":"2.25rem"},"10":{"value":"2.5rem","variable":"var(--space-10)","raw":"2.5rem"},"11":{"value":"2.75rem","variable":"var(--space-11)","raw":"2.75rem"},"12":{"value":"3rem","variable":"var(--space-12)","raw":"3rem"},"14":{"value":"3.5rem","variable":"var(--space-14)","raw":"3.5rem"},"16":{"value":"4rem","variable":"var(--space-16)","raw":"4rem"},"20":{"value":"5rem","variable":"var(--space-20)","raw":"5rem"},"24":{"value":"6rem","variable":"var(--space-24)","raw":"6rem"},"28":{"value":"7rem","variable":"var(--space-28)","raw":"7rem"},"32":{"value":"8rem","variable":"var(--space-32)","raw":"8rem"},"36":{"value":"9rem","variable":"var(--space-36)","raw":"9rem"},"40":{"value":"10rem","variable":"var(--space-40)","raw":"10rem"},"44":{"value":"11rem","variable":"var(--space-44)","raw":"11rem"},"48":{"value":"12rem","variable":"var(--space-48)","raw":"12rem"},"52":{"value":"13rem","variable":"var(--space-52)","raw":"13rem"},"56":{"value":"14rem","variable":"var(--space-56)","raw":"14rem"},"60":{"value":"15rem","variable":"var(--space-60)","raw":"15rem"},"64":{"value":"16rem","variable":"var(--space-64)","raw":"16rem"},"72":{"value":"18rem","variable":"var(--space-72)","raw":"18rem"},"80":{"value":"20rem","variable":"var(--space-80)","raw":"20rem"},"96":{"value":"24rem","variable":"var(--space-96)","raw":"24rem"},"128":{"value":"32rem","variable":"var(--space-128)","raw":"32rem"},"px":{"value":"1px","variable":"var(--space-px)","raw":"1px"},"rem":{"125":{"value":"0.125rem","variable":"var(--space-rem-125)","raw":"0.125rem"},"375":{"value":"0.375rem","variable":"var(--space-rem-375)","raw":"0.375rem"},"625":{"value":"0.625rem","variable":"var(--space-rem-625)","raw":"0.625rem"},"875":{"value":"0.875rem","variable":"var(--space-rem-875)","raw":"0.875rem"}}},"borderWidth":{"noBorder":{"value":"0","variable":"var(--borderWidth-noBorder)","raw":"0"},"sm":{"value":"1px","variable":"var(--borderWidth-sm)","raw":"1px"},"md":{"value":"2px","variable":"var(--borderWidth-md)","raw":"2px"},"lg":{"value":"3px","variable":"var(--borderWidth-lg)","raw":"3px"}},"opacity":{"noOpacity":{"value":"0","variable":"var(--opacity-noOpacity)","raw":"0"},"bright":{"value":"0.1","variable":"var(--opacity-bright)","raw":"0.1"},"light":{"value":"0.15","variable":"var(--opacity-light)","raw":"0.15"},"soft":{"value":"0.3","variable":"var(--opacity-soft)","raw":"0.3"},"medium":{"value":"0.5","variable":"var(--opacity-medium)","raw":"0.5"},"high":{"value":"0.8","variable":"var(--opacity-high)","raw":"0.8"},"total":{"value":"1","variable":"var(--opacity-total)","raw":"1"}},"font":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji","variable":"var(--font-sans)","raw":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif","variable":"var(--font-serif)","raw":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace","variable":"var(--font-mono)","raw":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"fontWeight":{"thin":{"value":"100","variable":"var(--fontWeight-thin)","raw":"100"},"extralight":{"value":"200","variable":"var(--fontWeight-extralight)","raw":"200"},"light":{"value":"300","variable":"var(--fontWeight-light)","raw":"300"},"normal":{"value":"400","variable":"var(--fontWeight-normal)","raw":"400"},"medium":{"value":"500","variable":"var(--fontWeight-medium)","raw":"500"},"semibold":{"value":"600","variable":"var(--fontWeight-semibold)","raw":"600"},"bold":{"value":"700","variable":"var(--fontWeight-bold)","raw":"700"},"extrabold":{"value":"800","variable":"var(--fontWeight-extrabold)","raw":"800"},"black":{"value":"900","variable":"var(--fontWeight-black)","raw":"900"}},"fontSize":{"xs":{"value":"0.75rem","variable":"var(--fontSize-xs)","raw":"0.75rem"},"sm":{"value":"0.875rem","variable":"var(--fontSize-sm)","raw":"0.875rem"},"base":{"value":"1rem","variable":"var(--fontSize-base)","raw":"1rem"},"lg":{"value":"1.125rem","variable":"var(--fontSize-lg)","raw":"1.125rem"},"xl":{"value":"1.25rem","variable":"var(--fontSize-xl)","raw":"1.25rem"},"2xl":{"value":"1.5rem","variable":"var(--fontSize-2xl)","raw":"1.5rem"},"3xl":{"value":"1.875rem","variable":"var(--fontSize-3xl)","raw":"1.875rem"},"4xl":{"value":"2.25rem","variable":"var(--fontSize-4xl)","raw":"2.25rem"},"5xl":{"value":"3rem","variable":"var(--fontSize-5xl)","raw":"3rem"},"6xl":{"value":"3.75rem","variable":"var(--fontSize-6xl)","raw":"3.75rem"},"7xl":{"value":"4.5rem","variable":"var(--fontSize-7xl)","raw":"4.5rem"},"8xl":{"value":"6rem","variable":"var(--fontSize-8xl)","raw":"6rem"},"9xl":{"value":"8rem","variable":"var(--fontSize-9xl)","raw":"8rem"}},"letterSpacing":{"tighter":{"value":"-0.05em","variable":"var(--letterSpacing-tighter)","raw":"-0.05em"},"tight":{"value":"-0.025em","variable":"var(--letterSpacing-tight)","raw":"-0.025em"},"normal":{"value":"0em","variable":"var(--letterSpacing-normal)","raw":"0em"},"wide":{"value":"0.025em","variable":"var(--letterSpacing-wide)","raw":"0.025em"},"wider":{"value":"0.05em","variable":"var(--letterSpacing-wider)","raw":"0.05em"},"widest":{"value":"0.1em","variable":"var(--letterSpacing-widest)","raw":"0.1em"}},"lead":{"1":{"value":".025rem","variable":"var(--lead-1)","raw":".025rem"},"2":{"value":".5rem","variable":"var(--lead-2)","raw":".5rem"},"3":{"value":".75rem","variable":"var(--lead-3)","raw":".75rem"},"4":{"value":"1rem","variable":"var(--lead-4)","raw":"1rem"},"5":{"value":"1.25rem","variable":"var(--lead-5)","raw":"1.25rem"},"6":{"value":"1.5rem","variable":"var(--lead-6)","raw":"1.5rem"},"7":{"value":"1.75rem","variable":"var(--lead-7)","raw":"1.75rem"},"8":{"value":"2rem","variable":"var(--lead-8)","raw":"2rem"},"9":{"value":"2.25rem","variable":"var(--lead-9)","raw":"2.25rem"},"10":{"value":"2.5rem","variable":"var(--lead-10)","raw":"2.5rem"},"none":{"value":"1","variable":"var(--lead-none)","raw":"1"},"tight":{"value":"1.25","variable":"var(--lead-tight)","raw":"1.25"},"snug":{"value":"1.375","variable":"var(--lead-snug)","raw":"1.375"},"normal":{"value":"1.5","variable":"var(--lead-normal)","raw":"1.5"},"relaxed":{"value":"1.625","variable":"var(--lead-relaxed)","raw":"1.625"},"loose":{"value":"2","variable":"var(--lead-loose)","raw":"2"}},"text":{"xs":{"fontSize":{"value":"var(--fontSize-xs)","variable":"var(--text-xs-fontSize)","raw":"{fontSize.xs}"},"lineHeight":{"value":"var(--lead-4)","variable":"var(--text-xs-lineHeight)","raw":"{lead.4}"}},"sm":{"fontSize":{"value":"var(--fontSize-sm)","variable":"var(--text-sm-fontSize)","raw":"{fontSize.sm}"},"lineHeight":{"value":"var(--lead-5)","variable":"var(--text-sm-lineHeight)","raw":"{lead.5}"}},"base":{"fontSize":{"value":"var(--fontSize-base)","variable":"var(--text-base-fontSize)","raw":"{fontSize.base}"},"lineHeight":{"value":"var(--lead-6)","variable":"var(--text-base-lineHeight)","raw":"{lead.6}"}},"lg":{"fontSize":{"value":"var(--fontSize-lg)","variable":"var(--text-lg-fontSize)","raw":"{fontSize.lg}"},"lineHeight":{"value":"var(--lead-7)","variable":"var(--text-lg-lineHeight)","raw":"{lead.7}"}},"xl":{"fontSize":{"value":"var(--fontSize-xl)","variable":"var(--text-xl-fontSize)","raw":"{fontSize.xl}"},"lineHeight":{"value":"var(--lead-7)","variable":"var(--text-xl-lineHeight)","raw":"{lead.7}"}},"2xl":{"fontSize":{"value":"var(--fontSize-2xl)","variable":"var(--text-2xl-fontSize)","raw":"{fontSize.2xl}"},"lineHeight":{"value":"var(--lead-8)","variable":"var(--text-2xl-lineHeight)","raw":"{lead.8}"}},"3xl":{"fontSize":{"value":"var(--fontSize-3xl)","variable":"var(--text-3xl-fontSize)","raw":"{fontSize.3xl}"},"lineHeight":{"value":"var(--lead-9)","variable":"var(--text-3xl-lineHeight)","raw":"{lead.9}"}},"4xl":{"fontSize":{"value":"var(--fontSize-4xl)","variable":"var(--text-4xl-fontSize)","raw":"{fontSize.4xl}"},"lineHeight":{"value":"var(--lead-10)","variable":"var(--text-4xl-lineHeight)","raw":"{lead.10}"}},"5xl":{"fontSize":{"value":"var(--fontSize-5xl)","variable":"var(--text-5xl-fontSize)","raw":"{fontSize.5xl}"},"lineHeight":{"value":"var(--lead-none)","variable":"var(--text-5xl-lineHeight)","raw":"{lead.none}"}},"6xl":{"fontSize":{"value":"var(--fontSize-6xl)","variable":"var(--text-6xl-fontSize)","raw":"{fontSize.6xl}"},"lineHeight":{"value":"var(--lead-none)","variable":"var(--text-6xl-lineHeight)","raw":"{lead.none}"}}},"elements":{"text":{"primary":{"color":{"static":{"value":{"initial":"var(--color-gray-900)","dark":"var(--color-gray-50)"},"variable":"var(--elements-text-primary-color-static)","raw":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"var(--color-gray-500)","dark":"var(--color-gray-400)"},"variable":"var(--elements-text-secondary-color-static)","raw":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"var(--color-gray-700)","dark":"var(--color-gray-200)"},"variable":"var(--elements-text-secondary-color-hover)","raw":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem","variable":"var(--elements-container-maxWidth)","raw":"80rem"},"padding":{"mobile":{"value":"var(--space-4)","variable":"var(--elements-container-padding-mobile)","raw":"{space.4}"},"xs":{"value":"var(--space-4)","variable":"var(--elements-container-padding-xs)","raw":"{space.4}"},"sm":{"value":"var(--space-6)","variable":"var(--elements-container-padding-sm)","raw":"{space.6}"},"md":{"value":"var(--space-6)","variable":"var(--elements-container-padding-md)","raw":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)","variable":"var(--elements-backdrop-filter)","raw":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"},"variable":"var(--elements-backdrop-background)","raw":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"var(--color-gray-100)","dark":"var(--color-gray-900)"},"variable":"var(--elements-border-primary-static)","raw":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--elements-border-primary-hover)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--elements-border-secondary-static)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""},"variable":"var(--elements-border-secondary-hover)","raw":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"var(--color-gray-100)","dark":"var(--color-gray-900)"},"variable":"var(--elements-surface-background-base)","raw":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"var(--color-gray-100)","dark":"var(--color-gray-900)"},"variable":"var(--elements-surface-primary-backgroundColor)","raw":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--elements-surface-secondary-backgroundColor)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"var(--color-primary-600)","dark":"var(--color-primary-400)"},"variable":"var(--elements-state-primary-color-primary)","raw":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"var(--color-primary-700)","dark":"var(--color-primary-200)"},"variable":"var(--elements-state-primary-color-secondary)","raw":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-primary-50)","dark":"var(--color-primary-900)"},"variable":"var(--elements-state-primary-backgroundColor-primary)","raw":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"var(--color-primary-100)","dark":"var(--color-primary-800)"},"variable":"var(--elements-state-primary-backgroundColor-secondary)","raw":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-primary-100)","dark":"var(--color-primary-800)"},"variable":"var(--elements-state-primary-borderColor-primary)","raw":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"var(--color-primary-200)","dark":"var(--color-primary-700)"},"variable":"var(--elements-state-primary-borderColor-secondary)","raw":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"var(--color-blue-500)","dark":"var(--color-blue-400)"},"variable":"var(--elements-state-info-color-primary)","raw":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"var(--color-blue-600)","dark":"var(--color-blue-200)"},"variable":"var(--elements-state-info-color-secondary)","raw":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-blue-50)","dark":"var(--color-blue-900)"},"variable":"var(--elements-state-info-backgroundColor-primary)","raw":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"var(--color-blue-100)","dark":"var(--color-blue-800)"},"variable":"var(--elements-state-info-backgroundColor-secondary)","raw":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-blue-100)","dark":"var(--color-blue-800)"},"variable":"var(--elements-state-info-borderColor-primary)","raw":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"var(--color-blue-200)","dark":"var(--color-blue-700)"},"variable":"var(--elements-state-info-borderColor-secondary)","raw":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"var(--color-green-500)","dark":"var(--color-green-400)"},"variable":"var(--elements-state-success-color-primary)","raw":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"var(--color-green-600)","dark":"var(--color-green-200)"},"variable":"var(--elements-state-success-color-secondary)","raw":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-green-50)","dark":"var(--color-green-900)"},"variable":"var(--elements-state-success-backgroundColor-primary)","raw":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"var(--color-green-100)","dark":"var(--color-green-800)"},"variable":"var(--elements-state-success-backgroundColor-secondary)","raw":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-green-100)","dark":"var(--color-green-800)"},"variable":"var(--elements-state-success-borderColor-primary)","raw":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"var(--color-green-200)","dark":"var(--color-green-700)"},"variable":"var(--elements-state-success-borderColor-secondary)","raw":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"var(--color-yellow-600)","dark":"var(--color-yellow-400)"},"variable":"var(--elements-state-warning-color-primary)","raw":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"var(--color-yellow-700)","dark":"var(--color-yellow-200)"},"variable":"var(--elements-state-warning-color-secondary)","raw":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-yellow-50)","dark":"var(--color-yellow-900)"},"variable":"var(--elements-state-warning-backgroundColor-primary)","raw":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"var(--color-yellow-100)","dark":"var(--color-yellow-800)"},"variable":"var(--elements-state-warning-backgroundColor-secondary)","raw":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-yellow-100)","dark":"var(--color-yellow-800)"},"variable":"var(--elements-state-warning-borderColor-primary)","raw":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"var(--color-yellow-200)","dark":"var(--color-yellow-700)"},"variable":"var(--elements-state-warning-borderColor-secondary)","raw":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"var(--color-red-500)","dark":"var(--color-red-300)"},"variable":"var(--elements-state-danger-color-primary)","raw":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"var(--color-red-600)","dark":"var(--color-red-200)"},"variable":"var(--elements-state-danger-color-secondary)","raw":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-red-50)","dark":"var(--color-red-900)"},"variable":"var(--elements-state-danger-backgroundColor-primary)","raw":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"var(--color-red-100)","dark":"var(--color-red-800)"},"variable":"var(--elements-state-danger-backgroundColor-secondary)","raw":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-red-100)","dark":"var(--color-red-800)"},"variable":"var(--elements-state-danger-borderColor-primary)","raw":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"var(--color-red-200)","dark":"var(--color-red-700)"},"variable":"var(--elements-state-danger-borderColor-secondary)","raw":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"typography":{"body":{"color":{"value":{"initial":"var(--color-black)","dark":"var(--color-white)"},"variable":"var(--typography-body-color)","raw":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"var(--color-white)","dark":"var(--color-black)"},"variable":"var(--typography-body-backgroundColor)","raw":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px","variable":"var(--typography-verticalMargin-sm)","raw":"16px"},"base":{"value":"24px","variable":"var(--typography-verticalMargin-base)","raw":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em","variable":"var(--typography-letterSpacing-tight)","raw":"-0.025em"},"wide":{"value":"0.025em","variable":"var(--typography-letterSpacing-wide)","raw":"0.025em"}},"fontSize":{"xs":{"value":"12px","variable":"var(--typography-fontSize-xs)","raw":"12px"},"sm":{"value":"14px","variable":"var(--typography-fontSize-sm)","raw":"14px"},"base":{"value":"16px","variable":"var(--typography-fontSize-base)","raw":"16px"},"lg":{"value":"18px","variable":"var(--typography-fontSize-lg)","raw":"18px"},"xl":{"value":"20px","variable":"var(--typography-fontSize-xl)","raw":"20px"},"2xl":{"value":"24px","variable":"var(--typography-fontSize-2xl)","raw":"24px"},"3xl":{"value":"30px","variable":"var(--typography-fontSize-3xl)","raw":"30px"},"4xl":{"value":"36px","variable":"var(--typography-fontSize-4xl)","raw":"36px"},"5xl":{"value":"48px","variable":"var(--typography-fontSize-5xl)","raw":"48px"},"6xl":{"value":"60px","variable":"var(--typography-fontSize-6xl)","raw":"60px"},"7xl":{"value":"72px","variable":"var(--typography-fontSize-7xl)","raw":"72px"},"8xl":{"value":"96px","variable":"var(--typography-fontSize-8xl)","raw":"96px"},"9xl":{"value":"128px","variable":"var(--typography-fontSize-9xl)","raw":"128px"}},"fontWeight":{"thin":{"value":"100","variable":"var(--typography-fontWeight-thin)","raw":"100"},"extralight":{"value":"200","variable":"var(--typography-fontWeight-extralight)","raw":"200"},"light":{"value":"300","variable":"var(--typography-fontWeight-light)","raw":"300"},"normal":{"value":"400","variable":"var(--typography-fontWeight-normal)","raw":"400"},"medium":{"value":"500","variable":"var(--typography-fontWeight-medium)","raw":"500"},"semibold":{"value":"600","variable":"var(--typography-fontWeight-semibold)","raw":"600"},"bold":{"value":"700","variable":"var(--typography-fontWeight-bold)","raw":"700"},"extrabold":{"value":"800","variable":"var(--typography-fontWeight-extrabold)","raw":"800"},"black":{"value":"900","variable":"var(--typography-fontWeight-black)","raw":"900"}},"lead":{"1":{"value":".025rem","variable":"var(--typography-lead-1)","raw":".025rem"},"2":{"value":".5rem","variable":"var(--typography-lead-2)","raw":".5rem"},"3":{"value":".75rem","variable":"var(--typography-lead-3)","raw":".75rem"},"4":{"value":"1rem","variable":"var(--typography-lead-4)","raw":"1rem"},"5":{"value":"1.25rem","variable":"var(--typography-lead-5)","raw":"1.25rem"},"6":{"value":"1.5rem","variable":"var(--typography-lead-6)","raw":"1.5rem"},"7":{"value":"1.75rem","variable":"var(--typography-lead-7)","raw":"1.75rem"},"8":{"value":"2rem","variable":"var(--typography-lead-8)","raw":"2rem"},"9":{"value":"2.25rem","variable":"var(--typography-lead-9)","raw":"2.25rem"},"10":{"value":"2.5rem","variable":"var(--typography-lead-10)","raw":"2.5rem"},"none":{"value":"1","variable":"var(--typography-lead-none)","raw":"1"},"tight":{"value":"1.25","variable":"var(--typography-lead-tight)","raw":"1.25"},"snug":{"value":"1.375","variable":"var(--typography-lead-snug)","raw":"1.375"},"normal":{"value":"1.5","variable":"var(--typography-lead-normal)","raw":"1.5"},"relaxed":{"value":"1.625","variable":"var(--typography-lead-relaxed)","raw":"1.625"},"loose":{"value":"2","variable":"var(--typography-lead-loose)","raw":"2"}},"font":{"display":{"value":"var(--font-sans)","variable":"var(--typography-font-display)","raw":"{font.sans}"},"body":{"value":"var(--font-sans)","variable":"var(--typography-font-body)","raw":"{font.sans}"},"code":{"value":"var(--font-mono)","variable":"var(--typography-font-code)","raw":"{font.mono}"}},"color":{"primary":{"50":{"value":"var(--color-primary-50)","variable":"var(--typography-color-primary-50)","raw":"{color.primary.50}"},"100":{"value":"var(--color-primary-100)","variable":"var(--typography-color-primary-100)","raw":"{color.primary.100}"},"200":{"value":"var(--color-primary-200)","variable":"var(--typography-color-primary-200)","raw":"{color.primary.200}"},"300":{"value":"var(--color-primary-300)","variable":"var(--typography-color-primary-300)","raw":"{color.primary.300}"},"400":{"value":"var(--color-primary-400)","variable":"var(--typography-color-primary-400)","raw":"{color.primary.400}"},"500":{"value":"var(--color-primary-500)","variable":"var(--typography-color-primary-500)","raw":"{color.primary.500}"},"600":{"value":"var(--color-primary-600)","variable":"var(--typography-color-primary-600)","raw":"{color.primary.600}"},"700":{"value":"var(--color-primary-700)","variable":"var(--typography-color-primary-700)","raw":"{color.primary.700}"},"800":{"value":"var(--color-primary-800)","variable":"var(--typography-color-primary-800)","raw":"{color.primary.800}"},"900":{"value":"var(--color-primary-900)","variable":"var(--typography-color-primary-900)","raw":"{color.primary.900}"}},"secondary":{"50":{"value":"var(--color-gray-50)","variable":"var(--typography-color-secondary-50)","raw":"{color.gray.50}"},"100":{"value":"var(--color-gray-100)","variable":"var(--typography-color-secondary-100)","raw":"{color.gray.100}"},"200":{"value":"var(--color-gray-200)","variable":"var(--typography-color-secondary-200)","raw":"{color.gray.200}"},"300":{"value":"var(--color-gray-300)","variable":"var(--typography-color-secondary-300)","raw":"{color.gray.300}"},"400":{"value":"var(--color-gray-400)","variable":"var(--typography-color-secondary-400)","raw":"{color.gray.400}"},"500":{"value":"var(--color-gray-500)","variable":"var(--typography-color-secondary-500)","raw":"{color.gray.500}"},"600":{"value":"var(--color-gray-600)","variable":"var(--typography-color-secondary-600)","raw":"{color.gray.600}"},"700":{"value":"var(--color-gray-700)","variable":"var(--typography-color-secondary-700)","raw":"{color.gray.700}"},"800":{"value":"var(--color-gray-800)","variable":"var(--typography-color-secondary-800)","raw":"{color.gray.800}"},"900":{"value":"var(--color-gray-900)","variable":"var(--typography-color-secondary-900)","raw":"{color.gray.900}"}}}},"prose":{"p":{"fontSize":{"value":"var(--typography-fontSize-base)","variable":"var(--prose-p-fontSize)","raw":"{typography.fontSize.base}"},"lineHeight":{"value":"var(--typography-lead-normal)","variable":"var(--prose-p-lineHeight)","raw":"{typography.lead.normal}"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-p-margin)","raw":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"var(--typography-verticalMargin-base) 0 0 0","variable":"var(--prose-p-br-margin)","raw":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem","variable":"var(--prose-h1-margin)","raw":"0 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-5xl)","variable":"var(--prose-h1-fontSize)","raw":"{typography.fontSize.5xl}"},"lineHeight":{"value":"var(--typography-lead-tight)","variable":"var(--prose-h1-lineHeight)","raw":"{typography.lead.tight}"},"fontWeight":{"value":"var(--typography-fontWeight-bold)","variable":"var(--prose-h1-fontWeight)","raw":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h1-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-3xl)","variable":"var(--prose-h1-iconSize)","raw":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h2-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-4xl)","variable":"var(--prose-h2-fontSize)","raw":"{typography.fontSize.4xl}"},"lineHeight":{"value":"var(--typography-lead-tight)","variable":"var(--prose-h2-lineHeight)","raw":"{typography.lead.tight}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h2-fontWeight)","raw":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h2-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-2xl)","variable":"var(--prose-h2-iconSize)","raw":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h3-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-3xl)","variable":"var(--prose-h3-fontSize)","raw":"{typography.fontSize.3xl}"},"lineHeight":{"value":"var(--typography-lead-snug)","variable":"var(--prose-h3-lineHeight)","raw":"{typography.lead.snug}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h3-fontWeight)","raw":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h3-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-xl)","variable":"var(--prose-h3-iconSize)","raw":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h4-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-2xl)","variable":"var(--prose-h4-fontSize)","raw":"{typography.fontSize.2xl}"},"lineHeight":{"value":"var(--typography-lead-snug)","variable":"var(--prose-h4-lineHeight)","raw":"{typography.lead.snug}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h4-fontWeight)","raw":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h4-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-lg)","variable":"var(--prose-h4-iconSize)","raw":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h5-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-xl)","variable":"var(--prose-h5-fontSize)","raw":"{typography.fontSize.xl}"},"lineHeight":{"value":"var(--typography-lead-snug)","variable":"var(--prose-h5-lineHeight)","raw":"{typography.lead.snug}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h5-fontWeight)","raw":"{typography.fontWeight.semibold}"},"iconSize":{"value":"var(--typography-fontSize-lg)","variable":"var(--prose-h5-iconSize)","raw":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h6-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-lg)","variable":"var(--prose-h6-fontSize)","raw":"{typography.fontSize.lg}"},"lineHeight":{"value":"var(--typography-lead-normal)","variable":"var(--prose-h6-lineHeight)","raw":"{typography.lead.normal}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h6-fontWeight)","raw":"{typography.fontWeight.semibold}"},"iconSize":{"value":"var(--typography-fontSize-base)","variable":"var(--prose-h6-iconSize)","raw":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-strong-fontWeight)","raw":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-img-margin)","raw":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none","variable":"var(--prose-a-textDecoration)","raw":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"},"variable":"var(--prose-a-color-static)","raw":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"var(--typography-color-primary-500)","dark":"var(--typography-color-primary-400)"},"variable":"var(--prose-a-color-hover)","raw":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px","variable":"var(--prose-a-border-width)","raw":"1px"},"style":{"static":{"value":"dashed","variable":"var(--prose-a-border-style-static)","raw":"dashed"},"hover":{"value":"solid","variable":"var(--prose-a-border-style-hover)","raw":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-border-color-static)","raw":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-border-color-hover)","raw":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px","variable":"var(--prose-a-border-distance)","raw":"2px"}},"fontWeight":{"value":"var(--typography-fontWeight-medium)","variable":"var(--prose-a-fontWeight)","raw":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none","variable":"var(--prose-a-hasCode-borderBottom)","raw":"none"}},"code":{"border":{"width":{"value":"var(--prose-a-border-width)","variable":"var(--prose-a-code-border-width)","raw":"{prose.a.border.width}"},"style":{"value":"var(--prose-a-border-style-static)","variable":"var(--prose-a-code-border-style)","raw":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"var(--typography-color-secondary-400)","dark":"var(--typography-color-secondary-600)"},"variable":"var(--prose-a-code-border-color-static)","raw":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"var(--typography-color-primary-500)","dark":"var(--typography-color-primary-600)"},"variable":"var(--prose-a-code-border-color-hover)","raw":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-code-color-static)","raw":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-code-color-hover)","raw":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"var(--typography-color-primary-50)","dark":"var(--typography-color-primary-900)"},"variable":"var(--prose-a-code-background-hover)","raw":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-blockquote-margin)","raw":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px","variable":"var(--prose-blockquote-paddingInlineStart)","raw":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'","variable":"var(--prose-blockquote-quotes)","raw":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"var(--typography-color-secondary-500)","dark":"var(--typography-color-secondary-400)"},"variable":"var(--prose-blockquote-color)","raw":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px","variable":"var(--prose-blockquote-border-width)","raw":"4px"},"style":{"value":"solid","variable":"var(--prose-blockquote-border-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-700)"},"variable":"var(--prose-blockquote-border-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc","variable":"var(--prose-ul-listStyleType)","raw":"disc"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-ul-margin)","raw":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px","variable":"var(--prose-ul-paddingInlineStart)","raw":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-ul-li-markerColor)","raw":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal","variable":"var(--prose-ol-listStyleType)","raw":"decimal"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-ol-margin)","raw":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px","variable":"var(--prose-ol-paddingInlineStart)","raw":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-ol-li-markerColor)","raw":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"var(--typography-verticalMargin-sm) 0","variable":"var(--prose-li-margin)","raw":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside","variable":"var(--prose-li-listStylePosition)","raw":"outside"}},"hr":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-hr-margin)","raw":"{typography.verticalMargin.base} 0"},"style":{"value":"solid","variable":"var(--prose-hr-style)","raw":"solid"},"width":{"value":"1px","variable":"var(--prose-hr-width)","raw":"1px"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-hr-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-table-margin)","raw":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start","variable":"var(--prose-table-textAlign)","raw":"start"},"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-table-fontSize)","raw":"{typography.fontSize.sm}"},"lineHeight":{"value":"var(--typography-lead-6)","variable":"var(--prose-table-lineHeight)","raw":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px","variable":"var(--prose-thead-border-width)","raw":"0px"},"style":{"value":"solid","variable":"var(--prose-thead-border-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-300)","dark":"var(--typography-color-secondary-600)"},"variable":"var(--prose-thead-border-color)","raw":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px","variable":"var(--prose-thead-borderBottom-width)","raw":"1px"},"style":{"value":"solid","variable":"var(--prose-thead-borderBottom-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-thead-borderBottom-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"var(--typography-color-secondary-600)","dark":"var(--typography-color-secondary-400)"},"variable":"var(--prose-th-color)","raw":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 var(--typography-verticalMargin-sm) var(--typography-verticalMargin-sm) var(--typography-verticalMargin-sm)","variable":"var(--prose-th-padding)","raw":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-th-fontWeight)","raw":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit","variable":"var(--prose-th-textAlign)","raw":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px","variable":"var(--prose-tbody-tr-borderBottom-width)","raw":"1px"},"style":{"value":"dashed","variable":"var(--prose-tbody-tr-borderBottom-style)","raw":"dashed"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-tbody-tr-borderBottom-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"var(--typography-verticalMargin-sm)","variable":"var(--prose-tbody-td-padding)","raw":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-tbody-code-inline-fontSize)","raw":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-code-block-fontSize)","raw":"{typography.fontSize.sm}"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-code-block-margin)","raw":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px","variable":"var(--prose-code-block-border-width)","raw":"1px"},"style":{"value":"solid","variable":"var(--prose-code-block-border-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-code-block-border-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"var(--typography-color-secondary-700)","dark":"var(--typography-color-secondary-200)"},"variable":"var(--prose-code-block-color)","raw":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"var(--typography-color-secondary-100)","dark":"var(--typography-color-secondary-900)"},"variable":"var(--prose-code-block-backgroundColor)","raw":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"},"variable":"var(--prose-code-block-backdropFilter)","raw":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"var(--typography-verticalMargin-sm)","variable":"var(--prose-code-block-pre-padding)","raw":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"var(--radii-xs)","variable":"var(--prose-code-inline-borderRadius)","raw":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem","variable":"var(--prose-code-inline-padding)","raw":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-code-inline-fontSize)","raw":"{typography.fontSize.sm}"},"fontWeight":{"value":"var(--typography-fontWeight-normal)","variable":"var(--prose-code-inline-fontWeight)","raw":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"var(--typography-color-secondary-700)","dark":"var(--typography-color-secondary-200)"},"variable":"var(--prose-code-inline-color)","raw":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"var(--typography-color-secondary-100)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-code-inline-backgroundColor)","raw":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"docus":{"body":{"backgroundColor":{"value":{"initial":"var(--color-white)","dark":"var(--color-black)"},"variable":"var(--docus-body-backgroundColor)","raw":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"var(--color-gray-800)","dark":"var(--color-gray-200)"},"variable":"var(--docus-body-color)","raw":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"var(--font-sans)","variable":"var(--docus-body-fontFamily)","raw":"{font.sans}"}},"header":{"height":{"value":"64px","variable":"var(--docus-header-height)","raw":"64px"},"logo":{"height":{"value":{"initial":"var(--space-6)","sm":"var(--space-7)"},"variable":"var(--docus-header-logo-height)","raw":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"var(--fontSize-2xl)","variable":"var(--docus-header-title-fontSize)","raw":"{fontSize.2xl}"},"fontWeight":{"value":"var(--fontWeight-bold)","variable":"var(--docus-header-title-fontWeight)","raw":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"var(--color-gray-900)","dark":"var(--color-gray-100)"},"variable":"var(--docus-header-title-color-static)","raw":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"var(--color-primary-500)","variable":"var(--docus-header-title-color-hover)","raw":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"},"variable":"var(--docus-footer-height)","raw":{"initial":"145px","sm":"100px"}},"padding":{"value":"var(--space-4) 0","variable":"var(--docus-footer-padding)","raw":"{space.4} 0"}},"readableLine":{"value":"78ch","variable":"var(--docus-readableLine)","raw":"78ch"},"loadingBar":{"height":{"value":"3px","variable":"var(--docus-loadingBar-height)","raw":"3px"},"gradientColorStop1":{"value":"#00dc82","variable":"var(--docus-loadingBar-gradientColorStop1)","raw":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe","variable":"var(--docus-loadingBar-gradientColorStop2)","raw":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1","variable":"var(--docus-loadingBar-gradientColorStop3)","raw":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)","variable":"var(--docus-search-backdropFilter)","raw":"blur(24px)"},"input":{"borderRadius":{"value":"var(--radii-2xs)","variable":"var(--docus-search-input-borderRadius)","raw":"{radii.2xs}"},"borderWidth":{"value":"1px","variable":"var(--docus-search-input-borderWidth)","raw":"1px"},"borderStyle":{"value":"solid","variable":"var(--docus-search-input-borderStyle)","raw":"solid"},"borderColor":{"value":{"initial":"var(--color-gray-200)","dark":"transparent"},"variable":"var(--docus-search-input-borderColor)","raw":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"var(--fontSize-sm)","variable":"var(--docus-search-input-fontSize)","raw":"{fontSize.sm}"},"gap":{"value":"var(--space-2)","variable":"var(--docus-search-input-gap)","raw":"{space.2}"},"padding":{"value":"var(--space-2) var(--space-4)","variable":"var(--docus-search-input-padding)","raw":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--docus-search-input-backgroundColor)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"var(--space-4)"},"variable":"var(--docus-search-results-window-marginX)","raw":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"var(--radii-xs)"},"variable":"var(--docus-search-results-window-borderRadius)","raw":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"},"variable":"var(--docus-search-results-window-marginTop)","raw":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px","variable":"var(--docus-search-results-window-maxWidth)","raw":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"},"variable":"var(--docus-search-results-window-maxHeight)","raw":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"var(--color-gray-300)","dark":"var(--color-gray-700)"},"variable":"var(--docus-search-results-selected-backgroundColor)","raw":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white","variable":"var(--docus-search-results-highlight-color)","raw":"white"},"backgroundColor":{"value":"var(--color-primary-500)","variable":"var(--docus-search-results-highlight-backgroundColor)","raw":"{color.primary.500}"}}}}}},"content":{"sources":{},"ignores":[],"locales":[],"highlight":{"theme":{"dark":"github-dark","default":"github-light"},"preload":["json","js","ts","html","css","vue","diff","shell","markdown","yaml","bash","ini"]},"navigation":{"fields":["icon","titleTemplate","header","main","aside","footer","layout"]},"documentDriven":true,"experimental":{"clientDB":false,"stripQueryParameters":false,"advanceQuery":false}},"components":[{"name":"ChallengeV2Demo","path":"components/content/ChallengeV2Demo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ChallengeV3Demo","path":"components/content/ChallengeV3Demo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CheckboxDemo","path":"components/content/CheckboxDemo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IndexDemo","path":"components/content/IndexDemo.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","declarations":[],"schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"Mermaid","path":"components/content/Mermaid.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","declarations":[],"schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"PrimaryButton","path":"components/content/PrimaryButton.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","declarations":[],"schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ThemeButton","path":"components/content/ThemeButton.vue","meta":{"props":[{"name":"modelValue","global":false,"description":"","tags":[],"required":true,"type":"\"light\" | \"dark\"","declarations":[{"file":"/home/runner/work/vue-recaptcha/vue-recaptcha/docs/components/content/ThemeButton.vue","range":[55,83]},{"file":"/home/runner/work/vue-recaptcha/vue-recaptcha/docs/components/content/ThemeButton.vue","range":[55,83]}],"schema":{"kind":"enum","type":"\"light\" | \"dark\"","schema":["\"light\"","\"dark\""]}}],"slots":[],"events":[{"name":"update:modelValue","type":"[theme: \"light\" | \"dark\"]","signature":"(event: \"update:modelValue\", theme: \"light\" | \"dark\"): void","declarations":[{"file":"/home/runner/work/vue-recaptcha/vue-recaptcha/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","range":[4472,4507]}],"schema":[{"kind":"enum","type":"\"light\" | \"dark\"","schema":["\"light\"","\"dark\""]}]}]}},{"name":"VeeValidateCheckbox","path":"components/content/VeeValidateCheckbox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"VeeValidateInvisible","path":"components/content/VeeValidateInvisible.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppDocSearch","path":"../node_modules/@nuxt-themes/docus/components/app/AppDocSearch.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppFooter","path":"../node_modules/@nuxt-themes/docus/components/app/AppFooter.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeader","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeader.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeaderDialog","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeaderDialog.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeaderLogo","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeaderLogo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeaderNavigation","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeaderNavigation.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppLayout","path":"../node_modules/@nuxt-themes/docus/components/app/AppLayout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppLoadingBar","path":"../node_modules/@nuxt-themes/docus/components/app/AppLoadingBar.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppSearch","path":"../node_modules/@nuxt-themes/docus/components/app/AppSearch.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppSocialIcons","path":"../node_modules/@nuxt-themes/docus/components/app/AppSocialIcons.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Ellipsis","path":"../node_modules/@nuxt-themes/docus/components/app/Ellipsis.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Logo","path":"../node_modules/@nuxt-themes/docus/components/app/Logo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ThemeSelect","path":"../node_modules/@nuxt-themes/docus/components/app/ThemeSelect.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsAside","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsAside.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsAsideTree","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsAsideTree.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsPageBottom","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsPageBottom.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsPageLayout","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsPageLayout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsPrevNext","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsPrevNext.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsToc","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsToc.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsTocLinks","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsTocLinks.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"EditOnLink","path":"../node_modules/@nuxt-themes/docus/components/docs/EditOnLink.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"SourceLink","path":"../node_modules/@nuxt-themes/docus/components/docs/SourceLink.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Alert","path":"../node_modules/@nuxt-themes/elements/components/globals/Alert.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Badge","path":"../node_modules/@nuxt-themes/elements/components/globals/Badge.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ButtonLink","path":"../node_modules/@nuxt-themes/elements/components/globals/ButtonLink.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Callout","path":"../node_modules/@nuxt-themes/elements/components/globals/Callout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CodeBlock","path":"../node_modules/@nuxt-themes/elements/components/globals/CodeBlock.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CodeGroup","path":"../node_modules/@nuxt-themes/elements/components/globals/CodeGroup.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Container","path":"../node_modules/@nuxt-themes/elements/components/globals/Container.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CopyButton","path":"../node_modules/@nuxt-themes/elements/components/globals/CopyButton.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"List","path":"../node_modules/@nuxt-themes/elements/components/globals/List.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"NuxtImg","path":"../node_modules/@nuxt-themes/elements/components/globals/NuxtImg.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Props","path":"../node_modules/@nuxt-themes/elements/components/globals/Props.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Sandbox","path":"../node_modules/@nuxt-themes/elements/components/globals/Sandbox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"TabsHeader","path":"../node_modules/@nuxt-themes/elements/components/globals/TabsHeader.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Terminal","path":"../node_modules/@nuxt-themes/elements/components/globals/Terminal.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"VideoPlayer","path":"../node_modules/@nuxt-themes/elements/components/globals/VideoPlayer.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconCodeSandBox","path":"../node_modules/@nuxt-themes/elements/components/icons/IconCodeSandBox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconDocus","path":"../node_modules/@nuxt-themes/elements/components/icons/IconDocus.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxt","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxt.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxtContent","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxtContent.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxtLabs","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxtLabs.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxtStudio","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxtStudio.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconStackBlitz","path":"../node_modules/@nuxt-themes/elements/components/icons/IconStackBlitz.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconVueTelescope","path":"../node_modules/@nuxt-themes/elements/components/icons/IconVueTelescope.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"BlockHero","path":"../node_modules/@nuxt-themes/elements/components/landing/BlockHero.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Card","path":"../node_modules/@nuxt-themes/elements/components/landing/Card.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CardGrid","path":"../node_modules/@nuxt-themes/elements/components/landing/CardGrid.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"VoltaBoard","path":"../node_modules/@nuxt-themes/elements/components/volta/VoltaBoard.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlayground","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlayground.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundData","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundData.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundProps","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundProps.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundSlots","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundSlots.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundTokens","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundTokens.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"PreviewLayout","path":"../node_modules/@nuxt-themes/elements/components/meta/PreviewLayout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"TokensPlayground","path":"../node_modules/@nuxt-themes/elements/components/meta/TokensPlayground.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"RecaptchaCheckbox","path":"../src/components/Checkbox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"RecaptchaChallengeV2","path":"../src/components/ChallengeV2.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"RecaptchaChallengeV3","path":"../src/components/ChallengeV3.vue","meta":{"props":[],"slots":[],"events":[]}}]} \ No newline at end of file +{"version":"1.0.0","tokens":"","appConfigSchema":{"properties":{"id":"#appConfig","properties":{"nuxtIcon":{"title":"Nuxt Icon","description":"Configure the defaults of Nuxt Icon","id":"#appConfig/nuxtIcon","properties":{"size":{"title":"Icon Size","description":"Set the default icon size. Set to false to disable the sizing of icon in style.","tags":["@studioIcon material-symbols:format-size-rounded"],"tsType":"string | false","id":"#appConfig/nuxtIcon/size","default":"1em","type":"string"},"class":{"title":"CSS Class","description":"Set the default CSS class","tags":["@studioIcon material-symbols:css"],"id":"#appConfig/nuxtIcon/class","default":"","type":"string"},"aliases":{"title":"Icon aliases","description":"Define Icon aliases to update them easily without code changes.","tags":["@studioIcon material-symbols:star-rounded","@studioInputObjectValueType icon"],"tsType":"{ [alias: string]: string }","id":"#appConfig/nuxtIcon/aliases","default":{},"type":"object"}},"type":"object","default":{"size":"1em","class":"","aliases":{}}},"prose":{"title":"","description":"","tags":[],"id":"#appConfig/prose","properties":{"copyButton":{"title":"","description":"","tags":[],"id":"#appConfig/prose/copyButton","properties":{"iconCopy":{"title":"","description":"","tags":[],"id":"#appConfig/prose/copyButton/iconCopy","default":"ph:copy","type":"string"},"iconCopied":{"title":"","description":"","tags":[],"id":"#appConfig/prose/copyButton/iconCopied","default":"ph:check","type":"string"}},"type":"object","default":{"iconCopy":"ph:copy","iconCopied":"ph:check"}},"headings":{"title":"","description":"","tags":[],"id":"#appConfig/prose/headings","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/headings/icon","default":"ph:link","type":"string"}},"type":"object","default":{"icon":"ph:link"}},"h1":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h1","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h1/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h2":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h2","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h2/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h3":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h3","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h3/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h4":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h4","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h4/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h5":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h5","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h5/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}},"h6":{"title":"","description":"","tags":[],"id":"#appConfig/prose/h6","properties":{"icon":{"title":"","description":"","tags":[],"tsType":"string|false","id":"#appConfig/prose/h6/icon","default":"","type":"string"}},"type":"object","default":{"icon":""}}},"type":"object","default":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"},"h1":{"icon":""},"h2":{"icon":""},"h3":{"icon":""},"h4":{"icon":""},"h5":{"icon":""},"h6":{"icon":""}}},"docus":{"title":"","description":"","tags":[],"id":"#appConfig/docus","properties":{"title":{"title":"","description":"","tags":[],"id":"#appConfig/docus/title","default":"Docus","type":"string"},"titleTemplate":{"title":"","description":"","tags":[],"id":"#appConfig/docus/titleTemplate","default":"%s · Docus","type":"string"},"description":{"title":"","description":"","tags":[],"id":"#appConfig/docus/description","default":"The best place to start your documentation.","type":"string"},"image":{"title":"","description":"","tags":[],"id":"#appConfig/docus/image","default":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","type":"string"},"socials":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials","properties":{"twitter":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/twitter","default":"","type":"string"},"github":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/github","default":"","type":"string"},"facebook":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/facebook","default":"","type":"string"},"instagram":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/instagram","default":"","type":"string"},"tiktok":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/tiktok","default":"","type":"string"},"youtube":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/youtube","default":"","type":"string"},"medium":{"title":"","description":"","tags":[],"id":"#appConfig/docus/socials/medium","default":"","type":"string"}},"type":"object","default":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""}},"layout":{"title":"","description":"","tags":[],"tsType":"'default'|'page'","id":"#appConfig/docus/layout","default":"default","type":"string"},"aside":{"title":"","description":"","tags":[],"id":"#appConfig/docus/aside","properties":{"level":{"title":"","description":"","tags":[],"id":"#appConfig/docus/aside/level","default":0,"type":"number"},"collapsed":{"title":"","description":"","tags":[],"id":"#appConfig/docus/aside/collapsed","default":false,"type":"boolean"},"exclude":{"title":"","description":"","tags":[],"tsType":"string[]","id":"#appConfig/docus/aside/exclude","default":[],"type":"array","items":{"type":"any"}}},"type":"object","default":{"level":0,"collapsed":false,"exclude":[]}},"header":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header","properties":{"title":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header/title","default":"","type":"string"},"logo":{"title":"","description":"","tags":[],"tsType":"boolean|string|{dark: string, light: string}","id":"#appConfig/docus/header/logo","default":false,"type":"boolean"},"showLinkIcon":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header/showLinkIcon","default":false,"type":"boolean"},"exclude":{"title":"","description":"","tags":[],"tsType":"string[]","id":"#appConfig/docus/header/exclude","default":[],"type":"array","items":{"type":"any"}},"fluid":{"title":"","description":"","tags":[],"id":"#appConfig/docus/header/fluid","default":false,"type":"boolean"}},"type":"object","default":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false}},"main":{"title":"","description":"","tags":[],"id":"#appConfig/docus/main","properties":{"fluid":{"title":"","description":"","tags":[],"id":"#appConfig/docus/main/fluid","default":false,"type":"boolean"},"padded":{"title":"","description":"","tags":[],"id":"#appConfig/docus/main/padded","default":true,"type":"boolean"}},"type":"object","default":{"fluid":false,"padded":true}},"footer":{"title":"","description":"","tags":[],"id":"#appConfig/docus/footer","properties":{"credits":{"title":"","description":"","tags":[],"tsType":"false|{icon: string, text: string, href: string}","id":"#appConfig/docus/footer/credits","properties":{"icon":{"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/credits/icon","default":"IconDocus","type":"string"},"text":{"type":"string","id":"#appConfig/docus/footer/credits/text","default":"Powered by Docus"},"href":{"type":"string","id":"#appConfig/docus/footer/credits/href","default":"https://docus.dev"}},"type":"object","default":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"}},"textLinks":{"type":"array","items":{"type":"object","required":["text","href"],"properties":{"href":{"type":"string","description":"URL when clicking the link"},"text":{"type":"string","description":"Text of the link"},"target":{"type":"string","description":"Target attribute of the link"},"rel":{"type":"string","description":"Rel attribute of the link"}}},"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/textLinks"},"iconLinks":{"type":"array","items":{"type":"object","required":["icon","href"],"properties":{"icon":{"type":"string","description":"Icon name"},"href":{"type":"string","description":"Link when clicking on the icon"},"label":{"type":"string","description":"Label of the icon"},"rel":{"type":"string","description":"Rel attribute of the link"}}},"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/iconLinks"},"fluid":{"title":"","description":"","tags":[],"id":"#appConfig/docus/footer/fluid","default":true,"type":"boolean"}},"type":"object","default":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true}},"github":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github","properties":{"baseUrl":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/baseUrl","default":"https://github.com","type":"string"},"dir":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/dir","default":"","type":"string"},"branch":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/branch","default":"","type":"string"},"repo":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/repo","default":"","type":"string"},"owner":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/owner","default":"","type":"string"},"edit":{"title":"","description":"","tags":[],"id":"#appConfig/docus/github/edit","default":false,"type":"boolean"}},"type":"object","default":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}},"type":"object","default":{"title":"Docus","titleTemplate":"%s · Docus","description":"The best place to start your documentation.","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""},"layout":"default","aside":{"level":0,"collapsed":false,"exclude":[]},"header":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false},"main":{"fluid":false,"padded":true},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true},"github":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}}},"type":"object","default":{"nuxtIcon":{"size":"1em","class":"","aliases":{}},"prose":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"},"h1":{"icon":""},"h2":{"icon":""},"h3":{"icon":""},"h4":{"icon":""},"h5":{"icon":""},"h6":{"icon":""}},"docus":{"title":"Docus","titleTemplate":"%s · Docus","description":"The best place to start your documentation.","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""},"layout":"default","aside":{"level":0,"collapsed":false,"exclude":[]},"header":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false},"main":{"fluid":false,"padded":true},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true},"github":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}}},"default":{"nuxtIcon":{"size":"1em","class":"","aliases":{}},"prose":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"},"h1":{"icon":""},"h2":{"icon":""},"h3":{"icon":""},"h4":{"icon":""},"h5":{"icon":""},"h6":{"icon":""}},"docus":{"title":"Docus","titleTemplate":"%s · Docus","description":"The best place to start your documentation.","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"twitter":"","github":"","facebook":"","instagram":"","tiktok":"","youtube":"","medium":""},"layout":"default","aside":{"level":0,"collapsed":false,"exclude":[]},"header":{"title":"","logo":false,"showLinkIcon":false,"exclude":[],"fluid":false},"main":{"fluid":false,"padded":true},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"fluid":true},"github":{"baseUrl":"https://github.com","dir":"","branch":"","repo":"","owner":"","edit":false}}}},"appConfig":{"nuxt":{"buildId":"3f717189-55ef-42ac-b745-955bd3939c4d"},"prose":{"copyButton":{"iconCopy":"ph:copy","iconCopied":"ph:check"},"headings":{"icon":"ph:link"}},"docus":{"title":"vue-recaptcha","description":"Document for vue-recaptcha","url":"https://dansnow.github.io/vue-recaptcha","image":"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png","socials":{"github":"DanSnow/vue-recaptcha"},"layout":"default","header":{"title":"","logo":false,"showLinkIcon":false,"fluid":false,"exclude":[]},"aside":{"level":0,"collapsed":false,"exclude":[]},"footer":{"credits":{"icon":"IconDocus","text":"Powered by Docus","href":"https://docus.dev"},"textLinks":[],"iconLinks":[],"fluid":false},"github":{"dir":"docs/content","branch":"v3","repo":"vue-recaptcha","owner":"DanSnow","edit":true}}},"tokensConfigSchema":{"properties":{"id":"#tokensConfig","properties":{"media":{"title":"Your website media queries.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon material-symbols:screenshot-monitor-outline-rounded"],"id":"#tokensConfig/media","properties":{"xs":{"id":"#tokensConfig/media/xs","properties":{"value":{"type":"string","id":"#tokensConfig/media/xs/value","default":"(min-width: 475px)"}},"type":"object","default":{"value":"(min-width: 475px)"}},"sm":{"id":"#tokensConfig/media/sm","properties":{"value":{"type":"string","id":"#tokensConfig/media/sm/value","default":"(min-width: 640px)"}},"type":"object","default":{"value":"(min-width: 640px)"}},"md":{"id":"#tokensConfig/media/md","properties":{"value":{"type":"string","id":"#tokensConfig/media/md/value","default":"(min-width: 768px)"}},"type":"object","default":{"value":"(min-width: 768px)"}},"lg":{"id":"#tokensConfig/media/lg","properties":{"value":{"type":"string","id":"#tokensConfig/media/lg/value","default":"(min-width: 1024px)"}},"type":"object","default":{"value":"(min-width: 1024px)"}},"xl":{"id":"#tokensConfig/media/xl","properties":{"value":{"type":"string","id":"#tokensConfig/media/xl/value","default":"(min-width: 1280px)"}},"type":"object","default":{"value":"(min-width: 1280px)"}},"2xl":{"id":"#tokensConfig/media/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/media/2xl/value","default":"(min-width: 1536px)"}},"type":"object","default":{"value":"(min-width: 1536px)"}},"rm":{"id":"#tokensConfig/media/rm","properties":{"value":{"type":"string","id":"#tokensConfig/media/rm/value","default":"(prefers-reduced-motion: reduce)"}},"type":"object","default":{"value":"(prefers-reduced-motion: reduce)"}},"landscape":{"id":"#tokensConfig/media/landscape","properties":{"value":{"type":"string","id":"#tokensConfig/media/landscape/value","default":"only screen and (orientation: landscape)"}},"type":"object","default":{"value":"only screen and (orientation: landscape)"}},"portrait":{"id":"#tokensConfig/media/portrait","properties":{"value":{"type":"string","id":"#tokensConfig/media/portrait/value","default":"only screen and (orientation: portrait)"}},"type":"object","default":{"value":"only screen and (orientation: portrait)"}}},"type":"object","default":{"xs":{"value":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)"}}},"color":{"title":"Your website color palette.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon ph:palette"],"id":"#tokensConfig/color","properties":{"white":{"id":"#tokensConfig/color/white","properties":{"value":{"type":"string","id":"#tokensConfig/color/white/value","default":"#ffffff"}},"type":"object","default":{"value":"#ffffff"}},"black":{"id":"#tokensConfig/color/black","properties":{"value":{"type":"string","id":"#tokensConfig/color/black/value","default":"#0B0A0A"}},"type":"object","default":{"value":"#0B0A0A"}},"gray":{"id":"#tokensConfig/color/gray","properties":{"50":{"id":"#tokensConfig/color/gray/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/50/value","default":"#FBFBFB"}},"type":"object","default":{"value":"#FBFBFB"}},"100":{"id":"#tokensConfig/color/gray/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/100/value","default":"#F6F5F4"}},"type":"object","default":{"value":"#F6F5F4"}},"200":{"id":"#tokensConfig/color/gray/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/200/value","default":"#ECEBE8"}},"type":"object","default":{"value":"#ECEBE8"}},"300":{"id":"#tokensConfig/color/gray/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/300/value","default":"#DBD9D3"}},"type":"object","default":{"value":"#DBD9D3"}},"400":{"id":"#tokensConfig/color/gray/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/400/value","default":"#ADA9A4"}},"type":"object","default":{"value":"#ADA9A4"}},"500":{"id":"#tokensConfig/color/gray/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/500/value","default":"#97948F"}},"type":"object","default":{"value":"#97948F"}},"600":{"id":"#tokensConfig/color/gray/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/600/value","default":"#67635D"}},"type":"object","default":{"value":"#67635D"}},"700":{"id":"#tokensConfig/color/gray/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/700/value","default":"#36332E"}},"type":"object","default":{"value":"#36332E"}},"800":{"id":"#tokensConfig/color/gray/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/800/value","default":"#201E1B"}},"type":"object","default":{"value":"#201E1B"}},"900":{"id":"#tokensConfig/color/gray/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/gray/900/value","default":"#121110"}},"type":"object","default":{"value":"#121110"}}},"type":"object","default":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}}},"green":{"id":"#tokensConfig/color/green","properties":{"50":{"id":"#tokensConfig/color/green/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/50/value","default":"#ECFFF7"}},"type":"object","default":{"value":"#ECFFF7"}},"100":{"id":"#tokensConfig/color/green/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/100/value","default":"#DEFFF1"}},"type":"object","default":{"value":"#DEFFF1"}},"200":{"id":"#tokensConfig/color/green/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/200/value","default":"#C3FFE6"}},"type":"object","default":{"value":"#C3FFE6"}},"300":{"id":"#tokensConfig/color/green/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/300/value","default":"#86FBCB"}},"type":"object","default":{"value":"#86FBCB"}},"400":{"id":"#tokensConfig/color/green/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/400/value","default":"#3CEEA5"}},"type":"object","default":{"value":"#3CEEA5"}},"500":{"id":"#tokensConfig/color/green/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/500/value","default":"#0DD885"}},"type":"object","default":{"value":"#0DD885"}},"600":{"id":"#tokensConfig/color/green/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/600/value","default":"#00B467"}},"type":"object","default":{"value":"#00B467"}},"700":{"id":"#tokensConfig/color/green/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/700/value","default":"#006037"}},"type":"object","default":{"value":"#006037"}},"800":{"id":"#tokensConfig/color/green/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/800/value","default":"#002817"}},"type":"object","default":{"value":"#002817"}},"900":{"id":"#tokensConfig/color/green/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/green/900/value","default":"#00190F"}},"type":"object","default":{"value":"#00190F"}}},"type":"object","default":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}}},"yellow":{"id":"#tokensConfig/color/yellow","properties":{"50":{"id":"#tokensConfig/color/yellow/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/50/value","default":"#FFFCEE"}},"type":"object","default":{"value":"#FFFCEE"}},"100":{"id":"#tokensConfig/color/yellow/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/100/value","default":"#FFF6D3"}},"type":"object","default":{"value":"#FFF6D3"}},"200":{"id":"#tokensConfig/color/yellow/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/200/value","default":"#FFF0B1"}},"type":"object","default":{"value":"#FFF0B1"}},"300":{"id":"#tokensConfig/color/yellow/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/300/value","default":"#FFE372"}},"type":"object","default":{"value":"#FFE372"}},"400":{"id":"#tokensConfig/color/yellow/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/400/value","default":"#FFDC4E"}},"type":"object","default":{"value":"#FFDC4E"}},"500":{"id":"#tokensConfig/color/yellow/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/500/value","default":"#FBCA05"}},"type":"object","default":{"value":"#FBCA05"}},"600":{"id":"#tokensConfig/color/yellow/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/600/value","default":"#CBA408"}},"type":"object","default":{"value":"#CBA408"}},"700":{"id":"#tokensConfig/color/yellow/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/700/value","default":"#614E02"}},"type":"object","default":{"value":"#614E02"}},"800":{"id":"#tokensConfig/color/yellow/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/800/value","default":"#292100"}},"type":"object","default":{"value":"#292100"}},"900":{"id":"#tokensConfig/color/yellow/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/yellow/900/value","default":"#1B1500"}},"type":"object","default":{"value":"#1B1500"}}},"type":"object","default":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}}},"orange":{"id":"#tokensConfig/color/orange","properties":{"50":{"id":"#tokensConfig/color/orange/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/50/value","default":"#ffe9d9"}},"type":"object","default":{"value":"#ffe9d9"}},"100":{"id":"#tokensConfig/color/orange/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/100/value","default":"#ffd3b3"}},"type":"object","default":{"value":"#ffd3b3"}},"200":{"id":"#tokensConfig/color/orange/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/200/value","default":"#ffbd8d"}},"type":"object","default":{"value":"#ffbd8d"}},"300":{"id":"#tokensConfig/color/orange/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/300/value","default":"#ffa666"}},"type":"object","default":{"value":"#ffa666"}},"400":{"id":"#tokensConfig/color/orange/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/400/value","default":"#ff9040"}},"type":"object","default":{"value":"#ff9040"}},"500":{"id":"#tokensConfig/color/orange/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/500/value","default":"#ff7a1a"}},"type":"object","default":{"value":"#ff7a1a"}},"600":{"id":"#tokensConfig/color/orange/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/600/value","default":"#e15e00"}},"type":"object","default":{"value":"#e15e00"}},"700":{"id":"#tokensConfig/color/orange/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/700/value","default":"#a94700"}},"type":"object","default":{"value":"#a94700"}},"800":{"id":"#tokensConfig/color/orange/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/800/value","default":"#702f00"}},"type":"object","default":{"value":"#702f00"}},"900":{"id":"#tokensConfig/color/orange/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/orange/900/value","default":"#381800"}},"type":"object","default":{"value":"#381800"}}},"type":"object","default":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}}},"red":{"id":"#tokensConfig/color/red","properties":{"50":{"id":"#tokensConfig/color/red/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/50/value","default":"#FFF9F8"}},"type":"object","default":{"value":"#FFF9F8"}},"100":{"id":"#tokensConfig/color/red/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/100/value","default":"#FFF3F0"}},"type":"object","default":{"value":"#FFF3F0"}},"200":{"id":"#tokensConfig/color/red/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/200/value","default":"#FFDED7"}},"type":"object","default":{"value":"#FFDED7"}},"300":{"id":"#tokensConfig/color/red/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/300/value","default":"#FFA692"}},"type":"object","default":{"value":"#FFA692"}},"400":{"id":"#tokensConfig/color/red/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/400/value","default":"#FF7353"}},"type":"object","default":{"value":"#FF7353"}},"500":{"id":"#tokensConfig/color/red/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/500/value","default":"#FF3B10"}},"type":"object","default":{"value":"#FF3B10"}},"600":{"id":"#tokensConfig/color/red/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/600/value","default":"#BB2402"}},"type":"object","default":{"value":"#BB2402"}},"700":{"id":"#tokensConfig/color/red/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/700/value","default":"#701704"}},"type":"object","default":{"value":"#701704"}},"800":{"id":"#tokensConfig/color/red/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/800/value","default":"#340A01"}},"type":"object","default":{"value":"#340A01"}},"900":{"id":"#tokensConfig/color/red/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/red/900/value","default":"#1C0301"}},"type":"object","default":{"value":"#1C0301"}}},"type":"object","default":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}}},"pear":{"id":"#tokensConfig/color/pear","properties":{"50":{"id":"#tokensConfig/color/pear/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/50/value","default":"#f7f8dc"}},"type":"object","default":{"value":"#f7f8dc"}},"100":{"id":"#tokensConfig/color/pear/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/100/value","default":"#eff0ba"}},"type":"object","default":{"value":"#eff0ba"}},"200":{"id":"#tokensConfig/color/pear/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/200/value","default":"#e8e997"}},"type":"object","default":{"value":"#e8e997"}},"300":{"id":"#tokensConfig/color/pear/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/300/value","default":"#e0e274"}},"type":"object","default":{"value":"#e0e274"}},"400":{"id":"#tokensConfig/color/pear/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/400/value","default":"#d8da52"}},"type":"object","default":{"value":"#d8da52"}},"500":{"id":"#tokensConfig/color/pear/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/500/value","default":"#d0d32f"}},"type":"object","default":{"value":"#d0d32f"}},"600":{"id":"#tokensConfig/color/pear/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/600/value","default":"#a8aa24"}},"type":"object","default":{"value":"#a8aa24"}},"700":{"id":"#tokensConfig/color/pear/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/700/value","default":"#7e801b"}},"type":"object","default":{"value":"#7e801b"}},"800":{"id":"#tokensConfig/color/pear/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/800/value","default":"#545512"}},"type":"object","default":{"value":"#545512"}},"900":{"id":"#tokensConfig/color/pear/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/pear/900/value","default":"#2a2b09"}},"type":"object","default":{"value":"#2a2b09"}}},"type":"object","default":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}}},"teal":{"id":"#tokensConfig/color/teal","properties":{"50":{"id":"#tokensConfig/color/teal/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/50/value","default":"#d7faf8"}},"type":"object","default":{"value":"#d7faf8"}},"100":{"id":"#tokensConfig/color/teal/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/100/value","default":"#aff4f0"}},"type":"object","default":{"value":"#aff4f0"}},"200":{"id":"#tokensConfig/color/teal/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/200/value","default":"#87efe9"}},"type":"object","default":{"value":"#87efe9"}},"300":{"id":"#tokensConfig/color/teal/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/300/value","default":"#5fe9e1"}},"type":"object","default":{"value":"#5fe9e1"}},"400":{"id":"#tokensConfig/color/teal/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/400/value","default":"#36e4da"}},"type":"object","default":{"value":"#36e4da"}},"500":{"id":"#tokensConfig/color/teal/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/500/value","default":"#1cd1c6"}},"type":"object","default":{"value":"#1cd1c6"}},"600":{"id":"#tokensConfig/color/teal/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/600/value","default":"#16a79e"}},"type":"object","default":{"value":"#16a79e"}},"700":{"id":"#tokensConfig/color/teal/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/700/value","default":"#117d77"}},"type":"object","default":{"value":"#117d77"}},"800":{"id":"#tokensConfig/color/teal/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/800/value","default":"#0b544f"}},"type":"object","default":{"value":"#0b544f"}},"900":{"id":"#tokensConfig/color/teal/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/teal/900/value","default":"#062a28"}},"type":"object","default":{"value":"#062a28"}}},"type":"object","default":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}}},"lightblue":{"id":"#tokensConfig/color/lightblue","properties":{"50":{"id":"#tokensConfig/color/lightblue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/50/value","default":"#d9f8ff"}},"type":"object","default":{"value":"#d9f8ff"}},"100":{"id":"#tokensConfig/color/lightblue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/100/value","default":"#b3f1ff"}},"type":"object","default":{"value":"#b3f1ff"}},"200":{"id":"#tokensConfig/color/lightblue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/200/value","default":"#8deaff"}},"type":"object","default":{"value":"#8deaff"}},"300":{"id":"#tokensConfig/color/lightblue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/300/value","default":"#66e4ff"}},"type":"object","default":{"value":"#66e4ff"}},"400":{"id":"#tokensConfig/color/lightblue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/400/value","default":"#40ddff"}},"type":"object","default":{"value":"#40ddff"}},"500":{"id":"#tokensConfig/color/lightblue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/500/value","default":"#1ad6ff"}},"type":"object","default":{"value":"#1ad6ff"}},"600":{"id":"#tokensConfig/color/lightblue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/600/value","default":"#00b9e1"}},"type":"object","default":{"value":"#00b9e1"}},"700":{"id":"#tokensConfig/color/lightblue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/700/value","default":"#008aa9"}},"type":"object","default":{"value":"#008aa9"}},"800":{"id":"#tokensConfig/color/lightblue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/800/value","default":"#005c70"}},"type":"object","default":{"value":"#005c70"}},"900":{"id":"#tokensConfig/color/lightblue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/lightblue/900/value","default":"#002e38"}},"type":"object","default":{"value":"#002e38"}}},"type":"object","default":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}}},"blue":{"id":"#tokensConfig/color/blue","properties":{"50":{"id":"#tokensConfig/color/blue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/50/value","default":"#F2FAFF"}},"type":"object","default":{"value":"#F2FAFF"}},"100":{"id":"#tokensConfig/color/blue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/100/value","default":"#DFF3FF"}},"type":"object","default":{"value":"#DFF3FF"}},"200":{"id":"#tokensConfig/color/blue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/200/value","default":"#C6EAFF"}},"type":"object","default":{"value":"#C6EAFF"}},"300":{"id":"#tokensConfig/color/blue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/300/value","default":"#A1DDFF"}},"type":"object","default":{"value":"#A1DDFF"}},"400":{"id":"#tokensConfig/color/blue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/400/value","default":"#64C7FF"}},"type":"object","default":{"value":"#64C7FF"}},"500":{"id":"#tokensConfig/color/blue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/500/value","default":"#1AADFF"}},"type":"object","default":{"value":"#1AADFF"}},"600":{"id":"#tokensConfig/color/blue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/600/value","default":"#0069A6"}},"type":"object","default":{"value":"#0069A6"}},"700":{"id":"#tokensConfig/color/blue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/700/value","default":"#014267"}},"type":"object","default":{"value":"#014267"}},"800":{"id":"#tokensConfig/color/blue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/800/value","default":"#002235"}},"type":"object","default":{"value":"#002235"}},"900":{"id":"#tokensConfig/color/blue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/blue/900/value","default":"#00131D"}},"type":"object","default":{"value":"#00131D"}}},"type":"object","default":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}}},"indigoblue":{"id":"#tokensConfig/color/indigoblue","properties":{"50":{"id":"#tokensConfig/color/indigoblue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/50/value","default":"#d9e5ff"}},"type":"object","default":{"value":"#d9e5ff"}},"100":{"id":"#tokensConfig/color/indigoblue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/100/value","default":"#b3cbff"}},"type":"object","default":{"value":"#b3cbff"}},"200":{"id":"#tokensConfig/color/indigoblue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/200/value","default":"#8db0ff"}},"type":"object","default":{"value":"#8db0ff"}},"300":{"id":"#tokensConfig/color/indigoblue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/300/value","default":"#6696ff"}},"type":"object","default":{"value":"#6696ff"}},"400":{"id":"#tokensConfig/color/indigoblue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/400/value","default":"#407cff"}},"type":"object","default":{"value":"#407cff"}},"500":{"id":"#tokensConfig/color/indigoblue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/500/value","default":"#1a62ff"}},"type":"object","default":{"value":"#1a62ff"}},"600":{"id":"#tokensConfig/color/indigoblue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/600/value","default":"#0047e1"}},"type":"object","default":{"value":"#0047e1"}},"700":{"id":"#tokensConfig/color/indigoblue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/700/value","default":"#0035a9"}},"type":"object","default":{"value":"#0035a9"}},"800":{"id":"#tokensConfig/color/indigoblue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/800/value","default":"#002370"}},"type":"object","default":{"value":"#002370"}},"900":{"id":"#tokensConfig/color/indigoblue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/indigoblue/900/value","default":"#001238"}},"type":"object","default":{"value":"#001238"}}},"type":"object","default":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}}},"royalblue":{"id":"#tokensConfig/color/royalblue","properties":{"50":{"id":"#tokensConfig/color/royalblue/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/50/value","default":"#dfdbfb"}},"type":"object","default":{"value":"#dfdbfb"}},"100":{"id":"#tokensConfig/color/royalblue/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/100/value","default":"#c0b7f7"}},"type":"object","default":{"value":"#c0b7f7"}},"200":{"id":"#tokensConfig/color/royalblue/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/200/value","default":"#a093f3"}},"type":"object","default":{"value":"#a093f3"}},"300":{"id":"#tokensConfig/color/royalblue/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/300/value","default":"#806ff0"}},"type":"object","default":{"value":"#806ff0"}},"400":{"id":"#tokensConfig/color/royalblue/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/400/value","default":"#614bec"}},"type":"object","default":{"value":"#614bec"}},"500":{"id":"#tokensConfig/color/royalblue/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/500/value","default":"#4127e8"}},"type":"object","default":{"value":"#4127e8"}},"600":{"id":"#tokensConfig/color/royalblue/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/600/value","default":"#2c15c4"}},"type":"object","default":{"value":"#2c15c4"}},"700":{"id":"#tokensConfig/color/royalblue/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/700/value","default":"#211093"}},"type":"object","default":{"value":"#211093"}},"800":{"id":"#tokensConfig/color/royalblue/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/800/value","default":"#160a62"}},"type":"object","default":{"value":"#160a62"}},"900":{"id":"#tokensConfig/color/royalblue/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/royalblue/900/value","default":"#0b0531"}},"type":"object","default":{"value":"#0b0531"}}},"type":"object","default":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}}},"purple":{"id":"#tokensConfig/color/purple","properties":{"50":{"id":"#tokensConfig/color/purple/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/50/value","default":"#ead9ff"}},"type":"object","default":{"value":"#ead9ff"}},"100":{"id":"#tokensConfig/color/purple/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/100/value","default":"#d5b3ff"}},"type":"object","default":{"value":"#d5b3ff"}},"200":{"id":"#tokensConfig/color/purple/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/200/value","default":"#c08dff"}},"type":"object","default":{"value":"#c08dff"}},"300":{"id":"#tokensConfig/color/purple/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/300/value","default":"#ab66ff"}},"type":"object","default":{"value":"#ab66ff"}},"400":{"id":"#tokensConfig/color/purple/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/400/value","default":"#9640ff"}},"type":"object","default":{"value":"#9640ff"}},"500":{"id":"#tokensConfig/color/purple/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/500/value","default":"#811aff"}},"type":"object","default":{"value":"#811aff"}},"600":{"id":"#tokensConfig/color/purple/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/600/value","default":"#6500e1"}},"type":"object","default":{"value":"#6500e1"}},"700":{"id":"#tokensConfig/color/purple/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/700/value","default":"#4c00a9"}},"type":"object","default":{"value":"#4c00a9"}},"800":{"id":"#tokensConfig/color/purple/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/800/value","default":"#330070"}},"type":"object","default":{"value":"#330070"}},"900":{"id":"#tokensConfig/color/purple/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/purple/900/value","default":"#190038"}},"type":"object","default":{"value":"#190038"}}},"type":"object","default":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}}},"pink":{"id":"#tokensConfig/color/pink","properties":{"50":{"id":"#tokensConfig/color/pink/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/50/value","default":"#ffd9f2"}},"type":"object","default":{"value":"#ffd9f2"}},"100":{"id":"#tokensConfig/color/pink/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/100/value","default":"#ffb3e5"}},"type":"object","default":{"value":"#ffb3e5"}},"200":{"id":"#tokensConfig/color/pink/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/200/value","default":"#ff8dd8"}},"type":"object","default":{"value":"#ff8dd8"}},"300":{"id":"#tokensConfig/color/pink/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/300/value","default":"#ff66cc"}},"type":"object","default":{"value":"#ff66cc"}},"400":{"id":"#tokensConfig/color/pink/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/400/value","default":"#ff40bf"}},"type":"object","default":{"value":"#ff40bf"}},"500":{"id":"#tokensConfig/color/pink/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/500/value","default":"#ff1ab2"}},"type":"object","default":{"value":"#ff1ab2"}},"600":{"id":"#tokensConfig/color/pink/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/600/value","default":"#e10095"}},"type":"object","default":{"value":"#e10095"}},"700":{"id":"#tokensConfig/color/pink/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/700/value","default":"#a90070"}},"type":"object","default":{"value":"#a90070"}},"800":{"id":"#tokensConfig/color/pink/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/800/value","default":"#70004b"}},"type":"object","default":{"value":"#70004b"}},"900":{"id":"#tokensConfig/color/pink/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/pink/900/value","default":"#380025"}},"type":"object","default":{"value":"#380025"}}},"type":"object","default":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}}},"ruby":{"id":"#tokensConfig/color/ruby","properties":{"50":{"id":"#tokensConfig/color/ruby/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/50/value","default":"#ffd9e4"}},"type":"object","default":{"value":"#ffd9e4"}},"100":{"id":"#tokensConfig/color/ruby/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/100/value","default":"#ffb3c9"}},"type":"object","default":{"value":"#ffb3c9"}},"200":{"id":"#tokensConfig/color/ruby/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/200/value","default":"#ff8dae"}},"type":"object","default":{"value":"#ff8dae"}},"300":{"id":"#tokensConfig/color/ruby/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/300/value","default":"#ff6694"}},"type":"object","default":{"value":"#ff6694"}},"400":{"id":"#tokensConfig/color/ruby/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/400/value","default":"#ff4079"}},"type":"object","default":{"value":"#ff4079"}},"500":{"id":"#tokensConfig/color/ruby/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/500/value","default":"#ff1a5e"}},"type":"object","default":{"value":"#ff1a5e"}},"600":{"id":"#tokensConfig/color/ruby/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/600/value","default":"#e10043"}},"type":"object","default":{"value":"#e10043"}},"700":{"id":"#tokensConfig/color/ruby/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/700/value","default":"#a90032"}},"type":"object","default":{"value":"#a90032"}},"800":{"id":"#tokensConfig/color/ruby/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/800/value","default":"#700021"}},"type":"object","default":{"value":"#700021"}},"900":{"id":"#tokensConfig/color/ruby/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/ruby/900/value","default":"#380011"}},"type":"object","default":{"value":"#380011"}}},"type":"object","default":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}}},"primary":{"id":"#tokensConfig/color/primary","properties":{"50":{"id":"#tokensConfig/color/primary/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/50/value","default":"#FFF6E5"}},"type":"object","default":{"value":"#FFF6E5"}},"100":{"id":"#tokensConfig/color/primary/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/100/value","default":"#FFEDCC"}},"type":"object","default":{"value":"#FFEDCC"}},"200":{"id":"#tokensConfig/color/primary/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/200/value","default":"#FFDB99"}},"type":"object","default":{"value":"#FFDB99"}},"300":{"id":"#tokensConfig/color/primary/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/300/value","default":"#FFC966"}},"type":"object","default":{"value":"#FFC966"}},"400":{"id":"#tokensConfig/color/primary/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/400/value","default":"#FFB833"}},"type":"object","default":{"value":"#FFB833"}},"500":{"id":"#tokensConfig/color/primary/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/500/value","default":"#FFA500"}},"type":"object","default":{"value":"#FFA500"}},"600":{"id":"#tokensConfig/color/primary/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/600/value","default":"#CC8500"}},"type":"object","default":{"value":"#CC8500"}},"700":{"id":"#tokensConfig/color/primary/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/700/value","default":"#996300"}},"type":"object","default":{"value":"#996300"}},"800":{"id":"#tokensConfig/color/primary/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/800/value","default":"#664200"}},"type":"object","default":{"value":"#664200"}},"900":{"id":"#tokensConfig/color/primary/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/primary/900/value","default":"#332100"}},"type":"object","default":{"value":"#332100"}}},"type":"object","default":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}}},"secondary":{"id":"#tokensConfig/color/secondary","properties":{"50":{"id":"#tokensConfig/color/secondary/50","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/50/value","default":"{color.gray.50}"}},"type":"object","default":{"value":"{color.gray.50}"}},"100":{"id":"#tokensConfig/color/secondary/100","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/100/value","default":"{color.gray.100}"}},"type":"object","default":{"value":"{color.gray.100}"}},"200":{"id":"#tokensConfig/color/secondary/200","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/200/value","default":"{color.gray.200}"}},"type":"object","default":{"value":"{color.gray.200}"}},"300":{"id":"#tokensConfig/color/secondary/300","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/300/value","default":"{color.gray.300}"}},"type":"object","default":{"value":"{color.gray.300}"}},"400":{"id":"#tokensConfig/color/secondary/400","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/400/value","default":"{color.gray.400}"}},"type":"object","default":{"value":"{color.gray.400}"}},"500":{"id":"#tokensConfig/color/secondary/500","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/500/value","default":"{color.gray.500}"}},"type":"object","default":{"value":"{color.gray.500}"}},"600":{"id":"#tokensConfig/color/secondary/600","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/600/value","default":"{color.gray.600}"}},"type":"object","default":{"value":"{color.gray.600}"}},"700":{"id":"#tokensConfig/color/secondary/700","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/700/value","default":"{color.gray.700}"}},"type":"object","default":{"value":"{color.gray.700}"}},"800":{"id":"#tokensConfig/color/secondary/800","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/800/value","default":"{color.gray.800}"}},"type":"object","default":{"value":"{color.gray.800}"}},"900":{"id":"#tokensConfig/color/secondary/900","properties":{"value":{"type":"string","id":"#tokensConfig/color/secondary/900/value","default":"{color.gray.900}"}},"type":"object","default":{"value":"{color.gray.900}"}}},"type":"object","default":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}},"shadow":{"id":"#tokensConfig/color/shadow","properties":{"value":{"id":"#tokensConfig/color/shadow/value","properties":{"initial":{"type":"string","id":"#tokensConfig/color/shadow/value/initial","default":"{color.gray.400}"},"dark":{"type":"string","id":"#tokensConfig/color/shadow/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}}},"type":"object","default":{"white":{"value":"#ffffff"},"black":{"value":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}},"green":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}},"red":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}},"blue":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}},"purple":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}},"pink":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}},"ruby":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}},"primary":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}},"shadow":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}}},"width":{"title":"Your website screen sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/width","properties":{"screen":{"id":"#tokensConfig/width/screen","properties":{"value":{"type":"string","id":"#tokensConfig/width/screen/value","default":"100vw"}},"type":"object","default":{"value":"100vw"}}},"type":"object","default":{"screen":{"value":"100vw"}}},"height":{"title":"Your website screen sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/height","properties":{"screen":{"id":"#tokensConfig/height/screen","properties":{"value":{"type":"string","id":"#tokensConfig/height/screen/value","default":"100vh"}},"type":"object","default":{"value":"100vh"}}},"type":"object","default":{"screen":{"value":"100vh"}}},"shadow":{"title":"Your website shadows.","tags":["@studioInput design-token","@studioInputTokenType shadow","@studioIcon mdi:box-shadow"],"id":"#tokensConfig/shadow","properties":{"xs":{"id":"#tokensConfig/shadow/xs","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/xs/value","default":"0px 1px 2px 0px {color.shadow}"}},"type":"object","default":{"value":"0px 1px 2px 0px {color.shadow}"}},"sm":{"id":"#tokensConfig/shadow/sm","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/sm/value","default":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"}},"type":"object","default":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"}},"md":{"id":"#tokensConfig/shadow/md","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/md/value","default":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"}},"type":"object","default":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"}},"lg":{"id":"#tokensConfig/shadow/lg","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/lg/value","default":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"}},"type":"object","default":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"}},"xl":{"id":"#tokensConfig/shadow/xl","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/xl/value","default":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"}},"type":"object","default":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"}},"2xl":{"id":"#tokensConfig/shadow/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/2xl/value","default":"0px 25px 50px -12px {color.shadow}"}},"type":"object","default":{"value":"0px 25px 50px -12px {color.shadow}"}},"none":{"id":"#tokensConfig/shadow/none","properties":{"value":{"type":"string","id":"#tokensConfig/shadow/none/value","default":"0px 0px 0px 0px transparent"}},"type":"object","default":{"value":"0px 0px 0px 0px transparent"}}},"type":"object","default":{"xs":{"value":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent"}}},"radii":{"title":"Your website border radiuses.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:rounded-corner","@studioInpuTokenType size"],"id":"#tokensConfig/radii","properties":{"none":{"id":"#tokensConfig/radii/none","properties":{"value":{"type":"string","id":"#tokensConfig/radii/none/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"2xs":{"id":"#tokensConfig/radii/2xs","properties":{"value":{"type":"string","id":"#tokensConfig/radii/2xs/value","default":"0.125rem"}},"type":"object","default":{"value":"0.125rem"}},"xs":{"id":"#tokensConfig/radii/xs","properties":{"value":{"type":"string","id":"#tokensConfig/radii/xs/value","default":"0.25rem"}},"type":"object","default":{"value":"0.25rem"}},"sm":{"id":"#tokensConfig/radii/sm","properties":{"value":{"type":"string","id":"#tokensConfig/radii/sm/value","default":"0.375rem"}},"type":"object","default":{"value":"0.375rem"}},"md":{"id":"#tokensConfig/radii/md","properties":{"value":{"type":"string","id":"#tokensConfig/radii/md/value","default":"0.5rem"}},"type":"object","default":{"value":"0.5rem"}},"lg":{"id":"#tokensConfig/radii/lg","properties":{"value":{"type":"string","id":"#tokensConfig/radii/lg/value","default":"0.75rem"}},"type":"object","default":{"value":"0.75rem"}},"xl":{"id":"#tokensConfig/radii/xl","properties":{"value":{"type":"string","id":"#tokensConfig/radii/xl/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"2xl":{"id":"#tokensConfig/radii/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/radii/2xl/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"3xl":{"id":"#tokensConfig/radii/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/radii/3xl/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"full":{"id":"#tokensConfig/radii/full","properties":{"value":{"type":"string","id":"#tokensConfig/radii/full/value","default":"9999px"}},"type":"object","default":{"value":"9999px"}}},"type":"object","default":{"none":{"value":"0px"},"2xs":{"value":"0.125rem"},"xs":{"value":"0.25rem"},"sm":{"value":"0.375rem"},"md":{"value":"0.5rem"},"lg":{"value":"0.75rem"},"xl":{"value":"1rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.75rem"},"full":{"value":"9999px"}}},"size":{"title":"Your website sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/size","properties":{"0":{"id":"#tokensConfig/size/0","properties":{"value":{"type":"string","id":"#tokensConfig/size/0/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"2":{"id":"#tokensConfig/size/2","properties":{"value":{"type":"string","id":"#tokensConfig/size/2/value","default":"2px"}},"type":"object","default":{"value":"2px"}},"4":{"id":"#tokensConfig/size/4","properties":{"value":{"type":"string","id":"#tokensConfig/size/4/value","default":"4px"}},"type":"object","default":{"value":"4px"}},"6":{"id":"#tokensConfig/size/6","properties":{"value":{"type":"string","id":"#tokensConfig/size/6/value","default":"6px"}},"type":"object","default":{"value":"6px"}},"8":{"id":"#tokensConfig/size/8","properties":{"value":{"type":"string","id":"#tokensConfig/size/8/value","default":"8px"}},"type":"object","default":{"value":"8px"}},"12":{"id":"#tokensConfig/size/12","properties":{"value":{"type":"string","id":"#tokensConfig/size/12/value","default":"12px"}},"type":"object","default":{"value":"12px"}},"16":{"id":"#tokensConfig/size/16","properties":{"value":{"type":"string","id":"#tokensConfig/size/16/value","default":"16px"}},"type":"object","default":{"value":"16px"}},"20":{"id":"#tokensConfig/size/20","properties":{"value":{"type":"string","id":"#tokensConfig/size/20/value","default":"20px"}},"type":"object","default":{"value":"20px"}},"24":{"id":"#tokensConfig/size/24","properties":{"value":{"type":"string","id":"#tokensConfig/size/24/value","default":"24px"}},"type":"object","default":{"value":"24px"}},"32":{"id":"#tokensConfig/size/32","properties":{"value":{"type":"string","id":"#tokensConfig/size/32/value","default":"32px"}},"type":"object","default":{"value":"32px"}},"40":{"id":"#tokensConfig/size/40","properties":{"value":{"type":"string","id":"#tokensConfig/size/40/value","default":"40px"}},"type":"object","default":{"value":"40px"}},"48":{"id":"#tokensConfig/size/48","properties":{"value":{"type":"string","id":"#tokensConfig/size/48/value","default":"48px"}},"type":"object","default":{"value":"48px"}},"56":{"id":"#tokensConfig/size/56","properties":{"value":{"type":"string","id":"#tokensConfig/size/56/value","default":"56px"}},"type":"object","default":{"value":"56px"}},"64":{"id":"#tokensConfig/size/64","properties":{"value":{"type":"string","id":"#tokensConfig/size/64/value","default":"64px"}},"type":"object","default":{"value":"64px"}},"80":{"id":"#tokensConfig/size/80","properties":{"value":{"type":"string","id":"#tokensConfig/size/80/value","default":"80px"}},"type":"object","default":{"value":"80px"}},"104":{"id":"#tokensConfig/size/104","properties":{"value":{"type":"string","id":"#tokensConfig/size/104/value","default":"104px"}},"type":"object","default":{"value":"104px"}},"200":{"id":"#tokensConfig/size/200","properties":{"value":{"type":"string","id":"#tokensConfig/size/200/value","default":"200px"}},"type":"object","default":{"value":"200px"}},"xs":{"id":"#tokensConfig/size/xs","properties":{"value":{"type":"string","id":"#tokensConfig/size/xs/value","default":"20rem"}},"type":"object","default":{"value":"20rem"}},"sm":{"id":"#tokensConfig/size/sm","properties":{"value":{"type":"string","id":"#tokensConfig/size/sm/value","default":"24rem"}},"type":"object","default":{"value":"24rem"}},"md":{"id":"#tokensConfig/size/md","properties":{"value":{"type":"string","id":"#tokensConfig/size/md/value","default":"28rem"}},"type":"object","default":{"value":"28rem"}},"lg":{"id":"#tokensConfig/size/lg","properties":{"value":{"type":"string","id":"#tokensConfig/size/lg/value","default":"32rem"}},"type":"object","default":{"value":"32rem"}},"xl":{"id":"#tokensConfig/size/xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/xl/value","default":"36rem"}},"type":"object","default":{"value":"36rem"}},"2xl":{"id":"#tokensConfig/size/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/2xl/value","default":"42rem"}},"type":"object","default":{"value":"42rem"}},"3xl":{"id":"#tokensConfig/size/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/3xl/value","default":"48rem"}},"type":"object","default":{"value":"48rem"}},"4xl":{"id":"#tokensConfig/size/4xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/4xl/value","default":"56rem"}},"type":"object","default":{"value":"56rem"}},"5xl":{"id":"#tokensConfig/size/5xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/5xl/value","default":"64rem"}},"type":"object","default":{"value":"64rem"}},"6xl":{"id":"#tokensConfig/size/6xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/6xl/value","default":"72rem"}},"type":"object","default":{"value":"72rem"}},"7xl":{"id":"#tokensConfig/size/7xl","properties":{"value":{"type":"string","id":"#tokensConfig/size/7xl/value","default":"80rem"}},"type":"object","default":{"value":"80rem"}},"full":{"id":"#tokensConfig/size/full","properties":{"value":{"type":"string","id":"#tokensConfig/size/full/value","default":"100%"}},"type":"object","default":{"value":"100%"}}},"type":"object","default":{"0":{"value":"0px"},"2":{"value":"2px"},"4":{"value":"4px"},"6":{"value":"6px"},"8":{"value":"8px"},"12":{"value":"12px"},"16":{"value":"16px"},"20":{"value":"20px"},"24":{"value":"24px"},"32":{"value":"32px"},"40":{"value":"40px"},"48":{"value":"48px"},"56":{"value":"56px"},"64":{"value":"64px"},"80":{"value":"80px"},"104":{"value":"104px"},"200":{"value":"200px"},"xs":{"value":"20rem"},"sm":{"value":"24rem"},"md":{"value":"28rem"},"lg":{"value":"32rem"},"xl":{"value":"36rem"},"2xl":{"value":"42rem"},"3xl":{"value":"48rem"},"4xl":{"value":"56rem"},"5xl":{"value":"64rem"},"6xl":{"value":"72rem"},"7xl":{"value":"80rem"},"full":{"value":"100%"}}},"space":{"title":"Your website spacings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon ph:ruler"],"id":"#tokensConfig/space","properties":{"0":{"id":"#tokensConfig/space/0","properties":{"value":{"type":"string","id":"#tokensConfig/space/0/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"1":{"id":"#tokensConfig/space/1","properties":{"value":{"type":"string","id":"#tokensConfig/space/1/value","default":"0.25rem"}},"type":"object","default":{"value":"0.25rem"}},"2":{"id":"#tokensConfig/space/2","properties":{"value":{"type":"string","id":"#tokensConfig/space/2/value","default":"0.5rem"}},"type":"object","default":{"value":"0.5rem"}},"3":{"id":"#tokensConfig/space/3","properties":{"value":{"type":"string","id":"#tokensConfig/space/3/value","default":"0.75rem"}},"type":"object","default":{"value":"0.75rem"}},"4":{"id":"#tokensConfig/space/4","properties":{"value":{"type":"string","id":"#tokensConfig/space/4/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"5":{"id":"#tokensConfig/space/5","properties":{"value":{"type":"string","id":"#tokensConfig/space/5/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"6":{"id":"#tokensConfig/space/6","properties":{"value":{"type":"string","id":"#tokensConfig/space/6/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"7":{"id":"#tokensConfig/space/7","properties":{"value":{"type":"string","id":"#tokensConfig/space/7/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"8":{"id":"#tokensConfig/space/8","properties":{"value":{"type":"string","id":"#tokensConfig/space/8/value","default":"2rem"}},"type":"object","default":{"value":"2rem"}},"9":{"id":"#tokensConfig/space/9","properties":{"value":{"type":"string","id":"#tokensConfig/space/9/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"10":{"id":"#tokensConfig/space/10","properties":{"value":{"type":"string","id":"#tokensConfig/space/10/value","default":"2.5rem"}},"type":"object","default":{"value":"2.5rem"}},"11":{"id":"#tokensConfig/space/11","properties":{"value":{"type":"string","id":"#tokensConfig/space/11/value","default":"2.75rem"}},"type":"object","default":{"value":"2.75rem"}},"12":{"id":"#tokensConfig/space/12","properties":{"value":{"type":"string","id":"#tokensConfig/space/12/value","default":"3rem"}},"type":"object","default":{"value":"3rem"}},"14":{"id":"#tokensConfig/space/14","properties":{"value":{"type":"string","id":"#tokensConfig/space/14/value","default":"3.5rem"}},"type":"object","default":{"value":"3.5rem"}},"16":{"id":"#tokensConfig/space/16","properties":{"value":{"type":"string","id":"#tokensConfig/space/16/value","default":"4rem"}},"type":"object","default":{"value":"4rem"}},"20":{"id":"#tokensConfig/space/20","properties":{"value":{"type":"string","id":"#tokensConfig/space/20/value","default":"5rem"}},"type":"object","default":{"value":"5rem"}},"24":{"id":"#tokensConfig/space/24","properties":{"value":{"type":"string","id":"#tokensConfig/space/24/value","default":"6rem"}},"type":"object","default":{"value":"6rem"}},"28":{"id":"#tokensConfig/space/28","properties":{"value":{"type":"string","id":"#tokensConfig/space/28/value","default":"7rem"}},"type":"object","default":{"value":"7rem"}},"32":{"id":"#tokensConfig/space/32","properties":{"value":{"type":"string","id":"#tokensConfig/space/32/value","default":"8rem"}},"type":"object","default":{"value":"8rem"}},"36":{"id":"#tokensConfig/space/36","properties":{"value":{"type":"string","id":"#tokensConfig/space/36/value","default":"9rem"}},"type":"object","default":{"value":"9rem"}},"40":{"id":"#tokensConfig/space/40","properties":{"value":{"type":"string","id":"#tokensConfig/space/40/value","default":"10rem"}},"type":"object","default":{"value":"10rem"}},"44":{"id":"#tokensConfig/space/44","properties":{"value":{"type":"string","id":"#tokensConfig/space/44/value","default":"11rem"}},"type":"object","default":{"value":"11rem"}},"48":{"id":"#tokensConfig/space/48","properties":{"value":{"type":"string","id":"#tokensConfig/space/48/value","default":"12rem"}},"type":"object","default":{"value":"12rem"}},"52":{"id":"#tokensConfig/space/52","properties":{"value":{"type":"string","id":"#tokensConfig/space/52/value","default":"13rem"}},"type":"object","default":{"value":"13rem"}},"56":{"id":"#tokensConfig/space/56","properties":{"value":{"type":"string","id":"#tokensConfig/space/56/value","default":"14rem"}},"type":"object","default":{"value":"14rem"}},"60":{"id":"#tokensConfig/space/60","properties":{"value":{"type":"string","id":"#tokensConfig/space/60/value","default":"15rem"}},"type":"object","default":{"value":"15rem"}},"64":{"id":"#tokensConfig/space/64","properties":{"value":{"type":"string","id":"#tokensConfig/space/64/value","default":"16rem"}},"type":"object","default":{"value":"16rem"}},"72":{"id":"#tokensConfig/space/72","properties":{"value":{"type":"string","id":"#tokensConfig/space/72/value","default":"18rem"}},"type":"object","default":{"value":"18rem"}},"80":{"id":"#tokensConfig/space/80","properties":{"value":{"type":"string","id":"#tokensConfig/space/80/value","default":"20rem"}},"type":"object","default":{"value":"20rem"}},"96":{"id":"#tokensConfig/space/96","properties":{"value":{"type":"string","id":"#tokensConfig/space/96/value","default":"24rem"}},"type":"object","default":{"value":"24rem"}},"128":{"id":"#tokensConfig/space/128","properties":{"value":{"type":"string","id":"#tokensConfig/space/128/value","default":"32rem"}},"type":"object","default":{"value":"32rem"}},"px":{"id":"#tokensConfig/space/px","properties":{"value":{"type":"string","id":"#tokensConfig/space/px/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"rem":{"id":"#tokensConfig/space/rem","properties":{"125":{"id":"#tokensConfig/space/rem/125","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/125/value","default":"0.125rem"}},"type":"object","default":{"value":"0.125rem"}},"375":{"id":"#tokensConfig/space/rem/375","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/375/value","default":"0.375rem"}},"type":"object","default":{"value":"0.375rem"}},"625":{"id":"#tokensConfig/space/rem/625","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/625/value","default":"0.625rem"}},"type":"object","default":{"value":"0.625rem"}},"875":{"id":"#tokensConfig/space/rem/875","properties":{"value":{"type":"string","id":"#tokensConfig/space/rem/875/value","default":"0.875rem"}},"type":"object","default":{"value":"0.875rem"}}},"type":"object","default":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}}},"type":"object","default":{"0":{"value":"0px"},"1":{"value":"0.25rem"},"2":{"value":"0.5rem"},"3":{"value":"0.75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"11":{"value":"2.75rem"},"12":{"value":"3rem"},"14":{"value":"3.5rem"},"16":{"value":"4rem"},"20":{"value":"5rem"},"24":{"value":"6rem"},"28":{"value":"7rem"},"32":{"value":"8rem"},"36":{"value":"9rem"},"40":{"value":"10rem"},"44":{"value":"11rem"},"48":{"value":"12rem"},"52":{"value":"13rem"},"56":{"value":"14rem"},"60":{"value":"15rem"},"64":{"value":"16rem"},"72":{"value":"18rem"},"80":{"value":"20rem"},"96":{"value":"24rem"},"128":{"value":"32rem"},"px":{"value":"1px"},"rem":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}}},"borderWidth":{"title":"Your website border widths.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:border-all-outline-rounded"],"id":"#tokensConfig/borderWidth","properties":{"noBorder":{"id":"#tokensConfig/borderWidth/noBorder","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/noBorder/value","default":"0"}},"type":"object","default":{"value":"0"}},"sm":{"id":"#tokensConfig/borderWidth/sm","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/sm/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"md":{"id":"#tokensConfig/borderWidth/md","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/md/value","default":"2px"}},"type":"object","default":{"value":"2px"}},"lg":{"id":"#tokensConfig/borderWidth/lg","properties":{"value":{"type":"string","id":"#tokensConfig/borderWidth/lg/value","default":"3px"}},"type":"object","default":{"value":"3px"}}},"type":"object","default":{"noBorder":{"value":"0"},"sm":{"value":"1px"},"md":{"value":"2px"},"lg":{"value":"3px"}}},"opacity":{"title":"Your website opacities.","tags":["@studioInput design-token","@studioInputTokenType opacity","@studioIcon material-symbols:opacity"],"id":"#tokensConfig/opacity","properties":{"noOpacity":{"id":"#tokensConfig/opacity/noOpacity","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/noOpacity/value","default":"0"}},"type":"object","default":{"value":"0"}},"bright":{"id":"#tokensConfig/opacity/bright","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/bright/value","default":"0.1"}},"type":"object","default":{"value":"0.1"}},"light":{"id":"#tokensConfig/opacity/light","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/light/value","default":"0.15"}},"type":"object","default":{"value":"0.15"}},"soft":{"id":"#tokensConfig/opacity/soft","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/soft/value","default":"0.3"}},"type":"object","default":{"value":"0.3"}},"medium":{"id":"#tokensConfig/opacity/medium","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/medium/value","default":"0.5"}},"type":"object","default":{"value":"0.5"}},"high":{"id":"#tokensConfig/opacity/high","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/high/value","default":"0.8"}},"type":"object","default":{"value":"0.8"}},"total":{"id":"#tokensConfig/opacity/total","properties":{"value":{"type":"string","id":"#tokensConfig/opacity/total/value","default":"1"}},"type":"object","default":{"value":"1"}}},"type":"object","default":{"noOpacity":{"value":"0"},"bright":{"value":"0.1"},"light":{"value":"0.15"},"soft":{"value":"0.3"},"medium":{"value":"0.5"},"high":{"value":"0.8"},"total":{"value":"1"}}},"font":{"title":"Your website fonts","tags":["@studioInput design-token","@studioInputTokenType font","@studioIcon material-symbols:font-download-rounded"],"id":"#tokensConfig/font","properties":{"sans":{"id":"#tokensConfig/font/sans","properties":{"value":{"type":"string","id":"#tokensConfig/font/sans/value","default":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"}},"type":"object","default":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"}},"serif":{"id":"#tokensConfig/font/serif","properties":{"value":{"type":"string","id":"#tokensConfig/font/serif/value","default":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"}},"type":"object","default":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"}},"mono":{"id":"#tokensConfig/font/mono","properties":{"value":{"type":"string","id":"#tokensConfig/font/mono/value","default":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"type":"object","default":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}}},"type":"object","default":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}}},"fontWeight":{"title":"Your website font weights.","tags":["@studioInput design-token","@studioInputTokenType font-weight","@studioIcon radix-icons:font-style"],"id":"#tokensConfig/fontWeight","properties":{"thin":{"id":"#tokensConfig/fontWeight/thin","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/thin/value","default":"100"}},"type":"object","default":{"value":"100"}},"extralight":{"id":"#tokensConfig/fontWeight/extralight","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/extralight/value","default":"200"}},"type":"object","default":{"value":"200"}},"light":{"id":"#tokensConfig/fontWeight/light","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/light/value","default":"300"}},"type":"object","default":{"value":"300"}},"normal":{"id":"#tokensConfig/fontWeight/normal","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/normal/value","default":"400"}},"type":"object","default":{"value":"400"}},"medium":{"id":"#tokensConfig/fontWeight/medium","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/medium/value","default":"500"}},"type":"object","default":{"value":"500"}},"semibold":{"id":"#tokensConfig/fontWeight/semibold","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/semibold/value","default":"600"}},"type":"object","default":{"value":"600"}},"bold":{"id":"#tokensConfig/fontWeight/bold","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/bold/value","default":"700"}},"type":"object","default":{"value":"700"}},"extrabold":{"id":"#tokensConfig/fontWeight/extrabold","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/extrabold/value","default":"800"}},"type":"object","default":{"value":"800"}},"black":{"id":"#tokensConfig/fontWeight/black","properties":{"value":{"type":"string","id":"#tokensConfig/fontWeight/black/value","default":"900"}},"type":"object","default":{"value":"900"}}},"type":"object","default":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}}},"fontSize":{"title":"Your website font sizes.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon radix-icons:font-style"],"id":"#tokensConfig/fontSize","properties":{"xs":{"id":"#tokensConfig/fontSize/xs","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/xs/value","default":"0.75rem"}},"type":"object","default":{"value":"0.75rem"}},"sm":{"id":"#tokensConfig/fontSize/sm","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/sm/value","default":"0.875rem"}},"type":"object","default":{"value":"0.875rem"}},"base":{"id":"#tokensConfig/fontSize/base","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/base/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"lg":{"id":"#tokensConfig/fontSize/lg","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/lg/value","default":"1.125rem"}},"type":"object","default":{"value":"1.125rem"}},"xl":{"id":"#tokensConfig/fontSize/xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/xl/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"2xl":{"id":"#tokensConfig/fontSize/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/2xl/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"3xl":{"id":"#tokensConfig/fontSize/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/3xl/value","default":"1.875rem"}},"type":"object","default":{"value":"1.875rem"}},"4xl":{"id":"#tokensConfig/fontSize/4xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/4xl/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"5xl":{"id":"#tokensConfig/fontSize/5xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/5xl/value","default":"3rem"}},"type":"object","default":{"value":"3rem"}},"6xl":{"id":"#tokensConfig/fontSize/6xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/6xl/value","default":"3.75rem"}},"type":"object","default":{"value":"3.75rem"}},"7xl":{"id":"#tokensConfig/fontSize/7xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/7xl/value","default":"4.5rem"}},"type":"object","default":{"value":"4.5rem"}},"8xl":{"id":"#tokensConfig/fontSize/8xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/8xl/value","default":"6rem"}},"type":"object","default":{"value":"6rem"}},"9xl":{"id":"#tokensConfig/fontSize/9xl","properties":{"value":{"type":"string","id":"#tokensConfig/fontSize/9xl/value","default":"8rem"}},"type":"object","default":{"value":"8rem"}}},"type":"object","default":{"xs":{"value":"0.75rem"},"sm":{"value":"0.875rem"},"base":{"value":"1rem"},"lg":{"value":"1.125rem"},"xl":{"value":"1.25rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.875rem"},"4xl":{"value":"2.25rem"},"5xl":{"value":"3rem"},"6xl":{"value":"3.75rem"},"7xl":{"value":"4.5rem"},"8xl":{"value":"6rem"},"9xl":{"value":"8rem"}}},"letterSpacing":{"title":"Your website letter spacings.","tags":["@studioInput design-token","@studioInputTokenType letter-spacing","@studioIcon fluent:font-space-tracking-out-24-filled"],"id":"#tokensConfig/letterSpacing","properties":{"tighter":{"id":"#tokensConfig/letterSpacing/tighter","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/tighter/value","default":"-0.05em"}},"type":"object","default":{"value":"-0.05em"}},"tight":{"id":"#tokensConfig/letterSpacing/tight","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/tight/value","default":"-0.025em"}},"type":"object","default":{"value":"-0.025em"}},"normal":{"id":"#tokensConfig/letterSpacing/normal","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/normal/value","default":"0em"}},"type":"object","default":{"value":"0em"}},"wide":{"id":"#tokensConfig/letterSpacing/wide","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/wide/value","default":"0.025em"}},"type":"object","default":{"value":"0.025em"}},"wider":{"id":"#tokensConfig/letterSpacing/wider","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/wider/value","default":"0.05em"}},"type":"object","default":{"value":"0.05em"}},"widest":{"id":"#tokensConfig/letterSpacing/widest","properties":{"value":{"type":"string","id":"#tokensConfig/letterSpacing/widest/value","default":"0.1em"}},"type":"object","default":{"value":"0.1em"}}},"type":"object","default":{"tighter":{"value":"-0.05em"},"tight":{"value":"-0.025em"},"normal":{"value":"0em"},"wide":{"value":"0.025em"},"wider":{"value":"0.05em"},"widest":{"value":"0.1em"}}},"lead":{"title":"Your website line heights.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon icon-park-outline:auto-line-height"],"id":"#tokensConfig/lead","properties":{"1":{"id":"#tokensConfig/lead/1","properties":{"value":{"type":"string","id":"#tokensConfig/lead/1/value","default":".025rem"}},"type":"object","default":{"value":".025rem"}},"2":{"id":"#tokensConfig/lead/2","properties":{"value":{"type":"string","id":"#tokensConfig/lead/2/value","default":".5rem"}},"type":"object","default":{"value":".5rem"}},"3":{"id":"#tokensConfig/lead/3","properties":{"value":{"type":"string","id":"#tokensConfig/lead/3/value","default":".75rem"}},"type":"object","default":{"value":".75rem"}},"4":{"id":"#tokensConfig/lead/4","properties":{"value":{"type":"string","id":"#tokensConfig/lead/4/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"5":{"id":"#tokensConfig/lead/5","properties":{"value":{"type":"string","id":"#tokensConfig/lead/5/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"6":{"id":"#tokensConfig/lead/6","properties":{"value":{"type":"string","id":"#tokensConfig/lead/6/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"7":{"id":"#tokensConfig/lead/7","properties":{"value":{"type":"string","id":"#tokensConfig/lead/7/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"8":{"id":"#tokensConfig/lead/8","properties":{"value":{"type":"string","id":"#tokensConfig/lead/8/value","default":"2rem"}},"type":"object","default":{"value":"2rem"}},"9":{"id":"#tokensConfig/lead/9","properties":{"value":{"type":"string","id":"#tokensConfig/lead/9/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"10":{"id":"#tokensConfig/lead/10","properties":{"value":{"type":"string","id":"#tokensConfig/lead/10/value","default":"2.5rem"}},"type":"object","default":{"value":"2.5rem"}},"none":{"id":"#tokensConfig/lead/none","properties":{"value":{"type":"string","id":"#tokensConfig/lead/none/value","default":"1"}},"type":"object","default":{"value":"1"}},"tight":{"id":"#tokensConfig/lead/tight","properties":{"value":{"type":"string","id":"#tokensConfig/lead/tight/value","default":"1.25"}},"type":"object","default":{"value":"1.25"}},"snug":{"id":"#tokensConfig/lead/snug","properties":{"value":{"type":"string","id":"#tokensConfig/lead/snug/value","default":"1.375"}},"type":"object","default":{"value":"1.375"}},"normal":{"id":"#tokensConfig/lead/normal","properties":{"value":{"type":"string","id":"#tokensConfig/lead/normal/value","default":"1.5"}},"type":"object","default":{"value":"1.5"}},"relaxed":{"id":"#tokensConfig/lead/relaxed","properties":{"value":{"type":"string","id":"#tokensConfig/lead/relaxed/value","default":"1.625"}},"type":"object","default":{"value":"1.625"}},"loose":{"id":"#tokensConfig/lead/loose","properties":{"value":{"type":"string","id":"#tokensConfig/lead/loose/value","default":"2"}},"type":"object","default":{"value":"2"}}},"type":"object","default":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}}},"text":{"title":"Your website text scales.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:format-size-rounded"],"id":"#tokensConfig/text","properties":{"xs":{"id":"#tokensConfig/text/xs","properties":{"fontSize":{"id":"#tokensConfig/text/xs/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/xs/fontSize/value","default":"{fontSize.xs}"}},"type":"object","default":{"value":"{fontSize.xs}"}},"lineHeight":{"id":"#tokensConfig/text/xs/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/xs/lineHeight/value","default":"{lead.4}"}},"type":"object","default":{"value":"{lead.4}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}}},"sm":{"id":"#tokensConfig/text/sm","properties":{"fontSize":{"id":"#tokensConfig/text/sm/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/sm/fontSize/value","default":"{fontSize.sm}"}},"type":"object","default":{"value":"{fontSize.sm}"}},"lineHeight":{"id":"#tokensConfig/text/sm/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/sm/lineHeight/value","default":"{lead.5}"}},"type":"object","default":{"value":"{lead.5}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}}},"base":{"id":"#tokensConfig/text/base","properties":{"fontSize":{"id":"#tokensConfig/text/base/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/base/fontSize/value","default":"{fontSize.base}"}},"type":"object","default":{"value":"{fontSize.base}"}},"lineHeight":{"id":"#tokensConfig/text/base/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/base/lineHeight/value","default":"{lead.6}"}},"type":"object","default":{"value":"{lead.6}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}}},"lg":{"id":"#tokensConfig/text/lg","properties":{"fontSize":{"id":"#tokensConfig/text/lg/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/lg/fontSize/value","default":"{fontSize.lg}"}},"type":"object","default":{"value":"{fontSize.lg}"}},"lineHeight":{"id":"#tokensConfig/text/lg/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/lg/lineHeight/value","default":"{lead.7}"}},"type":"object","default":{"value":"{lead.7}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}}},"xl":{"id":"#tokensConfig/text/xl","properties":{"fontSize":{"id":"#tokensConfig/text/xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/xl/fontSize/value","default":"{fontSize.xl}"}},"type":"object","default":{"value":"{fontSize.xl}"}},"lineHeight":{"id":"#tokensConfig/text/xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/xl/lineHeight/value","default":"{lead.7}"}},"type":"object","default":{"value":"{lead.7}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}}},"2xl":{"id":"#tokensConfig/text/2xl","properties":{"fontSize":{"id":"#tokensConfig/text/2xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/2xl/fontSize/value","default":"{fontSize.2xl}"}},"type":"object","default":{"value":"{fontSize.2xl}"}},"lineHeight":{"id":"#tokensConfig/text/2xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/2xl/lineHeight/value","default":"{lead.8}"}},"type":"object","default":{"value":"{lead.8}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}}},"3xl":{"id":"#tokensConfig/text/3xl","properties":{"fontSize":{"id":"#tokensConfig/text/3xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/3xl/fontSize/value","default":"{fontSize.3xl}"}},"type":"object","default":{"value":"{fontSize.3xl}"}},"lineHeight":{"id":"#tokensConfig/text/3xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/3xl/lineHeight/value","default":"{lead.9}"}},"type":"object","default":{"value":"{lead.9}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}}},"4xl":{"id":"#tokensConfig/text/4xl","properties":{"fontSize":{"id":"#tokensConfig/text/4xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/4xl/fontSize/value","default":"{fontSize.4xl}"}},"type":"object","default":{"value":"{fontSize.4xl}"}},"lineHeight":{"id":"#tokensConfig/text/4xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/4xl/lineHeight/value","default":"{lead.10}"}},"type":"object","default":{"value":"{lead.10}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}}},"5xl":{"id":"#tokensConfig/text/5xl","properties":{"fontSize":{"id":"#tokensConfig/text/5xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/5xl/fontSize/value","default":"{fontSize.5xl}"}},"type":"object","default":{"value":"{fontSize.5xl}"}},"lineHeight":{"id":"#tokensConfig/text/5xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/5xl/lineHeight/value","default":"{lead.none}"}},"type":"object","default":{"value":"{lead.none}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}}},"6xl":{"id":"#tokensConfig/text/6xl","properties":{"fontSize":{"id":"#tokensConfig/text/6xl/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/text/6xl/fontSize/value","default":"{fontSize.6xl}"}},"type":"object","default":{"value":"{fontSize.6xl}"}},"lineHeight":{"id":"#tokensConfig/text/6xl/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/text/6xl/lineHeight/value","default":"{lead.none}"}},"type":"object","default":{"value":"{lead.none}"}}},"type":"object","default":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}}},"type":"object","default":{"xs":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}},"sm":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}},"base":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}},"lg":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}},"xl":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}},"2xl":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}},"3xl":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}},"4xl":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}},"5xl":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}},"6xl":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}}},"elements":{"title":"All the configurable tokens for your Elements.","tags":["@studioIcon uiw:component"],"id":"#tokensConfig/elements","properties":{"text":{"id":"#tokensConfig/elements/text","properties":{"primary":{"id":"#tokensConfig/elements/text/primary","properties":{"color":{"id":"#tokensConfig/elements/text/primary/color","properties":{"static":{"id":"#tokensConfig/elements/text/primary/color/static","properties":{"value":{"id":"#tokensConfig/elements/text/primary/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/text/primary/color/static/value/initial","default":"{color.gray.900}"},"dark":{"type":"string","id":"#tokensConfig/elements/text/primary/color/static/value/dark","default":"{color.gray.50}"}},"type":"object","default":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}}},"type":"object","default":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}}},"hover":{"id":"#tokensConfig/elements/text/primary/color/hover","type":"any","default":{}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}}},"type":"object","default":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}}},"secondary":{"id":"#tokensConfig/elements/text/secondary","properties":{"color":{"id":"#tokensConfig/elements/text/secondary/color","properties":{"static":{"id":"#tokensConfig/elements/text/secondary/color/static","properties":{"value":{"id":"#tokensConfig/elements/text/secondary/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/static/value/initial","default":"{color.gray.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/static/value/dark","default":"{color.gray.400}"}},"type":"object","default":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}}},"type":"object","default":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}}},"hover":{"id":"#tokensConfig/elements/text/secondary/color/hover","properties":{"value":{"id":"#tokensConfig/elements/text/secondary/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/hover/value/initial","default":"{color.gray.700}"},"dark":{"type":"string","id":"#tokensConfig/elements/text/secondary/color/hover/value/dark","default":"{color.gray.200}"}},"type":"object","default":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}},"type":"object","default":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"type":"object","default":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}}},"type":"object","default":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}}},"container":{"title":"Main container sizings.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:width-full-outline"],"id":"#tokensConfig/elements/container","properties":{"maxWidth":{"id":"#tokensConfig/elements/container/maxWidth","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/maxWidth/value","default":"80rem"}},"type":"object","default":{"value":"80rem"}},"padding":{"id":"#tokensConfig/elements/container/padding","properties":{"mobile":{"id":"#tokensConfig/elements/container/padding/mobile","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/mobile/value","default":"{space.4}"}},"type":"object","default":{"value":"{space.4}"}},"xs":{"id":"#tokensConfig/elements/container/padding/xs","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/xs/value","default":"{space.4}"}},"type":"object","default":{"value":"{space.4}"}},"sm":{"id":"#tokensConfig/elements/container/padding/sm","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/sm/value","default":"{space.6}"}},"type":"object","default":{"value":"{space.6}"}},"md":{"id":"#tokensConfig/elements/container/padding/md","properties":{"value":{"type":"string","id":"#tokensConfig/elements/container/padding/md/value","default":"{space.6}"}},"type":"object","default":{"value":"{space.6}"}}},"type":"object","default":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}}},"type":"object","default":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}}},"backdrop":{"title":"Backdrops used in Elements.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon material-symbols:blur-circular"],"id":"#tokensConfig/elements/backdrop","properties":{"filter":{"id":"#tokensConfig/elements/backdrop/filter","properties":{"value":{"type":"string","id":"#tokensConfig/elements/backdrop/filter/value","default":"saturate(200%) blur(20px)"}},"type":"object","default":{"value":"saturate(200%) blur(20px)"}},"background":{"id":"#tokensConfig/elements/backdrop/background","properties":{"value":{"id":"#tokensConfig/elements/backdrop/background/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/backdrop/background/value/initial","default":"#fffc"},"dark":{"type":"string","id":"#tokensConfig/elements/backdrop/background/value/dark","default":"#0c0d0ccc"}},"type":"object","default":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"type":"object","default":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}}},"type":"object","default":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}}},"border":{"title":"Borders used in Elements.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon material-symbols:border-all-outline-rounded"],"id":"#tokensConfig/elements/border","properties":{"primary":{"id":"#tokensConfig/elements/border/primary","properties":{"static":{"id":"#tokensConfig/elements/border/primary/static","properties":{"value":{"id":"#tokensConfig/elements/border/primary/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/primary/static/value/initial","default":"{color.gray.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/border/primary/static/value/dark","default":"{color.gray.900}"}},"type":"object","default":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"type":"object","default":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"hover":{"id":"#tokensConfig/elements/border/primary/hover","properties":{"value":{"id":"#tokensConfig/elements/border/primary/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/primary/hover/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/border/primary/hover/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"secondary":{"id":"#tokensConfig/elements/border/secondary","properties":{"static":{"id":"#tokensConfig/elements/border/secondary/static","properties":{"value":{"id":"#tokensConfig/elements/border/secondary/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/secondary/static/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/border/secondary/static/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"hover":{"id":"#tokensConfig/elements/border/secondary/hover","properties":{"value":{"id":"#tokensConfig/elements/border/secondary/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/border/secondary/hover/value/initial","default":""},"dark":{"type":"string","id":"#tokensConfig/elements/border/secondary/hover/value/dark","default":""}},"type":"object","default":{"initial":"","dark":""}}},"type":"object","default":{"value":{"initial":"","dark":""}}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}}},"type":"object","default":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}}},"surface":{"title":"Surfaces used in Elements.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon fluent:surface-hub-20-filled"],"id":"#tokensConfig/elements/surface","properties":{"background":{"id":"#tokensConfig/elements/surface/background","properties":{"base":{"id":"#tokensConfig/elements/surface/background/base","properties":{"value":{"id":"#tokensConfig/elements/surface/background/base/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/surface/background/base/value/initial","default":"{color.gray.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/surface/background/base/value/dark","default":"{color.gray.900}"}},"type":"object","default":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"type":"object","default":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"type":"object","default":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"primary":{"id":"#tokensConfig/elements/surface/primary","properties":{"backgroundColor":{"id":"#tokensConfig/elements/surface/primary/backgroundColor","properties":{"value":{"id":"#tokensConfig/elements/surface/primary/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/surface/primary/backgroundColor/value/initial","default":"{color.gray.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/surface/primary/backgroundColor/value/dark","default":"{color.gray.900}"}},"type":"object","default":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"type":"object","default":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}}},"secondary":{"id":"#tokensConfig/elements/surface/secondary","properties":{"backgroundColor":{"id":"#tokensConfig/elements/surface/secondary/backgroundColor","properties":{"value":{"id":"#tokensConfig/elements/surface/secondary/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/surface/secondary/backgroundColor/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/surface/secondary/backgroundColor/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}}},"type":"object","default":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}}},"state":{"title":"Color states used in Elements.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon mdi:palette-advanced"],"id":"#tokensConfig/elements/state","properties":{"primary":{"id":"#tokensConfig/elements/state/primary","properties":{"color":{"id":"#tokensConfig/elements/state/primary/color","properties":{"primary":{"id":"#tokensConfig/elements/state/primary/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/color/primary/value/initial","default":"{color.primary.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/color/primary/value/dark","default":"{color.primary.400}"}},"type":"object","default":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}}},"type":"object","default":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/primary/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/color/secondary/value/initial","default":"{color.primary.700}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/color/secondary/value/dark","default":"{color.primary.200}"}},"type":"object","default":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"type":"object","default":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/primary/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/primary/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/primary/value/initial","default":"{color.primary.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/primary/value/dark","default":"{color.primary.900}"}},"type":"object","default":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}}},"type":"object","default":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/primary/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/secondary/value/initial","default":"{color.primary.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/backgroundColor/secondary/value/dark","default":"{color.primary.800}"}},"type":"object","default":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"type":"object","default":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/primary/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/primary/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/primary/value/initial","default":"{color.primary.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/primary/value/dark","default":"{color.primary.800}"}},"type":"object","default":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"type":"object","default":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/primary/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/primary/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/secondary/value/initial","default":"{color.primary.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/primary/borderColor/secondary/value/dark","default":"{color.primary.700}"}},"type":"object","default":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}},"type":"object","default":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}}},"info":{"id":"#tokensConfig/elements/state/info","properties":{"color":{"id":"#tokensConfig/elements/state/info/color","properties":{"primary":{"id":"#tokensConfig/elements/state/info/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/info/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/color/primary/value/initial","default":"{color.blue.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/color/primary/value/dark","default":"{color.blue.400}"}},"type":"object","default":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}}},"type":"object","default":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/info/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/info/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/color/secondary/value/initial","default":"{color.blue.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/color/secondary/value/dark","default":"{color.blue.200}"}},"type":"object","default":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"type":"object","default":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/info/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/info/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/info/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/primary/value/initial","default":"{color.blue.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/primary/value/dark","default":"{color.blue.900}"}},"type":"object","default":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}}},"type":"object","default":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/info/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/info/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/secondary/value/initial","default":"{color.blue.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/backgroundColor/secondary/value/dark","default":"{color.blue.800}"}},"type":"object","default":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"type":"object","default":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/info/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/info/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/info/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/primary/value/initial","default":"{color.blue.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/primary/value/dark","default":"{color.blue.800}"}},"type":"object","default":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"type":"object","default":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/info/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/info/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/secondary/value/initial","default":"{color.blue.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/info/borderColor/secondary/value/dark","default":"{color.blue.700}"}},"type":"object","default":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}},"type":"object","default":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}}},"success":{"id":"#tokensConfig/elements/state/success","properties":{"color":{"id":"#tokensConfig/elements/state/success/color","properties":{"primary":{"id":"#tokensConfig/elements/state/success/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/success/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/color/primary/value/initial","default":"{color.green.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/color/primary/value/dark","default":"{color.green.400}"}},"type":"object","default":{"initial":"{color.green.500}","dark":"{color.green.400}"}}},"type":"object","default":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/success/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/success/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/color/secondary/value/initial","default":"{color.green.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/color/secondary/value/dark","default":"{color.green.200}"}},"type":"object","default":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"type":"object","default":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/success/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/success/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/success/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/primary/value/initial","default":"{color.green.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/primary/value/dark","default":"{color.green.900}"}},"type":"object","default":{"initial":"{color.green.50}","dark":"{color.green.900}"}}},"type":"object","default":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/success/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/success/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/secondary/value/initial","default":"{color.green.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/backgroundColor/secondary/value/dark","default":"{color.green.800}"}},"type":"object","default":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"type":"object","default":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/success/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/success/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/success/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/primary/value/initial","default":"{color.green.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/primary/value/dark","default":"{color.green.800}"}},"type":"object","default":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"type":"object","default":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/success/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/success/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/secondary/value/initial","default":"{color.green.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/success/borderColor/secondary/value/dark","default":"{color.green.700}"}},"type":"object","default":{"initial":"{color.green.200}","dark":"{color.green.700}"}}},"type":"object","default":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}}},"warning":{"id":"#tokensConfig/elements/state/warning","properties":{"color":{"id":"#tokensConfig/elements/state/warning/color","properties":{"primary":{"id":"#tokensConfig/elements/state/warning/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/color/primary/value/initial","default":"{color.yellow.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/color/primary/value/dark","default":"{color.yellow.400}"}},"type":"object","default":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}}},"secondary":{"id":"#tokensConfig/elements/state/warning/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/color/secondary/value/initial","default":"{color.yellow.700}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/color/secondary/value/dark","default":"{color.yellow.200}"}},"type":"object","default":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/warning/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/warning/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/primary/value/initial","default":"{color.yellow.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/primary/value/dark","default":"{color.yellow.900}"}},"type":"object","default":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/warning/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/secondary/value/initial","default":"{color.yellow.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/backgroundColor/secondary/value/dark","default":"{color.yellow.800}"}},"type":"object","default":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/warning/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/warning/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/primary/value/initial","default":"{color.yellow.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/primary/value/dark","default":"{color.yellow.800}"}},"type":"object","default":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/warning/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/warning/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/secondary/value/initial","default":"{color.yellow.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/warning/borderColor/secondary/value/dark","default":"{color.yellow.700}"}},"type":"object","default":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}},"type":"object","default":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}}},"danger":{"id":"#tokensConfig/elements/state/danger","properties":{"color":{"id":"#tokensConfig/elements/state/danger/color","properties":{"primary":{"id":"#tokensConfig/elements/state/danger/color/primary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/color/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/color/primary/value/initial","default":"{color.red.500}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/color/primary/value/dark","default":"{color.red.300}"}},"type":"object","default":{"initial":"{color.red.500}","dark":"{color.red.300}"}}},"type":"object","default":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}}},"secondary":{"id":"#tokensConfig/elements/state/danger/color/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/color/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/color/secondary/value/initial","default":"{color.red.600}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/color/secondary/value/dark","default":"{color.red.200}"}},"type":"object","default":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"type":"object","default":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}}},"backgroundColor":{"id":"#tokensConfig/elements/state/danger/backgroundColor","properties":{"primary":{"id":"#tokensConfig/elements/state/danger/backgroundColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/backgroundColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/primary/value/initial","default":"{color.red.50}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/primary/value/dark","default":"{color.red.900}"}},"type":"object","default":{"initial":"{color.red.50}","dark":"{color.red.900}"}}},"type":"object","default":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}}},"secondary":{"id":"#tokensConfig/elements/state/danger/backgroundColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/backgroundColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/secondary/value/initial","default":"{color.red.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/backgroundColor/secondary/value/dark","default":"{color.red.800}"}},"type":"object","default":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"type":"object","default":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}}},"borderColor":{"id":"#tokensConfig/elements/state/danger/borderColor","properties":{"primary":{"id":"#tokensConfig/elements/state/danger/borderColor/primary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/borderColor/primary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/primary/value/initial","default":"{color.red.100}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/primary/value/dark","default":"{color.red.800}"}},"type":"object","default":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"type":"object","default":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"secondary":{"id":"#tokensConfig/elements/state/danger/borderColor/secondary","properties":{"value":{"id":"#tokensConfig/elements/state/danger/borderColor/secondary/value","properties":{"initial":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/secondary/value/initial","default":"{color.red.200}"},"dark":{"type":"string","id":"#tokensConfig/elements/state/danger/borderColor/secondary/value/dark","default":"{color.red.700}"}},"type":"object","default":{"initial":"{color.red.200}","dark":"{color.red.700}"}}},"type":"object","default":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}},"type":"object","default":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}},"type":"object","default":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"type":"object","default":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}}},"type":"object","default":{"text":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}}},"typography":{"title":"All the configurable tokens for your Typography.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon material-symbols:article"],"id":"#tokensConfig/typography","properties":{"body":{"id":"#tokensConfig/typography/body","properties":{"color":{"id":"#tokensConfig/typography/body/color","properties":{"value":{"id":"#tokensConfig/typography/body/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/typography/body/color/value/initial","default":"{color.black}"},"dark":{"type":"string","id":"#tokensConfig/typography/body/color/value/dark","default":"{color.white}"}},"type":"object","default":{"initial":"{color.black}","dark":"{color.white}"}}},"type":"object","default":{"value":{"initial":"{color.black}","dark":"{color.white}"}}},"backgroundColor":{"id":"#tokensConfig/typography/body/backgroundColor","properties":{"value":{"id":"#tokensConfig/typography/body/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/typography/body/backgroundColor/value/initial","default":"{color.white}"},"dark":{"type":"string","id":"#tokensConfig/typography/body/backgroundColor/value/dark","default":"{color.black}"}},"type":"object","default":{"initial":"{color.white}","dark":"{color.black}"}}},"type":"object","default":{"value":{"initial":"{color.white}","dark":"{color.black}"}}}},"type":"object","default":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}}},"verticalMargin":{"title":"Vertical spacings between paragraphs.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon mingcute:line-height-line"],"id":"#tokensConfig/typography/verticalMargin","properties":{"sm":{"id":"#tokensConfig/typography/verticalMargin/sm","properties":{"value":{"type":"string","id":"#tokensConfig/typography/verticalMargin/sm/value","default":"16px"}},"type":"object","default":{"value":"16px"}},"base":{"id":"#tokensConfig/typography/verticalMargin/base","properties":{"value":{"type":"string","id":"#tokensConfig/typography/verticalMargin/base/value","default":"24px"}},"type":"object","default":{"value":"24px"}}},"type":"object","default":{"sm":{"value":"16px"},"base":{"value":"24px"}}},"letterSpacing":{"title":"Horizontal spacings between letters.","tags":["@studioInput design-token","@studioInputTokenType size","@studioIcon mingcute:letter-spacing-line"],"id":"#tokensConfig/typography/letterSpacing","properties":{"tight":{"id":"#tokensConfig/typography/letterSpacing/tight","properties":{"value":{"type":"string","id":"#tokensConfig/typography/letterSpacing/tight/value","default":"-0.025em"}},"type":"object","default":{"value":"-0.025em"}},"wide":{"id":"#tokensConfig/typography/letterSpacing/wide","properties":{"value":{"type":"string","id":"#tokensConfig/typography/letterSpacing/wide/value","default":"0.025em"}},"type":"object","default":{"value":"0.025em"}}},"type":"object","default":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}}},"fontSize":{"title":"Horizontal spacings between letters.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon mingcute:font-size-fill"],"id":"#tokensConfig/typography/fontSize","properties":{"xs":{"id":"#tokensConfig/typography/fontSize/xs","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/xs/value","default":"12px"}},"type":"object","default":{"value":"12px"}},"sm":{"id":"#tokensConfig/typography/fontSize/sm","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/sm/value","default":"14px"}},"type":"object","default":{"value":"14px"}},"base":{"id":"#tokensConfig/typography/fontSize/base","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/base/value","default":"16px"}},"type":"object","default":{"value":"16px"}},"lg":{"id":"#tokensConfig/typography/fontSize/lg","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/lg/value","default":"18px"}},"type":"object","default":{"value":"18px"}},"xl":{"id":"#tokensConfig/typography/fontSize/xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/xl/value","default":"20px"}},"type":"object","default":{"value":"20px"}},"2xl":{"id":"#tokensConfig/typography/fontSize/2xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/2xl/value","default":"24px"}},"type":"object","default":{"value":"24px"}},"3xl":{"id":"#tokensConfig/typography/fontSize/3xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/3xl/value","default":"30px"}},"type":"object","default":{"value":"30px"}},"4xl":{"id":"#tokensConfig/typography/fontSize/4xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/4xl/value","default":"36px"}},"type":"object","default":{"value":"36px"}},"5xl":{"id":"#tokensConfig/typography/fontSize/5xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/5xl/value","default":"48px"}},"type":"object","default":{"value":"48px"}},"6xl":{"id":"#tokensConfig/typography/fontSize/6xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/6xl/value","default":"60px"}},"type":"object","default":{"value":"60px"}},"7xl":{"id":"#tokensConfig/typography/fontSize/7xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/7xl/value","default":"72px"}},"type":"object","default":{"value":"72px"}},"8xl":{"id":"#tokensConfig/typography/fontSize/8xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/8xl/value","default":"96px"}},"type":"object","default":{"value":"96px"}},"9xl":{"id":"#tokensConfig/typography/fontSize/9xl","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontSize/9xl/value","default":"128px"}},"type":"object","default":{"value":"128px"}}},"type":"object","default":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}}},"fontWeight":{"title":"Font weights used in typography.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon mingcute:bold-fill"],"id":"#tokensConfig/typography/fontWeight","properties":{"thin":{"id":"#tokensConfig/typography/fontWeight/thin","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/thin/value","default":"100"}},"type":"object","default":{"value":"100"}},"extralight":{"id":"#tokensConfig/typography/fontWeight/extralight","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/extralight/value","default":"200"}},"type":"object","default":{"value":"200"}},"light":{"id":"#tokensConfig/typography/fontWeight/light","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/light/value","default":"300"}},"type":"object","default":{"value":"300"}},"normal":{"id":"#tokensConfig/typography/fontWeight/normal","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/normal/value","default":"400"}},"type":"object","default":{"value":"400"}},"medium":{"id":"#tokensConfig/typography/fontWeight/medium","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/medium/value","default":"500"}},"type":"object","default":{"value":"500"}},"semibold":{"id":"#tokensConfig/typography/fontWeight/semibold","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/semibold/value","default":"600"}},"type":"object","default":{"value":"600"}},"bold":{"id":"#tokensConfig/typography/fontWeight/bold","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/bold/value","default":"700"}},"type":"object","default":{"value":"700"}},"extrabold":{"id":"#tokensConfig/typography/fontWeight/extrabold","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/extrabold/value","default":"800"}},"type":"object","default":{"value":"800"}},"black":{"id":"#tokensConfig/typography/fontWeight/black","properties":{"value":{"type":"string","id":"#tokensConfig/typography/fontWeight/black/value","default":"900"}},"type":"object","default":{"value":"900"}}},"type":"object","default":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}}},"lead":{"title":"Line heights used in your typography.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon material-symbols:height-rounded"],"id":"#tokensConfig/typography/lead","properties":{"1":{"id":"#tokensConfig/typography/lead/1","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/1/value","default":".025rem"}},"type":"object","default":{"value":".025rem"}},"2":{"id":"#tokensConfig/typography/lead/2","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/2/value","default":".5rem"}},"type":"object","default":{"value":".5rem"}},"3":{"id":"#tokensConfig/typography/lead/3","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/3/value","default":".75rem"}},"type":"object","default":{"value":".75rem"}},"4":{"id":"#tokensConfig/typography/lead/4","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/4/value","default":"1rem"}},"type":"object","default":{"value":"1rem"}},"5":{"id":"#tokensConfig/typography/lead/5","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/5/value","default":"1.25rem"}},"type":"object","default":{"value":"1.25rem"}},"6":{"id":"#tokensConfig/typography/lead/6","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/6/value","default":"1.5rem"}},"type":"object","default":{"value":"1.5rem"}},"7":{"id":"#tokensConfig/typography/lead/7","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/7/value","default":"1.75rem"}},"type":"object","default":{"value":"1.75rem"}},"8":{"id":"#tokensConfig/typography/lead/8","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/8/value","default":"2rem"}},"type":"object","default":{"value":"2rem"}},"9":{"id":"#tokensConfig/typography/lead/9","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/9/value","default":"2.25rem"}},"type":"object","default":{"value":"2.25rem"}},"10":{"id":"#tokensConfig/typography/lead/10","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/10/value","default":"2.5rem"}},"type":"object","default":{"value":"2.5rem"}},"none":{"id":"#tokensConfig/typography/lead/none","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/none/value","default":"1"}},"type":"object","default":{"value":"1"}},"tight":{"id":"#tokensConfig/typography/lead/tight","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/tight/value","default":"1.25"}},"type":"object","default":{"value":"1.25"}},"snug":{"id":"#tokensConfig/typography/lead/snug","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/snug/value","default":"1.375"}},"type":"object","default":{"value":"1.375"}},"normal":{"id":"#tokensConfig/typography/lead/normal","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/normal/value","default":"1.5"}},"type":"object","default":{"value":"1.5"}},"relaxed":{"id":"#tokensConfig/typography/lead/relaxed","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/relaxed/value","default":"1.625"}},"type":"object","default":{"value":"1.625"}},"loose":{"id":"#tokensConfig/typography/lead/loose","properties":{"value":{"type":"string","id":"#tokensConfig/typography/lead/loose/value","default":"2"}},"type":"object","default":{"value":"2"}}},"type":"object","default":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}}},"font":{"title":"Your typography fonts","tags":["@studioInput design-token","@studioInputTokenType font","@studioIcon material-symbols:font-download-rounded"],"id":"#tokensConfig/typography/font","properties":{"display":{"id":"#tokensConfig/typography/font/display","properties":{"value":{"type":"string","id":"#tokensConfig/typography/font/display/value","default":"{font.sans}"}},"type":"object","default":{"value":"{font.sans}"}},"body":{"id":"#tokensConfig/typography/font/body","properties":{"value":{"type":"string","id":"#tokensConfig/typography/font/body/value","default":"{font.sans}"}},"type":"object","default":{"value":"{font.sans}"}},"code":{"id":"#tokensConfig/typography/font/code","properties":{"value":{"type":"string","id":"#tokensConfig/typography/font/code/value","default":"{font.mono}"}},"type":"object","default":{"value":"{font.mono}"}}},"type":"object","default":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}}},"color":{"title":"Your typography color palette.","tags":["@studioInput design-token","@studioInputTokenType color","@studioIcon ph:palette"],"id":"#tokensConfig/typography/color","properties":{"primary":{"id":"#tokensConfig/typography/color/primary","properties":{"50":{"id":"#tokensConfig/typography/color/primary/50","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/50/value","default":"{color.primary.50}"}},"type":"object","default":{"value":"{color.primary.50}"}},"100":{"id":"#tokensConfig/typography/color/primary/100","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/100/value","default":"{color.primary.100}"}},"type":"object","default":{"value":"{color.primary.100}"}},"200":{"id":"#tokensConfig/typography/color/primary/200","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/200/value","default":"{color.primary.200}"}},"type":"object","default":{"value":"{color.primary.200}"}},"300":{"id":"#tokensConfig/typography/color/primary/300","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/300/value","default":"{color.primary.300}"}},"type":"object","default":{"value":"{color.primary.300}"}},"400":{"id":"#tokensConfig/typography/color/primary/400","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/400/value","default":"{color.primary.400}"}},"type":"object","default":{"value":"{color.primary.400}"}},"500":{"id":"#tokensConfig/typography/color/primary/500","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/500/value","default":"{color.primary.500}"}},"type":"object","default":{"value":"{color.primary.500}"}},"600":{"id":"#tokensConfig/typography/color/primary/600","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/600/value","default":"{color.primary.600}"}},"type":"object","default":{"value":"{color.primary.600}"}},"700":{"id":"#tokensConfig/typography/color/primary/700","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/700/value","default":"{color.primary.700}"}},"type":"object","default":{"value":"{color.primary.700}"}},"800":{"id":"#tokensConfig/typography/color/primary/800","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/800/value","default":"{color.primary.800}"}},"type":"object","default":{"value":"{color.primary.800}"}},"900":{"id":"#tokensConfig/typography/color/primary/900","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/primary/900/value","default":"{color.primary.900}"}},"type":"object","default":{"value":"{color.primary.900}"}}},"type":"object","default":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}}},"secondary":{"id":"#tokensConfig/typography/color/secondary","properties":{"50":{"id":"#tokensConfig/typography/color/secondary/50","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/50/value","default":"{color.gray.50}"}},"type":"object","default":{"value":"{color.gray.50}"}},"100":{"id":"#tokensConfig/typography/color/secondary/100","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/100/value","default":"{color.gray.100}"}},"type":"object","default":{"value":"{color.gray.100}"}},"200":{"id":"#tokensConfig/typography/color/secondary/200","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/200/value","default":"{color.gray.200}"}},"type":"object","default":{"value":"{color.gray.200}"}},"300":{"id":"#tokensConfig/typography/color/secondary/300","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/300/value","default":"{color.gray.300}"}},"type":"object","default":{"value":"{color.gray.300}"}},"400":{"id":"#tokensConfig/typography/color/secondary/400","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/400/value","default":"{color.gray.400}"}},"type":"object","default":{"value":"{color.gray.400}"}},"500":{"id":"#tokensConfig/typography/color/secondary/500","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/500/value","default":"{color.gray.500}"}},"type":"object","default":{"value":"{color.gray.500}"}},"600":{"id":"#tokensConfig/typography/color/secondary/600","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/600/value","default":"{color.gray.600}"}},"type":"object","default":{"value":"{color.gray.600}"}},"700":{"id":"#tokensConfig/typography/color/secondary/700","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/700/value","default":"{color.gray.700}"}},"type":"object","default":{"value":"{color.gray.700}"}},"800":{"id":"#tokensConfig/typography/color/secondary/800","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/800/value","default":"{color.gray.800}"}},"type":"object","default":{"value":"{color.gray.800}"}},"900":{"id":"#tokensConfig/typography/color/secondary/900","properties":{"value":{"type":"string","id":"#tokensConfig/typography/color/secondary/900/value","default":"{color.gray.900}"}},"type":"object","default":{"value":"{color.gray.900}"}}},"type":"object","default":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}},"type":"object","default":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}}},"type":"object","default":{"body":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px"},"base":{"value":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}},"fontSize":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"font":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}},"color":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}}},"prose":{"title":"All the configurable tokens for your Prose components.","tags":["@studioInput design-token","@studioInputTokenType font-size","@studioIcon lucide:component"],"id":"#tokensConfig/prose","properties":{"p":{"id":"#tokensConfig/prose/p","properties":{"fontSize":{"id":"#tokensConfig/prose/p/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/fontSize/value","default":"{typography.fontSize.base}"}},"type":"object","default":{"value":"{typography.fontSize.base}"}},"lineHeight":{"id":"#tokensConfig/prose/p/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/lineHeight/value","default":"{typography.lead.normal}"}},"type":"object","default":{"value":"{typography.lead.normal}"}},"margin":{"id":"#tokensConfig/prose/p/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"br":{"id":"#tokensConfig/prose/p/br","properties":{"margin":{"id":"#tokensConfig/prose/p/br/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/p/br/margin/value","default":"{typography.verticalMargin.base} 0 0 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}}},"type":"object","default":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}}},"h1":{"id":"#tokensConfig/prose/h1","properties":{"margin":{"id":"#tokensConfig/prose/h1/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/margin/value","default":"0 0 2rem"}},"type":"object","default":{"value":"0 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h1/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/fontSize/value","default":"{typography.fontSize.5xl}"}},"type":"object","default":{"value":"{typography.fontSize.5xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h1/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/lineHeight/value","default":"{typography.lead.tight}"}},"type":"object","default":{"value":"{typography.lead.tight}"}},"fontWeight":{"id":"#tokensConfig/prose/h1/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/fontWeight/value","default":"{typography.fontWeight.bold}"}},"type":"object","default":{"value":"{typography.fontWeight.bold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h1/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h1/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h1/iconSize/value","default":"{typography.fontSize.3xl}"}},"type":"object","default":{"value":"{typography.fontSize.3xl}"}}},"type":"object","default":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}}},"h2":{"id":"#tokensConfig/prose/h2","properties":{"margin":{"id":"#tokensConfig/prose/h2/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h2/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/fontSize/value","default":"{typography.fontSize.4xl}"}},"type":"object","default":{"value":"{typography.fontSize.4xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h2/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/lineHeight/value","default":"{typography.lead.tight}"}},"type":"object","default":{"value":"{typography.lead.tight}"}},"fontWeight":{"id":"#tokensConfig/prose/h2/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h2/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h2/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h2/iconSize/value","default":"{typography.fontSize.2xl}"}},"type":"object","default":{"value":"{typography.fontSize.2xl}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}}},"h3":{"id":"#tokensConfig/prose/h3","properties":{"margin":{"id":"#tokensConfig/prose/h3/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h3/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/fontSize/value","default":"{typography.fontSize.3xl}"}},"type":"object","default":{"value":"{typography.fontSize.3xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h3/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/lineHeight/value","default":"{typography.lead.snug}"}},"type":"object","default":{"value":"{typography.lead.snug}"}},"fontWeight":{"id":"#tokensConfig/prose/h3/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h3/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h3/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h3/iconSize/value","default":"{typography.fontSize.xl}"}},"type":"object","default":{"value":"{typography.fontSize.xl}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}}},"h4":{"id":"#tokensConfig/prose/h4","properties":{"margin":{"id":"#tokensConfig/prose/h4/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h4/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/fontSize/value","default":"{typography.fontSize.2xl}"}},"type":"object","default":{"value":"{typography.fontSize.2xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h4/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/lineHeight/value","default":"{typography.lead.snug}"}},"type":"object","default":{"value":"{typography.lead.snug}"}},"fontWeight":{"id":"#tokensConfig/prose/h4/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"letterSpacing":{"id":"#tokensConfig/prose/h4/letterSpacing","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/letterSpacing/value","default":"{typography.letterSpacing.tight}"}},"type":"object","default":{"value":"{typography.letterSpacing.tight}"}},"iconSize":{"id":"#tokensConfig/prose/h4/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h4/iconSize/value","default":"{typography.fontSize.lg}"}},"type":"object","default":{"value":"{typography.fontSize.lg}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}}},"h5":{"id":"#tokensConfig/prose/h5","properties":{"margin":{"id":"#tokensConfig/prose/h5/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h5/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/fontSize/value","default":"{typography.fontSize.xl}"}},"type":"object","default":{"value":"{typography.fontSize.xl}"}},"lineHeight":{"id":"#tokensConfig/prose/h5/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/lineHeight/value","default":"{typography.lead.snug}"}},"type":"object","default":{"value":"{typography.lead.snug}"}},"fontWeight":{"id":"#tokensConfig/prose/h5/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"iconSize":{"id":"#tokensConfig/prose/h5/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h5/iconSize/value","default":"{typography.fontSize.lg}"}},"type":"object","default":{"value":"{typography.fontSize.lg}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}}},"h6":{"id":"#tokensConfig/prose/h6","properties":{"margin":{"id":"#tokensConfig/prose/h6/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/margin/value","default":"3rem 0 2rem"}},"type":"object","default":{"value":"3rem 0 2rem"}},"fontSize":{"id":"#tokensConfig/prose/h6/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/fontSize/value","default":"{typography.fontSize.lg}"}},"type":"object","default":{"value":"{typography.fontSize.lg}"}},"lineHeight":{"id":"#tokensConfig/prose/h6/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/lineHeight/value","default":"{typography.lead.normal}"}},"type":"object","default":{"value":"{typography.lead.normal}"}},"fontWeight":{"id":"#tokensConfig/prose/h6/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"iconSize":{"id":"#tokensConfig/prose/h6/iconSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/h6/iconSize/value","default":"{typography.fontSize.base}"}},"type":"object","default":{"value":"{typography.fontSize.base}"}}},"type":"object","default":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}}},"strong":{"id":"#tokensConfig/prose/strong","properties":{"fontWeight":{"id":"#tokensConfig/prose/strong/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/strong/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}}},"type":"object","default":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}}},"img":{"id":"#tokensConfig/prose/img","properties":{"margin":{"id":"#tokensConfig/prose/img/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/img/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"}}},"a":{"id":"#tokensConfig/prose/a","properties":{"textDecoration":{"id":"#tokensConfig/prose/a/textDecoration","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/textDecoration/value","default":"none"}},"type":"object","default":{"value":"none"}},"color":{"id":"#tokensConfig/prose/a/color","properties":{"static":{"id":"#tokensConfig/prose/a/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/color/static/value/initial","default":"inherit"},"dark":{"type":"string","id":"#tokensConfig/prose/a/color/static/value/dark","default":"inherit"}},"type":"object","default":{"initial":"inherit","dark":"inherit"}}},"type":"object","default":{"value":{"initial":"inherit","dark":"inherit"}}},"hover":{"id":"#tokensConfig/prose/a/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/color/hover/value/initial","default":"{typography.color.primary.500}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/color/hover/value/dark","default":"{typography.color.primary.400}"}},"type":"object","default":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"type":"object","default":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}}},"type":"object","default":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}}},"border":{"id":"#tokensConfig/prose/a/border","properties":{"width":{"id":"#tokensConfig/prose/a/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/a/border/style","properties":{"static":{"id":"#tokensConfig/prose/a/border/style/static","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/style/static/value","default":"dashed"}},"type":"object","default":{"value":"dashed"}},"hover":{"id":"#tokensConfig/prose/a/border/style/hover","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/style/hover/value","default":"solid"}},"type":"object","default":{"value":"solid"}}},"type":"object","default":{"static":{"value":"dashed"},"hover":{"value":"solid"}}},"color":{"id":"#tokensConfig/prose/a/border/color","properties":{"static":{"id":"#tokensConfig/prose/a/border/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/border/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/border/color/static/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/border/color/static/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}},"hover":{"id":"#tokensConfig/prose/a/border/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/border/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/border/color/hover/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/border/color/hover/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"distance":{"id":"#tokensConfig/prose/a/border/distance","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/border/distance/value","default":"2px"}},"type":"object","default":{"value":"2px"}}},"type":"object","default":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}}},"fontWeight":{"id":"#tokensConfig/prose/a/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/fontWeight/value","default":"{typography.fontWeight.medium}"}},"type":"object","default":{"value":"{typography.fontWeight.medium}"}},"hasCode":{"id":"#tokensConfig/prose/a/hasCode","properties":{"borderBottom":{"id":"#tokensConfig/prose/a/hasCode/borderBottom","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/hasCode/borderBottom/value","default":"none"}},"type":"object","default":{"value":"none"}}},"type":"object","default":{"borderBottom":{"value":"none"}}},"code":{"id":"#tokensConfig/prose/a/code","properties":{"border":{"id":"#tokensConfig/prose/a/code/border","properties":{"width":{"id":"#tokensConfig/prose/a/code/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/code/border/width/value","default":"{prose.a.border.width}"}},"type":"object","default":{"value":"{prose.a.border.width}"}},"style":{"id":"#tokensConfig/prose/a/code/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/a/code/border/style/value","default":"{prose.a.border.style.static}"}},"type":"object","default":{"value":"{prose.a.border.style.static}"}},"color":{"id":"#tokensConfig/prose/a/code/border/color","properties":{"static":{"id":"#tokensConfig/prose/a/code/border/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/code/border/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/static/value/initial","default":"{typography.color.secondary.400}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/static/value/dark","default":"{typography.color.secondary.600}"}},"type":"object","default":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}}},"hover":{"id":"#tokensConfig/prose/a/code/border/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/code/border/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/hover/value/initial","default":"{typography.color.primary.500}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/border/color/hover/value/dark","default":"{typography.color.primary.600}"}},"type":"object","default":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}},"type":"object","default":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"type":"object","default":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}}},"type":"object","default":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}}},"color":{"id":"#tokensConfig/prose/a/code/color","properties":{"static":{"id":"#tokensConfig/prose/a/code/color/static","properties":{"value":{"id":"#tokensConfig/prose/a/code/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/color/static/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/color/static/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}},"hover":{"id":"#tokensConfig/prose/a/code/color/hover","properties":{"value":{"id":"#tokensConfig/prose/a/code/color/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/color/hover/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/color/hover/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"background":{"id":"#tokensConfig/prose/a/code/background","properties":{"static":{"id":"#tokensConfig/prose/a/code/background/static","type":"any","default":{}},"hover":{"id":"#tokensConfig/prose/a/code/background/hover","properties":{"value":{"id":"#tokensConfig/prose/a/code/background/hover/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/a/code/background/hover/value/initial","default":"{typography.color.primary.50}"},"dark":{"type":"string","id":"#tokensConfig/prose/a/code/background/hover/value/dark","default":"{typography.color.primary.900}"}},"type":"object","default":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}},"type":"object","default":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}},"type":"object","default":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"type":"object","default":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}}},"type":"object","default":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}}},"blockquote":{"id":"#tokensConfig/prose/blockquote","properties":{"margin":{"id":"#tokensConfig/prose/blockquote/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"paddingInlineStart":{"id":"#tokensConfig/prose/blockquote/paddingInlineStart","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/paddingInlineStart/value","default":"24px"}},"type":"object","default":{"value":"24px"}},"quotes":{"id":"#tokensConfig/prose/blockquote/quotes","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/quotes/value","default":"'201C' '201D' '2018' '2019'"}},"type":"object","default":{"value":"'201C' '201D' '2018' '2019'"}},"color":{"id":"#tokensConfig/prose/blockquote/color","properties":{"value":{"id":"#tokensConfig/prose/blockquote/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/blockquote/color/value/initial","default":"{typography.color.secondary.500}"},"dark":{"type":"string","id":"#tokensConfig/prose/blockquote/color/value/dark","default":"{typography.color.secondary.400}"}},"type":"object","default":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}}},"border":{"id":"#tokensConfig/prose/blockquote/border","properties":{"width":{"id":"#tokensConfig/prose/blockquote/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/border/width/value","default":"4px"}},"type":"object","default":{"value":"4px"}},"style":{"id":"#tokensConfig/prose/blockquote/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/blockquote/border/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/blockquote/border/color","properties":{"value":{"id":"#tokensConfig/prose/blockquote/border/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/blockquote/border/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/blockquote/border/color/value/dark","default":"{typography.color.secondary.700}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"type":"object","default":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}}},"ul":{"id":"#tokensConfig/prose/ul","properties":{"listStyleType":{"id":"#tokensConfig/prose/ul/listStyleType","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ul/listStyleType/value","default":"disc"}},"type":"object","default":{"value":"disc"}},"margin":{"id":"#tokensConfig/prose/ul/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ul/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"paddingInlineStart":{"id":"#tokensConfig/prose/ul/paddingInlineStart","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ul/paddingInlineStart/value","default":"21px"}},"type":"object","default":{"value":"21px"}},"li":{"id":"#tokensConfig/prose/ul/li","properties":{"markerColor":{"id":"#tokensConfig/prose/ul/li/markerColor","properties":{"value":{"id":"#tokensConfig/prose/ul/li/markerColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/ul/li/markerColor/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/ul/li/markerColor/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"type":"object","default":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"ol":{"id":"#tokensConfig/prose/ol","properties":{"listStyleType":{"id":"#tokensConfig/prose/ol/listStyleType","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ol/listStyleType/value","default":"decimal"}},"type":"object","default":{"value":"decimal"}},"margin":{"id":"#tokensConfig/prose/ol/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ol/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"paddingInlineStart":{"id":"#tokensConfig/prose/ol/paddingInlineStart","properties":{"value":{"type":"string","id":"#tokensConfig/prose/ol/paddingInlineStart/value","default":"21px"}},"type":"object","default":{"value":"21px"}},"li":{"id":"#tokensConfig/prose/ol/li","properties":{"markerColor":{"id":"#tokensConfig/prose/ol/li/markerColor","properties":{"value":{"id":"#tokensConfig/prose/ol/li/markerColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/ol/li/markerColor/value/initial","default":"currentColor"},"dark":{"type":"string","id":"#tokensConfig/prose/ol/li/markerColor/value/dark","default":"currentColor"}},"type":"object","default":{"initial":"currentColor","dark":"currentColor"}}},"type":"object","default":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"type":"object","default":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"type":"object","default":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}}},"li":{"id":"#tokensConfig/prose/li","properties":{"margin":{"id":"#tokensConfig/prose/li/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/li/margin/value","default":"{typography.verticalMargin.sm} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.sm} 0"}},"listStylePosition":{"id":"#tokensConfig/prose/li/listStylePosition","properties":{"value":{"type":"string","id":"#tokensConfig/prose/li/listStylePosition/value","default":"outside"}},"type":"object","default":{"value":"outside"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}}},"hr":{"id":"#tokensConfig/prose/hr","properties":{"margin":{"id":"#tokensConfig/prose/hr/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/hr/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"style":{"id":"#tokensConfig/prose/hr/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/hr/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"width":{"id":"#tokensConfig/prose/hr/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/hr/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"color":{"id":"#tokensConfig/prose/hr/color","properties":{"value":{"id":"#tokensConfig/prose/hr/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/hr/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/hr/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"table":{"id":"#tokensConfig/prose/table","properties":{"margin":{"id":"#tokensConfig/prose/table/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"textAlign":{"id":"#tokensConfig/prose/table/textAlign","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/textAlign/value","default":"start"}},"type":"object","default":{"value":"start"}},"fontSize":{"id":"#tokensConfig/prose/table/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}},"lineHeight":{"id":"#tokensConfig/prose/table/lineHeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/table/lineHeight/value","default":"{typography.lead.6}"}},"type":"object","default":{"value":"{typography.lead.6}"}}},"type":"object","default":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}}},"thead":{"id":"#tokensConfig/prose/thead","properties":{"border":{"id":"#tokensConfig/prose/thead/border","properties":{"width":{"id":"#tokensConfig/prose/thead/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/border/width/value","default":"0px"}},"type":"object","default":{"value":"0px"}},"style":{"id":"#tokensConfig/prose/thead/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/border/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/thead/border/color","properties":{"value":{"id":"#tokensConfig/prose/thead/border/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/thead/border/color/value/initial","default":"{typography.color.secondary.300}"},"dark":{"type":"string","id":"#tokensConfig/prose/thead/border/color/value/dark","default":"{typography.color.secondary.600}"}},"type":"object","default":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}}},"type":"object","default":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}}},"borderBottom":{"id":"#tokensConfig/prose/thead/borderBottom","properties":{"width":{"id":"#tokensConfig/prose/thead/borderBottom/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/thead/borderBottom/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/thead/borderBottom/color","properties":{"value":{"id":"#tokensConfig/prose/thead/borderBottom/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/thead/borderBottom/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"type":"object","default":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"th":{"id":"#tokensConfig/prose/th","properties":{"color":{"id":"#tokensConfig/prose/th/color","properties":{"value":{"id":"#tokensConfig/prose/th/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/th/color/value/initial","default":"{typography.color.secondary.600}"},"dark":{"type":"string","id":"#tokensConfig/prose/th/color/value/dark","default":"{typography.color.secondary.400}"}},"type":"object","default":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}}},"padding":{"id":"#tokensConfig/prose/th/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/th/padding/value","default":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"}},"type":"object","default":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"}},"fontWeight":{"id":"#tokensConfig/prose/th/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/th/fontWeight/value","default":"{typography.fontWeight.semibold}"}},"type":"object","default":{"value":"{typography.fontWeight.semibold}"}},"textAlign":{"id":"#tokensConfig/prose/th/textAlign","properties":{"value":{"type":"string","id":"#tokensConfig/prose/th/textAlign/value","default":"inherit"}},"type":"object","default":{"value":"inherit"}}},"type":"object","default":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}}},"tbody":{"id":"#tokensConfig/prose/tbody","properties":{"tr":{"id":"#tokensConfig/prose/tbody/tr","properties":{"borderBottom":{"id":"#tokensConfig/prose/tbody/tr/borderBottom","properties":{"width":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/style/value","default":"dashed"}},"type":"object","default":{"value":"dashed"}},"color":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/color","properties":{"value":{"id":"#tokensConfig/prose/tbody/tr/borderBottom/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/tbody/tr/borderBottom/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"type":"object","default":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}}},"td":{"id":"#tokensConfig/prose/tbody/td","properties":{"padding":{"id":"#tokensConfig/prose/tbody/td/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/td/padding/value","default":"{typography.verticalMargin.sm}"}},"type":"object","default":{"value":"{typography.verticalMargin.sm}"}}},"type":"object","default":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"code":{"id":"#tokensConfig/prose/tbody/code","properties":{"inline":{"id":"#tokensConfig/prose/tbody/code/inline","properties":{"fontSize":{"id":"#tokensConfig/prose/tbody/code/inline/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/tbody/code/inline/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}}},"type":"object","default":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"type":"object","default":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}}},"type":"object","default":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}}},"code":{"id":"#tokensConfig/prose/code","properties":{"block":{"id":"#tokensConfig/prose/code/block","properties":{"fontSize":{"id":"#tokensConfig/prose/code/block/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}},"margin":{"id":"#tokensConfig/prose/code/block/margin","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/margin/value","default":"{typography.verticalMargin.base} 0"}},"type":"object","default":{"value":"{typography.verticalMargin.base} 0"}},"border":{"id":"#tokensConfig/prose/code/block/border","properties":{"width":{"id":"#tokensConfig/prose/code/block/border/width","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/border/width/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"style":{"id":"#tokensConfig/prose/code/block/border/style","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/border/style/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"color":{"id":"#tokensConfig/prose/code/block/border/color","properties":{"value":{"id":"#tokensConfig/prose/code/block/border/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/border/color/value/initial","default":"{typography.color.secondary.200}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/border/color/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"color":{"id":"#tokensConfig/prose/code/block/color","properties":{"value":{"id":"#tokensConfig/prose/code/block/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/color/value/initial","default":"{typography.color.secondary.700}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/color/value/dark","default":"{typography.color.secondary.200}"}},"type":"object","default":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"backgroundColor":{"id":"#tokensConfig/prose/code/block/backgroundColor","properties":{"value":{"id":"#tokensConfig/prose/code/block/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/backgroundColor/value/initial","default":"{typography.color.secondary.100}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/backgroundColor/value/dark","default":"{typography.color.secondary.900}"}},"type":"object","default":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}}},"backdropFilter":{"id":"#tokensConfig/prose/code/block/backdropFilter","properties":{"value":{"id":"#tokensConfig/prose/code/block/backdropFilter/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/block/backdropFilter/value/initial","default":"contrast(1)"},"dark":{"type":"string","id":"#tokensConfig/prose/code/block/backdropFilter/value/dark","default":"contrast(1)"}},"type":"object","default":{"initial":"contrast(1)","dark":"contrast(1)"}}},"type":"object","default":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}}},"pre":{"id":"#tokensConfig/prose/code/block/pre","properties":{"padding":{"id":"#tokensConfig/prose/code/block/pre/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/block/pre/padding/value","default":"{typography.verticalMargin.sm}"}},"type":"object","default":{"value":"{typography.verticalMargin.sm}"}}},"type":"object","default":{"padding":{"value":"{typography.verticalMargin.sm}"}}}},"type":"object","default":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}}},"inline":{"id":"#tokensConfig/prose/code/inline","properties":{"borderRadius":{"id":"#tokensConfig/prose/code/inline/borderRadius","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/borderRadius/value","default":"{radii.xs}"}},"type":"object","default":{"value":"{radii.xs}"}},"padding":{"id":"#tokensConfig/prose/code/inline/padding","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/padding/value","default":"0.2rem 0.375rem 0.2rem 0.375rem"}},"type":"object","default":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"}},"fontSize":{"id":"#tokensConfig/prose/code/inline/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/fontSize/value","default":"{typography.fontSize.sm}"}},"type":"object","default":{"value":"{typography.fontSize.sm}"}},"fontWeight":{"id":"#tokensConfig/prose/code/inline/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/prose/code/inline/fontWeight/value","default":"{typography.fontWeight.normal}"}},"type":"object","default":{"value":"{typography.fontWeight.normal}"}},"color":{"id":"#tokensConfig/prose/code/inline/color","properties":{"value":{"id":"#tokensConfig/prose/code/inline/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/inline/color/value/initial","default":"{typography.color.secondary.700}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/inline/color/value/dark","default":"{typography.color.secondary.200}"}},"type":"object","default":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}}},"backgroundColor":{"id":"#tokensConfig/prose/code/inline/backgroundColor","properties":{"value":{"id":"#tokensConfig/prose/code/inline/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/prose/code/inline/backgroundColor/value/initial","default":"{typography.color.secondary.100}"},"dark":{"type":"string","id":"#tokensConfig/prose/code/inline/backgroundColor/value/dark","default":"{typography.color.secondary.800}"}},"type":"object","default":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}},"type":"object","default":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}},"type":"object","default":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"type":"object","default":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}}},"type":"object","default":{"p":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}},"hr":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}}},"docus":{"title":"All the configurable tokens from Docus.","tags":["@studioIcon material-symbols:docs"],"id":"#tokensConfig/docus","properties":{"body":{"id":"#tokensConfig/docus/body","properties":{"backgroundColor":{"id":"#tokensConfig/docus/body/backgroundColor","properties":{"value":{"id":"#tokensConfig/docus/body/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/body/backgroundColor/value/initial","default":"{color.white}"},"dark":{"type":"string","id":"#tokensConfig/docus/body/backgroundColor/value/dark","default":"{color.black}"}},"type":"object","default":{"initial":"{color.white}","dark":"{color.black}"}}},"type":"object","default":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"color":{"id":"#tokensConfig/docus/body/color","properties":{"value":{"id":"#tokensConfig/docus/body/color/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/body/color/value/initial","default":"{color.gray.800}"},"dark":{"type":"string","id":"#tokensConfig/docus/body/color/value/dark","default":"{color.gray.200}"}},"type":"object","default":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}}},"type":"object","default":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}}},"fontFamily":{"id":"#tokensConfig/docus/body/fontFamily","properties":{"value":{"type":"string","id":"#tokensConfig/docus/body/fontFamily/value","default":"{font.sans}"}},"type":"object","default":{"value":"{font.sans}"}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}}},"header":{"id":"#tokensConfig/docus/header","properties":{"height":{"id":"#tokensConfig/docus/header/height","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/height/value","default":"64px"}},"type":"object","default":{"value":"64px"}},"logo":{"id":"#tokensConfig/docus/header/logo","properties":{"height":{"id":"#tokensConfig/docus/header/logo/height","properties":{"value":{"id":"#tokensConfig/docus/header/logo/height/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/header/logo/height/value/initial","default":"{space.6}"},"sm":{"type":"string","id":"#tokensConfig/docus/header/logo/height/value/sm","default":"{space.7}"}},"type":"object","default":{"initial":"{space.6}","sm":"{space.7}"}}},"type":"object","default":{"value":{"initial":"{space.6}","sm":"{space.7}"}}}},"type":"object","default":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}}},"title":{"id":"#tokensConfig/docus/header/title","properties":{"fontSize":{"id":"#tokensConfig/docus/header/title/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/title/fontSize/value","default":"{fontSize.2xl}"}},"type":"object","default":{"value":"{fontSize.2xl}"}},"fontWeight":{"id":"#tokensConfig/docus/header/title/fontWeight","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/title/fontWeight/value","default":"{fontWeight.bold}"}},"type":"object","default":{"value":"{fontWeight.bold}"}},"color":{"id":"#tokensConfig/docus/header/title/color","properties":{"static":{"id":"#tokensConfig/docus/header/title/color/static","properties":{"value":{"id":"#tokensConfig/docus/header/title/color/static/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/header/title/color/static/value/initial","default":"{color.gray.900}"},"dark":{"type":"string","id":"#tokensConfig/docus/header/title/color/static/value/dark","default":"{color.gray.100}"}},"type":"object","default":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}}},"type":"object","default":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}}},"hover":{"id":"#tokensConfig/docus/header/title/color/hover","properties":{"value":{"type":"string","id":"#tokensConfig/docus/header/title/color/hover/value","default":"{color.primary.500}"}},"type":"object","default":{"value":"{color.primary.500}"}}},"type":"object","default":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"type":"object","default":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}}},"type":"object","default":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}}},"footer":{"id":"#tokensConfig/docus/footer","properties":{"height":{"id":"#tokensConfig/docus/footer/height","properties":{"value":{"id":"#tokensConfig/docus/footer/height/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/footer/height/value/initial","default":"145px"},"sm":{"type":"string","id":"#tokensConfig/docus/footer/height/value/sm","default":"100px"}},"type":"object","default":{"initial":"145px","sm":"100px"}}},"type":"object","default":{"value":{"initial":"145px","sm":"100px"}}},"padding":{"id":"#tokensConfig/docus/footer/padding","properties":{"value":{"type":"string","id":"#tokensConfig/docus/footer/padding/value","default":"{space.4} 0"}},"type":"object","default":{"value":"{space.4} 0"}}},"type":"object","default":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}}},"readableLine":{"id":"#tokensConfig/docus/readableLine","properties":{"value":{"type":"string","id":"#tokensConfig/docus/readableLine/value","default":"78ch"}},"type":"object","default":{"value":"78ch"}},"loadingBar":{"id":"#tokensConfig/docus/loadingBar","properties":{"height":{"id":"#tokensConfig/docus/loadingBar/height","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/height/value","default":"3px"}},"type":"object","default":{"value":"3px"}},"gradientColorStop1":{"id":"#tokensConfig/docus/loadingBar/gradientColorStop1","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/gradientColorStop1/value","default":"#00dc82"}},"type":"object","default":{"value":"#00dc82"}},"gradientColorStop2":{"id":"#tokensConfig/docus/loadingBar/gradientColorStop2","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/gradientColorStop2/value","default":"#34cdfe"}},"type":"object","default":{"value":"#34cdfe"}},"gradientColorStop3":{"id":"#tokensConfig/docus/loadingBar/gradientColorStop3","properties":{"value":{"type":"string","id":"#tokensConfig/docus/loadingBar/gradientColorStop3/value","default":"#0047e1"}},"type":"object","default":{"value":"#0047e1"}}},"type":"object","default":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}}},"search":{"id":"#tokensConfig/docus/search","properties":{"backdropFilter":{"id":"#tokensConfig/docus/search/backdropFilter","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/backdropFilter/value","default":"blur(24px)"}},"type":"object","default":{"value":"blur(24px)"}},"input":{"id":"#tokensConfig/docus/search/input","properties":{"borderRadius":{"id":"#tokensConfig/docus/search/input/borderRadius","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/borderRadius/value","default":"{radii.2xs}"}},"type":"object","default":{"value":"{radii.2xs}"}},"borderWidth":{"id":"#tokensConfig/docus/search/input/borderWidth","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/borderWidth/value","default":"1px"}},"type":"object","default":{"value":"1px"}},"borderStyle":{"id":"#tokensConfig/docus/search/input/borderStyle","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/borderStyle/value","default":"solid"}},"type":"object","default":{"value":"solid"}},"borderColor":{"id":"#tokensConfig/docus/search/input/borderColor","properties":{"value":{"id":"#tokensConfig/docus/search/input/borderColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/input/borderColor/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/docus/search/input/borderColor/value/dark","default":"transparent"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"transparent"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"transparent"}}},"fontSize":{"id":"#tokensConfig/docus/search/input/fontSize","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/fontSize/value","default":"{fontSize.sm}"}},"type":"object","default":{"value":"{fontSize.sm}"}},"gap":{"id":"#tokensConfig/docus/search/input/gap","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/gap/value","default":"{space.2}"}},"type":"object","default":{"value":"{space.2}"}},"padding":{"id":"#tokensConfig/docus/search/input/padding","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/input/padding/value","default":"{space.2} {space.4}"}},"type":"object","default":{"value":"{space.2} {space.4}"}},"backgroundColor":{"id":"#tokensConfig/docus/search/input/backgroundColor","properties":{"value":{"id":"#tokensConfig/docus/search/input/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/input/backgroundColor/value/initial","default":"{color.gray.200}"},"dark":{"type":"string","id":"#tokensConfig/docus/search/input/backgroundColor/value/dark","default":"{color.gray.800}"}},"type":"object","default":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"type":"object","default":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"type":"object","default":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"results":{"id":"#tokensConfig/docus/search/results","properties":{"window":{"id":"#tokensConfig/docus/search/results/window","properties":{"marginX":{"id":"#tokensConfig/docus/search/results/window/marginX","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/marginX/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginX/value/initial","default":"0"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginX/value/sm","default":"{space.4}"}},"type":"object","default":{"initial":"0","sm":"{space.4}"}}},"type":"object","default":{"value":{"initial":"0","sm":"{space.4}"}}},"borderRadius":{"id":"#tokensConfig/docus/search/results/window/borderRadius","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/borderRadius/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/borderRadius/value/initial","default":"none"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/borderRadius/value/sm","default":"{radii.xs}"}},"type":"object","default":{"initial":"none","sm":"{radii.xs}"}}},"type":"object","default":{"value":{"initial":"none","sm":"{radii.xs}"}}},"marginTop":{"id":"#tokensConfig/docus/search/results/window/marginTop","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/marginTop/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginTop/value/initial","default":"0"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/marginTop/value/sm","default":"20vh"}},"type":"object","default":{"initial":"0","sm":"20vh"}}},"type":"object","default":{"value":{"initial":"0","sm":"20vh"}}},"maxWidth":{"id":"#tokensConfig/docus/search/results/window/maxWidth","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/results/window/maxWidth/value","default":"640px"}},"type":"object","default":{"value":"640px"}},"maxHeight":{"id":"#tokensConfig/docus/search/results/window/maxHeight","properties":{"value":{"id":"#tokensConfig/docus/search/results/window/maxHeight/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/window/maxHeight/value/initial","default":"100%"},"sm":{"type":"string","id":"#tokensConfig/docus/search/results/window/maxHeight/value/sm","default":"320px"}},"type":"object","default":{"initial":"100%","sm":"320px"}}},"type":"object","default":{"value":{"initial":"100%","sm":"320px"}}}},"type":"object","default":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}}},"selected":{"id":"#tokensConfig/docus/search/results/selected","properties":{"backgroundColor":{"id":"#tokensConfig/docus/search/results/selected/backgroundColor","properties":{"value":{"id":"#tokensConfig/docus/search/results/selected/backgroundColor/value","properties":{"initial":{"type":"string","id":"#tokensConfig/docus/search/results/selected/backgroundColor/value/initial","default":"{color.gray.300}"},"dark":{"type":"string","id":"#tokensConfig/docus/search/results/selected/backgroundColor/value/dark","default":"{color.gray.700}"}},"type":"object","default":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"type":"object","default":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}}},"type":"object","default":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}}},"highlight":{"id":"#tokensConfig/docus/search/results/highlight","properties":{"color":{"id":"#tokensConfig/docus/search/results/highlight/color","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/results/highlight/color/value","default":"white"}},"type":"object","default":{"value":"white"}},"backgroundColor":{"id":"#tokensConfig/docus/search/results/highlight/backgroundColor","properties":{"value":{"type":"string","id":"#tokensConfig/docus/search/results/highlight/backgroundColor/value","default":"{color.primary.500}"}},"type":"object","default":{"value":"{color.primary.500}"}}},"type":"object","default":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}},"type":"object","default":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}},"type":"object","default":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}},"type":"object","default":{"body":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}},"header":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}},"readableLine":{"value":"78ch"},"loadingBar":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}}},"type":"object","default":{"media":{"xs":{"value":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)"}},"color":{"white":{"value":"#ffffff"},"black":{"value":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}},"green":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}},"red":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}},"blue":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}},"purple":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}},"pink":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}},"ruby":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}},"primary":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}},"shadow":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"width":{"screen":{"value":"100vw"}},"height":{"screen":{"value":"100vh"}},"shadow":{"xs":{"value":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent"}},"radii":{"none":{"value":"0px"},"2xs":{"value":"0.125rem"},"xs":{"value":"0.25rem"},"sm":{"value":"0.375rem"},"md":{"value":"0.5rem"},"lg":{"value":"0.75rem"},"xl":{"value":"1rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.75rem"},"full":{"value":"9999px"}},"size":{"0":{"value":"0px"},"2":{"value":"2px"},"4":{"value":"4px"},"6":{"value":"6px"},"8":{"value":"8px"},"12":{"value":"12px"},"16":{"value":"16px"},"20":{"value":"20px"},"24":{"value":"24px"},"32":{"value":"32px"},"40":{"value":"40px"},"48":{"value":"48px"},"56":{"value":"56px"},"64":{"value":"64px"},"80":{"value":"80px"},"104":{"value":"104px"},"200":{"value":"200px"},"xs":{"value":"20rem"},"sm":{"value":"24rem"},"md":{"value":"28rem"},"lg":{"value":"32rem"},"xl":{"value":"36rem"},"2xl":{"value":"42rem"},"3xl":{"value":"48rem"},"4xl":{"value":"56rem"},"5xl":{"value":"64rem"},"6xl":{"value":"72rem"},"7xl":{"value":"80rem"},"full":{"value":"100%"}},"space":{"0":{"value":"0px"},"1":{"value":"0.25rem"},"2":{"value":"0.5rem"},"3":{"value":"0.75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"11":{"value":"2.75rem"},"12":{"value":"3rem"},"14":{"value":"3.5rem"},"16":{"value":"4rem"},"20":{"value":"5rem"},"24":{"value":"6rem"},"28":{"value":"7rem"},"32":{"value":"8rem"},"36":{"value":"9rem"},"40":{"value":"10rem"},"44":{"value":"11rem"},"48":{"value":"12rem"},"52":{"value":"13rem"},"56":{"value":"14rem"},"60":{"value":"15rem"},"64":{"value":"16rem"},"72":{"value":"18rem"},"80":{"value":"20rem"},"96":{"value":"24rem"},"128":{"value":"32rem"},"px":{"value":"1px"},"rem":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}},"borderWidth":{"noBorder":{"value":"0"},"sm":{"value":"1px"},"md":{"value":"2px"},"lg":{"value":"3px"}},"opacity":{"noOpacity":{"value":"0"},"bright":{"value":"0.1"},"light":{"value":"0.15"},"soft":{"value":"0.3"},"medium":{"value":"0.5"},"high":{"value":"0.8"},"total":{"value":"1"}},"font":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"fontSize":{"xs":{"value":"0.75rem"},"sm":{"value":"0.875rem"},"base":{"value":"1rem"},"lg":{"value":"1.125rem"},"xl":{"value":"1.25rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.875rem"},"4xl":{"value":"2.25rem"},"5xl":{"value":"3rem"},"6xl":{"value":"3.75rem"},"7xl":{"value":"4.5rem"},"8xl":{"value":"6rem"},"9xl":{"value":"8rem"}},"letterSpacing":{"tighter":{"value":"-0.05em"},"tight":{"value":"-0.025em"},"normal":{"value":"0em"},"wide":{"value":"0.025em"},"wider":{"value":"0.05em"},"widest":{"value":"0.1em"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"text":{"xs":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}},"sm":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}},"base":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}},"lg":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}},"xl":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}},"2xl":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}},"3xl":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}},"4xl":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}},"5xl":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}},"6xl":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}},"elements":{"text":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"typography":{"body":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px"},"base":{"value":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}},"fontSize":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"font":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}},"color":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}},"prose":{"p":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}},"hr":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"docus":{"body":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}},"header":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}},"readableLine":{"value":"78ch"},"loadingBar":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}}},"default":{"media":{"xs":{"value":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)"}},"color":{"white":{"value":"#ffffff"},"black":{"value":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB"},"100":{"value":"#F6F5F4"},"200":{"value":"#ECEBE8"},"300":{"value":"#DBD9D3"},"400":{"value":"#ADA9A4"},"500":{"value":"#97948F"},"600":{"value":"#67635D"},"700":{"value":"#36332E"},"800":{"value":"#201E1B"},"900":{"value":"#121110"}},"green":{"50":{"value":"#ECFFF7"},"100":{"value":"#DEFFF1"},"200":{"value":"#C3FFE6"},"300":{"value":"#86FBCB"},"400":{"value":"#3CEEA5"},"500":{"value":"#0DD885"},"600":{"value":"#00B467"},"700":{"value":"#006037"},"800":{"value":"#002817"},"900":{"value":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE"},"100":{"value":"#FFF6D3"},"200":{"value":"#FFF0B1"},"300":{"value":"#FFE372"},"400":{"value":"#FFDC4E"},"500":{"value":"#FBCA05"},"600":{"value":"#CBA408"},"700":{"value":"#614E02"},"800":{"value":"#292100"},"900":{"value":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9"},"100":{"value":"#ffd3b3"},"200":{"value":"#ffbd8d"},"300":{"value":"#ffa666"},"400":{"value":"#ff9040"},"500":{"value":"#ff7a1a"},"600":{"value":"#e15e00"},"700":{"value":"#a94700"},"800":{"value":"#702f00"},"900":{"value":"#381800"}},"red":{"50":{"value":"#FFF9F8"},"100":{"value":"#FFF3F0"},"200":{"value":"#FFDED7"},"300":{"value":"#FFA692"},"400":{"value":"#FF7353"},"500":{"value":"#FF3B10"},"600":{"value":"#BB2402"},"700":{"value":"#701704"},"800":{"value":"#340A01"},"900":{"value":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc"},"100":{"value":"#eff0ba"},"200":{"value":"#e8e997"},"300":{"value":"#e0e274"},"400":{"value":"#d8da52"},"500":{"value":"#d0d32f"},"600":{"value":"#a8aa24"},"700":{"value":"#7e801b"},"800":{"value":"#545512"},"900":{"value":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8"},"100":{"value":"#aff4f0"},"200":{"value":"#87efe9"},"300":{"value":"#5fe9e1"},"400":{"value":"#36e4da"},"500":{"value":"#1cd1c6"},"600":{"value":"#16a79e"},"700":{"value":"#117d77"},"800":{"value":"#0b544f"},"900":{"value":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff"},"100":{"value":"#b3f1ff"},"200":{"value":"#8deaff"},"300":{"value":"#66e4ff"},"400":{"value":"#40ddff"},"500":{"value":"#1ad6ff"},"600":{"value":"#00b9e1"},"700":{"value":"#008aa9"},"800":{"value":"#005c70"},"900":{"value":"#002e38"}},"blue":{"50":{"value":"#F2FAFF"},"100":{"value":"#DFF3FF"},"200":{"value":"#C6EAFF"},"300":{"value":"#A1DDFF"},"400":{"value":"#64C7FF"},"500":{"value":"#1AADFF"},"600":{"value":"#0069A6"},"700":{"value":"#014267"},"800":{"value":"#002235"},"900":{"value":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff"},"100":{"value":"#b3cbff"},"200":{"value":"#8db0ff"},"300":{"value":"#6696ff"},"400":{"value":"#407cff"},"500":{"value":"#1a62ff"},"600":{"value":"#0047e1"},"700":{"value":"#0035a9"},"800":{"value":"#002370"},"900":{"value":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb"},"100":{"value":"#c0b7f7"},"200":{"value":"#a093f3"},"300":{"value":"#806ff0"},"400":{"value":"#614bec"},"500":{"value":"#4127e8"},"600":{"value":"#2c15c4"},"700":{"value":"#211093"},"800":{"value":"#160a62"},"900":{"value":"#0b0531"}},"purple":{"50":{"value":"#ead9ff"},"100":{"value":"#d5b3ff"},"200":{"value":"#c08dff"},"300":{"value":"#ab66ff"},"400":{"value":"#9640ff"},"500":{"value":"#811aff"},"600":{"value":"#6500e1"},"700":{"value":"#4c00a9"},"800":{"value":"#330070"},"900":{"value":"#190038"}},"pink":{"50":{"value":"#ffd9f2"},"100":{"value":"#ffb3e5"},"200":{"value":"#ff8dd8"},"300":{"value":"#ff66cc"},"400":{"value":"#ff40bf"},"500":{"value":"#ff1ab2"},"600":{"value":"#e10095"},"700":{"value":"#a90070"},"800":{"value":"#70004b"},"900":{"value":"#380025"}},"ruby":{"50":{"value":"#ffd9e4"},"100":{"value":"#ffb3c9"},"200":{"value":"#ff8dae"},"300":{"value":"#ff6694"},"400":{"value":"#ff4079"},"500":{"value":"#ff1a5e"},"600":{"value":"#e10043"},"700":{"value":"#a90032"},"800":{"value":"#700021"},"900":{"value":"#380011"}},"primary":{"50":{"value":"#FFF6E5"},"100":{"value":"#FFEDCC"},"200":{"value":"#FFDB99"},"300":{"value":"#FFC966"},"400":{"value":"#FFB833"},"500":{"value":"#FFA500"},"600":{"value":"#CC8500"},"700":{"value":"#996300"},"800":{"value":"#664200"},"900":{"value":"#332100"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}},"shadow":{"value":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"width":{"screen":{"value":"100vw"}},"height":{"screen":{"value":"100vh"}},"shadow":{"xs":{"value":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent"}},"radii":{"none":{"value":"0px"},"2xs":{"value":"0.125rem"},"xs":{"value":"0.25rem"},"sm":{"value":"0.375rem"},"md":{"value":"0.5rem"},"lg":{"value":"0.75rem"},"xl":{"value":"1rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.75rem"},"full":{"value":"9999px"}},"size":{"0":{"value":"0px"},"2":{"value":"2px"},"4":{"value":"4px"},"6":{"value":"6px"},"8":{"value":"8px"},"12":{"value":"12px"},"16":{"value":"16px"},"20":{"value":"20px"},"24":{"value":"24px"},"32":{"value":"32px"},"40":{"value":"40px"},"48":{"value":"48px"},"56":{"value":"56px"},"64":{"value":"64px"},"80":{"value":"80px"},"104":{"value":"104px"},"200":{"value":"200px"},"xs":{"value":"20rem"},"sm":{"value":"24rem"},"md":{"value":"28rem"},"lg":{"value":"32rem"},"xl":{"value":"36rem"},"2xl":{"value":"42rem"},"3xl":{"value":"48rem"},"4xl":{"value":"56rem"},"5xl":{"value":"64rem"},"6xl":{"value":"72rem"},"7xl":{"value":"80rem"},"full":{"value":"100%"}},"space":{"0":{"value":"0px"},"1":{"value":"0.25rem"},"2":{"value":"0.5rem"},"3":{"value":"0.75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"11":{"value":"2.75rem"},"12":{"value":"3rem"},"14":{"value":"3.5rem"},"16":{"value":"4rem"},"20":{"value":"5rem"},"24":{"value":"6rem"},"28":{"value":"7rem"},"32":{"value":"8rem"},"36":{"value":"9rem"},"40":{"value":"10rem"},"44":{"value":"11rem"},"48":{"value":"12rem"},"52":{"value":"13rem"},"56":{"value":"14rem"},"60":{"value":"15rem"},"64":{"value":"16rem"},"72":{"value":"18rem"},"80":{"value":"20rem"},"96":{"value":"24rem"},"128":{"value":"32rem"},"px":{"value":"1px"},"rem":{"125":{"value":"0.125rem"},"375":{"value":"0.375rem"},"625":{"value":"0.625rem"},"875":{"value":"0.875rem"}}},"borderWidth":{"noBorder":{"value":"0"},"sm":{"value":"1px"},"md":{"value":"2px"},"lg":{"value":"3px"}},"opacity":{"noOpacity":{"value":"0"},"bright":{"value":"0.1"},"light":{"value":"0.15"},"soft":{"value":"0.3"},"medium":{"value":"0.5"},"high":{"value":"0.8"},"total":{"value":"1"}},"font":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"fontSize":{"xs":{"value":"0.75rem"},"sm":{"value":"0.875rem"},"base":{"value":"1rem"},"lg":{"value":"1.125rem"},"xl":{"value":"1.25rem"},"2xl":{"value":"1.5rem"},"3xl":{"value":"1.875rem"},"4xl":{"value":"2.25rem"},"5xl":{"value":"3rem"},"6xl":{"value":"3.75rem"},"7xl":{"value":"4.5rem"},"8xl":{"value":"6rem"},"9xl":{"value":"8rem"}},"letterSpacing":{"tighter":{"value":"-0.05em"},"tight":{"value":"-0.025em"},"normal":{"value":"0em"},"wide":{"value":"0.025em"},"wider":{"value":"0.05em"},"widest":{"value":"0.1em"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"text":{"xs":{"fontSize":{"value":"{fontSize.xs}"},"lineHeight":{"value":"{lead.4}"}},"sm":{"fontSize":{"value":"{fontSize.sm}"},"lineHeight":{"value":"{lead.5}"}},"base":{"fontSize":{"value":"{fontSize.base}"},"lineHeight":{"value":"{lead.6}"}},"lg":{"fontSize":{"value":"{fontSize.lg}"},"lineHeight":{"value":"{lead.7}"}},"xl":{"fontSize":{"value":"{fontSize.xl}"},"lineHeight":{"value":"{lead.7}"}},"2xl":{"fontSize":{"value":"{fontSize.2xl}"},"lineHeight":{"value":"{lead.8}"}},"3xl":{"fontSize":{"value":"{fontSize.3xl}"},"lineHeight":{"value":"{lead.9}"}},"4xl":{"fontSize":{"value":"{fontSize.4xl}"},"lineHeight":{"value":"{lead.10}"}},"5xl":{"fontSize":{"value":"{fontSize.5xl}"},"lineHeight":{"value":"{lead.none}"}},"6xl":{"fontSize":{"value":"{fontSize.6xl}"},"lineHeight":{"value":"{lead.none}"}}},"elements":{"text":{"primary":{"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem"},"padding":{"mobile":{"value":"{space.4}"},"xs":{"value":"{space.4}"},"sm":{"value":"{space.6}"},"md":{"value":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"typography":{"body":{"color":{"value":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px"},"base":{"value":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em"},"wide":{"value":"0.025em"}},"fontSize":{"xs":{"value":"12px"},"sm":{"value":"14px"},"base":{"value":"16px"},"lg":{"value":"18px"},"xl":{"value":"20px"},"2xl":{"value":"24px"},"3xl":{"value":"30px"},"4xl":{"value":"36px"},"5xl":{"value":"48px"},"6xl":{"value":"60px"},"7xl":{"value":"72px"},"8xl":{"value":"96px"},"9xl":{"value":"128px"}},"fontWeight":{"thin":{"value":"100"},"extralight":{"value":"200"},"light":{"value":"300"},"normal":{"value":"400"},"medium":{"value":"500"},"semibold":{"value":"600"},"bold":{"value":"700"},"extrabold":{"value":"800"},"black":{"value":"900"}},"lead":{"1":{"value":".025rem"},"2":{"value":".5rem"},"3":{"value":".75rem"},"4":{"value":"1rem"},"5":{"value":"1.25rem"},"6":{"value":"1.5rem"},"7":{"value":"1.75rem"},"8":{"value":"2rem"},"9":{"value":"2.25rem"},"10":{"value":"2.5rem"},"none":{"value":"1"},"tight":{"value":"1.25"},"snug":{"value":"1.375"},"normal":{"value":"1.5"},"relaxed":{"value":"1.625"},"loose":{"value":"2"}},"font":{"display":{"value":"{font.sans}"},"body":{"value":"{font.sans}"},"code":{"value":"{font.mono}"}},"color":{"primary":{"50":{"value":"{color.primary.50}"},"100":{"value":"{color.primary.100}"},"200":{"value":"{color.primary.200}"},"300":{"value":"{color.primary.300}"},"400":{"value":"{color.primary.400}"},"500":{"value":"{color.primary.500}"},"600":{"value":"{color.primary.600}"},"700":{"value":"{color.primary.700}"},"800":{"value":"{color.primary.800}"},"900":{"value":"{color.primary.900}"}},"secondary":{"50":{"value":"{color.gray.50}"},"100":{"value":"{color.gray.100}"},"200":{"value":"{color.gray.200}"},"300":{"value":"{color.gray.300}"},"400":{"value":"{color.gray.400}"},"500":{"value":"{color.gray.500}"},"600":{"value":"{color.gray.600}"},"700":{"value":"{color.gray.700}"},"800":{"value":"{color.gray.800}"},"900":{"value":"{color.gray.900}"}}}},"prose":{"p":{"fontSize":{"value":"{typography.fontSize.base}"},"lineHeight":{"value":"{typography.lead.normal}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem"},"fontSize":{"value":"{typography.fontSize.5xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.4xl}"},"lineHeight":{"value":"{typography.lead.tight}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.3xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.2xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"{typography.letterSpacing.tight}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.xl}"},"lineHeight":{"value":"{typography.lead.snug}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem"},"fontSize":{"value":"{typography.fontSize.lg}"},"lineHeight":{"value":"{typography.lead.normal}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"iconSize":{"value":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px"},"style":{"static":{"value":"dashed"},"hover":{"value":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px"}},"fontWeight":{"value":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none"}},"code":{"border":{"width":{"value":"{prose.a.border.width}"},"style":{"value":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal"},"margin":{"value":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside"}},"hr":{"margin":{"value":"{typography.verticalMargin.base} 0"},"style":{"value":"solid"},"width":{"value":"1px"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start"},"fontSize":{"value":"{typography.fontSize.sm}"},"lineHeight":{"value":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px"},"style":{"value":"dashed"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"{typography.fontSize.sm}"},"margin":{"value":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px"},"style":{"value":"solid"},"color":{"value":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"{typography.fontSize.sm}"},"fontWeight":{"value":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"docus":{"body":{"backgroundColor":{"value":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"{font.sans}"}},"header":{"height":{"value":"64px"},"logo":{"height":{"value":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"{fontSize.2xl}"},"fontWeight":{"value":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"}},"padding":{"value":"{space.4} 0"}},"readableLine":{"value":"78ch"},"loadingBar":{"height":{"value":"3px"},"gradientColorStop1":{"value":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)"},"input":{"borderRadius":{"value":"{radii.2xs}"},"borderWidth":{"value":"1px"},"borderStyle":{"value":"solid"},"borderColor":{"value":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"{fontSize.sm}"},"gap":{"value":"{space.2}"},"padding":{"value":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white"},"backgroundColor":{"value":"{color.primary.500}"}}}}}}},"tokensConfig":{"media":{"xs":{"value":"(min-width: 475px)","variable":"var(--media-xs)","raw":"(min-width: 475px)"},"sm":{"value":"(min-width: 640px)","variable":"var(--media-sm)","raw":"(min-width: 640px)"},"md":{"value":"(min-width: 768px)","variable":"var(--media-md)","raw":"(min-width: 768px)"},"lg":{"value":"(min-width: 1024px)","variable":"var(--media-lg)","raw":"(min-width: 1024px)"},"xl":{"value":"(min-width: 1280px)","variable":"var(--media-xl)","raw":"(min-width: 1280px)"},"2xl":{"value":"(min-width: 1536px)","variable":"var(--media-2xl)","raw":"(min-width: 1536px)"},"rm":{"value":"(prefers-reduced-motion: reduce)","variable":"var(--media-rm)","raw":"(prefers-reduced-motion: reduce)"},"landscape":{"value":"only screen and (orientation: landscape)","variable":"var(--media-landscape)","raw":"only screen and (orientation: landscape)"},"portrait":{"value":"only screen and (orientation: portrait)","variable":"var(--media-portrait)","raw":"only screen and (orientation: portrait)"}},"color":{"white":{"value":"#ffffff","variable":"var(--color-white)","raw":"#ffffff"},"black":{"value":"#0B0A0A","variable":"var(--color-black)","raw":"#0B0A0A"},"gray":{"50":{"value":"#FBFBFB","variable":"var(--color-gray-50)","raw":"#FBFBFB"},"100":{"value":"#F6F5F4","variable":"var(--color-gray-100)","raw":"#F6F5F4"},"200":{"value":"#ECEBE8","variable":"var(--color-gray-200)","raw":"#ECEBE8"},"300":{"value":"#DBD9D3","variable":"var(--color-gray-300)","raw":"#DBD9D3"},"400":{"value":"#ADA9A4","variable":"var(--color-gray-400)","raw":"#ADA9A4"},"500":{"value":"#97948F","variable":"var(--color-gray-500)","raw":"#97948F"},"600":{"value":"#67635D","variable":"var(--color-gray-600)","raw":"#67635D"},"700":{"value":"#36332E","variable":"var(--color-gray-700)","raw":"#36332E"},"800":{"value":"#201E1B","variable":"var(--color-gray-800)","raw":"#201E1B"},"900":{"value":"#121110","variable":"var(--color-gray-900)","raw":"#121110"}},"green":{"50":{"value":"#ECFFF7","variable":"var(--color-green-50)","raw":"#ECFFF7"},"100":{"value":"#DEFFF1","variable":"var(--color-green-100)","raw":"#DEFFF1"},"200":{"value":"#C3FFE6","variable":"var(--color-green-200)","raw":"#C3FFE6"},"300":{"value":"#86FBCB","variable":"var(--color-green-300)","raw":"#86FBCB"},"400":{"value":"#3CEEA5","variable":"var(--color-green-400)","raw":"#3CEEA5"},"500":{"value":"#0DD885","variable":"var(--color-green-500)","raw":"#0DD885"},"600":{"value":"#00B467","variable":"var(--color-green-600)","raw":"#00B467"},"700":{"value":"#006037","variable":"var(--color-green-700)","raw":"#006037"},"800":{"value":"#002817","variable":"var(--color-green-800)","raw":"#002817"},"900":{"value":"#00190F","variable":"var(--color-green-900)","raw":"#00190F"}},"yellow":{"50":{"value":"#FFFCEE","variable":"var(--color-yellow-50)","raw":"#FFFCEE"},"100":{"value":"#FFF6D3","variable":"var(--color-yellow-100)","raw":"#FFF6D3"},"200":{"value":"#FFF0B1","variable":"var(--color-yellow-200)","raw":"#FFF0B1"},"300":{"value":"#FFE372","variable":"var(--color-yellow-300)","raw":"#FFE372"},"400":{"value":"#FFDC4E","variable":"var(--color-yellow-400)","raw":"#FFDC4E"},"500":{"value":"#FBCA05","variable":"var(--color-yellow-500)","raw":"#FBCA05"},"600":{"value":"#CBA408","variable":"var(--color-yellow-600)","raw":"#CBA408"},"700":{"value":"#614E02","variable":"var(--color-yellow-700)","raw":"#614E02"},"800":{"value":"#292100","variable":"var(--color-yellow-800)","raw":"#292100"},"900":{"value":"#1B1500","variable":"var(--color-yellow-900)","raw":"#1B1500"}},"orange":{"50":{"value":"#ffe9d9","variable":"var(--color-orange-50)","raw":"#ffe9d9"},"100":{"value":"#ffd3b3","variable":"var(--color-orange-100)","raw":"#ffd3b3"},"200":{"value":"#ffbd8d","variable":"var(--color-orange-200)","raw":"#ffbd8d"},"300":{"value":"#ffa666","variable":"var(--color-orange-300)","raw":"#ffa666"},"400":{"value":"#ff9040","variable":"var(--color-orange-400)","raw":"#ff9040"},"500":{"value":"#ff7a1a","variable":"var(--color-orange-500)","raw":"#ff7a1a"},"600":{"value":"#e15e00","variable":"var(--color-orange-600)","raw":"#e15e00"},"700":{"value":"#a94700","variable":"var(--color-orange-700)","raw":"#a94700"},"800":{"value":"#702f00","variable":"var(--color-orange-800)","raw":"#702f00"},"900":{"value":"#381800","variable":"var(--color-orange-900)","raw":"#381800"}},"red":{"50":{"value":"#FFF9F8","variable":"var(--color-red-50)","raw":"#FFF9F8"},"100":{"value":"#FFF3F0","variable":"var(--color-red-100)","raw":"#FFF3F0"},"200":{"value":"#FFDED7","variable":"var(--color-red-200)","raw":"#FFDED7"},"300":{"value":"#FFA692","variable":"var(--color-red-300)","raw":"#FFA692"},"400":{"value":"#FF7353","variable":"var(--color-red-400)","raw":"#FF7353"},"500":{"value":"#FF3B10","variable":"var(--color-red-500)","raw":"#FF3B10"},"600":{"value":"#BB2402","variable":"var(--color-red-600)","raw":"#BB2402"},"700":{"value":"#701704","variable":"var(--color-red-700)","raw":"#701704"},"800":{"value":"#340A01","variable":"var(--color-red-800)","raw":"#340A01"},"900":{"value":"#1C0301","variable":"var(--color-red-900)","raw":"#1C0301"}},"pear":{"50":{"value":"#f7f8dc","variable":"var(--color-pear-50)","raw":"#f7f8dc"},"100":{"value":"#eff0ba","variable":"var(--color-pear-100)","raw":"#eff0ba"},"200":{"value":"#e8e997","variable":"var(--color-pear-200)","raw":"#e8e997"},"300":{"value":"#e0e274","variable":"var(--color-pear-300)","raw":"#e0e274"},"400":{"value":"#d8da52","variable":"var(--color-pear-400)","raw":"#d8da52"},"500":{"value":"#d0d32f","variable":"var(--color-pear-500)","raw":"#d0d32f"},"600":{"value":"#a8aa24","variable":"var(--color-pear-600)","raw":"#a8aa24"},"700":{"value":"#7e801b","variable":"var(--color-pear-700)","raw":"#7e801b"},"800":{"value":"#545512","variable":"var(--color-pear-800)","raw":"#545512"},"900":{"value":"#2a2b09","variable":"var(--color-pear-900)","raw":"#2a2b09"}},"teal":{"50":{"value":"#d7faf8","variable":"var(--color-teal-50)","raw":"#d7faf8"},"100":{"value":"#aff4f0","variable":"var(--color-teal-100)","raw":"#aff4f0"},"200":{"value":"#87efe9","variable":"var(--color-teal-200)","raw":"#87efe9"},"300":{"value":"#5fe9e1","variable":"var(--color-teal-300)","raw":"#5fe9e1"},"400":{"value":"#36e4da","variable":"var(--color-teal-400)","raw":"#36e4da"},"500":{"value":"#1cd1c6","variable":"var(--color-teal-500)","raw":"#1cd1c6"},"600":{"value":"#16a79e","variable":"var(--color-teal-600)","raw":"#16a79e"},"700":{"value":"#117d77","variable":"var(--color-teal-700)","raw":"#117d77"},"800":{"value":"#0b544f","variable":"var(--color-teal-800)","raw":"#0b544f"},"900":{"value":"#062a28","variable":"var(--color-teal-900)","raw":"#062a28"}},"lightblue":{"50":{"value":"#d9f8ff","variable":"var(--color-lightblue-50)","raw":"#d9f8ff"},"100":{"value":"#b3f1ff","variable":"var(--color-lightblue-100)","raw":"#b3f1ff"},"200":{"value":"#8deaff","variable":"var(--color-lightblue-200)","raw":"#8deaff"},"300":{"value":"#66e4ff","variable":"var(--color-lightblue-300)","raw":"#66e4ff"},"400":{"value":"#40ddff","variable":"var(--color-lightblue-400)","raw":"#40ddff"},"500":{"value":"#1ad6ff","variable":"var(--color-lightblue-500)","raw":"#1ad6ff"},"600":{"value":"#00b9e1","variable":"var(--color-lightblue-600)","raw":"#00b9e1"},"700":{"value":"#008aa9","variable":"var(--color-lightblue-700)","raw":"#008aa9"},"800":{"value":"#005c70","variable":"var(--color-lightblue-800)","raw":"#005c70"},"900":{"value":"#002e38","variable":"var(--color-lightblue-900)","raw":"#002e38"}},"blue":{"50":{"value":"#F2FAFF","variable":"var(--color-blue-50)","raw":"#F2FAFF"},"100":{"value":"#DFF3FF","variable":"var(--color-blue-100)","raw":"#DFF3FF"},"200":{"value":"#C6EAFF","variable":"var(--color-blue-200)","raw":"#C6EAFF"},"300":{"value":"#A1DDFF","variable":"var(--color-blue-300)","raw":"#A1DDFF"},"400":{"value":"#64C7FF","variable":"var(--color-blue-400)","raw":"#64C7FF"},"500":{"value":"#1AADFF","variable":"var(--color-blue-500)","raw":"#1AADFF"},"600":{"value":"#0069A6","variable":"var(--color-blue-600)","raw":"#0069A6"},"700":{"value":"#014267","variable":"var(--color-blue-700)","raw":"#014267"},"800":{"value":"#002235","variable":"var(--color-blue-800)","raw":"#002235"},"900":{"value":"#00131D","variable":"var(--color-blue-900)","raw":"#00131D"}},"indigoblue":{"50":{"value":"#d9e5ff","variable":"var(--color-indigoblue-50)","raw":"#d9e5ff"},"100":{"value":"#b3cbff","variable":"var(--color-indigoblue-100)","raw":"#b3cbff"},"200":{"value":"#8db0ff","variable":"var(--color-indigoblue-200)","raw":"#8db0ff"},"300":{"value":"#6696ff","variable":"var(--color-indigoblue-300)","raw":"#6696ff"},"400":{"value":"#407cff","variable":"var(--color-indigoblue-400)","raw":"#407cff"},"500":{"value":"#1a62ff","variable":"var(--color-indigoblue-500)","raw":"#1a62ff"},"600":{"value":"#0047e1","variable":"var(--color-indigoblue-600)","raw":"#0047e1"},"700":{"value":"#0035a9","variable":"var(--color-indigoblue-700)","raw":"#0035a9"},"800":{"value":"#002370","variable":"var(--color-indigoblue-800)","raw":"#002370"},"900":{"value":"#001238","variable":"var(--color-indigoblue-900)","raw":"#001238"}},"royalblue":{"50":{"value":"#dfdbfb","variable":"var(--color-royalblue-50)","raw":"#dfdbfb"},"100":{"value":"#c0b7f7","variable":"var(--color-royalblue-100)","raw":"#c0b7f7"},"200":{"value":"#a093f3","variable":"var(--color-royalblue-200)","raw":"#a093f3"},"300":{"value":"#806ff0","variable":"var(--color-royalblue-300)","raw":"#806ff0"},"400":{"value":"#614bec","variable":"var(--color-royalblue-400)","raw":"#614bec"},"500":{"value":"#4127e8","variable":"var(--color-royalblue-500)","raw":"#4127e8"},"600":{"value":"#2c15c4","variable":"var(--color-royalblue-600)","raw":"#2c15c4"},"700":{"value":"#211093","variable":"var(--color-royalblue-700)","raw":"#211093"},"800":{"value":"#160a62","variable":"var(--color-royalblue-800)","raw":"#160a62"},"900":{"value":"#0b0531","variable":"var(--color-royalblue-900)","raw":"#0b0531"}},"purple":{"50":{"value":"#ead9ff","variable":"var(--color-purple-50)","raw":"#ead9ff"},"100":{"value":"#d5b3ff","variable":"var(--color-purple-100)","raw":"#d5b3ff"},"200":{"value":"#c08dff","variable":"var(--color-purple-200)","raw":"#c08dff"},"300":{"value":"#ab66ff","variable":"var(--color-purple-300)","raw":"#ab66ff"},"400":{"value":"#9640ff","variable":"var(--color-purple-400)","raw":"#9640ff"},"500":{"value":"#811aff","variable":"var(--color-purple-500)","raw":"#811aff"},"600":{"value":"#6500e1","variable":"var(--color-purple-600)","raw":"#6500e1"},"700":{"value":"#4c00a9","variable":"var(--color-purple-700)","raw":"#4c00a9"},"800":{"value":"#330070","variable":"var(--color-purple-800)","raw":"#330070"},"900":{"value":"#190038","variable":"var(--color-purple-900)","raw":"#190038"}},"pink":{"50":{"value":"#ffd9f2","variable":"var(--color-pink-50)","raw":"#ffd9f2"},"100":{"value":"#ffb3e5","variable":"var(--color-pink-100)","raw":"#ffb3e5"},"200":{"value":"#ff8dd8","variable":"var(--color-pink-200)","raw":"#ff8dd8"},"300":{"value":"#ff66cc","variable":"var(--color-pink-300)","raw":"#ff66cc"},"400":{"value":"#ff40bf","variable":"var(--color-pink-400)","raw":"#ff40bf"},"500":{"value":"#ff1ab2","variable":"var(--color-pink-500)","raw":"#ff1ab2"},"600":{"value":"#e10095","variable":"var(--color-pink-600)","raw":"#e10095"},"700":{"value":"#a90070","variable":"var(--color-pink-700)","raw":"#a90070"},"800":{"value":"#70004b","variable":"var(--color-pink-800)","raw":"#70004b"},"900":{"value":"#380025","variable":"var(--color-pink-900)","raw":"#380025"}},"ruby":{"50":{"value":"#ffd9e4","variable":"var(--color-ruby-50)","raw":"#ffd9e4"},"100":{"value":"#ffb3c9","variable":"var(--color-ruby-100)","raw":"#ffb3c9"},"200":{"value":"#ff8dae","variable":"var(--color-ruby-200)","raw":"#ff8dae"},"300":{"value":"#ff6694","variable":"var(--color-ruby-300)","raw":"#ff6694"},"400":{"value":"#ff4079","variable":"var(--color-ruby-400)","raw":"#ff4079"},"500":{"value":"#ff1a5e","variable":"var(--color-ruby-500)","raw":"#ff1a5e"},"600":{"value":"#e10043","variable":"var(--color-ruby-600)","raw":"#e10043"},"700":{"value":"#a90032","variable":"var(--color-ruby-700)","raw":"#a90032"},"800":{"value":"#700021","variable":"var(--color-ruby-800)","raw":"#700021"},"900":{"value":"#380011","variable":"var(--color-ruby-900)","raw":"#380011"}},"primary":{"50":{"value":"#FFF6E5","variable":"var(--color-primary-50)","raw":"#FFF6E5"},"100":{"value":"#FFEDCC","variable":"var(--color-primary-100)","raw":"#FFEDCC"},"200":{"value":"#FFDB99","variable":"var(--color-primary-200)","raw":"#FFDB99"},"300":{"value":"#FFC966","variable":"var(--color-primary-300)","raw":"#FFC966"},"400":{"value":"#FFB833","variable":"var(--color-primary-400)","raw":"#FFB833"},"500":{"value":"#FFA500","variable":"var(--color-primary-500)","raw":"#FFA500"},"600":{"value":"#CC8500","variable":"var(--color-primary-600)","raw":"#CC8500"},"700":{"value":"#996300","variable":"var(--color-primary-700)","raw":"#996300"},"800":{"value":"#664200","variable":"var(--color-primary-800)","raw":"#664200"},"900":{"value":"#332100","variable":"var(--color-primary-900)","raw":"#332100"}},"secondary":{"50":{"value":"var(--color-gray-50)","variable":"var(--color-secondary-50)","raw":"{color.gray.50}"},"100":{"value":"var(--color-gray-100)","variable":"var(--color-secondary-100)","raw":"{color.gray.100}"},"200":{"value":"var(--color-gray-200)","variable":"var(--color-secondary-200)","raw":"{color.gray.200}"},"300":{"value":"var(--color-gray-300)","variable":"var(--color-secondary-300)","raw":"{color.gray.300}"},"400":{"value":"var(--color-gray-400)","variable":"var(--color-secondary-400)","raw":"{color.gray.400}"},"500":{"value":"var(--color-gray-500)","variable":"var(--color-secondary-500)","raw":"{color.gray.500}"},"600":{"value":"var(--color-gray-600)","variable":"var(--color-secondary-600)","raw":"{color.gray.600}"},"700":{"value":"var(--color-gray-700)","variable":"var(--color-secondary-700)","raw":"{color.gray.700}"},"800":{"value":"var(--color-gray-800)","variable":"var(--color-secondary-800)","raw":"{color.gray.800}"},"900":{"value":"var(--color-gray-900)","variable":"var(--color-secondary-900)","raw":"{color.gray.900}"}},"shadow":{"value":{"initial":"var(--color-gray-400)","dark":"var(--color-gray-800)"},"variable":"var(--color-shadow)","raw":{"initial":"{color.gray.400}","dark":"{color.gray.800}"}}},"width":{"screen":{"value":"100vw","variable":"var(--width-screen)","raw":"100vw"}},"height":{"screen":{"value":"100vh","variable":"var(--height-screen)","raw":"100vh"}},"shadow":{"xs":{"value":"0px 1px 2px 0px var(--color-shadow)","variable":"var(--shadow-xs)","raw":"0px 1px 2px 0px {color.shadow}"},"sm":{"value":"0px 1px 3px 0px var(--color-shadow), 0px 1px 2px -1px var(--color-shadow)","variable":"var(--shadow-sm)","raw":"0px 1px 3px 0px {color.shadow}, 0px 1px 2px -1px {color.shadow}"},"md":{"value":"0px 4px 6px -1px var(--color-shadow), 0px 2px 4px -2px var(--color-shadow)","variable":"var(--shadow-md)","raw":"0px 4px 6px -1px {color.shadow}, 0px 2px 4px -2px {color.shadow}"},"lg":{"value":"0px 10px 15px -3px var(--color-shadow), 0px 4px 6px -4px var(--color-shadow)","variable":"var(--shadow-lg)","raw":"0px 10px 15px -3px {color.shadow}, 0px 4px 6px -4px {color.shadow}"},"xl":{"value":"0px 20px 25px -5px var(--color-shadow), 0px 8px 10px -6px var(--color-shadow)","variable":"var(--shadow-xl)","raw":"0px 20px 25px -5px {color.shadow}, 0px 8px 10px -6px {color.shadow}"},"2xl":{"value":"0px 25px 50px -12px var(--color-shadow)","variable":"var(--shadow-2xl)","raw":"0px 25px 50px -12px {color.shadow}"},"none":{"value":"0px 0px 0px 0px transparent","variable":"var(--shadow-none)","raw":"0px 0px 0px 0px transparent"}},"radii":{"none":{"value":"0px","variable":"var(--radii-none)","raw":"0px"},"2xs":{"value":"0.125rem","variable":"var(--radii-2xs)","raw":"0.125rem"},"xs":{"value":"0.25rem","variable":"var(--radii-xs)","raw":"0.25rem"},"sm":{"value":"0.375rem","variable":"var(--radii-sm)","raw":"0.375rem"},"md":{"value":"0.5rem","variable":"var(--radii-md)","raw":"0.5rem"},"lg":{"value":"0.75rem","variable":"var(--radii-lg)","raw":"0.75rem"},"xl":{"value":"1rem","variable":"var(--radii-xl)","raw":"1rem"},"2xl":{"value":"1.5rem","variable":"var(--radii-2xl)","raw":"1.5rem"},"3xl":{"value":"1.75rem","variable":"var(--radii-3xl)","raw":"1.75rem"},"full":{"value":"9999px","variable":"var(--radii-full)","raw":"9999px"}},"size":{"0":{"value":"0px","variable":"var(--size-0)","raw":"0px"},"2":{"value":"2px","variable":"var(--size-2)","raw":"2px"},"4":{"value":"4px","variable":"var(--size-4)","raw":"4px"},"6":{"value":"6px","variable":"var(--size-6)","raw":"6px"},"8":{"value":"8px","variable":"var(--size-8)","raw":"8px"},"12":{"value":"12px","variable":"var(--size-12)","raw":"12px"},"16":{"value":"16px","variable":"var(--size-16)","raw":"16px"},"20":{"value":"20px","variable":"var(--size-20)","raw":"20px"},"24":{"value":"24px","variable":"var(--size-24)","raw":"24px"},"32":{"value":"32px","variable":"var(--size-32)","raw":"32px"},"40":{"value":"40px","variable":"var(--size-40)","raw":"40px"},"48":{"value":"48px","variable":"var(--size-48)","raw":"48px"},"56":{"value":"56px","variable":"var(--size-56)","raw":"56px"},"64":{"value":"64px","variable":"var(--size-64)","raw":"64px"},"80":{"value":"80px","variable":"var(--size-80)","raw":"80px"},"104":{"value":"104px","variable":"var(--size-104)","raw":"104px"},"200":{"value":"200px","variable":"var(--size-200)","raw":"200px"},"xs":{"value":"20rem","variable":"var(--size-xs)","raw":"20rem"},"sm":{"value":"24rem","variable":"var(--size-sm)","raw":"24rem"},"md":{"value":"28rem","variable":"var(--size-md)","raw":"28rem"},"lg":{"value":"32rem","variable":"var(--size-lg)","raw":"32rem"},"xl":{"value":"36rem","variable":"var(--size-xl)","raw":"36rem"},"2xl":{"value":"42rem","variable":"var(--size-2xl)","raw":"42rem"},"3xl":{"value":"48rem","variable":"var(--size-3xl)","raw":"48rem"},"4xl":{"value":"56rem","variable":"var(--size-4xl)","raw":"56rem"},"5xl":{"value":"64rem","variable":"var(--size-5xl)","raw":"64rem"},"6xl":{"value":"72rem","variable":"var(--size-6xl)","raw":"72rem"},"7xl":{"value":"80rem","variable":"var(--size-7xl)","raw":"80rem"},"full":{"value":"100%","variable":"var(--size-full)","raw":"100%"}},"space":{"0":{"value":"0px","variable":"var(--space-0)","raw":"0px"},"1":{"value":"0.25rem","variable":"var(--space-1)","raw":"0.25rem"},"2":{"value":"0.5rem","variable":"var(--space-2)","raw":"0.5rem"},"3":{"value":"0.75rem","variable":"var(--space-3)","raw":"0.75rem"},"4":{"value":"1rem","variable":"var(--space-4)","raw":"1rem"},"5":{"value":"1.25rem","variable":"var(--space-5)","raw":"1.25rem"},"6":{"value":"1.5rem","variable":"var(--space-6)","raw":"1.5rem"},"7":{"value":"1.75rem","variable":"var(--space-7)","raw":"1.75rem"},"8":{"value":"2rem","variable":"var(--space-8)","raw":"2rem"},"9":{"value":"2.25rem","variable":"var(--space-9)","raw":"2.25rem"},"10":{"value":"2.5rem","variable":"var(--space-10)","raw":"2.5rem"},"11":{"value":"2.75rem","variable":"var(--space-11)","raw":"2.75rem"},"12":{"value":"3rem","variable":"var(--space-12)","raw":"3rem"},"14":{"value":"3.5rem","variable":"var(--space-14)","raw":"3.5rem"},"16":{"value":"4rem","variable":"var(--space-16)","raw":"4rem"},"20":{"value":"5rem","variable":"var(--space-20)","raw":"5rem"},"24":{"value":"6rem","variable":"var(--space-24)","raw":"6rem"},"28":{"value":"7rem","variable":"var(--space-28)","raw":"7rem"},"32":{"value":"8rem","variable":"var(--space-32)","raw":"8rem"},"36":{"value":"9rem","variable":"var(--space-36)","raw":"9rem"},"40":{"value":"10rem","variable":"var(--space-40)","raw":"10rem"},"44":{"value":"11rem","variable":"var(--space-44)","raw":"11rem"},"48":{"value":"12rem","variable":"var(--space-48)","raw":"12rem"},"52":{"value":"13rem","variable":"var(--space-52)","raw":"13rem"},"56":{"value":"14rem","variable":"var(--space-56)","raw":"14rem"},"60":{"value":"15rem","variable":"var(--space-60)","raw":"15rem"},"64":{"value":"16rem","variable":"var(--space-64)","raw":"16rem"},"72":{"value":"18rem","variable":"var(--space-72)","raw":"18rem"},"80":{"value":"20rem","variable":"var(--space-80)","raw":"20rem"},"96":{"value":"24rem","variable":"var(--space-96)","raw":"24rem"},"128":{"value":"32rem","variable":"var(--space-128)","raw":"32rem"},"px":{"value":"1px","variable":"var(--space-px)","raw":"1px"},"rem":{"125":{"value":"0.125rem","variable":"var(--space-rem-125)","raw":"0.125rem"},"375":{"value":"0.375rem","variable":"var(--space-rem-375)","raw":"0.375rem"},"625":{"value":"0.625rem","variable":"var(--space-rem-625)","raw":"0.625rem"},"875":{"value":"0.875rem","variable":"var(--space-rem-875)","raw":"0.875rem"}}},"borderWidth":{"noBorder":{"value":"0","variable":"var(--borderWidth-noBorder)","raw":"0"},"sm":{"value":"1px","variable":"var(--borderWidth-sm)","raw":"1px"},"md":{"value":"2px","variable":"var(--borderWidth-md)","raw":"2px"},"lg":{"value":"3px","variable":"var(--borderWidth-lg)","raw":"3px"}},"opacity":{"noOpacity":{"value":"0","variable":"var(--opacity-noOpacity)","raw":"0"},"bright":{"value":"0.1","variable":"var(--opacity-bright)","raw":"0.1"},"light":{"value":"0.15","variable":"var(--opacity-light)","raw":"0.15"},"soft":{"value":"0.3","variable":"var(--opacity-soft)","raw":"0.3"},"medium":{"value":"0.5","variable":"var(--opacity-medium)","raw":"0.5"},"high":{"value":"0.8","variable":"var(--opacity-high)","raw":"0.8"},"total":{"value":"1","variable":"var(--opacity-total)","raw":"1"}},"font":{"sans":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji","variable":"var(--font-sans)","raw":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"},"serif":{"value":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif","variable":"var(--font-serif)","raw":"ui-serif, Georgia, Cambria, Times New Roman, Times, serif"},"mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace","variable":"var(--font-mono)","raw":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}},"fontWeight":{"thin":{"value":"100","variable":"var(--fontWeight-thin)","raw":"100"},"extralight":{"value":"200","variable":"var(--fontWeight-extralight)","raw":"200"},"light":{"value":"300","variable":"var(--fontWeight-light)","raw":"300"},"normal":{"value":"400","variable":"var(--fontWeight-normal)","raw":"400"},"medium":{"value":"500","variable":"var(--fontWeight-medium)","raw":"500"},"semibold":{"value":"600","variable":"var(--fontWeight-semibold)","raw":"600"},"bold":{"value":"700","variable":"var(--fontWeight-bold)","raw":"700"},"extrabold":{"value":"800","variable":"var(--fontWeight-extrabold)","raw":"800"},"black":{"value":"900","variable":"var(--fontWeight-black)","raw":"900"}},"fontSize":{"xs":{"value":"0.75rem","variable":"var(--fontSize-xs)","raw":"0.75rem"},"sm":{"value":"0.875rem","variable":"var(--fontSize-sm)","raw":"0.875rem"},"base":{"value":"1rem","variable":"var(--fontSize-base)","raw":"1rem"},"lg":{"value":"1.125rem","variable":"var(--fontSize-lg)","raw":"1.125rem"},"xl":{"value":"1.25rem","variable":"var(--fontSize-xl)","raw":"1.25rem"},"2xl":{"value":"1.5rem","variable":"var(--fontSize-2xl)","raw":"1.5rem"},"3xl":{"value":"1.875rem","variable":"var(--fontSize-3xl)","raw":"1.875rem"},"4xl":{"value":"2.25rem","variable":"var(--fontSize-4xl)","raw":"2.25rem"},"5xl":{"value":"3rem","variable":"var(--fontSize-5xl)","raw":"3rem"},"6xl":{"value":"3.75rem","variable":"var(--fontSize-6xl)","raw":"3.75rem"},"7xl":{"value":"4.5rem","variable":"var(--fontSize-7xl)","raw":"4.5rem"},"8xl":{"value":"6rem","variable":"var(--fontSize-8xl)","raw":"6rem"},"9xl":{"value":"8rem","variable":"var(--fontSize-9xl)","raw":"8rem"}},"letterSpacing":{"tighter":{"value":"-0.05em","variable":"var(--letterSpacing-tighter)","raw":"-0.05em"},"tight":{"value":"-0.025em","variable":"var(--letterSpacing-tight)","raw":"-0.025em"},"normal":{"value":"0em","variable":"var(--letterSpacing-normal)","raw":"0em"},"wide":{"value":"0.025em","variable":"var(--letterSpacing-wide)","raw":"0.025em"},"wider":{"value":"0.05em","variable":"var(--letterSpacing-wider)","raw":"0.05em"},"widest":{"value":"0.1em","variable":"var(--letterSpacing-widest)","raw":"0.1em"}},"lead":{"1":{"value":".025rem","variable":"var(--lead-1)","raw":".025rem"},"2":{"value":".5rem","variable":"var(--lead-2)","raw":".5rem"},"3":{"value":".75rem","variable":"var(--lead-3)","raw":".75rem"},"4":{"value":"1rem","variable":"var(--lead-4)","raw":"1rem"},"5":{"value":"1.25rem","variable":"var(--lead-5)","raw":"1.25rem"},"6":{"value":"1.5rem","variable":"var(--lead-6)","raw":"1.5rem"},"7":{"value":"1.75rem","variable":"var(--lead-7)","raw":"1.75rem"},"8":{"value":"2rem","variable":"var(--lead-8)","raw":"2rem"},"9":{"value":"2.25rem","variable":"var(--lead-9)","raw":"2.25rem"},"10":{"value":"2.5rem","variable":"var(--lead-10)","raw":"2.5rem"},"none":{"value":"1","variable":"var(--lead-none)","raw":"1"},"tight":{"value":"1.25","variable":"var(--lead-tight)","raw":"1.25"},"snug":{"value":"1.375","variable":"var(--lead-snug)","raw":"1.375"},"normal":{"value":"1.5","variable":"var(--lead-normal)","raw":"1.5"},"relaxed":{"value":"1.625","variable":"var(--lead-relaxed)","raw":"1.625"},"loose":{"value":"2","variable":"var(--lead-loose)","raw":"2"}},"text":{"xs":{"fontSize":{"value":"var(--fontSize-xs)","variable":"var(--text-xs-fontSize)","raw":"{fontSize.xs}"},"lineHeight":{"value":"var(--lead-4)","variable":"var(--text-xs-lineHeight)","raw":"{lead.4}"}},"sm":{"fontSize":{"value":"var(--fontSize-sm)","variable":"var(--text-sm-fontSize)","raw":"{fontSize.sm}"},"lineHeight":{"value":"var(--lead-5)","variable":"var(--text-sm-lineHeight)","raw":"{lead.5}"}},"base":{"fontSize":{"value":"var(--fontSize-base)","variable":"var(--text-base-fontSize)","raw":"{fontSize.base}"},"lineHeight":{"value":"var(--lead-6)","variable":"var(--text-base-lineHeight)","raw":"{lead.6}"}},"lg":{"fontSize":{"value":"var(--fontSize-lg)","variable":"var(--text-lg-fontSize)","raw":"{fontSize.lg}"},"lineHeight":{"value":"var(--lead-7)","variable":"var(--text-lg-lineHeight)","raw":"{lead.7}"}},"xl":{"fontSize":{"value":"var(--fontSize-xl)","variable":"var(--text-xl-fontSize)","raw":"{fontSize.xl}"},"lineHeight":{"value":"var(--lead-7)","variable":"var(--text-xl-lineHeight)","raw":"{lead.7}"}},"2xl":{"fontSize":{"value":"var(--fontSize-2xl)","variable":"var(--text-2xl-fontSize)","raw":"{fontSize.2xl}"},"lineHeight":{"value":"var(--lead-8)","variable":"var(--text-2xl-lineHeight)","raw":"{lead.8}"}},"3xl":{"fontSize":{"value":"var(--fontSize-3xl)","variable":"var(--text-3xl-fontSize)","raw":"{fontSize.3xl}"},"lineHeight":{"value":"var(--lead-9)","variable":"var(--text-3xl-lineHeight)","raw":"{lead.9}"}},"4xl":{"fontSize":{"value":"var(--fontSize-4xl)","variable":"var(--text-4xl-fontSize)","raw":"{fontSize.4xl}"},"lineHeight":{"value":"var(--lead-10)","variable":"var(--text-4xl-lineHeight)","raw":"{lead.10}"}},"5xl":{"fontSize":{"value":"var(--fontSize-5xl)","variable":"var(--text-5xl-fontSize)","raw":"{fontSize.5xl}"},"lineHeight":{"value":"var(--lead-none)","variable":"var(--text-5xl-lineHeight)","raw":"{lead.none}"}},"6xl":{"fontSize":{"value":"var(--fontSize-6xl)","variable":"var(--text-6xl-fontSize)","raw":"{fontSize.6xl}"},"lineHeight":{"value":"var(--lead-none)","variable":"var(--text-6xl-lineHeight)","raw":"{lead.none}"}}},"elements":{"text":{"primary":{"color":{"static":{"value":{"initial":"var(--color-gray-900)","dark":"var(--color-gray-50)"},"variable":"var(--elements-text-primary-color-static)","raw":{"initial":"{color.gray.900}","dark":"{color.gray.50}"}},"hover":{}}},"secondary":{"color":{"static":{"value":{"initial":"var(--color-gray-500)","dark":"var(--color-gray-400)"},"variable":"var(--elements-text-secondary-color-static)","raw":{"initial":"{color.gray.500}","dark":"{color.gray.400}"}},"hover":{"value":{"initial":"var(--color-gray-700)","dark":"var(--color-gray-200)"},"variable":"var(--elements-text-secondary-color-hover)","raw":{"initial":"{color.gray.700}","dark":"{color.gray.200}"}}}}},"container":{"maxWidth":{"value":"80rem","variable":"var(--elements-container-maxWidth)","raw":"80rem"},"padding":{"mobile":{"value":"var(--space-4)","variable":"var(--elements-container-padding-mobile)","raw":"{space.4}"},"xs":{"value":"var(--space-4)","variable":"var(--elements-container-padding-xs)","raw":"{space.4}"},"sm":{"value":"var(--space-6)","variable":"var(--elements-container-padding-sm)","raw":"{space.6}"},"md":{"value":"var(--space-6)","variable":"var(--elements-container-padding-md)","raw":"{space.6}"}}},"backdrop":{"filter":{"value":"saturate(200%) blur(20px)","variable":"var(--elements-backdrop-filter)","raw":"saturate(200%) blur(20px)"},"background":{"value":{"initial":"#fffc","dark":"#0c0d0ccc"},"variable":"var(--elements-backdrop-background)","raw":{"initial":"#fffc","dark":"#0c0d0ccc"}}},"border":{"primary":{"static":{"value":{"initial":"var(--color-gray-100)","dark":"var(--color-gray-900)"},"variable":"var(--elements-border-primary-static)","raw":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}},"hover":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--elements-border-primary-hover)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"secondary":{"static":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--elements-border-secondary-static)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}},"hover":{"value":{"initial":"","dark":""},"variable":"var(--elements-border-secondary-hover)","raw":{"initial":"","dark":""}}}},"surface":{"background":{"base":{"value":{"initial":"var(--color-gray-100)","dark":"var(--color-gray-900)"},"variable":"var(--elements-surface-background-base)","raw":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"primary":{"backgroundColor":{"value":{"initial":"var(--color-gray-100)","dark":"var(--color-gray-900)"},"variable":"var(--elements-surface-primary-backgroundColor)","raw":{"initial":"{color.gray.100}","dark":"{color.gray.900}"}}},"secondary":{"backgroundColor":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--elements-surface-secondary-backgroundColor)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}}},"state":{"primary":{"color":{"primary":{"value":{"initial":"var(--color-primary-600)","dark":"var(--color-primary-400)"},"variable":"var(--elements-state-primary-color-primary)","raw":{"initial":"{color.primary.600}","dark":"{color.primary.400}"}},"secondary":{"value":{"initial":"var(--color-primary-700)","dark":"var(--color-primary-200)"},"variable":"var(--elements-state-primary-color-secondary)","raw":{"initial":"{color.primary.700}","dark":"{color.primary.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-primary-50)","dark":"var(--color-primary-900)"},"variable":"var(--elements-state-primary-backgroundColor-primary)","raw":{"initial":"{color.primary.50}","dark":"{color.primary.900}"}},"secondary":{"value":{"initial":"var(--color-primary-100)","dark":"var(--color-primary-800)"},"variable":"var(--elements-state-primary-backgroundColor-secondary)","raw":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-primary-100)","dark":"var(--color-primary-800)"},"variable":"var(--elements-state-primary-borderColor-primary)","raw":{"initial":"{color.primary.100}","dark":"{color.primary.800}"}},"secondary":{"value":{"initial":"var(--color-primary-200)","dark":"var(--color-primary-700)"},"variable":"var(--elements-state-primary-borderColor-secondary)","raw":{"initial":"{color.primary.200}","dark":"{color.primary.700}"}}}},"info":{"color":{"primary":{"value":{"initial":"var(--color-blue-500)","dark":"var(--color-blue-400)"},"variable":"var(--elements-state-info-color-primary)","raw":{"initial":"{color.blue.500}","dark":"{color.blue.400}"}},"secondary":{"value":{"initial":"var(--color-blue-600)","dark":"var(--color-blue-200)"},"variable":"var(--elements-state-info-color-secondary)","raw":{"initial":"{color.blue.600}","dark":"{color.blue.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-blue-50)","dark":"var(--color-blue-900)"},"variable":"var(--elements-state-info-backgroundColor-primary)","raw":{"initial":"{color.blue.50}","dark":"{color.blue.900}"}},"secondary":{"value":{"initial":"var(--color-blue-100)","dark":"var(--color-blue-800)"},"variable":"var(--elements-state-info-backgroundColor-secondary)","raw":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-blue-100)","dark":"var(--color-blue-800)"},"variable":"var(--elements-state-info-borderColor-primary)","raw":{"initial":"{color.blue.100}","dark":"{color.blue.800}"}},"secondary":{"value":{"initial":"var(--color-blue-200)","dark":"var(--color-blue-700)"},"variable":"var(--elements-state-info-borderColor-secondary)","raw":{"initial":"{color.blue.200}","dark":"{color.blue.700}"}}}},"success":{"color":{"primary":{"value":{"initial":"var(--color-green-500)","dark":"var(--color-green-400)"},"variable":"var(--elements-state-success-color-primary)","raw":{"initial":"{color.green.500}","dark":"{color.green.400}"}},"secondary":{"value":{"initial":"var(--color-green-600)","dark":"var(--color-green-200)"},"variable":"var(--elements-state-success-color-secondary)","raw":{"initial":"{color.green.600}","dark":"{color.green.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-green-50)","dark":"var(--color-green-900)"},"variable":"var(--elements-state-success-backgroundColor-primary)","raw":{"initial":"{color.green.50}","dark":"{color.green.900}"}},"secondary":{"value":{"initial":"var(--color-green-100)","dark":"var(--color-green-800)"},"variable":"var(--elements-state-success-backgroundColor-secondary)","raw":{"initial":"{color.green.100}","dark":"{color.green.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-green-100)","dark":"var(--color-green-800)"},"variable":"var(--elements-state-success-borderColor-primary)","raw":{"initial":"{color.green.100}","dark":"{color.green.800}"}},"secondary":{"value":{"initial":"var(--color-green-200)","dark":"var(--color-green-700)"},"variable":"var(--elements-state-success-borderColor-secondary)","raw":{"initial":"{color.green.200}","dark":"{color.green.700}"}}}},"warning":{"color":{"primary":{"value":{"initial":"var(--color-yellow-600)","dark":"var(--color-yellow-400)"},"variable":"var(--elements-state-warning-color-primary)","raw":{"initial":"{color.yellow.600}","dark":"{color.yellow.400}"}},"secondary":{"value":{"initial":"var(--color-yellow-700)","dark":"var(--color-yellow-200)"},"variable":"var(--elements-state-warning-color-secondary)","raw":{"initial":"{color.yellow.700}","dark":"{color.yellow.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-yellow-50)","dark":"var(--color-yellow-900)"},"variable":"var(--elements-state-warning-backgroundColor-primary)","raw":{"initial":"{color.yellow.50}","dark":"{color.yellow.900}"}},"secondary":{"value":{"initial":"var(--color-yellow-100)","dark":"var(--color-yellow-800)"},"variable":"var(--elements-state-warning-backgroundColor-secondary)","raw":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-yellow-100)","dark":"var(--color-yellow-800)"},"variable":"var(--elements-state-warning-borderColor-primary)","raw":{"initial":"{color.yellow.100}","dark":"{color.yellow.800}"}},"secondary":{"value":{"initial":"var(--color-yellow-200)","dark":"var(--color-yellow-700)"},"variable":"var(--elements-state-warning-borderColor-secondary)","raw":{"initial":"{color.yellow.200}","dark":"{color.yellow.700}"}}}},"danger":{"color":{"primary":{"value":{"initial":"var(--color-red-500)","dark":"var(--color-red-300)"},"variable":"var(--elements-state-danger-color-primary)","raw":{"initial":"{color.red.500}","dark":"{color.red.300}"}},"secondary":{"value":{"initial":"var(--color-red-600)","dark":"var(--color-red-200)"},"variable":"var(--elements-state-danger-color-secondary)","raw":{"initial":"{color.red.600}","dark":"{color.red.200}"}}},"backgroundColor":{"primary":{"value":{"initial":"var(--color-red-50)","dark":"var(--color-red-900)"},"variable":"var(--elements-state-danger-backgroundColor-primary)","raw":{"initial":"{color.red.50}","dark":"{color.red.900}"}},"secondary":{"value":{"initial":"var(--color-red-100)","dark":"var(--color-red-800)"},"variable":"var(--elements-state-danger-backgroundColor-secondary)","raw":{"initial":"{color.red.100}","dark":"{color.red.800}"}}},"borderColor":{"primary":{"value":{"initial":"var(--color-red-100)","dark":"var(--color-red-800)"},"variable":"var(--elements-state-danger-borderColor-primary)","raw":{"initial":"{color.red.100}","dark":"{color.red.800}"}},"secondary":{"value":{"initial":"var(--color-red-200)","dark":"var(--color-red-700)"},"variable":"var(--elements-state-danger-borderColor-secondary)","raw":{"initial":"{color.red.200}","dark":"{color.red.700}"}}}}}},"typography":{"body":{"color":{"value":{"initial":"var(--color-black)","dark":"var(--color-white)"},"variable":"var(--typography-body-color)","raw":{"initial":"{color.black}","dark":"{color.white}"}},"backgroundColor":{"value":{"initial":"var(--color-white)","dark":"var(--color-black)"},"variable":"var(--typography-body-backgroundColor)","raw":{"initial":"{color.white}","dark":"{color.black}"}}},"verticalMargin":{"sm":{"value":"16px","variable":"var(--typography-verticalMargin-sm)","raw":"16px"},"base":{"value":"24px","variable":"var(--typography-verticalMargin-base)","raw":"24px"}},"letterSpacing":{"tight":{"value":"-0.025em","variable":"var(--typography-letterSpacing-tight)","raw":"-0.025em"},"wide":{"value":"0.025em","variable":"var(--typography-letterSpacing-wide)","raw":"0.025em"}},"fontSize":{"xs":{"value":"12px","variable":"var(--typography-fontSize-xs)","raw":"12px"},"sm":{"value":"14px","variable":"var(--typography-fontSize-sm)","raw":"14px"},"base":{"value":"16px","variable":"var(--typography-fontSize-base)","raw":"16px"},"lg":{"value":"18px","variable":"var(--typography-fontSize-lg)","raw":"18px"},"xl":{"value":"20px","variable":"var(--typography-fontSize-xl)","raw":"20px"},"2xl":{"value":"24px","variable":"var(--typography-fontSize-2xl)","raw":"24px"},"3xl":{"value":"30px","variable":"var(--typography-fontSize-3xl)","raw":"30px"},"4xl":{"value":"36px","variable":"var(--typography-fontSize-4xl)","raw":"36px"},"5xl":{"value":"48px","variable":"var(--typography-fontSize-5xl)","raw":"48px"},"6xl":{"value":"60px","variable":"var(--typography-fontSize-6xl)","raw":"60px"},"7xl":{"value":"72px","variable":"var(--typography-fontSize-7xl)","raw":"72px"},"8xl":{"value":"96px","variable":"var(--typography-fontSize-8xl)","raw":"96px"},"9xl":{"value":"128px","variable":"var(--typography-fontSize-9xl)","raw":"128px"}},"fontWeight":{"thin":{"value":"100","variable":"var(--typography-fontWeight-thin)","raw":"100"},"extralight":{"value":"200","variable":"var(--typography-fontWeight-extralight)","raw":"200"},"light":{"value":"300","variable":"var(--typography-fontWeight-light)","raw":"300"},"normal":{"value":"400","variable":"var(--typography-fontWeight-normal)","raw":"400"},"medium":{"value":"500","variable":"var(--typography-fontWeight-medium)","raw":"500"},"semibold":{"value":"600","variable":"var(--typography-fontWeight-semibold)","raw":"600"},"bold":{"value":"700","variable":"var(--typography-fontWeight-bold)","raw":"700"},"extrabold":{"value":"800","variable":"var(--typography-fontWeight-extrabold)","raw":"800"},"black":{"value":"900","variable":"var(--typography-fontWeight-black)","raw":"900"}},"lead":{"1":{"value":".025rem","variable":"var(--typography-lead-1)","raw":".025rem"},"2":{"value":".5rem","variable":"var(--typography-lead-2)","raw":".5rem"},"3":{"value":".75rem","variable":"var(--typography-lead-3)","raw":".75rem"},"4":{"value":"1rem","variable":"var(--typography-lead-4)","raw":"1rem"},"5":{"value":"1.25rem","variable":"var(--typography-lead-5)","raw":"1.25rem"},"6":{"value":"1.5rem","variable":"var(--typography-lead-6)","raw":"1.5rem"},"7":{"value":"1.75rem","variable":"var(--typography-lead-7)","raw":"1.75rem"},"8":{"value":"2rem","variable":"var(--typography-lead-8)","raw":"2rem"},"9":{"value":"2.25rem","variable":"var(--typography-lead-9)","raw":"2.25rem"},"10":{"value":"2.5rem","variable":"var(--typography-lead-10)","raw":"2.5rem"},"none":{"value":"1","variable":"var(--typography-lead-none)","raw":"1"},"tight":{"value":"1.25","variable":"var(--typography-lead-tight)","raw":"1.25"},"snug":{"value":"1.375","variable":"var(--typography-lead-snug)","raw":"1.375"},"normal":{"value":"1.5","variable":"var(--typography-lead-normal)","raw":"1.5"},"relaxed":{"value":"1.625","variable":"var(--typography-lead-relaxed)","raw":"1.625"},"loose":{"value":"2","variable":"var(--typography-lead-loose)","raw":"2"}},"font":{"display":{"value":"var(--font-sans)","variable":"var(--typography-font-display)","raw":"{font.sans}"},"body":{"value":"var(--font-sans)","variable":"var(--typography-font-body)","raw":"{font.sans}"},"code":{"value":"var(--font-mono)","variable":"var(--typography-font-code)","raw":"{font.mono}"}},"color":{"primary":{"50":{"value":"var(--color-primary-50)","variable":"var(--typography-color-primary-50)","raw":"{color.primary.50}"},"100":{"value":"var(--color-primary-100)","variable":"var(--typography-color-primary-100)","raw":"{color.primary.100}"},"200":{"value":"var(--color-primary-200)","variable":"var(--typography-color-primary-200)","raw":"{color.primary.200}"},"300":{"value":"var(--color-primary-300)","variable":"var(--typography-color-primary-300)","raw":"{color.primary.300}"},"400":{"value":"var(--color-primary-400)","variable":"var(--typography-color-primary-400)","raw":"{color.primary.400}"},"500":{"value":"var(--color-primary-500)","variable":"var(--typography-color-primary-500)","raw":"{color.primary.500}"},"600":{"value":"var(--color-primary-600)","variable":"var(--typography-color-primary-600)","raw":"{color.primary.600}"},"700":{"value":"var(--color-primary-700)","variable":"var(--typography-color-primary-700)","raw":"{color.primary.700}"},"800":{"value":"var(--color-primary-800)","variable":"var(--typography-color-primary-800)","raw":"{color.primary.800}"},"900":{"value":"var(--color-primary-900)","variable":"var(--typography-color-primary-900)","raw":"{color.primary.900}"}},"secondary":{"50":{"value":"var(--color-gray-50)","variable":"var(--typography-color-secondary-50)","raw":"{color.gray.50}"},"100":{"value":"var(--color-gray-100)","variable":"var(--typography-color-secondary-100)","raw":"{color.gray.100}"},"200":{"value":"var(--color-gray-200)","variable":"var(--typography-color-secondary-200)","raw":"{color.gray.200}"},"300":{"value":"var(--color-gray-300)","variable":"var(--typography-color-secondary-300)","raw":"{color.gray.300}"},"400":{"value":"var(--color-gray-400)","variable":"var(--typography-color-secondary-400)","raw":"{color.gray.400}"},"500":{"value":"var(--color-gray-500)","variable":"var(--typography-color-secondary-500)","raw":"{color.gray.500}"},"600":{"value":"var(--color-gray-600)","variable":"var(--typography-color-secondary-600)","raw":"{color.gray.600}"},"700":{"value":"var(--color-gray-700)","variable":"var(--typography-color-secondary-700)","raw":"{color.gray.700}"},"800":{"value":"var(--color-gray-800)","variable":"var(--typography-color-secondary-800)","raw":"{color.gray.800}"},"900":{"value":"var(--color-gray-900)","variable":"var(--typography-color-secondary-900)","raw":"{color.gray.900}"}}}},"prose":{"p":{"fontSize":{"value":"var(--typography-fontSize-base)","variable":"var(--prose-p-fontSize)","raw":"{typography.fontSize.base}"},"lineHeight":{"value":"var(--typography-lead-normal)","variable":"var(--prose-p-lineHeight)","raw":"{typography.lead.normal}"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-p-margin)","raw":"{typography.verticalMargin.base} 0"},"br":{"margin":{"value":"var(--typography-verticalMargin-base) 0 0 0","variable":"var(--prose-p-br-margin)","raw":"{typography.verticalMargin.base} 0 0 0"}}},"h1":{"margin":{"value":"0 0 2rem","variable":"var(--prose-h1-margin)","raw":"0 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-5xl)","variable":"var(--prose-h1-fontSize)","raw":"{typography.fontSize.5xl}"},"lineHeight":{"value":"var(--typography-lead-tight)","variable":"var(--prose-h1-lineHeight)","raw":"{typography.lead.tight}"},"fontWeight":{"value":"var(--typography-fontWeight-bold)","variable":"var(--prose-h1-fontWeight)","raw":"{typography.fontWeight.bold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h1-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-3xl)","variable":"var(--prose-h1-iconSize)","raw":"{typography.fontSize.3xl}"}},"h2":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h2-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-4xl)","variable":"var(--prose-h2-fontSize)","raw":"{typography.fontSize.4xl}"},"lineHeight":{"value":"var(--typography-lead-tight)","variable":"var(--prose-h2-lineHeight)","raw":"{typography.lead.tight}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h2-fontWeight)","raw":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h2-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-2xl)","variable":"var(--prose-h2-iconSize)","raw":"{typography.fontSize.2xl}"}},"h3":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h3-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-3xl)","variable":"var(--prose-h3-fontSize)","raw":"{typography.fontSize.3xl}"},"lineHeight":{"value":"var(--typography-lead-snug)","variable":"var(--prose-h3-lineHeight)","raw":"{typography.lead.snug}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h3-fontWeight)","raw":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h3-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-xl)","variable":"var(--prose-h3-iconSize)","raw":"{typography.fontSize.xl}"}},"h4":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h4-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-2xl)","variable":"var(--prose-h4-fontSize)","raw":"{typography.fontSize.2xl}"},"lineHeight":{"value":"var(--typography-lead-snug)","variable":"var(--prose-h4-lineHeight)","raw":"{typography.lead.snug}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h4-fontWeight)","raw":"{typography.fontWeight.semibold}"},"letterSpacing":{"value":"var(--typography-letterSpacing-tight)","variable":"var(--prose-h4-letterSpacing)","raw":"{typography.letterSpacing.tight}"},"iconSize":{"value":"var(--typography-fontSize-lg)","variable":"var(--prose-h4-iconSize)","raw":"{typography.fontSize.lg}"}},"h5":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h5-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-xl)","variable":"var(--prose-h5-fontSize)","raw":"{typography.fontSize.xl}"},"lineHeight":{"value":"var(--typography-lead-snug)","variable":"var(--prose-h5-lineHeight)","raw":"{typography.lead.snug}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h5-fontWeight)","raw":"{typography.fontWeight.semibold}"},"iconSize":{"value":"var(--typography-fontSize-lg)","variable":"var(--prose-h5-iconSize)","raw":"{typography.fontSize.lg}"}},"h6":{"margin":{"value":"3rem 0 2rem","variable":"var(--prose-h6-margin)","raw":"3rem 0 2rem"},"fontSize":{"value":"var(--typography-fontSize-lg)","variable":"var(--prose-h6-fontSize)","raw":"{typography.fontSize.lg}"},"lineHeight":{"value":"var(--typography-lead-normal)","variable":"var(--prose-h6-lineHeight)","raw":"{typography.lead.normal}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-h6-fontWeight)","raw":"{typography.fontWeight.semibold}"},"iconSize":{"value":"var(--typography-fontSize-base)","variable":"var(--prose-h6-iconSize)","raw":"{typography.fontSize.base}"}},"strong":{"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-strong-fontWeight)","raw":"{typography.fontWeight.semibold}"}},"img":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-img-margin)","raw":"{typography.verticalMargin.base} 0"}},"a":{"textDecoration":{"value":"none","variable":"var(--prose-a-textDecoration)","raw":"none"},"color":{"static":{"value":{"initial":"inherit","dark":"inherit"},"variable":"var(--prose-a-color-static)","raw":{"initial":"inherit","dark":"inherit"}},"hover":{"value":{"initial":"var(--typography-color-primary-500)","dark":"var(--typography-color-primary-400)"},"variable":"var(--prose-a-color-hover)","raw":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.400}"}}},"border":{"width":{"value":"1px","variable":"var(--prose-a-border-width)","raw":"1px"},"style":{"static":{"value":"dashed","variable":"var(--prose-a-border-style-static)","raw":"dashed"},"hover":{"value":"solid","variable":"var(--prose-a-border-style-hover)","raw":"solid"}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-border-color-static)","raw":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-border-color-hover)","raw":{"initial":"currentColor","dark":"currentColor"}}},"distance":{"value":"2px","variable":"var(--prose-a-border-distance)","raw":"2px"}},"fontWeight":{"value":"var(--typography-fontWeight-medium)","variable":"var(--prose-a-fontWeight)","raw":"{typography.fontWeight.medium}"},"hasCode":{"borderBottom":{"value":"none","variable":"var(--prose-a-hasCode-borderBottom)","raw":"none"}},"code":{"border":{"width":{"value":"var(--prose-a-border-width)","variable":"var(--prose-a-code-border-width)","raw":"{prose.a.border.width}"},"style":{"value":"var(--prose-a-border-style-static)","variable":"var(--prose-a-code-border-style)","raw":"{prose.a.border.style.static}"},"color":{"static":{"value":{"initial":"var(--typography-color-secondary-400)","dark":"var(--typography-color-secondary-600)"},"variable":"var(--prose-a-code-border-color-static)","raw":{"initial":"{typography.color.secondary.400}","dark":"{typography.color.secondary.600}"}},"hover":{"value":{"initial":"var(--typography-color-primary-500)","dark":"var(--typography-color-primary-600)"},"variable":"var(--prose-a-code-border-color-hover)","raw":{"initial":"{typography.color.primary.500}","dark":"{typography.color.primary.600}"}}}},"color":{"static":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-code-color-static)","raw":{"initial":"currentColor","dark":"currentColor"}},"hover":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-a-code-color-hover)","raw":{"initial":"currentColor","dark":"currentColor"}}},"background":{"static":{},"hover":{"value":{"initial":"var(--typography-color-primary-50)","dark":"var(--typography-color-primary-900)"},"variable":"var(--prose-a-code-background-hover)","raw":{"initial":"{typography.color.primary.50}","dark":"{typography.color.primary.900}"}}}}},"blockquote":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-blockquote-margin)","raw":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"24px","variable":"var(--prose-blockquote-paddingInlineStart)","raw":"24px"},"quotes":{"value":"'201C' '201D' '2018' '2019'","variable":"var(--prose-blockquote-quotes)","raw":"'201C' '201D' '2018' '2019'"},"color":{"value":{"initial":"var(--typography-color-secondary-500)","dark":"var(--typography-color-secondary-400)"},"variable":"var(--prose-blockquote-color)","raw":{"initial":"{typography.color.secondary.500}","dark":"{typography.color.secondary.400}"}},"border":{"width":{"value":"4px","variable":"var(--prose-blockquote-border-width)","raw":"4px"},"style":{"value":"solid","variable":"var(--prose-blockquote-border-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-700)"},"variable":"var(--prose-blockquote-border-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.700}"}}}},"ul":{"listStyleType":{"value":"disc","variable":"var(--prose-ul-listStyleType)","raw":"disc"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-ul-margin)","raw":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px","variable":"var(--prose-ul-paddingInlineStart)","raw":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-ul-li-markerColor)","raw":{"initial":"currentColor","dark":"currentColor"}}}},"ol":{"listStyleType":{"value":"decimal","variable":"var(--prose-ol-listStyleType)","raw":"decimal"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-ol-margin)","raw":"{typography.verticalMargin.base} 0"},"paddingInlineStart":{"value":"21px","variable":"var(--prose-ol-paddingInlineStart)","raw":"21px"},"li":{"markerColor":{"value":{"initial":"currentColor","dark":"currentColor"},"variable":"var(--prose-ol-li-markerColor)","raw":{"initial":"currentColor","dark":"currentColor"}}}},"li":{"margin":{"value":"var(--typography-verticalMargin-sm) 0","variable":"var(--prose-li-margin)","raw":"{typography.verticalMargin.sm} 0"},"listStylePosition":{"value":"outside","variable":"var(--prose-li-listStylePosition)","raw":"outside"}},"hr":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-hr-margin)","raw":"{typography.verticalMargin.base} 0"},"style":{"value":"solid","variable":"var(--prose-hr-style)","raw":"solid"},"width":{"value":"1px","variable":"var(--prose-hr-width)","raw":"1px"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-hr-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"table":{"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-table-margin)","raw":"{typography.verticalMargin.base} 0"},"textAlign":{"value":"start","variable":"var(--prose-table-textAlign)","raw":"start"},"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-table-fontSize)","raw":"{typography.fontSize.sm}"},"lineHeight":{"value":"var(--typography-lead-6)","variable":"var(--prose-table-lineHeight)","raw":"{typography.lead.6}"}},"thead":{"border":{"width":{"value":"0px","variable":"var(--prose-thead-border-width)","raw":"0px"},"style":{"value":"solid","variable":"var(--prose-thead-border-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-300)","dark":"var(--typography-color-secondary-600)"},"variable":"var(--prose-thead-border-color)","raw":{"initial":"{typography.color.secondary.300}","dark":"{typography.color.secondary.600}"}}},"borderBottom":{"width":{"value":"1px","variable":"var(--prose-thead-borderBottom-width)","raw":"1px"},"style":{"value":"solid","variable":"var(--prose-thead-borderBottom-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-thead-borderBottom-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"th":{"color":{"value":{"initial":"var(--typography-color-secondary-600)","dark":"var(--typography-color-secondary-400)"},"variable":"var(--prose-th-color)","raw":{"initial":"{typography.color.secondary.600}","dark":"{typography.color.secondary.400}"}},"padding":{"value":"0 var(--typography-verticalMargin-sm) var(--typography-verticalMargin-sm) var(--typography-verticalMargin-sm)","variable":"var(--prose-th-padding)","raw":"0 {typography.verticalMargin.sm} {typography.verticalMargin.sm} {typography.verticalMargin.sm}"},"fontWeight":{"value":"var(--typography-fontWeight-semibold)","variable":"var(--prose-th-fontWeight)","raw":"{typography.fontWeight.semibold}"},"textAlign":{"value":"inherit","variable":"var(--prose-th-textAlign)","raw":"inherit"}},"tbody":{"tr":{"borderBottom":{"width":{"value":"1px","variable":"var(--prose-tbody-tr-borderBottom-width)","raw":"1px"},"style":{"value":"dashed","variable":"var(--prose-tbody-tr-borderBottom-style)","raw":"dashed"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-tbody-tr-borderBottom-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}}},"td":{"padding":{"value":"var(--typography-verticalMargin-sm)","variable":"var(--prose-tbody-td-padding)","raw":"{typography.verticalMargin.sm}"}},"code":{"inline":{"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-tbody-code-inline-fontSize)","raw":"{typography.fontSize.sm}"}}}},"code":{"block":{"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-code-block-fontSize)","raw":"{typography.fontSize.sm}"},"margin":{"value":"var(--typography-verticalMargin-base) 0","variable":"var(--prose-code-block-margin)","raw":"{typography.verticalMargin.base} 0"},"border":{"width":{"value":"1px","variable":"var(--prose-code-block-border-width)","raw":"1px"},"style":{"value":"solid","variable":"var(--prose-code-block-border-style)","raw":"solid"},"color":{"value":{"initial":"var(--typography-color-secondary-200)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-code-block-border-color)","raw":{"initial":"{typography.color.secondary.200}","dark":"{typography.color.secondary.800}"}}},"color":{"value":{"initial":"var(--typography-color-secondary-700)","dark":"var(--typography-color-secondary-200)"},"variable":"var(--prose-code-block-color)","raw":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"var(--typography-color-secondary-100)","dark":"var(--typography-color-secondary-900)"},"variable":"var(--prose-code-block-backgroundColor)","raw":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.900}"}},"backdropFilter":{"value":{"initial":"contrast(1)","dark":"contrast(1)"},"variable":"var(--prose-code-block-backdropFilter)","raw":{"initial":"contrast(1)","dark":"contrast(1)"}},"pre":{"padding":{"value":"var(--typography-verticalMargin-sm)","variable":"var(--prose-code-block-pre-padding)","raw":"{typography.verticalMargin.sm}"}}},"inline":{"borderRadius":{"value":"var(--radii-xs)","variable":"var(--prose-code-inline-borderRadius)","raw":"{radii.xs}"},"padding":{"value":"0.2rem 0.375rem 0.2rem 0.375rem","variable":"var(--prose-code-inline-padding)","raw":"0.2rem 0.375rem 0.2rem 0.375rem"},"fontSize":{"value":"var(--typography-fontSize-sm)","variable":"var(--prose-code-inline-fontSize)","raw":"{typography.fontSize.sm}"},"fontWeight":{"value":"var(--typography-fontWeight-normal)","variable":"var(--prose-code-inline-fontWeight)","raw":"{typography.fontWeight.normal}"},"color":{"value":{"initial":"var(--typography-color-secondary-700)","dark":"var(--typography-color-secondary-200)"},"variable":"var(--prose-code-inline-color)","raw":{"initial":"{typography.color.secondary.700}","dark":"{typography.color.secondary.200}"}},"backgroundColor":{"value":{"initial":"var(--typography-color-secondary-100)","dark":"var(--typography-color-secondary-800)"},"variable":"var(--prose-code-inline-backgroundColor)","raw":{"initial":"{typography.color.secondary.100}","dark":"{typography.color.secondary.800}"}}}}},"docus":{"body":{"backgroundColor":{"value":{"initial":"var(--color-white)","dark":"var(--color-black)"},"variable":"var(--docus-body-backgroundColor)","raw":{"initial":"{color.white}","dark":"{color.black}"}},"color":{"value":{"initial":"var(--color-gray-800)","dark":"var(--color-gray-200)"},"variable":"var(--docus-body-color)","raw":{"initial":"{color.gray.800}","dark":"{color.gray.200}"}},"fontFamily":{"value":"var(--font-sans)","variable":"var(--docus-body-fontFamily)","raw":"{font.sans}"}},"header":{"height":{"value":"64px","variable":"var(--docus-header-height)","raw":"64px"},"logo":{"height":{"value":{"initial":"var(--space-6)","sm":"var(--space-7)"},"variable":"var(--docus-header-logo-height)","raw":{"initial":"{space.6}","sm":"{space.7}"}}},"title":{"fontSize":{"value":"var(--fontSize-2xl)","variable":"var(--docus-header-title-fontSize)","raw":"{fontSize.2xl}"},"fontWeight":{"value":"var(--fontWeight-bold)","variable":"var(--docus-header-title-fontWeight)","raw":"{fontWeight.bold}"},"color":{"static":{"value":{"initial":"var(--color-gray-900)","dark":"var(--color-gray-100)"},"variable":"var(--docus-header-title-color-static)","raw":{"initial":"{color.gray.900}","dark":"{color.gray.100}"}},"hover":{"value":"var(--color-primary-500)","variable":"var(--docus-header-title-color-hover)","raw":"{color.primary.500}"}}}},"footer":{"height":{"value":{"initial":"145px","sm":"100px"},"variable":"var(--docus-footer-height)","raw":{"initial":"145px","sm":"100px"}},"padding":{"value":"var(--space-4) 0","variable":"var(--docus-footer-padding)","raw":"{space.4} 0"}},"readableLine":{"value":"78ch","variable":"var(--docus-readableLine)","raw":"78ch"},"loadingBar":{"height":{"value":"3px","variable":"var(--docus-loadingBar-height)","raw":"3px"},"gradientColorStop1":{"value":"#00dc82","variable":"var(--docus-loadingBar-gradientColorStop1)","raw":"#00dc82"},"gradientColorStop2":{"value":"#34cdfe","variable":"var(--docus-loadingBar-gradientColorStop2)","raw":"#34cdfe"},"gradientColorStop3":{"value":"#0047e1","variable":"var(--docus-loadingBar-gradientColorStop3)","raw":"#0047e1"}},"search":{"backdropFilter":{"value":"blur(24px)","variable":"var(--docus-search-backdropFilter)","raw":"blur(24px)"},"input":{"borderRadius":{"value":"var(--radii-2xs)","variable":"var(--docus-search-input-borderRadius)","raw":"{radii.2xs}"},"borderWidth":{"value":"1px","variable":"var(--docus-search-input-borderWidth)","raw":"1px"},"borderStyle":{"value":"solid","variable":"var(--docus-search-input-borderStyle)","raw":"solid"},"borderColor":{"value":{"initial":"var(--color-gray-200)","dark":"transparent"},"variable":"var(--docus-search-input-borderColor)","raw":{"initial":"{color.gray.200}","dark":"transparent"}},"fontSize":{"value":"var(--fontSize-sm)","variable":"var(--docus-search-input-fontSize)","raw":"{fontSize.sm}"},"gap":{"value":"var(--space-2)","variable":"var(--docus-search-input-gap)","raw":"{space.2}"},"padding":{"value":"var(--space-2) var(--space-4)","variable":"var(--docus-search-input-padding)","raw":"{space.2} {space.4}"},"backgroundColor":{"value":{"initial":"var(--color-gray-200)","dark":"var(--color-gray-800)"},"variable":"var(--docus-search-input-backgroundColor)","raw":{"initial":"{color.gray.200}","dark":"{color.gray.800}"}}},"results":{"window":{"marginX":{"value":{"initial":"0","sm":"var(--space-4)"},"variable":"var(--docus-search-results-window-marginX)","raw":{"initial":"0","sm":"{space.4}"}},"borderRadius":{"value":{"initial":"none","sm":"var(--radii-xs)"},"variable":"var(--docus-search-results-window-borderRadius)","raw":{"initial":"none","sm":"{radii.xs}"}},"marginTop":{"value":{"initial":"0","sm":"20vh"},"variable":"var(--docus-search-results-window-marginTop)","raw":{"initial":"0","sm":"20vh"}},"maxWidth":{"value":"640px","variable":"var(--docus-search-results-window-maxWidth)","raw":"640px"},"maxHeight":{"value":{"initial":"100%","sm":"320px"},"variable":"var(--docus-search-results-window-maxHeight)","raw":{"initial":"100%","sm":"320px"}}},"selected":{"backgroundColor":{"value":{"initial":"var(--color-gray-300)","dark":"var(--color-gray-700)"},"variable":"var(--docus-search-results-selected-backgroundColor)","raw":{"initial":"{color.gray.300}","dark":"{color.gray.700}"}}},"highlight":{"color":{"value":"white","variable":"var(--docus-search-results-highlight-color)","raw":"white"},"backgroundColor":{"value":"var(--color-primary-500)","variable":"var(--docus-search-results-highlight-backgroundColor)","raw":"{color.primary.500}"}}}}}},"content":{"sources":{},"ignores":[],"locales":[],"highlight":{"theme":{"dark":"github-dark","default":"github-light"},"preload":["json","js","ts","html","css","vue","diff","shell","markdown","yaml","bash","ini"]},"navigation":{"fields":["icon","titleTemplate","header","main","aside","footer","layout"]},"documentDriven":true,"experimental":{"clientDB":false,"stripQueryParameters":false,"advanceQuery":false}},"components":[{"name":"ChallengeV2Demo","path":"components/content/ChallengeV2Demo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ChallengeV3Demo","path":"components/content/ChallengeV3Demo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CheckboxDemo","path":"components/content/CheckboxDemo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IndexDemo","path":"components/content/IndexDemo.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","declarations":[],"schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"Mermaid","path":"components/content/Mermaid.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","declarations":[],"schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"PrimaryButton","path":"components/content/PrimaryButton.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","declarations":[],"schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ThemeButton","path":"components/content/ThemeButton.vue","meta":{"props":[{"name":"modelValue","global":false,"description":"","tags":[],"required":true,"type":"\"light\" | \"dark\"","declarations":[{"file":"/home/runner/work/vue-recaptcha/vue-recaptcha/docs/components/content/ThemeButton.vue","range":[55,83]},{"file":"/home/runner/work/vue-recaptcha/vue-recaptcha/docs/components/content/ThemeButton.vue","range":[55,83]}],"schema":{"kind":"enum","type":"\"light\" | \"dark\"","schema":["\"light\"","\"dark\""]}}],"slots":[],"events":[{"name":"update:modelValue","type":"[theme: \"light\" | \"dark\"]","signature":"(event: \"update:modelValue\", theme: \"light\" | \"dark\"): void","declarations":[{"file":"/home/runner/work/vue-recaptcha/vue-recaptcha/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","range":[4472,4507]}],"schema":[{"kind":"enum","type":"\"light\" | \"dark\"","schema":["\"light\"","\"dark\""]}]}]}},{"name":"VeeValidateCheckbox","path":"components/content/VeeValidateCheckbox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"VeeValidateInvisible","path":"components/content/VeeValidateInvisible.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppDocSearch","path":"../node_modules/@nuxt-themes/docus/components/app/AppDocSearch.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppFooter","path":"../node_modules/@nuxt-themes/docus/components/app/AppFooter.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeader","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeader.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeaderDialog","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeaderDialog.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeaderLogo","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeaderLogo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppHeaderNavigation","path":"../node_modules/@nuxt-themes/docus/components/app/AppHeaderNavigation.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppLayout","path":"../node_modules/@nuxt-themes/docus/components/app/AppLayout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppLoadingBar","path":"../node_modules/@nuxt-themes/docus/components/app/AppLoadingBar.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppSearch","path":"../node_modules/@nuxt-themes/docus/components/app/AppSearch.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"AppSocialIcons","path":"../node_modules/@nuxt-themes/docus/components/app/AppSocialIcons.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Ellipsis","path":"../node_modules/@nuxt-themes/docus/components/app/Ellipsis.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Logo","path":"../node_modules/@nuxt-themes/docus/components/app/Logo.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ThemeSelect","path":"../node_modules/@nuxt-themes/docus/components/app/ThemeSelect.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsAside","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsAside.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsAsideTree","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsAsideTree.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsPageBottom","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsPageBottom.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsPageLayout","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsPageLayout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsPrevNext","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsPrevNext.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsToc","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsToc.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"DocsTocLinks","path":"../node_modules/@nuxt-themes/docus/components/docs/DocsTocLinks.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"EditOnLink","path":"../node_modules/@nuxt-themes/docus/components/docs/EditOnLink.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"SourceLink","path":"../node_modules/@nuxt-themes/docus/components/docs/SourceLink.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Alert","path":"../node_modules/@nuxt-themes/elements/components/globals/Alert.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Badge","path":"../node_modules/@nuxt-themes/elements/components/globals/Badge.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ButtonLink","path":"../node_modules/@nuxt-themes/elements/components/globals/ButtonLink.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Callout","path":"../node_modules/@nuxt-themes/elements/components/globals/Callout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CodeBlock","path":"../node_modules/@nuxt-themes/elements/components/globals/CodeBlock.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CodeGroup","path":"../node_modules/@nuxt-themes/elements/components/globals/CodeGroup.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Container","path":"../node_modules/@nuxt-themes/elements/components/globals/Container.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CopyButton","path":"../node_modules/@nuxt-themes/elements/components/globals/CopyButton.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"List","path":"../node_modules/@nuxt-themes/elements/components/globals/List.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"NuxtImg","path":"../node_modules/@nuxt-themes/elements/components/globals/NuxtImg.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Props","path":"../node_modules/@nuxt-themes/elements/components/globals/Props.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Sandbox","path":"../node_modules/@nuxt-themes/elements/components/globals/Sandbox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"TabsHeader","path":"../node_modules/@nuxt-themes/elements/components/globals/TabsHeader.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Terminal","path":"../node_modules/@nuxt-themes/elements/components/globals/Terminal.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"VideoPlayer","path":"../node_modules/@nuxt-themes/elements/components/globals/VideoPlayer.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconCodeSandBox","path":"../node_modules/@nuxt-themes/elements/components/icons/IconCodeSandBox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconDocus","path":"../node_modules/@nuxt-themes/elements/components/icons/IconDocus.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxt","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxt.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxtContent","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxtContent.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxtLabs","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxtLabs.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconNuxtStudio","path":"../node_modules/@nuxt-themes/elements/components/icons/IconNuxtStudio.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconStackBlitz","path":"../node_modules/@nuxt-themes/elements/components/icons/IconStackBlitz.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"IconVueTelescope","path":"../node_modules/@nuxt-themes/elements/components/icons/IconVueTelescope.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"BlockHero","path":"../node_modules/@nuxt-themes/elements/components/landing/BlockHero.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"Card","path":"../node_modules/@nuxt-themes/elements/components/landing/Card.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"CardGrid","path":"../node_modules/@nuxt-themes/elements/components/landing/CardGrid.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"VoltaBoard","path":"../node_modules/@nuxt-themes/elements/components/volta/VoltaBoard.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlayground","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlayground.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundData","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundData.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundProps","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundProps.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundSlots","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundSlots.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ComponentPlaygroundTokens","path":"../node_modules/@nuxt-themes/elements/components/meta/ComponentPlaygroundTokens.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"PreviewLayout","path":"../node_modules/@nuxt-themes/elements/components/meta/PreviewLayout.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"TokensPlayground","path":"../node_modules/@nuxt-themes/elements/components/meta/TokensPlayground.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"RecaptchaCheckbox","path":"../src/components/Checkbox.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"RecaptchaChallengeV2","path":"../src/components/ChallengeV2.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"RecaptchaChallengeV3","path":"../src/components/ChallengeV3.vue","meta":{"props":[],"slots":[],"events":[]}}]} \ No newline at end of file diff --git a/_nuxt/Badge.SrXj_iIy.js b/_nuxt/Badge.SouunExa.js similarity index 68% rename from _nuxt/Badge.SrXj_iIy.js rename to _nuxt/Badge.SouunExa.js index da016aaa89..8532d27cb9 100644 --- a/_nuxt/Badge.SrXj_iIy.js +++ b/_nuxt/Badge.SouunExa.js @@ -1 +1 @@ -import{d as n,b as t,c as s,$ as r,n as o,k as p}from"./entry.TEDHt2QA.js";const c=n({__name:"Badge",props:{type:{type:String,default:"info",validator(e){return["info","success","warning","danger","primary"].includes(e)}}},setup(e){return(a,d)=>(t(),s("span",{class:o([[e.type],"badge"])},[r(a.$slots,"default",{unwrap:"p"},void 0,!0)],2))}}),_=p(c,[["__scopeId","data-v-95776a62"]]);export{_ as default}; +import{d as n,b as t,c as s,$ as r,n as o,k as p}from"./entry.2w2g1VWZ.js";const c=n({__name:"Badge",props:{type:{type:String,default:"info",validator(e){return["info","success","warning","danger","primary"].includes(e)}}},setup(e){return(a,d)=>(t(),s("span",{class:o([[e.type],"badge"])},[r(a.$slots,"default",{unwrap:"p"},void 0,!0)],2))}}),_=p(c,[["__scopeId","data-v-95776a62"]]);export{_ as default}; diff --git a/_nuxt/BlockHero.poWu1pY1.js b/_nuxt/BlockHero.iMe1gqpW.js similarity index 85% rename from _nuxt/BlockHero.poWu1pY1.js rename to _nuxt/BlockHero.iMe1gqpW.js index 003b2f4bb6..2d826fd44f 100644 --- a/_nuxt/BlockHero.poWu1pY1.js +++ b/_nuxt/BlockHero.iMe1gqpW.js @@ -1 +1 @@ -import m from"./ButtonLink.KvhTbcIS.js";import f from"./Terminal.qDAZlX-Q.js";import y from"./VideoPlayer.nlPS_y-m.js";import{d as _,b as o,c as n,e as s,$ as a,f as r,F as h,Y as c,w as k,t as d,G as i,ad as v,k as $}from"./entry.TEDHt2QA.js";import"./NuxtImg.vue.XitBA6AI.js";const w={class:"block-hero"},B={class:"layout"},S={class:"content"},g={key:0,class:"announce"},q={class:"title"},H={class:"description"},V={key:1,class:"extra"},b={class:"actions"},A=["href"],C={class:"support"},N=_({__name:"BlockHero",props:{cta:{type:Array,required:!1,default:()=>[]},secondary:{type:Array,required:!1,default:()=>[]},video:{type:String,required:!1,default:""},snippet:{type:[Array,String],required:!1,default:""}},setup(e){return(t,T)=>{const l=m,u=f,p=y;return o(),n("section",w,[s("div",B,[s("div",S,[t.$slots.announce?(o(),n("p",g,[a(t.$slots,"announce",{unwrap:"p"},void 0,!0)])):r("",!0),s("h1",q,[a(t.$slots,"title",{unwrap:"p"},()=>[i(" Hero Title ")],!0)]),s("p",H,[a(t.$slots,"description",{unwrap:"p"},()=>[i(" Hero default description. ")],!0)]),t.$slots.extra?(o(),n("div",V,[a(t.$slots,"extra",{unwrap:"p"},void 0,!0)])):r("",!0),s("div",b,[t.$slots.actions?a(t.$slots,"actions",{key:0,unwrap:"p"},void 0,!0):(o(),n(h,{key:1},[e.cta?(o(),c(l,{key:0,class:"cta",bold:"",size:"medium",href:e.cta[1]},{default:k(()=>[i(d(e.cta[0]),1)]),_:1},8,["href"])):r("",!0),e.secondary?(o(),n("a",{key:1,href:e.secondary[1],class:"secondary"},d(e.secondary[0]),9,A)):r("",!0)],64))])]),s("div",C,[v(t.$slots,"support",{},()=>[e.snippet?(o(),c(u,{key:0,content:e.snippet},null,8,["content"])):e.video?(o(),c(p,{key:1,src:e.video},null,8,["src"])):r("",!0)],!0)])])])}}}),G=$(N,[["__scopeId","data-v-8013571d"]]);export{G as default}; +import m from"./ButtonLink.zZVq8ThH.js";import f from"./Terminal.ioBbO3yw.js";import y from"./VideoPlayer.f-8bQb4l.js";import{d as _,b as o,c as n,e as s,$ as a,f as r,F as h,Y as c,w as k,t as d,G as i,ad as v,k as $}from"./entry.2w2g1VWZ.js";import"./NuxtImg.vue.5zIl8PSO.js";const w={class:"block-hero"},B={class:"layout"},S={class:"content"},g={key:0,class:"announce"},q={class:"title"},H={class:"description"},V={key:1,class:"extra"},b={class:"actions"},A=["href"],C={class:"support"},N=_({__name:"BlockHero",props:{cta:{type:Array,required:!1,default:()=>[]},secondary:{type:Array,required:!1,default:()=>[]},video:{type:String,required:!1,default:""},snippet:{type:[Array,String],required:!1,default:""}},setup(e){return(t,T)=>{const l=m,u=f,p=y;return o(),n("section",w,[s("div",B,[s("div",S,[t.$slots.announce?(o(),n("p",g,[a(t.$slots,"announce",{unwrap:"p"},void 0,!0)])):r("",!0),s("h1",q,[a(t.$slots,"title",{unwrap:"p"},()=>[i(" Hero Title ")],!0)]),s("p",H,[a(t.$slots,"description",{unwrap:"p"},()=>[i(" Hero default description. ")],!0)]),t.$slots.extra?(o(),n("div",V,[a(t.$slots,"extra",{unwrap:"p"},void 0,!0)])):r("",!0),s("div",b,[t.$slots.actions?a(t.$slots,"actions",{key:0,unwrap:"p"},void 0,!0):(o(),n(h,{key:1},[e.cta?(o(),c(l,{key:0,class:"cta",bold:"",size:"medium",href:e.cta[1]},{default:k(()=>[i(d(e.cta[0]),1)]),_:1},8,["href"])):r("",!0),e.secondary?(o(),n("a",{key:1,href:e.secondary[1],class:"secondary"},d(e.secondary[0]),9,A)):r("",!0)],64))])]),s("div",C,[v(t.$slots,"support",{},()=>[e.snippet?(o(),c(u,{key:0,content:e.snippet},null,8,["content"])):e.video?(o(),c(p,{key:1,src:e.video},null,8,["src"])):r("",!0)],!0)])])])}}}),G=$(N,[["__scopeId","data-v-8013571d"]]);export{G as default}; diff --git a/_nuxt/ButtonLink.KvhTbcIS.js b/_nuxt/ButtonLink.zZVq8ThH.js similarity index 91% rename from _nuxt/ButtonLink.KvhTbcIS.js rename to _nuxt/ButtonLink.zZVq8ThH.js index cdc957f58c..5aff5312c9 100644 --- a/_nuxt/ButtonLink.KvhTbcIS.js +++ b/_nuxt/ButtonLink.zZVq8ThH.js @@ -1 +1 @@ -import{d as p,al as f,K as a,ae as m,b as o,Y as i,w as _,f as g,$ as x,n as S,L as b,a1 as h,H as k,k as z}from"./entry.TEDHt2QA.js";const y=p({__name:"ButtonLink",props:{blank:{type:Boolean,required:!1,default:!1},color:f("primary"),href:{type:String,required:!0,default:""},icon:{type:String,default:""},size:{required:!1,type:[String,Object],default:"medium"},transparent:{required:!1,type:[Boolean,Object],default:!1}},setup(e){const s=a(()=>((t=n)=>`{color.${t.color}.600}`)()),l=a(()=>((t=n)=>`{color.${t.color}.500}`)()),n=e,r={size:{small:{padding:"{space.2} {space.4}",fontSize:"{text.sm.fontSize}",lineHeight:"{text.sm.lineHeight}"},medium:{padding:"{space.rem.625} {space.5}",fontSize:"{text.base.fontSize}",lineHeight:"{text.base.lineHeight}"},large:{padding:"{space.3} {space.6}",fontSize:"{text.lg.fontSize}",lineHeight:"{text.lg.lineHeight}"},giant:{padding:"{space.4} {space.8}",fontSize:"{text.lg.fontSize}",lineHeight:"{text.lg.lineHeight}"}},transparent:{true:{backgroundColor:"transparent"}}},{$pinceau:c}=m(n,r,{_YM9_buttonPrimary:s,_A23_buttonSecondary:l});return(t,H)=>{const u=h,d=k;return o(),i(d,{class:S(["button-link",[b(c)]]),to:e.href,target:e.blank?"_blank":void 0},{default:_(()=>[e.icon?(o(),i(u,{key:0,name:e.icon},null,8,["name"])):g("",!0),x(t.$slots,"default",{unwrap:"p ul li"},void 0,!0)]),_:3},8,["to","target","class"])}}}),B=z(y,[["__scopeId","data-v-c9c0da25"]]);export{B as default}; +import{d as p,al as f,K as a,ae as m,b as o,Y as i,w as _,f as g,$ as x,n as S,L as b,a1 as h,H as k,k as z}from"./entry.2w2g1VWZ.js";const y=p({__name:"ButtonLink",props:{blank:{type:Boolean,required:!1,default:!1},color:f("primary"),href:{type:String,required:!0,default:""},icon:{type:String,default:""},size:{required:!1,type:[String,Object],default:"medium"},transparent:{required:!1,type:[Boolean,Object],default:!1}},setup(e){const s=a(()=>((t=n)=>`{color.${t.color}.600}`)()),l=a(()=>((t=n)=>`{color.${t.color}.500}`)()),n=e,r={size:{small:{padding:"{space.2} {space.4}",fontSize:"{text.sm.fontSize}",lineHeight:"{text.sm.lineHeight}"},medium:{padding:"{space.rem.625} {space.5}",fontSize:"{text.base.fontSize}",lineHeight:"{text.base.lineHeight}"},large:{padding:"{space.3} {space.6}",fontSize:"{text.lg.fontSize}",lineHeight:"{text.lg.lineHeight}"},giant:{padding:"{space.4} {space.8}",fontSize:"{text.lg.fontSize}",lineHeight:"{text.lg.lineHeight}"}},transparent:{true:{backgroundColor:"transparent"}}},{$pinceau:c}=m(n,r,{_YM9_buttonPrimary:s,_A23_buttonSecondary:l});return(t,H)=>{const u=h,d=k;return o(),i(d,{class:S(["button-link",[b(c)]]),to:e.href,target:e.blank?"_blank":void 0},{default:_(()=>[e.icon?(o(),i(u,{key:0,name:e.icon},null,8,["name"])):g("",!0),x(t.$slots,"default",{unwrap:"p ul li"},void 0,!0)]),_:3},8,["to","target","class"])}}}),B=z(y,[["__scopeId","data-v-c9c0da25"]]);export{B as default}; diff --git a/_nuxt/Callout.j9rHm2NJ.js b/_nuxt/Callout.hSu6Wdkf.js similarity index 92% rename from _nuxt/Callout.j9rHm2NJ.js rename to _nuxt/Callout.hSu6Wdkf.js index 7f55661894..3ee44c92a9 100644 --- a/_nuxt/Callout.j9rHm2NJ.js +++ b/_nuxt/Callout.hSu6Wdkf.js @@ -1 +1 @@ -import{d as p,r as o,b as _,c as f,e as s,$ as n,g as v,n as l,L as c,a2 as h,aJ as g,a1 as y,k as V}from"./entry.TEDHt2QA.js";const C={class:"summary"},k={class:"content"},w=p({__name:"Callout",props:{type:{type:String,default:"info",validator(a){return["info","success","warning","danger","primary"].includes(a)}},modelValue:{required:!1,default:()=>o(!1)}},emits:["update:modelValue"],setup(a,{emit:r}){const i=a,u=r,e=o(i.modelValue),d=()=>{e.value=!e.value,u("update:modelValue",e.value)};return(t,B)=>{const m=y;return _(),f("div",{class:l(["callout",[a.type]])},[s("span",{class:"preview",onClick:d},[s("span",C,[n(t.$slots,"summary",{},void 0,!0)]),v(m,{name:"heroicons-outline:chevron-right",class:l(["icon",[c(e)&&"rotate"]])},null,8,["class"])]),h(s("div",k,[n(t.$slots,"content",{},void 0,!0)],512),[[g,c(e)]])],2)}}}),$=V(w,[["__scopeId","data-v-a97d64bd"]]);export{$ as default}; +import{d as p,r as o,b as _,c as f,e as s,$ as n,g as v,n as l,L as c,a2 as h,aJ as g,a1 as y,k as V}from"./entry.2w2g1VWZ.js";const C={class:"summary"},k={class:"content"},w=p({__name:"Callout",props:{type:{type:String,default:"info",validator(a){return["info","success","warning","danger","primary"].includes(a)}},modelValue:{required:!1,default:()=>o(!1)}},emits:["update:modelValue"],setup(a,{emit:r}){const i=a,u=r,e=o(i.modelValue),d=()=>{e.value=!e.value,u("update:modelValue",e.value)};return(t,B)=>{const m=y;return _(),f("div",{class:l(["callout",[a.type]])},[s("span",{class:"preview",onClick:d},[s("span",C,[n(t.$slots,"summary",{},void 0,!0)]),v(m,{name:"heroicons-outline:chevron-right",class:l(["icon",[c(e)&&"rotate"]])},null,8,["class"])]),h(s("div",k,[n(t.$slots,"content",{},void 0,!0)],512),[[g,c(e)]])],2)}}}),$=V(w,[["__scopeId","data-v-a97d64bd"]]);export{$ as default}; diff --git a/_nuxt/Card.L9sNeYTi.js b/_nuxt/Card.BzG3yGUC.js similarity index 89% rename from _nuxt/Card.L9sNeYTi.js rename to _nuxt/Card.BzG3yGUC.js index 7eccaf2a31..c47f1a6234 100644 --- a/_nuxt/Card.L9sNeYTi.js +++ b/_nuxt/Card.BzG3yGUC.js @@ -1 +1 @@ -import{d as r,b as s,c as d,Y as i,f as l,ad as _,e as t,$ as n,a1 as p,G as a,k as u}from"./entry.TEDHt2QA.js";const m={class:"card"},f={class:"title"},$={class:"description"},h=r({__name:"Card",props:{icon:{type:String,default:""}},setup(o){return(e,k)=>{const c=p;return s(),d("div",m,[o.icon?(s(),i(c,{key:0,name:o.icon},null,8,["name"])):l("",!0),_(e.$slots,"default",{},void 0,!0),t("div",null,[t("h3",f,[n(e.$slots,"title",{unwrap:"p"},()=>[a(" Card title ")],!0)]),t("p",$,[n(e.$slots,"description",{unwrap:"p"},()=>[a(" Card description ")],!0)])])])}}}),v=u(h,[["__scopeId","data-v-fcbd031d"]]);export{v as default}; +import{d as r,b as s,c as d,Y as i,f as l,ad as _,e as t,$ as n,a1 as p,G as a,k as u}from"./entry.2w2g1VWZ.js";const m={class:"card"},f={class:"title"},$={class:"description"},h=r({__name:"Card",props:{icon:{type:String,default:""}},setup(o){return(e,k)=>{const c=p;return s(),d("div",m,[o.icon?(s(),i(c,{key:0,name:o.icon},null,8,["name"])):l("",!0),_(e.$slots,"default",{},void 0,!0),t("div",null,[t("h3",f,[n(e.$slots,"title",{unwrap:"p"},()=>[a(" Card title ")],!0)]),t("p",$,[n(e.$slots,"description",{unwrap:"p"},()=>[a(" Card description ")],!0)])])])}}}),v=u(h,[["__scopeId","data-v-fcbd031d"]]);export{v as default}; diff --git a/_nuxt/CardGrid.0MuI_gyy.js b/_nuxt/CardGrid.rxd_hY7g.js similarity index 87% rename from _nuxt/CardGrid.0MuI_gyy.js rename to _nuxt/CardGrid.rxd_hY7g.js index 3bbdb6cb19..bba10e5cb6 100644 --- a/_nuxt/CardGrid.0MuI_gyy.js +++ b/_nuxt/CardGrid.rxd_hY7g.js @@ -1 +1 @@ -import{d as o,b as r,c as d,$ as e,e as s,ad as c,G as i,t as l,k as n}from"./entry.TEDHt2QA.js";const p={class:"card-grid"},_={class:"title"},u={class:"layout"},f=o({__name:"CardGrid",props:{title:{type:String,default:"Features"}},setup(a){return(t,m)=>(r(),d("section",p,[e(t.$slots,"root",{},void 0,!0),s("h2",_,[e(t.$slots,"title",{unwrap:"p"},()=>[i(l(a.title),1)],!0)]),s("div",u,[c(t.$slots,"default",{},void 0,!0)])]))}}),$=n(f,[["__scopeId","data-v-12aa13c8"]]);export{$ as default}; +import{d as o,b as r,c as d,$ as e,e as s,ad as c,G as i,t as l,k as n}from"./entry.2w2g1VWZ.js";const p={class:"card-grid"},_={class:"title"},u={class:"layout"},f=o({__name:"CardGrid",props:{title:{type:String,default:"Features"}},setup(a){return(t,m)=>(r(),d("section",p,[e(t.$slots,"root",{},void 0,!0),s("h2",_,[e(t.$slots,"title",{unwrap:"p"},()=>[i(l(a.title),1)],!0)]),s("div",u,[c(t.$slots,"default",{},void 0,!0)])]))}}),$=n(f,[["__scopeId","data-v-12aa13c8"]]);export{$ as default}; diff --git a/_nuxt/ChallengeV2.kmo3670I.js b/_nuxt/ChallengeV2.kmo3670I.js deleted file mode 100644 index 111bef83f4..0000000000 --- a/_nuxt/ChallengeV2.kmo3670I.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./ChallengeV2.vue.VhWqa73j.js";import"./component-v2.a5wbyfd6.js";import"./index.devlPsl3.js";import"./entry.TEDHt2QA.js";export{o as default}; diff --git a/_nuxt/ChallengeV2.vue.VhWqa73j.js b/_nuxt/ChallengeV2.vue.MiUOdAxt.js similarity index 85% rename from _nuxt/ChallengeV2.vue.VhWqa73j.js rename to _nuxt/ChallengeV2.vue.MiUOdAxt.js index 358a1e7762..767ef3cbf3 100644 --- a/_nuxt/ChallengeV2.vue.VhWqa73j.js +++ b/_nuxt/ChallengeV2.vue.MiUOdAxt.js @@ -1 +1 @@ -import{u as x}from"./component-v2.a5wbyfd6.js";import{d as b,am as V,a8 as _,b as v,Y as w,w as C,L as h,an as k,ao as B,ad as E,e as I,ap as y}from"./entry.TEDHt2QA.js";const R=b({__name:"ChallengeV2",props:{as:{default:"div"},widgetId:{},badge:{default:"bottomright"},tabindex:{},autoExecute:{type:Boolean,default:!0},modelValue:{}},emits:["load","error","expired","success","update:widgetId","update:modelValue"],setup(s,{expose:r,emit:i}){const e=s,d=i,{root:n,reset:a,widgetID:l,state:u,execute:t,isError:p,isExpired:c,isVerified:m}=x({size:"invisible",badge:e.badge,tabindex:e.tabindex},V(e,"modelValue"),d),f=_({execute:t,widgetId:l,state:u,reset:a,isError:p,isExpired:c,isVerified:m});function g(){e.autoExecute&&t()}return r({execute:t,reset:a}),(o,z)=>(v(),w(y(o.as),{onClick:g},{default:C(()=>[E(o.$slots,"default",B(k(h(f)))),I("div",{ref_key:"root",ref:n},null,512)]),_:3}))}});export{R as _}; +import{u as x}from"./component-v2.AWWRLQbf.js";import{d as b,am as V,a8 as _,b as v,Y as w,w as C,L as h,an as k,ao as B,ad as E,e as I,ap as y}from"./entry.2w2g1VWZ.js";const R=b({__name:"ChallengeV2",props:{as:{default:"div"},widgetId:{},badge:{default:"bottomright"},tabindex:{},autoExecute:{type:Boolean,default:!0},modelValue:{}},emits:["load","error","expired","success","update:widgetId","update:modelValue"],setup(s,{expose:r,emit:i}){const e=s,d=i,{root:n,reset:a,widgetID:l,state:u,execute:t,isError:p,isExpired:c,isVerified:m}=x({size:"invisible",badge:e.badge,tabindex:e.tabindex},V(e,"modelValue"),d),f=_({execute:t,widgetId:l,state:u,reset:a,isError:p,isExpired:c,isVerified:m});function g(){e.autoExecute&&t()}return r({execute:t,reset:a}),(o,z)=>(v(),w(y(o.as),{onClick:g},{default:C(()=>[E(o.$slots,"default",B(k(h(f)))),I("div",{ref_key:"root",ref:n},null,512)]),_:3}))}});export{R as _}; diff --git a/_nuxt/ChallengeV2.x2DxOGgI.js b/_nuxt/ChallengeV2.x2DxOGgI.js new file mode 100644 index 0000000000..cabb1502fd --- /dev/null +++ b/_nuxt/ChallengeV2.x2DxOGgI.js @@ -0,0 +1 @@ +import{_ as o}from"./ChallengeV2.vue.MiUOdAxt.js";import"./component-v2.AWWRLQbf.js";import"./index.OaNwcZ7q.js";import"./entry.2w2g1VWZ.js";export{o as default}; diff --git a/_nuxt/ChallengeV2Demo.MOrg3CNM.js b/_nuxt/ChallengeV2Demo.gPrqhMW4.js similarity index 54% rename from _nuxt/ChallengeV2Demo.MOrg3CNM.js rename to _nuxt/ChallengeV2Demo.gPrqhMW4.js index de5cea1066..1ced38f39f 100644 --- a/_nuxt/ChallengeV2Demo.MOrg3CNM.js +++ b/_nuxt/ChallengeV2Demo.gPrqhMW4.js @@ -1 +1 @@ -import p from"./PrimaryButton.FCsViibh.js";import{_ as c}from"./ChallengeV2.vue.VhWqa73j.js";import{d as _,r as d,b as f,Y as u,w as n,t as s,L as a,G as V,g as x,Z as C}from"./entry.TEDHt2QA.js";import{R as t}from"./component-v2.a5wbyfd6.js";import"./index.devlPsl3.js";const y=_({__name:"ChallengeV2Demo",setup(g){const l={[t.Init]:"Click to Challenge",[t.Verified]:"Verified",[t.Expired]:"Expired",[t.Error]:"Error"},e=d();return(h,r)=>{const i=p,m=c;return f(),u(m,{modelValue:a(e),"onUpdate:modelValue":r[0]||(r[0]=o=>C(e)?e.value=o:null)},{default:n(({state:o})=>[x(i,null,{default:n(()=>[V(s(l[o])+s(a(e)?` ${a(e).slice(0,6)}...`:""),1)]),_:2},1024)]),_:1},8,["modelValue"])}}});export{y as default}; +import p from"./PrimaryButton.3_DqpC_5.js";import{_ as c}from"./ChallengeV2.vue.MiUOdAxt.js";import{d as _,r as d,b as f,Y as u,w as n,t as s,L as a,G as V,g as x,Z as C}from"./entry.2w2g1VWZ.js";import{R as t}from"./component-v2.AWWRLQbf.js";import"./index.OaNwcZ7q.js";const y=_({__name:"ChallengeV2Demo",setup(g){const l={[t.Init]:"Click to Challenge",[t.Verified]:"Verified",[t.Expired]:"Expired",[t.Error]:"Error"},e=d();return(h,r)=>{const i=p,m=c;return f(),u(m,{modelValue:a(e),"onUpdate:modelValue":r[0]||(r[0]=o=>C(e)?e.value=o:null)},{default:n(({state:o})=>[x(i,null,{default:n(()=>[V(s(l[o])+s(a(e)?` ${a(e).slice(0,6)}...`:""),1)]),_:2},1024)]),_:1},8,["modelValue"])}}});export{y as default}; diff --git a/_nuxt/ChallengeV3.-HLbHbHP.js b/_nuxt/ChallengeV3.-HLbHbHP.js new file mode 100644 index 0000000000..5811d616d9 --- /dev/null +++ b/_nuxt/ChallengeV3.-HLbHbHP.js @@ -0,0 +1 @@ +import{_ as o}from"./ChallengeV3.vue.NIw8SbQz.js";import"./index.OaNwcZ7q.js";import"./entry.2w2g1VWZ.js";export{o as default}; diff --git a/_nuxt/ChallengeV3.BHTEn9Jm.js b/_nuxt/ChallengeV3.BHTEn9Jm.js deleted file mode 100644 index 35cdf0f70c..0000000000 --- a/_nuxt/ChallengeV3.BHTEn9Jm.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./ChallengeV3.vue.jUQOIvrh.js";import"./index.devlPsl3.js";import"./entry.TEDHt2QA.js";export{o as default}; diff --git a/_nuxt/ChallengeV3.vue.jUQOIvrh.js b/_nuxt/ChallengeV3.vue.NIw8SbQz.js similarity index 82% rename from _nuxt/ChallengeV3.vue.jUQOIvrh.js rename to _nuxt/ChallengeV3.vue.NIw8SbQz.js index e7c1a249ff..91b40ee0ec 100644 --- a/_nuxt/ChallengeV3.vue.jUQOIvrh.js +++ b/_nuxt/ChallengeV3.vue.NIw8SbQz.js @@ -1 +1 @@ -import{w as l}from"./index.devlPsl3.js";import{av as i,ar as p,r as m,d,a8 as f,b as x,Y as v,w as y,L as h,an as C,ao as V,ad as _,ap as w}from"./entry.TEDHt2QA.js";function g(s){const o=i(),e=p(),a=m();return{response:a,async execute(){return a.value=await e.execute(o,{action:s})}}}const A=d({__name:"ChallengeV3",props:{action:{},as:{default:"div"},autoExecute:{type:Boolean,default:!0},modelValue:{}},emits:["update:modelValue"],setup(s,{emit:o}){const e=s,a=o,{response:n,execute:r}=g(e.action),u=f({response:n,execute:r});l(n,t=>{a("update:modelValue",t)});function c(){e.autoExecute&&r()}return(t,k)=>(x(),v(w(t.as),{onClick:c},{default:y(()=>[_(t.$slots,"default",V(C(h(u))))]),_:3}))}});export{A as _}; +import{w as l}from"./index.OaNwcZ7q.js";import{av as i,ar as p,r as m,d,a8 as f,b as x,Y as v,w as y,L as h,an as C,ao as V,ad as _,ap as w}from"./entry.2w2g1VWZ.js";function g(s){const o=i(),e=p(),a=m();return{response:a,async execute(){return a.value=await e.execute(o,{action:s})}}}const A=d({__name:"ChallengeV3",props:{action:{},as:{default:"div"},autoExecute:{type:Boolean,default:!0},modelValue:{}},emits:["update:modelValue"],setup(s,{emit:o}){const e=s,a=o,{response:n,execute:r}=g(e.action),u=f({response:n,execute:r});l(n,t=>{a("update:modelValue",t)});function c(){e.autoExecute&&r()}return(t,k)=>(x(),v(w(t.as),{onClick:c},{default:y(()=>[_(t.$slots,"default",V(C(h(u))))]),_:3}))}});export{A as _}; diff --git a/_nuxt/ChallengeV3Demo.11DElVUe.js b/_nuxt/ChallengeV3Demo.nkgdJny3.js similarity index 56% rename from _nuxt/ChallengeV3Demo.11DElVUe.js rename to _nuxt/ChallengeV3Demo.nkgdJny3.js index b54c4a3bc6..31cc56a7a0 100644 --- a/_nuxt/ChallengeV3Demo.11DElVUe.js +++ b/_nuxt/ChallengeV3Demo.nkgdJny3.js @@ -1 +1 @@ -import m from"./PrimaryButton.FCsViibh.js";import{_ as c}from"./ChallengeV3.vue.jUQOIvrh.js";import{d as _,r as p,b as i,c as u,g as n,w as a,L as t,t as d,G as f,Z as V}from"./entry.TEDHt2QA.js";import"./index.devlPsl3.js";const b=_({__name:"ChallengeV3Demo",setup(x){const e=p();return(g,o)=>{const s=m,l=c;return i(),u("div",null,[n(l,{modelValue:t(e),"onUpdate:modelValue":o[0]||(o[0]=r=>V(e)?e.value=r:null),action:"submit"},{default:a(()=>[n(s,null,{default:a(()=>[f(d(t(e)?`Get response: ${t(e).slice(0,6)}...`:"click me"),1)]),_:1})]),_:1},8,["modelValue"])])}}});export{b as default}; +import m from"./PrimaryButton.3_DqpC_5.js";import{_ as c}from"./ChallengeV3.vue.NIw8SbQz.js";import{d as _,r as p,b as i,c as u,g as n,w as a,L as t,t as d,G as f,Z as V}from"./entry.2w2g1VWZ.js";import"./index.OaNwcZ7q.js";const b=_({__name:"ChallengeV3Demo",setup(x){const e=p();return(g,o)=>{const s=m,l=c;return i(),u("div",null,[n(l,{modelValue:t(e),"onUpdate:modelValue":o[0]||(o[0]=r=>V(e)?e.value=r:null),action:"submit"},{default:a(()=>[n(s,null,{default:a(()=>[f(d(t(e)?`Get response: ${t(e).slice(0,6)}...`:"click me"),1)]),_:1})]),_:1},8,["modelValue"])])}}});export{b as default}; diff --git a/_nuxt/Checkbox.MRQtbkdP.js b/_nuxt/Checkbox.MRQtbkdP.js new file mode 100644 index 0000000000..d444cc4300 --- /dev/null +++ b/_nuxt/Checkbox.MRQtbkdP.js @@ -0,0 +1 @@ +import{_ as o}from"./Checkbox.vue.7dAWGJOj.js";import"./component-v2.AWWRLQbf.js";import"./index.OaNwcZ7q.js";import"./entry.2w2g1VWZ.js";export{o as default}; diff --git a/_nuxt/Checkbox.rmToST7V.js b/_nuxt/Checkbox.rmToST7V.js deleted file mode 100644 index e9d3558af1..0000000000 --- a/_nuxt/Checkbox.rmToST7V.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as o}from"./Checkbox.vue.zE85wFil.js";import"./component-v2.a5wbyfd6.js";import"./index.devlPsl3.js";import"./entry.TEDHt2QA.js";export{o as default}; diff --git a/_nuxt/Checkbox.vue.zE85wFil.js b/_nuxt/Checkbox.vue.7dAWGJOj.js similarity index 75% rename from _nuxt/Checkbox.vue.zE85wFil.js rename to _nuxt/Checkbox.vue.7dAWGJOj.js index b66a772862..49ca9c0915 100644 --- a/_nuxt/Checkbox.vue.zE85wFil.js +++ b/_nuxt/Checkbox.vue.7dAWGJOj.js @@ -1 +1 @@ -import{u as r}from"./component-v2.a5wbyfd6.js";import{d as m,am as d,b as i,Y as l,ap as p}from"./entry.TEDHt2QA.js";const _=m({__name:"Checkbox",props:{as:{default:"div"},widgetId:{},size:{default:"normal"},theme:{default:"light"},tabindex:{},modelValue:{}},emits:["load","error","expired","success","update:widgetId","update:modelValue"],setup(t,{emit:o}){const e=t,a=o,{root:s}=r({theme:e.theme,size:e.size,tabindex:e.tabindex},d(e,"modelValue"),a);return(n,u)=>(i(),l(p(n.as),{ref_key:"root",ref:s},null,512))}});export{_}; +import{u as r}from"./component-v2.AWWRLQbf.js";import{d as m,am as d,b as i,Y as l,ap as p}from"./entry.2w2g1VWZ.js";const _=m({__name:"Checkbox",props:{as:{default:"div"},widgetId:{},size:{default:"normal"},theme:{default:"light"},tabindex:{},modelValue:{}},emits:["load","error","expired","success","update:widgetId","update:modelValue"],setup(t,{emit:o}){const e=t,a=o,{root:s}=r({theme:e.theme,size:e.size,tabindex:e.tabindex},d(e,"modelValue"),a);return(n,u)=>(i(),l(p(n.as),{ref_key:"root",ref:s},null,512))}});export{_}; diff --git a/_nuxt/CheckboxDemo.wwPeTTHd.js b/_nuxt/CheckboxDemo.iQsxuYOJ.js similarity index 57% rename from _nuxt/CheckboxDemo.wwPeTTHd.js rename to _nuxt/CheckboxDemo.iQsxuYOJ.js index b37332ff45..876c33fcc2 100644 --- a/_nuxt/CheckboxDemo.wwPeTTHd.js +++ b/_nuxt/CheckboxDemo.iQsxuYOJ.js @@ -1 +1 @@ -import{_ as i}from"./ThemeButton.vue.QVGC5WYd.js";import{_ as c}from"./Checkbox.vue.zE85wFil.js";import{d as p,r as a,b as s,c as d,g as f,L as l,Z as m,e as _,t as k,Y as V}from"./entry.TEDHt2QA.js";import"./component-v2.a5wbyfd6.js";import"./index.devlPsl3.js";const $=p({__name:"CheckboxDemo",setup(v){const o=a("light"),t=a();return(h,e)=>{const r=i,u=c;return s(),d("div",null,[f(r,{modelValue:l(o),"onUpdate:modelValue":e[0]||(e[0]=n=>m(o)?o.value=n:null),onClick:e[1]||(e[1]=n=>t.value="")},null,8,["modelValue"]),_("div",null,k(l(t)?"Verified":"Please click the checkbox"),1),(s(),V(u,{key:l(o),modelValue:l(t),"onUpdate:modelValue":e[2]||(e[2]=n=>m(t)?t.value=n:null),theme:l(o)},null,8,["modelValue","theme"]))])}}});export{$ as default}; +import{_ as i}from"./ThemeButton.vue.h40yM2hQ.js";import{_ as c}from"./Checkbox.vue.7dAWGJOj.js";import{d as p,r as a,b as s,c as d,g as f,L as l,Z as m,e as _,t as k,Y as V}from"./entry.2w2g1VWZ.js";import"./component-v2.AWWRLQbf.js";import"./index.OaNwcZ7q.js";const $=p({__name:"CheckboxDemo",setup(v){const o=a("light"),t=a();return(h,e)=>{const r=i,u=c;return s(),d("div",null,[f(r,{modelValue:l(o),"onUpdate:modelValue":e[0]||(e[0]=n=>m(o)?o.value=n:null),onClick:e[1]||(e[1]=n=>t.value="")},null,8,["modelValue"]),_("div",null,k(l(t)?"Verified":"Please click the checkbox"),1),(s(),V(u,{key:l(o),modelValue:l(t),"onUpdate:modelValue":e[2]||(e[2]=n=>m(t)?t.value=n:null),theme:l(o)},null,8,["modelValue","theme"]))])}}});export{$ as default}; diff --git a/_nuxt/CodeBlock.H5YRz7mE.js b/_nuxt/CodeBlock.Lugc7cba.js similarity index 69% rename from _nuxt/CodeBlock.H5YRz7mE.js rename to _nuxt/CodeBlock.Lugc7cba.js index 916613c467..9ea4ac4038 100644 --- a/_nuxt/CodeBlock.H5YRz7mE.js +++ b/_nuxt/CodeBlock.Lugc7cba.js @@ -1 +1 @@ -import{d as o,b as t,c as l,ad as s,n as r,k as c}from"./entry.TEDHt2QA.js";const d=o({__name:"CodeBlock",props:{label:{type:String,required:!0},active:{type:Boolean,default:!1},preview:{type:Boolean,default:!1}},setup(e){return(a,n)=>(t(),l("div",{class:r(["code-block",{active:e.active,"rounded-lg p-4":e.preview}])},[s(a.$slots,"default",{},void 0,!0)],2))}}),p=c(d,[["__scopeId","data-v-31606f9f"]]);export{p as default}; +import{d as o,b as t,c as l,ad as s,n as r,k as c}from"./entry.2w2g1VWZ.js";const d=o({__name:"CodeBlock",props:{label:{type:String,required:!0},active:{type:Boolean,default:!1},preview:{type:Boolean,default:!1}},setup(e){return(a,n)=>(t(),l("div",{class:r(["code-block",{active:e.active,"rounded-lg p-4":e.preview}])},[s(a.$slots,"default",{},void 0,!0)],2))}}),p=c(d,[["__scopeId","data-v-31606f9f"]]);export{p as default}; diff --git a/_nuxt/CodeGroup.kKhKszRR.js b/_nuxt/CodeGroup.21lmZNJJ.js similarity index 88% rename from _nuxt/CodeGroup.kKhKszRR.js rename to _nuxt/CodeGroup.21lmZNJJ.js index 14882d5492..06a26e539c 100644 --- a/_nuxt/CodeGroup.kKhKszRR.js +++ b/_nuxt/CodeGroup.21lmZNJJ.js @@ -1 +1 @@ -import b from"./TabsHeader.aoUmep7C.js";import{d as u,Q as t,k as f}from"./entry.TEDHt2QA.js";const r=(n,i)=>n.type&&n.type.tag&&n.type.tag===i,o=u({data(){return{activeTabIndex:0,counter:0}},render(){var d,s;const n=((s=(d=this.$slots)==null?void 0:d.default)==null?void 0:s.call(d))||[],i=n.map((e,p)=>{var a,c,v;return{label:((a=e==null?void 0:e.props)==null?void 0:a.filename)||((c=e==null?void 0:e.props)==null?void 0:c.label)||`${p}`,active:((v=e==null?void 0:e.props)==null?void 0:v.active)||!1,component:e}});return t("div",{class:{"code-group":!0,"first-tab":this.activeTabIndex===0}},[t(b,{ref:"tabs-header",activeTabIndex:this.activeTabIndex,tabs:i,"onUpdate:activeTabIndex":e=>this.activeTabIndex=e}),t("div",{class:"code-group-content",text:this.activeTabIndex},n.map((e,p)=>{var a,c;return t("div",{style:{display:p===this.activeTabIndex?"block":"none"},class:{"":!r(e,"code")&&!r(e,"pre")}},[r(e,"code")||r(e,"pre")?e:t("div",{class:{"preview-canvas":!0}},[((c=(a=e.children)==null?void 0:a.default)==null?void 0:c.call(a))||e.children])])}))])}}),h=f(o,[["__scopeId","data-v-b8ed3fdc"]]);export{h as default}; +import b from"./TabsHeader.p2gr41k7.js";import{d as u,Q as t,k as f}from"./entry.2w2g1VWZ.js";const r=(n,i)=>n.type&&n.type.tag&&n.type.tag===i,o=u({data(){return{activeTabIndex:0,counter:0}},render(){var d,s;const n=((s=(d=this.$slots)==null?void 0:d.default)==null?void 0:s.call(d))||[],i=n.map((e,p)=>{var a,c,v;return{label:((a=e==null?void 0:e.props)==null?void 0:a.filename)||((c=e==null?void 0:e.props)==null?void 0:c.label)||`${p}`,active:((v=e==null?void 0:e.props)==null?void 0:v.active)||!1,component:e}});return t("div",{class:{"code-group":!0,"first-tab":this.activeTabIndex===0}},[t(b,{ref:"tabs-header",activeTabIndex:this.activeTabIndex,tabs:i,"onUpdate:activeTabIndex":e=>this.activeTabIndex=e}),t("div",{class:"code-group-content",text:this.activeTabIndex},n.map((e,p)=>{var a,c;return t("div",{style:{display:p===this.activeTabIndex?"block":"none"},class:{"":!r(e,"code")&&!r(e,"pre")}},[r(e,"code")||r(e,"pre")?e:t("div",{class:{"preview-canvas":!0}},[((c=(a=e.children)==null?void 0:a.default)==null?void 0:c.call(a))||e.children])])}))])}}),h=f(o,[["__scopeId","data-v-b8ed3fdc"]]);export{h as default}; diff --git a/_nuxt/ComponentPlayground.GvB8FG5c.js b/_nuxt/ComponentPlayground.G5gJQDAu.js similarity index 85% rename from _nuxt/ComponentPlayground.GvB8FG5c.js rename to _nuxt/ComponentPlayground.G5gJQDAu.js index a1bcd182bf..f56203cd68 100644 --- a/_nuxt/ComponentPlayground.GvB8FG5c.js +++ b/_nuxt/ComponentPlayground.G5gJQDAu.js @@ -1 +1 @@ -import{L as u,aN as S,K as a,d as _,ae as $,b as v,c as I,n as w,p as P,i as C,e as x,k as f,ag as D,r as E,Q as c}from"./entry.TEDHt2QA.js";import j from"./ComponentPlaygroundData.x5WYuf11.js";import"./TabsHeader.aoUmep7C.js";import"./ComponentPlaygroundProps.eS1hVNDa.js";import"./ProseH4.vQBbqPgA.js";import"./ProseCodeInline.sc8XXj9h.js";import"./Badge.SrXj_iIy.js";import"./ProseP.fE1xZC7w.js";import"./ComponentPlaygroundSlots.vue.hwYCvpaN.js";import"./ComponentPlaygroundTokens.vue.x-4LJTSf.js";async function z(e){const n=u(e);{const{data:o}=await S(`nuxt-component-meta${n?`-${n}`:""}`,()=>$fetch(`/api/component-meta${n?`/${n}`:""}`));return a(()=>o.value)}}const B=e=>(P("data-v-9dbf5846"),e=e(),C(),e),N=B(()=>x("div",{class:"ellipsis-item"},null,-1)),k=[N],V=_({__name:"Ellipsis",props:{width:{type:String,default:"10rem"},height:{type:String,default:"10rem"},zIndex:{type:String,default:"10"},top:{type:String,default:"0"},left:{type:String,default:"auto"},right:{type:String,default:"auto"},blur:{type:String,default:"50px"},colors:{type:Array,default:()=>["rgba(0, 71, 225, 0.22)","rgba(26, 214, 255, 0.22)","rgba(0, 220, 130, 0.22)"]}},setup(e){const n=a(()=>((t=s)=>t.top)()),o=a(()=>((t=s)=>t.left)()),r=a(()=>((t=s)=>t.right)()),i=a(()=>((t=s)=>t.zIndex)()),l=a(()=>((t=s)=>t.width)()),g=a(()=>((t=s)=>t.height)()),h=a(()=>((t=s)=>`blur(${t.blur})`)()),y=a(()=>((t=s)=>{var p,d,m;return`linear-gradient(97.62deg, ${(p=t==null?void 0:t.colors)==null?void 0:p[0]} 2.27%, ${(d=t==null?void 0:t.colors)==null?void 0:d[1]} 50.88%, ${(m=t==null?void 0:t.colors)==null?void 0:m[2]} 98.48%)`})()),s=e,{$pinceau:b}=$(s,void 0,{_cCN_top:n,_eih_insetInlineStart:o,_IfB_insetInlineEnd:r,_SsE_zIndex:i,_wj8_maxWidth:l,_t33_height:g,_Jfd_filter:h,_yUj_background:y});return(t,p)=>(v(),I("div",{class:w(["ellipsis",[u(b)]])},k,2))}}),q=f(V,[["__scopeId","data-v-9dbf5846"]]),A=_({props:{component:{type:String,required:!0},props:{type:Object,required:!1,default:()=>({})}},async setup(e){const n=a(()=>D(e.component)),o=E({...e.props}),r=await z(e.component);return{as:n,formProps:o,componentData:r}},render(e){const n=Object.entries(this.$slots).reduce((o,[r,i])=>{if(r.startsWith("component-")){const l=r.replace("component-","");o[l]=i}return o},{});return c("div",{class:"component-playground"},[c("div",{class:"component-playground-wrapper"},[c(q,{class:"component-playground-ellipsis",blur:"5vw",height:"100%",width:"100%"}),c(e.as,{...e.formProps,class:"component-playground-component"},{...n})]),c(j,{modelValue:e.formProps,componentData:e.componentData,"onUpdate:modelValue":o=>e.formProps=o})])}}),G=f(A,[["__scopeId","data-v-b9c7bb0c"]]);export{G as default}; +import{L as u,aN as S,K as a,d as _,ae as $,b as v,c as I,n as w,p as P,i as C,e as x,k as f,ag as D,r as E,Q as c}from"./entry.2w2g1VWZ.js";import j from"./ComponentPlaygroundData.P9Det-rH.js";import"./TabsHeader.p2gr41k7.js";import"./ComponentPlaygroundProps.eqJy9Iq7.js";import"./ProseH4.-m8eDGJi.js";import"./ProseCodeInline.nA1Kl2E3.js";import"./Badge.SouunExa.js";import"./ProseP.nG8WPuIi.js";import"./ComponentPlaygroundSlots.vue.-pfk4FaA.js";import"./ComponentPlaygroundTokens.vue.IQ2_8fNI.js";async function z(e){const n=u(e);{const{data:o}=await S(`nuxt-component-meta${n?`-${n}`:""}`,()=>$fetch(`/api/component-meta${n?`/${n}`:""}`));return a(()=>o.value)}}const B=e=>(P("data-v-9dbf5846"),e=e(),C(),e),N=B(()=>x("div",{class:"ellipsis-item"},null,-1)),k=[N],V=_({__name:"Ellipsis",props:{width:{type:String,default:"10rem"},height:{type:String,default:"10rem"},zIndex:{type:String,default:"10"},top:{type:String,default:"0"},left:{type:String,default:"auto"},right:{type:String,default:"auto"},blur:{type:String,default:"50px"},colors:{type:Array,default:()=>["rgba(0, 71, 225, 0.22)","rgba(26, 214, 255, 0.22)","rgba(0, 220, 130, 0.22)"]}},setup(e){const n=a(()=>((t=s)=>t.top)()),o=a(()=>((t=s)=>t.left)()),r=a(()=>((t=s)=>t.right)()),i=a(()=>((t=s)=>t.zIndex)()),l=a(()=>((t=s)=>t.width)()),g=a(()=>((t=s)=>t.height)()),h=a(()=>((t=s)=>`blur(${t.blur})`)()),y=a(()=>((t=s)=>{var p,d,m;return`linear-gradient(97.62deg, ${(p=t==null?void 0:t.colors)==null?void 0:p[0]} 2.27%, ${(d=t==null?void 0:t.colors)==null?void 0:d[1]} 50.88%, ${(m=t==null?void 0:t.colors)==null?void 0:m[2]} 98.48%)`})()),s=e,{$pinceau:b}=$(s,void 0,{_cCN_top:n,_eih_insetInlineStart:o,_IfB_insetInlineEnd:r,_SsE_zIndex:i,_wj8_maxWidth:l,_t33_height:g,_Jfd_filter:h,_yUj_background:y});return(t,p)=>(v(),I("div",{class:w(["ellipsis",[u(b)]])},k,2))}}),q=f(V,[["__scopeId","data-v-9dbf5846"]]),A=_({props:{component:{type:String,required:!0},props:{type:Object,required:!1,default:()=>({})}},async setup(e){const n=a(()=>D(e.component)),o=E({...e.props}),r=await z(e.component);return{as:n,formProps:o,componentData:r}},render(e){const n=Object.entries(this.$slots).reduce((o,[r,i])=>{if(r.startsWith("component-")){const l=r.replace("component-","");o[l]=i}return o},{});return c("div",{class:"component-playground"},[c("div",{class:"component-playground-wrapper"},[c(q,{class:"component-playground-ellipsis",blur:"5vw",height:"100%",width:"100%"}),c(e.as,{...e.formProps,class:"component-playground-component"},{...n})]),c(j,{modelValue:e.formProps,componentData:e.componentData,"onUpdate:modelValue":o=>e.formProps=o})])}}),G=f(A,[["__scopeId","data-v-b9c7bb0c"]]);export{G as default}; diff --git a/_nuxt/ComponentPlaygroundData.x5WYuf11.js b/_nuxt/ComponentPlaygroundData.P9Det-rH.js similarity index 63% rename from _nuxt/ComponentPlaygroundData.x5WYuf11.js rename to _nuxt/ComponentPlaygroundData.P9Det-rH.js index 5cfa71647d..3669350e3e 100644 --- a/_nuxt/ComponentPlaygroundData.x5WYuf11.js +++ b/_nuxt/ComponentPlaygroundData.P9Det-rH.js @@ -1 +1 @@ -import y from"./TabsHeader.aoUmep7C.js";import k from"./ComponentPlaygroundProps.eS1hVNDa.js";import{_ as x}from"./ComponentPlaygroundSlots.vue.hwYCvpaN.js";import{_ as V}from"./ComponentPlaygroundTokens.vue.x-4LJTSf.js";import{d as g,a0 as v,r as D,b as a,c as C,g as P,L as o,Y as m,Z as T,f as s,k as B}from"./entry.TEDHt2QA.js";import"./ProseH4.vQBbqPgA.js";import"./ProseCodeInline.sc8XXj9h.js";import"./Badge.SrXj_iIy.js";import"./ProseP.fE1xZC7w.js";const I={class:"component-playground-data"},j=g({__name:"ComponentPlaygroundData",props:{modelValue:{type:Object,required:!1,default:()=>({})},componentData:{type:Object,required:!1,default:()=>({})}},emits:["update:modelValue"],setup(t,{emit:p}){const n=v(t,"modelValue",p),e=D(0),r=[{label:"Props"},{label:"Slots"},{label:"Design Tokens"}],d=c=>e.value=c;return(c,l)=>{const u=y,i=k,_=x,f=V;return a(),C("div",I,[P(u,{"active-tab-index":o(e),tabs:r,"onUpdate:activeTabIndex":d},null,8,["active-tab-index"]),o(e)===0?(a(),m(i,{key:0,modelValue:o(n),"onUpdate:modelValue":l[0]||(l[0]=b=>T(n)?n.value=b:null),"component-data":t.componentData},null,8,["modelValue","component-data"])):s("",!0),o(e)===1?(a(),m(_,{key:1,"component-data":t.componentData},null,8,["component-data"])):s("",!0),o(e)===2?(a(),m(f,{key:2,"component-data":t.componentData},null,8,["component-data"])):s("",!0)])}}}),Y=B(j,[["__scopeId","data-v-8b4ea980"]]);export{Y as default}; +import y from"./TabsHeader.p2gr41k7.js";import k from"./ComponentPlaygroundProps.eqJy9Iq7.js";import{_ as x}from"./ComponentPlaygroundSlots.vue.-pfk4FaA.js";import{_ as V}from"./ComponentPlaygroundTokens.vue.IQ2_8fNI.js";import{d as g,a0 as v,r as D,b as a,c as C,g as P,L as o,Y as m,Z as T,f as s,k as B}from"./entry.2w2g1VWZ.js";import"./ProseH4.-m8eDGJi.js";import"./ProseCodeInline.nA1Kl2E3.js";import"./Badge.SouunExa.js";import"./ProseP.nG8WPuIi.js";const I={class:"component-playground-data"},j=g({__name:"ComponentPlaygroundData",props:{modelValue:{type:Object,required:!1,default:()=>({})},componentData:{type:Object,required:!1,default:()=>({})}},emits:["update:modelValue"],setup(t,{emit:p}){const n=v(t,"modelValue",p),e=D(0),r=[{label:"Props"},{label:"Slots"},{label:"Design Tokens"}],d=c=>e.value=c;return(c,l)=>{const u=y,i=k,_=x,f=V;return a(),C("div",I,[P(u,{"active-tab-index":o(e),tabs:r,"onUpdate:activeTabIndex":d},null,8,["active-tab-index"]),o(e)===0?(a(),m(i,{key:0,modelValue:o(n),"onUpdate:modelValue":l[0]||(l[0]=b=>T(n)?n.value=b:null),"component-data":t.componentData},null,8,["modelValue","component-data"])):s("",!0),o(e)===1?(a(),m(_,{key:1,"component-data":t.componentData},null,8,["component-data"])):s("",!0),o(e)===2?(a(),m(f,{key:2,"component-data":t.componentData},null,8,["component-data"])):s("",!0)])}}}),Y=B(j,[["__scopeId","data-v-8b4ea980"]]);export{Y as default}; diff --git a/_nuxt/ComponentPlaygroundProps.eS1hVNDa.js b/_nuxt/ComponentPlaygroundProps.eqJy9Iq7.js similarity index 81% rename from _nuxt/ComponentPlaygroundProps.eS1hVNDa.js rename to _nuxt/ComponentPlaygroundProps.eqJy9Iq7.js index 4f1d32acc8..d01c7b2136 100644 --- a/_nuxt/ComponentPlaygroundProps.eS1hVNDa.js +++ b/_nuxt/ComponentPlaygroundProps.eqJy9Iq7.js @@ -1 +1 @@ -import P from"./ProseH4.vQBbqPgA.js";import B from"./ProseCodeInline.sc8XXj9h.js";import b from"./Badge.SrXj_iIy.js";import q from"./ProseP.fE1xZC7w.js";import{d as D,a0 as N,K as j,b as o,c as m,F as w,aE as E,L as d,e as r,g as i,w as s,t as u,G as c,Y as l,f as p,k as F}from"./entry.TEDHt2QA.js";const I={class:"component-playground-data-section"},L=["id"],O=["value","onChange"],G=D({__name:"ComponentPlaygroundProps",props:{modelValue:{type:Object,required:!0},componentData:{type:Object,required:!0}},emits:["update:modelValue"],setup(f,{emit:g}){const a=f,_=N(a,"modelValue",g),x=(t,n)=>{_.value={..._.value,[n]:t.target.value}},v=j(()=>{var t,n;return(n=(t=a==null?void 0:a.componentData)==null?void 0:t.meta)==null?void 0:n.props});return(t,n)=>{const y=P,h=B,C=b,V=q;return o(),m("div",I,[(o(!0),m(w,null,E(d(v),e=>(o(),m("div",{key:e.name},[r("div",{id:e.name,class:"prop-title"},[i(y,{id:e.name},{default:s(()=>[c(u(e.name),1)]),_:2},1032,["id"]),r("span",null,[i(h,null,{default:s(()=>[c(u(e.type),1)]),_:2},1024),e.required?p("",!0):(o(),l(C,{key:0},{default:s(()=>[c(" Required ")]),_:1}))])],8,L),e.description?(o(),l(V,{key:0},{default:s(()=>[c(u(e.description),1)]),_:2},1024)):p("",!0),r("input",{value:d(_)[e.name],onChange:k=>x(k,e.name)},null,40,O)]))),128))])}}}),Y=F(G,[["__scopeId","data-v-382fbe32"]]);export{Y as default}; +import P from"./ProseH4.-m8eDGJi.js";import B from"./ProseCodeInline.nA1Kl2E3.js";import b from"./Badge.SouunExa.js";import q from"./ProseP.nG8WPuIi.js";import{d as D,a0 as N,K as j,b as o,c as m,F as w,aE as E,L as d,e as r,g as i,w as s,t as u,G as c,Y as l,f as p,k as F}from"./entry.2w2g1VWZ.js";const I={class:"component-playground-data-section"},L=["id"],O=["value","onChange"],G=D({__name:"ComponentPlaygroundProps",props:{modelValue:{type:Object,required:!0},componentData:{type:Object,required:!0}},emits:["update:modelValue"],setup(f,{emit:g}){const a=f,_=N(a,"modelValue",g),x=(t,n)=>{_.value={..._.value,[n]:t.target.value}},v=j(()=>{var t,n;return(n=(t=a==null?void 0:a.componentData)==null?void 0:t.meta)==null?void 0:n.props});return(t,n)=>{const y=P,h=B,C=b,V=q;return o(),m("div",I,[(o(!0),m(w,null,E(d(v),e=>(o(),m("div",{key:e.name},[r("div",{id:e.name,class:"prop-title"},[i(y,{id:e.name},{default:s(()=>[c(u(e.name),1)]),_:2},1032,["id"]),r("span",null,[i(h,null,{default:s(()=>[c(u(e.type),1)]),_:2},1024),e.required?p("",!0):(o(),l(C,{key:0},{default:s(()=>[c(" Required ")]),_:1}))])],8,L),e.description?(o(),l(V,{key:0},{default:s(()=>[c(u(e.description),1)]),_:2},1024)):p("",!0),r("input",{value:d(_)[e.name],onChange:k=>x(k,e.name)},null,40,O)]))),128))])}}}),Y=F(G,[["__scopeId","data-v-382fbe32"]]);export{Y as default}; diff --git a/_nuxt/ComponentPlaygroundSlots.8zrZ057N.js b/_nuxt/ComponentPlaygroundSlots.8zrZ057N.js deleted file mode 100644 index c5fd4d5018..0000000000 --- a/_nuxt/ComponentPlaygroundSlots.8zrZ057N.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./ComponentPlaygroundSlots.vue.hwYCvpaN.js";import"./entry.TEDHt2QA.js";export{m as default}; diff --git a/_nuxt/ComponentPlaygroundSlots.r9v7_SJ5.js b/_nuxt/ComponentPlaygroundSlots.r9v7_SJ5.js new file mode 100644 index 0000000000..1e0e2a7c65 --- /dev/null +++ b/_nuxt/ComponentPlaygroundSlots.r9v7_SJ5.js @@ -0,0 +1 @@ +import{_ as m}from"./ComponentPlaygroundSlots.vue.-pfk4FaA.js";import"./entry.2w2g1VWZ.js";export{m as default}; diff --git a/_nuxt/ComponentPlaygroundSlots.vue.hwYCvpaN.js b/_nuxt/ComponentPlaygroundSlots.vue.-pfk4FaA.js similarity index 80% rename from _nuxt/ComponentPlaygroundSlots.vue.hwYCvpaN.js rename to _nuxt/ComponentPlaygroundSlots.vue.-pfk4FaA.js index 268917b5d8..f4fc28c21c 100644 --- a/_nuxt/ComponentPlaygroundSlots.vue.hwYCvpaN.js +++ b/_nuxt/ComponentPlaygroundSlots.vue.-pfk4FaA.js @@ -1 +1 @@ -import{d as t,b as n,c as o,e as a,t as s}from"./entry.TEDHt2QA.js";const r={class:"component-playground-data-section"},i=t({__name:"ComponentPlaygroundSlots",props:{componentData:{type:Object,required:!0}},setup(e){return(c,p)=>(n(),o("div",r,[a("pre",null,s(JSON.stringify(e.componentData,null,2)),1)]))}});export{i as _}; +import{d as t,b as n,c as o,e as a,t as s}from"./entry.2w2g1VWZ.js";const r={class:"component-playground-data-section"},i=t({__name:"ComponentPlaygroundSlots",props:{componentData:{type:Object,required:!0}},setup(e){return(c,p)=>(n(),o("div",r,[a("pre",null,s(JSON.stringify(e.componentData,null,2)),1)]))}});export{i as _}; diff --git a/_nuxt/ComponentPlaygroundTokens.hYqZwbxt.js b/_nuxt/ComponentPlaygroundTokens.hYqZwbxt.js new file mode 100644 index 0000000000..26fe48956f --- /dev/null +++ b/_nuxt/ComponentPlaygroundTokens.hYqZwbxt.js @@ -0,0 +1 @@ +import{_ as m}from"./ComponentPlaygroundTokens.vue.IQ2_8fNI.js";import"./entry.2w2g1VWZ.js";export{m as default}; diff --git a/_nuxt/ComponentPlaygroundTokens.sTl3HQTK.js b/_nuxt/ComponentPlaygroundTokens.sTl3HQTK.js deleted file mode 100644 index cf969d2599..0000000000 --- a/_nuxt/ComponentPlaygroundTokens.sTl3HQTK.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./ComponentPlaygroundTokens.vue.x-4LJTSf.js";import"./entry.TEDHt2QA.js";export{m as default}; diff --git a/_nuxt/ComponentPlaygroundTokens.vue.x-4LJTSf.js b/_nuxt/ComponentPlaygroundTokens.vue.IQ2_8fNI.js similarity index 77% rename from _nuxt/ComponentPlaygroundTokens.vue.x-4LJTSf.js rename to _nuxt/ComponentPlaygroundTokens.vue.IQ2_8fNI.js index bbe02702df..1108861947 100644 --- a/_nuxt/ComponentPlaygroundTokens.vue.x-4LJTSf.js +++ b/_nuxt/ComponentPlaygroundTokens.vue.IQ2_8fNI.js @@ -1 +1 @@ -import{d as t,b as o,c as n,t as a}from"./entry.TEDHt2QA.js";const c={class:"component-playground-data-section"},m=t({__name:"ComponentPlaygroundTokens",props:{componentData:{type:Object,required:!0}},setup(e){return(s,r)=>(o(),n("div",c,a(e.componentData),1))}});export{m as _}; +import{d as t,b as o,c as n,t as a}from"./entry.2w2g1VWZ.js";const c={class:"component-playground-data-section"},m=t({__name:"ComponentPlaygroundTokens",props:{componentData:{type:Object,required:!0}},setup(e){return(s,r)=>(o(),n("div",c,a(e.componentData),1))}});export{m as _}; diff --git a/_nuxt/ContentDoc.XNEVUcvJ.js b/_nuxt/ContentDoc.VH_Hky9p.js similarity index 86% rename from _nuxt/ContentDoc.XNEVUcvJ.js rename to _nuxt/ContentDoc.VH_Hky9p.js index 743385e270..43ab33d209 100644 --- a/_nuxt/ContentDoc.XNEVUcvJ.js +++ b/_nuxt/ContentDoc.VH_Hky9p.js @@ -1 +1 @@ -import{d as C,l as g,af as v,aQ as D,s as w,Q as o,X as p}from"./entry.TEDHt2QA.js";import _ from"./ContentRenderer.hmnD5r_q.js";import S from"./ContentQuery.poDPsyGM.js";import"./ContentRendererMarkdown.vue.JkbsKsif.js";const q=C({name:"ContentDoc",props:{tag:{type:String,required:!1,default:"div"},excerpt:{type:Boolean,default:!1},path:{type:String,required:!1,default:void 0},query:{type:Object,required:!1,default:void 0},head:{type:Boolean,required:!1,default:void 0}},render(f){const{contentHead:c}=g().public.content,e=v(),{tag:m,excerpt:i,path:s,query:a,head:r}=f,u=r===void 0?c:r,l={...a||{},path:s||(a==null?void 0:a.path)||D(w().path),find:"one"},h=(t,n)=>o("pre",null,JSON.stringify({message:"You should use slots with ",slot:t,data:n},null,2));return o(S,l,{default:e!=null&&e.default?({data:t,refresh:n,isPartial:y})=>{var d;return u&&p(t),(d=e.default)==null?void 0:d.call(e,{doc:t,refresh:n,isPartial:y,excerpt:i,...this.$attrs})}:({data:t})=>(u&&p(t),o(_,{value:t,excerpt:i,tag:m,...this.$attrs},{empty:n=>e!=null&&e.empty?e.empty(n):h("default",t)})),empty:t=>{var n;return((n=e==null?void 0:e.empty)==null?void 0:n.call(e,t))||o("p",null,"Document is empty, overwrite this content with #empty slot in .")},"not-found":t=>{var n;return((n=e==null?void 0:e["not-found"])==null?void 0:n.call(e,t))||o("p",null,"Document not found, overwrite this content with #not-found slot in .")}})}}),b=q;export{b as default}; +import{d as C,l as g,af as v,aQ as D,s as w,Q as o,X as p}from"./entry.2w2g1VWZ.js";import _ from"./ContentRenderer.M--L_q55.js";import S from"./ContentQuery.QtvwtBx0.js";import"./ContentRendererMarkdown.vue.ILa9pIED.js";const q=C({name:"ContentDoc",props:{tag:{type:String,required:!1,default:"div"},excerpt:{type:Boolean,default:!1},path:{type:String,required:!1,default:void 0},query:{type:Object,required:!1,default:void 0},head:{type:Boolean,required:!1,default:void 0}},render(f){const{contentHead:c}=g().public.content,e=v(),{tag:m,excerpt:i,path:s,query:a,head:r}=f,u=r===void 0?c:r,l={...a||{},path:s||(a==null?void 0:a.path)||D(w().path),find:"one"},h=(t,n)=>o("pre",null,JSON.stringify({message:"You should use slots with ",slot:t,data:n},null,2));return o(S,l,{default:e!=null&&e.default?({data:t,refresh:n,isPartial:y})=>{var d;return u&&p(t),(d=e.default)==null?void 0:d.call(e,{doc:t,refresh:n,isPartial:y,excerpt:i,...this.$attrs})}:({data:t})=>(u&&p(t),o(_,{value:t,excerpt:i,tag:m,...this.$attrs},{empty:n=>e!=null&&e.empty?e.empty(n):h("default",t)})),empty:t=>{var n;return((n=e==null?void 0:e.empty)==null?void 0:n.call(e,t))||o("p",null,"Document is empty, overwrite this content with #empty slot in .")},"not-found":t=>{var n;return((n=e==null?void 0:e["not-found"])==null?void 0:n.call(e,t))||o("p",null,"Document not found, overwrite this content with #not-found slot in .")}})}}),b=q;export{b as default}; diff --git a/_nuxt/ContentList.iLZmbKSm.js b/_nuxt/ContentList.YCunzPlS.js similarity index 84% rename from _nuxt/ContentList.iLZmbKSm.js rename to _nuxt/ContentList.YCunzPlS.js index c9759f5a68..d095348cee 100644 --- a/_nuxt/ContentList.iLZmbKSm.js +++ b/_nuxt/ContentList.YCunzPlS.js @@ -1 +1 @@ -import m from"./ContentQuery.poDPsyGM.js";import{d as c,af as l,Q as r}from"./entry.TEDHt2QA.js";const f=(u,t)=>r("pre",null,JSON.stringify({message:"You should use slots with ",slot:u,data:t},null,2)),h=c({name:"ContentList",props:{path:{type:String,required:!1,default:void 0},query:{type:Object,required:!1,default:void 0}},render(u){const t=l(),{path:p,query:a}=u,d={...a||{},path:p||(a==null?void 0:a.path)||"/"};return r(m,d,{default:t!=null&&t.default?({data:e,refresh:o,isPartial:n})=>t.default({list:e,refresh:o,isPartial:n,...this.$attrs}):e=>f("default",e.data),empty:e=>t!=null&&t.empty?t.empty(e):f("default",e==null?void 0:e.data),"not-found":e=>{var o;return t!=null&&t["not-found"]?(o=t==null?void 0:t["not-found"])==null?void 0:o.call(t,e):f("not-found",e==null?void 0:e.data)}})}}),_=h;export{_ as default}; +import m from"./ContentQuery.QtvwtBx0.js";import{d as c,af as l,Q as r}from"./entry.2w2g1VWZ.js";const f=(u,t)=>r("pre",null,JSON.stringify({message:"You should use slots with ",slot:u,data:t},null,2)),h=c({name:"ContentList",props:{path:{type:String,required:!1,default:void 0},query:{type:Object,required:!1,default:void 0}},render(u){const t=l(),{path:p,query:a}=u,d={...a||{},path:p||(a==null?void 0:a.path)||"/"};return r(m,d,{default:t!=null&&t.default?({data:e,refresh:o,isPartial:n})=>t.default({list:e,refresh:o,isPartial:n,...this.$attrs}):e=>f("default",e.data),empty:e=>t!=null&&t.empty?t.empty(e):f("default",e==null?void 0:e.data),"not-found":e=>{var o;return t!=null&&t["not-found"]?(o=t==null?void 0:t["not-found"])==null?void 0:o.call(t,e):f("not-found",e==null?void 0:e.data)}})}}),_=h;export{_ as default}; diff --git a/_nuxt/ContentNavigation.fgixFeAY.js b/_nuxt/ContentNavigation.9YnVdsDD.js similarity index 92% rename from _nuxt/ContentNavigation.fgixFeAY.js rename to _nuxt/ContentNavigation.9YnVdsDD.js index 235b554801..0d82013559 100644 --- a/_nuxt/ContentNavigation.fgixFeAY.js +++ b/_nuxt/ContentNavigation.9YnVdsDD.js @@ -1 +1 @@ -import{d,aR as l,K as f,m as v,W as p,aN as m,aT as g,aS as h,af as y,Q as u,H as _}from"./entry.TEDHt2QA.js";const C=d({name:"ContentNavigation",props:{query:{type:Object,required:!1,default:void 0}},async setup(i){const{query:a}=l(i),n=f(()=>{var t;return typeof((t=a.value)==null?void 0:t.params)=="function"?a.value.params():a.value});if(!n.value&&v("dd-navigation").value){const{navigation:t}=p();return{navigation:t}}const{data:o}=await m(`content-navigation-${h(n.value)}`,()=>g(n.value));return{navigation:o}},render(i){const a=y(),{navigation:n}=i,o=e=>u(_,{to:e._path},()=>e.title),t=(e,r)=>u("ul",r?{"data-level":r}:null,e.map(s=>s.children?u("li",null,[o(s),t(s.children,r+1)]):u("li",null,o(s)))),c=e=>t(e,0);return a!=null&&a.default?a.default({navigation:n,...this.$attrs}):c(n)}}),q=C;export{q as default}; +import{d,aR as l,K as f,m as v,W as p,aN as m,aT as g,aS as h,af as y,Q as u,H as _}from"./entry.2w2g1VWZ.js";const C=d({name:"ContentNavigation",props:{query:{type:Object,required:!1,default:void 0}},async setup(i){const{query:a}=l(i),n=f(()=>{var t;return typeof((t=a.value)==null?void 0:t.params)=="function"?a.value.params():a.value});if(!n.value&&v("dd-navigation").value){const{navigation:t}=p();return{navigation:t}}const{data:o}=await m(`content-navigation-${h(n.value)}`,()=>g(n.value));return{navigation:o}},render(i){const a=y(),{navigation:n}=i,o=e=>u(_,{to:e._path},()=>e.title),t=(e,r)=>u("ul",r?{"data-level":r}:null,e.map(s=>s.children?u("li",null,[o(s),t(s.children,r+1)]):u("li",null,o(s)))),c=e=>t(e,0);return a!=null&&a.default?a.default({navigation:n,...this.$attrs}):c(n)}}),q=C;export{q as default}; diff --git a/_nuxt/ContentQuery.poDPsyGM.js b/_nuxt/ContentQuery.QtvwtBx0.js similarity index 97% rename from _nuxt/ContentQuery.poDPsyGM.js rename to _nuxt/ContentQuery.QtvwtBx0.js index 18f29edcf9..2f22f8f69b 100644 --- a/_nuxt/ContentQuery.poDPsyGM.js +++ b/_nuxt/ContentQuery.QtvwtBx0.js @@ -1 +1 @@ -import{d as g,aR as S,K as C,l as b,a6 as N,aN as Q,q as m,aS as _,af as k,Q as A}from"./entry.TEDHt2QA.js";const O=g({name:"ContentQuery",props:{path:{type:String,required:!1,default:void 0},only:{type:Array,required:!1,default:void 0},without:{type:Array,required:!1,default:void 0},where:{type:Object,required:!1,default:void 0},sort:{type:Object,required:!1,default:void 0},limit:{type:Number,required:!1,default:void 0},skip:{type:Number,required:!1,default:void 0},locale:{type:String,required:!1,default:void 0},find:{type:String,required:!1,default:void 0}},async setup(i){const{path:t,only:r,without:o,where:u,sort:l,limit:d,skip:f,locale:s,find:h}=S(i),p=C(()=>{var e;return(e=t.value)==null?void 0:e.includes("/_")}),y=!b().public.content.experimental.advanceQuery;N(()=>i,()=>n(),{deep:!0});const a=e=>y?e!=null&&e.surround?e.surround:e!=null&&e._id||Array.isArray(e)?e:e==null?void 0:e.result:e.result,{data:v,refresh:n}=await Q(`content-query-${_(i)}`,()=>{let e;return t.value?e=m(t.value):e=m(),r.value&&(e=e.only(r.value)),o.value&&(e=e.without(o.value)),u.value&&(e=e.where(u.value)),l.value&&(e=e.sort(l.value)),d.value&&(e=e.limit(d.value)),f.value&&(e=e.skip(f.value)),s.value&&(e=e.where({_locale:s.value})),h.value==="one"?e.findOne().then(a):h.value==="surround"?t.value?y?e.findSurround(t.value):e.withSurround(t.value).findOne().then(a):(console.warn("[Content] Surround queries requires `path` prop to be set."),console.warn("[Content] Query without `path` will return regular `find()` results."),e.find().then(a)):e.find().then(a)});return{isPartial:p,data:v,refresh:n}},render(i){var c;const t=k(),{data:r,refresh:o,isPartial:u,path:l,only:d,without:f,where:s,sort:h,limit:p,skip:y,locale:a,find:v}=i,n={path:l,only:d,without:f,where:s,sort:h,limit:p,skip:y,locale:a,find:v};if(n.find==="one"){if(!r&&(t!=null&&t["not-found"]))return t["not-found"]({props:n,...this.$attrs});if(t!=null&&t.empty&&(r==null?void 0:r._type)==="markdown"&&!((c=r==null?void 0:r.body)!=null&&c.children.length))return t.empty({props:n,...this.$attrs})}else if((!r||!r.length)&&t!=null&&t["not-found"])return t["not-found"]({props:n,...this.$attrs});return t!=null&&t.default?t.default({data:r,refresh:o,isPartial:u,props:n,...this.$attrs}):((w,q)=>A("pre",null,JSON.stringify({message:"You should use slots with !",slot:w,data:q},null,2)))("default",{data:r,props:n,isPartial:u})}}),R=O;export{R as default}; +import{d as g,aR as S,K as C,l as b,a6 as N,aN as Q,q as m,aS as _,af as k,Q as A}from"./entry.2w2g1VWZ.js";const O=g({name:"ContentQuery",props:{path:{type:String,required:!1,default:void 0},only:{type:Array,required:!1,default:void 0},without:{type:Array,required:!1,default:void 0},where:{type:Object,required:!1,default:void 0},sort:{type:Object,required:!1,default:void 0},limit:{type:Number,required:!1,default:void 0},skip:{type:Number,required:!1,default:void 0},locale:{type:String,required:!1,default:void 0},find:{type:String,required:!1,default:void 0}},async setup(i){const{path:t,only:r,without:o,where:u,sort:l,limit:d,skip:f,locale:s,find:h}=S(i),p=C(()=>{var e;return(e=t.value)==null?void 0:e.includes("/_")}),y=!b().public.content.experimental.advanceQuery;N(()=>i,()=>n(),{deep:!0});const a=e=>y?e!=null&&e.surround?e.surround:e!=null&&e._id||Array.isArray(e)?e:e==null?void 0:e.result:e.result,{data:v,refresh:n}=await Q(`content-query-${_(i)}`,()=>{let e;return t.value?e=m(t.value):e=m(),r.value&&(e=e.only(r.value)),o.value&&(e=e.without(o.value)),u.value&&(e=e.where(u.value)),l.value&&(e=e.sort(l.value)),d.value&&(e=e.limit(d.value)),f.value&&(e=e.skip(f.value)),s.value&&(e=e.where({_locale:s.value})),h.value==="one"?e.findOne().then(a):h.value==="surround"?t.value?y?e.findSurround(t.value):e.withSurround(t.value).findOne().then(a):(console.warn("[Content] Surround queries requires `path` prop to be set."),console.warn("[Content] Query without `path` will return regular `find()` results."),e.find().then(a)):e.find().then(a)});return{isPartial:p,data:v,refresh:n}},render(i){var c;const t=k(),{data:r,refresh:o,isPartial:u,path:l,only:d,without:f,where:s,sort:h,limit:p,skip:y,locale:a,find:v}=i,n={path:l,only:d,without:f,where:s,sort:h,limit:p,skip:y,locale:a,find:v};if(n.find==="one"){if(!r&&(t!=null&&t["not-found"]))return t["not-found"]({props:n,...this.$attrs});if(t!=null&&t.empty&&(r==null?void 0:r._type)==="markdown"&&!((c=r==null?void 0:r.body)!=null&&c.children.length))return t.empty({props:n,...this.$attrs})}else if((!r||!r.length)&&t!=null&&t["not-found"])return t["not-found"]({props:n,...this.$attrs});return t!=null&&t.default?t.default({data:r,refresh:o,isPartial:u,props:n,...this.$attrs}):((w,q)=>A("pre",null,JSON.stringify({message:"You should use slots with !",slot:w,data:q},null,2)))("default",{data:r,props:n,isPartial:u})}}),R=O;export{R as default}; diff --git a/_nuxt/ContentRenderer.hmnD5r_q.js b/_nuxt/ContentRenderer.M--L_q55.js similarity index 89% rename from _nuxt/ContentRenderer.hmnD5r_q.js rename to _nuxt/ContentRenderer.M--L_q55.js index 4ebb458d63..fde29405c7 100644 --- a/_nuxt/ContentRenderer.hmnD5r_q.js +++ b/_nuxt/ContentRenderer.M--L_q55.js @@ -1 +1 @@ -import{_ as l}from"./ContentRendererMarkdown.vue.JkbsKsif.js";import{d as o,a6 as s,af as d,Q as c}from"./entry.TEDHt2QA.js";const y=o({name:"ContentRenderer",props:{value:{type:Object,required:!1,default:()=>({})},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"}},setup(t){s(()=>t.excerpt,n=>{var e,r,u;n&&!((e=t.value)!=null&&e.excerpt)&&(console.warn(`No excerpt found for document content/${(r=t==null?void 0:t.value)==null?void 0:r._path}.${(u=t==null?void 0:t.value)==null?void 0:u._extension}!`),console.warn("Make sure to use in your content if you want to use excerpt feature."))},{immediate:!0})},render(t){var i,f;const n=d(),{value:e,excerpt:r,tag:u}=t,a=r?e==null?void 0:e.excerpt:e==null?void 0:e.body;return!((i=a==null?void 0:a.children)!=null&&i.length)&&(n!=null&&n.empty)?n.empty({value:e,excerpt:r,tag:u,...this.$attrs}):n!=null&&n.default?n.default({value:e,excerpt:r,tag:u,...this.$attrs}):(a==null?void 0:a.type)==="root"&&((f=a==null?void 0:a.children)!=null&&f.length)?c(l,{value:e,excerpt:r,tag:u,...this.$attrs}):c("pre",null,JSON.stringify({message:"You should use slots with ",value:e,excerpt:r,tag:u},null,2))}});export{y as default}; +import{_ as l}from"./ContentRendererMarkdown.vue.ILa9pIED.js";import{d as o,a6 as s,af as d,Q as c}from"./entry.2w2g1VWZ.js";const y=o({name:"ContentRenderer",props:{value:{type:Object,required:!1,default:()=>({})},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"}},setup(t){s(()=>t.excerpt,n=>{var e,r,u;n&&!((e=t.value)!=null&&e.excerpt)&&(console.warn(`No excerpt found for document content/${(r=t==null?void 0:t.value)==null?void 0:r._path}.${(u=t==null?void 0:t.value)==null?void 0:u._extension}!`),console.warn("Make sure to use in your content if you want to use excerpt feature."))},{immediate:!0})},render(t){var i,f;const n=d(),{value:e,excerpt:r,tag:u}=t,a=r?e==null?void 0:e.excerpt:e==null?void 0:e.body;return!((i=a==null?void 0:a.children)!=null&&i.length)&&(n!=null&&n.empty)?n.empty({value:e,excerpt:r,tag:u,...this.$attrs}):n!=null&&n.default?n.default({value:e,excerpt:r,tag:u,...this.$attrs}):(a==null?void 0:a.type)==="root"&&((f=a==null?void 0:a.children)!=null&&f.length)?c(l,{value:e,excerpt:r,tag:u,...this.$attrs}):c("pre",null,JSON.stringify({message:"You should use slots with ",value:e,excerpt:r,tag:u},null,2))}});export{y as default}; diff --git a/_nuxt/ContentRendererMarkdown.SeLRvQWx.js b/_nuxt/ContentRendererMarkdown.SeLRvQWx.js new file mode 100644 index 0000000000..92279540b6 --- /dev/null +++ b/_nuxt/ContentRendererMarkdown.SeLRvQWx.js @@ -0,0 +1 @@ +import{_ as m}from"./ContentRendererMarkdown.vue.ILa9pIED.js";import"./entry.2w2g1VWZ.js";export{m as default}; diff --git a/_nuxt/ContentRendererMarkdown.WM_fk24R.js b/_nuxt/ContentRendererMarkdown.WM_fk24R.js deleted file mode 100644 index ae1ace8dd9..0000000000 --- a/_nuxt/ContentRendererMarkdown.WM_fk24R.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./ContentRendererMarkdown.vue.JkbsKsif.js";import"./entry.TEDHt2QA.js";export{m as default}; diff --git a/_nuxt/ContentRendererMarkdown.vue.JkbsKsif.js b/_nuxt/ContentRendererMarkdown.vue.ILa9pIED.js similarity index 99% rename from _nuxt/ContentRendererMarkdown.vue.JkbsKsif.js rename to _nuxt/ContentRendererMarkdown.vue.ILa9pIED.js index 7675ea5ca3..ceb6941ef4 100644 --- a/_nuxt/ContentRendererMarkdown.vue.JkbsKsif.js +++ b/_nuxt/ContentRendererMarkdown.vue.ILa9pIED.js @@ -1 +1 @@ -import{d as E,l as J,D as G,Q as R,ag as U,ah as Q,ai as C,s as nn,aj as ln,ak as en,K as w,b as on,Y as tn,L as rn}from"./entry.TEDHt2QA.js";class x{constructor(l,o,t){this.property=l,this.normal=o,t&&(this.space=t)}}x.prototype.property={};x.prototype.normal={};x.prototype.space=null;function B(n,l){const o={},t={};let r=-1;for(;++r4&&o.slice(0,4)==="data"&&pn.test(l)){if(l.charAt(4)==="-"){const a=l.slice(5).replace(A,mn);t="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=l.slice(4);if(!A.test(a)){let i=a.replace(dn,hn);i.charAt(0)!=="-"&&(i="-"+i),l="data"+i}}r=M}return new r(t,l)}function hn(n){return"-"+n.toLowerCase()}function mn(n){return n.charAt(1).toUpperCase()}const fn=B([j,I,F,N,sn],"html");B([j,I,F,N,cn],"svg");const V=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","math","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"],L="default",q=/^@|^v-on:/,W=/^:|^v-bind:/,K=/^v-model/,yn=["select","textarea","input"],vn=Object.fromEntries(["p","a","blockquote","code","pre","code","em","h1","h2","h3","h4","h5","h6","hr","img","ul","ol","li","strong","table","thead","tbody","td","th","tr"].map(n=>[n,`prose-${n}`])),bn=E({name:"MDCRenderer",props:{body:{type:Object,required:!0},data:{type:Object,default:()=>({})},tag:{type:String,default:void 0},prose:{type:Boolean,default:void 0},components:{type:Object,default:()=>({})}},async setup(n){var t,r;const{mdc:l}=J().public,o={...l.components.prose&&n.prose!==!1?vn:{},...l.components.map,...G(((r=(t=n.data)==null?void 0:t.mdc)==null?void 0:r.components)||{}),...n.components};return await Rn(n.body,{tags:o}),{tags:o}},render(n){var s,c;const{tags:l,tag:o,body:t,data:r}=n;if(!t)return null;const a={...r,tags:l};let i=o||((s=a.component)==null?void 0:s.name)||a.component||"div";return i=Y(i),R(i,{...(c=a.component)==null?void 0:c.props,...this.$attrs},X(t,R,a,a))}});function kn(n,l,o,t={}){var c;if(n.type==="text")return l(C,n.value);if(n.tag==="script")return l(C,$(n));const r=n.tag,a=typeof((c=n.props)==null?void 0:c.__ignoreMap)>"u"&&o.tags[r]||r;if(n.tag==="binding")return Cn(n,l,o,t);const i=Y(a);typeof i=="object"&&(i.tag=r);const s=xn(n,o);return l(i,s,X(n,l,o,{...t,...s}))}function $(n){var l,o;return n.type==="text"?n.value:(l=n.children)!=null&&l.length?`<${n.tag}>${((o=n.children)==null?void 0:o.map($).join(""))||""}`:`<${n.tag}>`}function Cn(n,l,o,t={}){var c;const r={...t,$route:()=>nn(),$document:o,$doc:o},a=/\.|\[(\d+)\]/,s=((c=n.props)==null?void 0:c.value.trim().split(a).filter(Boolean)).reduce((g,y)=>y in g?typeof g[y]=="function"?g[y]():g[y]:{},r);return l(C,s)}function X(n,l,o,t){const a=(n.children||[]).reduce((s,c)=>{if(!Ln(c))return s[L].push(c),s;const g=Dn(c);return s[g]=s[g]||[],c.type==="element"&&s[g].push(...c.children||[]),s},{[L]:[]});return Object.entries(a).reduce((s,[c,g])=>(g.length&&(s[c]=()=>{const y=g.map(h=>kn(h,l,o,t));return Mn(y)}),s),{})}function xn(n,l){const{tag:o="",props:t={}}=n;return Object.keys(t).reduce(function(r,a){if(a==="__ignoreMap")return r;const i=t[a];if(K.test(a)&&!yn.includes(o))return Sn(a,i,r,l);if(a==="v-bind")return wn(a,i,r,l);if(q.test(a))return Pn(a,i,r,l);if(W.test(a))return On(a,i,r,l);const{attribute:s}=gn(fn,a);return Array.isArray(i)&&i.every(c=>typeof c=="string")?(r[s]=i.join(" "),r):(r[s]=i,r)},{})}function Sn(n,l,o,t){const r=h=>+h,a=h=>h.trim(),i=h=>h,s=n.replace(K,"").split(".").filter(h=>h).reduce((h,Z)=>(h[Z]=!0,h),{}),c="value",g=s.lazy?"change":"input",y=s.number?r:s.trim?a:i;return o[c]=S(l,t),o.on=o.on||{},o.on[g]=h=>t[l]=y(h),o}function wn(n,l,o,t){const r=S(l,t);return o=Object.assign(o,r),o}function Pn(n,l,o,t){return n=n.replace(q,""),o.on=o.on||{},o.on[n]=()=>S(l,t),o}function On(n,l,o,t){return n=n.replace(W,""),o[n]=S(l,t),o}const Y=n=>{if(!V.includes(n)&&!(n!=null&&n.render)){const l=U(Q(n),!1);if(typeof l=="object")return l}return n};function S(n,l){const o=n.split(".").reduce((t,r)=>typeof t=="object"?t[r]:void 0,l);return typeof o>"u"?ln(n):o}function Dn(n){let l="";for(const o of Object.keys(n.props||{}))if(!(!o.startsWith("#")&&!o.startsWith("v-slot:"))){l=o.split(/[:#]/,2)[1];break}return l||L}function Ln(n){return n.tag==="template"}function Mn(n){const l=[];for(const o of n){const t=l[l.length-1];o.type===C&&(t==null?void 0:t.type)===C?t.children=t.children+o.children:l.push(o)}return l}async function Rn(n,l){if(!n)return;const o=Array.from(new Set(t(n,l)));await Promise.all(o.map(async r=>{if(r!=null&&r.render||r!=null&&r.ssrRender)return;const a=U(r);a!=null&&a.__asyncLoader&&!a.__asyncResolved&&await a.__asyncLoader()}));function t(r,a){var g;const i=r.tag;if(r.type==="text"||i==="binding")return[];const s=typeof((g=r.props)==null?void 0:g.__ignoreMap)>"u"&&a.tags[i]||i,c=[];r.type!=="root"&&!V.includes(s)&&c.push(s);for(const y of r.children||[])c.push(...t(y,a));return c}}const An=E({__name:"ContentRendererMarkdown",props:{value:{type:Object,required:!0},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"},components:{type:Object,default:()=>({})},data:{type:Object,default:()=>({})}},setup(n){const l=n,o=en().isEnabled(),t=w(()=>{let i=l.value.body||l.value;return l.excerpt&&l.value.excerpt&&(i=l.value.excerpt),i}),r=w(()=>{const{body:i,excerpt:s,...c}=l.value;return{...c,...l.data}}),a=w(()=>({...l.components,...r.value._components||{}}));return(i,s)=>{const c=bn;return on(),tn(c,{body:t.value,data:r.value,tag:n.tag,components:a.value,"data-content-id":rn(o)?n.value._id:void 0},null,8,["body","data","tag","components","data-content-id"])}}});export{An as _}; +import{d as E,l as J,D as G,Q as R,ag as U,ah as Q,ai as C,s as nn,aj as ln,ak as en,K as w,b as on,Y as tn,L as rn}from"./entry.2w2g1VWZ.js";class x{constructor(l,o,t){this.property=l,this.normal=o,t&&(this.space=t)}}x.prototype.property={};x.prototype.normal={};x.prototype.space=null;function B(n,l){const o={},t={};let r=-1;for(;++r4&&o.slice(0,4)==="data"&&pn.test(l)){if(l.charAt(4)==="-"){const a=l.slice(5).replace(A,mn);t="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=l.slice(4);if(!A.test(a)){let i=a.replace(dn,hn);i.charAt(0)!=="-"&&(i="-"+i),l="data"+i}}r=M}return new r(t,l)}function hn(n){return"-"+n.toLowerCase()}function mn(n){return n.charAt(1).toUpperCase()}const fn=B([j,I,F,N,sn],"html");B([j,I,F,N,cn],"svg");const V=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","math","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"],L="default",q=/^@|^v-on:/,W=/^:|^v-bind:/,K=/^v-model/,yn=["select","textarea","input"],vn=Object.fromEntries(["p","a","blockquote","code","pre","code","em","h1","h2","h3","h4","h5","h6","hr","img","ul","ol","li","strong","table","thead","tbody","td","th","tr"].map(n=>[n,`prose-${n}`])),bn=E({name:"MDCRenderer",props:{body:{type:Object,required:!0},data:{type:Object,default:()=>({})},tag:{type:String,default:void 0},prose:{type:Boolean,default:void 0},components:{type:Object,default:()=>({})}},async setup(n){var t,r;const{mdc:l}=J().public,o={...l.components.prose&&n.prose!==!1?vn:{},...l.components.map,...G(((r=(t=n.data)==null?void 0:t.mdc)==null?void 0:r.components)||{}),...n.components};return await Rn(n.body,{tags:o}),{tags:o}},render(n){var s,c;const{tags:l,tag:o,body:t,data:r}=n;if(!t)return null;const a={...r,tags:l};let i=o||((s=a.component)==null?void 0:s.name)||a.component||"div";return i=Y(i),R(i,{...(c=a.component)==null?void 0:c.props,...this.$attrs},X(t,R,a,a))}});function kn(n,l,o,t={}){var c;if(n.type==="text")return l(C,n.value);if(n.tag==="script")return l(C,$(n));const r=n.tag,a=typeof((c=n.props)==null?void 0:c.__ignoreMap)>"u"&&o.tags[r]||r;if(n.tag==="binding")return Cn(n,l,o,t);const i=Y(a);typeof i=="object"&&(i.tag=r);const s=xn(n,o);return l(i,s,X(n,l,o,{...t,...s}))}function $(n){var l,o;return n.type==="text"?n.value:(l=n.children)!=null&&l.length?`<${n.tag}>${((o=n.children)==null?void 0:o.map($).join(""))||""}`:`<${n.tag}>`}function Cn(n,l,o,t={}){var c;const r={...t,$route:()=>nn(),$document:o,$doc:o},a=/\.|\[(\d+)\]/,s=((c=n.props)==null?void 0:c.value.trim().split(a).filter(Boolean)).reduce((g,y)=>y in g?typeof g[y]=="function"?g[y]():g[y]:{},r);return l(C,s)}function X(n,l,o,t){const a=(n.children||[]).reduce((s,c)=>{if(!Ln(c))return s[L].push(c),s;const g=Dn(c);return s[g]=s[g]||[],c.type==="element"&&s[g].push(...c.children||[]),s},{[L]:[]});return Object.entries(a).reduce((s,[c,g])=>(g.length&&(s[c]=()=>{const y=g.map(h=>kn(h,l,o,t));return Mn(y)}),s),{})}function xn(n,l){const{tag:o="",props:t={}}=n;return Object.keys(t).reduce(function(r,a){if(a==="__ignoreMap")return r;const i=t[a];if(K.test(a)&&!yn.includes(o))return Sn(a,i,r,l);if(a==="v-bind")return wn(a,i,r,l);if(q.test(a))return Pn(a,i,r,l);if(W.test(a))return On(a,i,r,l);const{attribute:s}=gn(fn,a);return Array.isArray(i)&&i.every(c=>typeof c=="string")?(r[s]=i.join(" "),r):(r[s]=i,r)},{})}function Sn(n,l,o,t){const r=h=>+h,a=h=>h.trim(),i=h=>h,s=n.replace(K,"").split(".").filter(h=>h).reduce((h,Z)=>(h[Z]=!0,h),{}),c="value",g=s.lazy?"change":"input",y=s.number?r:s.trim?a:i;return o[c]=S(l,t),o.on=o.on||{},o.on[g]=h=>t[l]=y(h),o}function wn(n,l,o,t){const r=S(l,t);return o=Object.assign(o,r),o}function Pn(n,l,o,t){return n=n.replace(q,""),o.on=o.on||{},o.on[n]=()=>S(l,t),o}function On(n,l,o,t){return n=n.replace(W,""),o[n]=S(l,t),o}const Y=n=>{if(!V.includes(n)&&!(n!=null&&n.render)){const l=U(Q(n),!1);if(typeof l=="object")return l}return n};function S(n,l){const o=n.split(".").reduce((t,r)=>typeof t=="object"?t[r]:void 0,l);return typeof o>"u"?ln(n):o}function Dn(n){let l="";for(const o of Object.keys(n.props||{}))if(!(!o.startsWith("#")&&!o.startsWith("v-slot:"))){l=o.split(/[:#]/,2)[1];break}return l||L}function Ln(n){return n.tag==="template"}function Mn(n){const l=[];for(const o of n){const t=l[l.length-1];o.type===C&&(t==null?void 0:t.type)===C?t.children=t.children+o.children:l.push(o)}return l}async function Rn(n,l){if(!n)return;const o=Array.from(new Set(t(n,l)));await Promise.all(o.map(async r=>{if(r!=null&&r.render||r!=null&&r.ssrRender)return;const a=U(r);a!=null&&a.__asyncLoader&&!a.__asyncResolved&&await a.__asyncLoader()}));function t(r,a){var g;const i=r.tag;if(r.type==="text"||i==="binding")return[];const s=typeof((g=r.props)==null?void 0:g.__ignoreMap)>"u"&&a.tags[i]||i,c=[];r.type!=="root"&&!V.includes(s)&&c.push(s);for(const y of r.children||[])c.push(...t(y,a));return c}}const An=E({__name:"ContentRendererMarkdown",props:{value:{type:Object,required:!0},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"},components:{type:Object,default:()=>({})},data:{type:Object,default:()=>({})}},setup(n){const l=n,o=en().isEnabled(),t=w(()=>{let i=l.value.body||l.value;return l.excerpt&&l.value.excerpt&&(i=l.value.excerpt),i}),r=w(()=>{const{body:i,excerpt:s,...c}=l.value;return{...c,...l.data}}),a=w(()=>({...l.components,...r.value._components||{}}));return(i,s)=>{const c=bn;return on(),tn(c,{body:t.value,data:r.value,tag:n.tag,components:a.value,"data-content-id":rn(o)?n.value._id:void 0},null,8,["body","data","tag","components","data-content-id"])}}});export{An as _}; diff --git a/_nuxt/ContentSlot.KD4hNNCp.js b/_nuxt/ContentSlot.KD4hNNCp.js new file mode 100644 index 0000000000..e0d4d7cc95 --- /dev/null +++ b/_nuxt/ContentSlot.KD4hNNCp.js @@ -0,0 +1 @@ +import{_ as n}from"./MDCSlot.GLK9dOCB.js";import{d as o,Q as t}from"./entry.2w2g1VWZ.js";const s=o({props:{use:{type:Function,default:void 0},unwrap:{type:[Boolean,String],default:!1}},render(e){return t(n,e)}});export{s as default}; diff --git a/_nuxt/ContentSlot.hAjWUk8S.js b/_nuxt/ContentSlot.hAjWUk8S.js deleted file mode 100644 index 9e9fd544ba..0000000000 --- a/_nuxt/ContentSlot.hAjWUk8S.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as n}from"./MDCSlot.AOMUK9gf.js";import{d as o,Q as t}from"./entry.TEDHt2QA.js";const s=o({props:{use:{type:Function,default:void 0},unwrap:{type:[Boolean,String],default:!1}},render(e){return t(n,e)}});export{s as default}; diff --git a/_nuxt/CopyButton.8nJ4x1BV.js b/_nuxt/CopyButton.HioSLVCt.js similarity index 90% rename from _nuxt/CopyButton.8nJ4x1BV.js rename to _nuxt/CopyButton.HioSLVCt.js index 4882526fc6..f7b208dc93 100644 --- a/_nuxt/CopyButton.8nJ4x1BV.js +++ b/_nuxt/CopyButton.HioSLVCt.js @@ -1 +1 @@ -import{d as l,aG as i,r as u,b as e,c as d,L as m,Y as t,a1 as y}from"./entry.TEDHt2QA.js";const b=l({__name:"CopyButton",props:{content:{type:String,default:""}},setup(c){const a=c,{copy:s}=i(),o=u("init"),p=r=>{s(a.content).then(()=>{o.value="copied",setTimeout(()=>{o.value="init"},1e3)}).catch(()=>{console.warn("Couldn't copy to clipboard!")})};return(r,f)=>{const n=y;return e(),d("button",{class:"copy rounded-lg bg-gray-800 px-2 py-2 font-mono text-xs font-semibold leading-none text-gray-400 focus:outline-none dark:bg-black",onClick:p},[m(o)==="copied"?(e(),t(n,{key:0,name:"fa-check",class:"h-4 w-4"})):(e(),t(n,{key:1,name:"fa-copy",class:"h-4 w-4"}))])}}});export{b as default}; +import{d as l,aG as i,r as u,b as e,c as d,L as m,Y as t,a1 as y}from"./entry.2w2g1VWZ.js";const b=l({__name:"CopyButton",props:{content:{type:String,default:""}},setup(c){const a=c,{copy:s}=i(),o=u("init"),p=r=>{s(a.content).then(()=>{o.value="copied",setTimeout(()=>{o.value="init"},1e3)}).catch(()=>{console.warn("Couldn't copy to clipboard!")})};return(r,f)=>{const n=y;return e(),d("button",{class:"copy rounded-lg bg-gray-800 px-2 py-2 font-mono text-xs font-semibold leading-none text-gray-400 focus:outline-none dark:bg-black",onClick:p},[m(o)==="copied"?(e(),t(n,{key:0,name:"fa-check",class:"h-4 w-4"})):(e(),t(n,{key:1,name:"fa-copy",class:"h-4 w-4"}))])}}});export{b as default}; diff --git a/_nuxt/DocsAside.J9UiIJmE.js b/_nuxt/DocsAside.J1JT7aj-.js similarity index 89% rename from _nuxt/DocsAside.J9UiIJmE.js rename to _nuxt/DocsAside.J1JT7aj-.js index 20ae43f463..fcfaa26f0a 100644 --- a/_nuxt/DocsAside.J9UiIJmE.js +++ b/_nuxt/DocsAside.J1JT7aj-.js @@ -1 +1 @@ -import{d as l,aw as r,b as o,c as u,L as t,Y as c,w as i,g as d,ax as m,a1 as k,H as x,p as f,i as h,e as b,k as w}from"./entry.TEDHt2QA.js";const I=e=>(f("data-v-052bc4ea"),e=e(),h(),e),B=I(()=>b("span",{class:"text"},"Go back",-1)),g=l({__name:"DocsAside",setup(e){const{tree:n}=r();return(v,D)=>{var s;const a=m,_=k,p=x;return o(),u("nav",null,[((s=t(n))==null?void 0:s.length)>0?(o(),c(a,{key:0,links:t(n)},null,8,["links"])):(o(),c(p,{key:1,to:"/",class:"go-back-link"},{default:i(()=>[d(_,{name:"heroicons-outline:arrow-left",class:"icon"}),B]),_:1}))])}}}),S=w(g,[["__scopeId","data-v-052bc4ea"]]);export{S as default}; +import{d as l,aw as r,b as o,c as u,L as t,Y as c,w as i,g as d,ax as m,a1 as k,H as x,p as f,i as h,e as b,k as w}from"./entry.2w2g1VWZ.js";const I=e=>(f("data-v-052bc4ea"),e=e(),h(),e),B=I(()=>b("span",{class:"text"},"Go back",-1)),g=l({__name:"DocsAside",setup(e){const{tree:n}=r();return(v,D)=>{var s;const a=m,_=k,p=x;return o(),u("nav",null,[((s=t(n))==null?void 0:s.length)>0?(o(),c(a,{key:0,links:t(n)},null,8,["links"])):(o(),c(p,{key:1,to:"/",class:"go-back-link"},{default:i(()=>[d(_,{name:"heroicons-outline:arrow-left",class:"icon"}),B]),_:1}))])}}}),S=w(g,[["__scopeId","data-v-052bc4ea"]]);export{S as default}; diff --git a/_nuxt/DocsPageBottom.GLnnhrEg.js b/_nuxt/DocsPageBottom.xF3M7Xuf.js similarity index 87% rename from _nuxt/DocsPageBottom.GLnnhrEg.js rename to _nuxt/DocsPageBottom.xF3M7Xuf.js index b5c284c63d..8739ea5466 100644 --- a/_nuxt/DocsPageBottom.GLnnhrEg.js +++ b/_nuxt/DocsPageBottom.xF3M7Xuf.js @@ -1 +1 @@ -import{d as h,W as b,aw as k,L as t,b as a,c as s,g as n,w as d,f as _,G as x,e as m,t as I,a1 as w,p as D,i as S,k as v}from"./entry.TEDHt2QA.js";import y from"./ProseA.SwYyso4K.js";import{_ as B}from"./EditOnLink.vue.ygqPpcZl.js";const C=e=>(D("data-v-2b2fba6f"),e=e(),S(),e),N={key:0,class:"docs-page-bottom"},V={key:0,class:"edit-link"},E=C(()=>m("span",null," Edit this page on GitHub ",-1)),G={key:1},L=h({__name:"DocsPageBottom",setup(e){const{page:o}=b(),{config:r}=k();return(P,T)=>{var c,p,i;const u=w,f=y,l=B;return t(o)?(a(),s("div",N,[(p=(c=t(r))==null?void 0:c.github)!=null&&p.edit?(a(),s("div",V,[n(u,{name:"uil:edit"}),n(l,{page:t(o)},{default:d(({url:g})=>[n(f,{to:g},{default:d(()=>[E]),_:2},1032,["to"])]),_:1},8,["page"])])):_("",!0),(i=t(o))!=null&&i.mtime?(a(),s("span",G,[x("Updated on "),m("b",null,I(new Intl.DateTimeFormat("en-US").format(Date.parse(t(o).mtime))),1)])):_("",!0)])):_("",!0)}}}),H=v(L,[["__scopeId","data-v-2b2fba6f"]]);export{H as default}; +import{d as h,W as b,aw as k,L as t,b as a,c as s,g as n,w as d,f as _,G as x,e as m,t as I,a1 as w,p as D,i as S,k as v}from"./entry.2w2g1VWZ.js";import y from"./ProseA.OLhUCis1.js";import{_ as B}from"./EditOnLink.vue.aDm18t_T.js";const C=e=>(D("data-v-2b2fba6f"),e=e(),S(),e),N={key:0,class:"docs-page-bottom"},V={key:0,class:"edit-link"},E=C(()=>m("span",null," Edit this page on GitHub ",-1)),G={key:1},L=h({__name:"DocsPageBottom",setup(e){const{page:o}=b(),{config:r}=k();return(P,T)=>{var c,p,i;const u=w,f=y,l=B;return t(o)?(a(),s("div",N,[(p=(c=t(r))==null?void 0:c.github)!=null&&p.edit?(a(),s("div",V,[n(u,{name:"uil:edit"}),n(l,{page:t(o)},{default:d(({url:g})=>[n(f,{to:g},{default:d(()=>[E]),_:2},1032,["to"])]),_:1},8,["page"])])):_("",!0),(i=t(o))!=null&&i.mtime?(a(),s("span",G,[x("Updated on "),m("b",null,I(new Intl.DateTimeFormat("en-US").format(Date.parse(t(o).mtime))),1)])):_("",!0)])):_("",!0)}}}),H=v(L,[["__scopeId","data-v-2b2fba6f"]]);export{H as default}; diff --git a/_nuxt/DocsPageLayout.uxgc1_kz.js b/_nuxt/DocsPageLayout.soTR2NFE.js similarity index 85% rename from _nuxt/DocsPageLayout.uxgc1_kz.js rename to _nuxt/DocsPageLayout.soTR2NFE.js index 1109172329..727db33b9a 100644 --- a/_nuxt/DocsPageLayout.uxgc1_kz.js +++ b/_nuxt/DocsPageLayout.soTR2NFE.js @@ -1 +1 @@ -import O from"./DocsAside.J9UiIJmE.js";import R from"./ProseCodeInline.sc8XXj9h.js";import{d as U,W,aw as Y,s as q,K as m,r as V,m as J,o as Q,a7 as X,b as p,Y as A,w as h,L as t,c as g,g as r,f as k,e as _,ad as Z,G as x,t as ee,F as oe,n as y,az as te,a1 as ae,aA as ne,p as se,i as ce,k as le}from"./entry.TEDHt2QA.js";import re from"./DocsPageBottom.GLnnhrEg.js";import ie from"./DocsPrevNext.4e5rRBAE.js";import ue from"./DocsToc.PfHxU9at.js";import"./ProseA.SwYyso4K.js";import"./EditOnLink.vue.ygqPpcZl.js";import"./DocsTocLinks.9MUhhUzY.js";const pe=d=>(se("data-v-331382a7"),d=d(),ce(),d),_e={class:"page-body"},de={key:1,class:"toc"},me={class:"toc-wrapper"},fe=pe(()=>_("span",{class:"title"},"Table of Contents",-1)),ve=U({__name:"DocsPageLayout",setup(d){const{page:n}=W(),{config:f,tree:T}=Y(),z=q(),F=(e,o=!0)=>{var a;return typeof((a=n.value)==null?void 0:a[e])<"u"?n.value[e]:o},S=m(()=>{var e,o,a;return!n.value||((a=(o=(e=n.value)==null?void 0:e.body)==null?void 0:o.children)==null?void 0:a.length)>0}),b=m(()=>{var e,o,a,c,l;return((e=n.value)==null?void 0:e.toc)!==!1&&((l=(c=(a=(o=n.value)==null?void 0:o.body)==null?void 0:a.toc)==null?void 0:c.links)==null?void 0:l.length)>=2}),C=m(()=>{var e,o,a,c,l;return((e=n.value)==null?void 0:e.aside)!==!1&&(((o=T.value)==null?void 0:o.length)>1||((l=(c=(a=T.value)==null?void 0:a[0])==null?void 0:c.children)==null?void 0:l.length))}),H=m(()=>F("bottom",!0)),i=V(!1),s=V(null),v=()=>z.path.split("/").slice(0,2).join("/"),u=J("asideScroll",()=>{var e;return{parentPath:v(),scrollTop:((e=s.value)==null?void 0:e.scrollTop)||0}});function P(){s.value&&(s.value.scrollHeight===0&&setTimeout(P,0),s.value.scrollTop=u.value.scrollTop)}return Q(()=>{u.value.parentPath!==v()?(u.value.parentPath=v(),u.value.scrollTop=0):P()}),X(()=>{s.value&&(u.value.scrollTop=s.value.scrollTop)}),(e,o)=>{var w,B,D,N,I,$;const a=O,c=R,l=te,L=re,M=ie,j=ae,E=ue,G=ne;return p(),A(G,{fluid:(B=(w=t(f))==null?void 0:w.main)==null?void 0:B.fluid,padded:(N=(D=t(f))==null?void 0:D.main)==null?void 0:N.padded,class:y(["docs-page-content",{fluid:($=(I=t(f))==null?void 0:I.main)==null?void 0:$.fluid,"has-toc":t(b),"has-aside":t(C)}])},{default:h(()=>[t(C)?(p(),g("aside",{key:0,ref_key:"asideNav",ref:s,class:"aside-nav"},[r(a,{class:"app-aside"})],512)):k("",!0),_("article",_e,[t(S)?Z(e.$slots,"default",{key:0},void 0,!0):(p(),A(l,{key:1,type:"info"},{default:h(()=>[x(" Start writing in "),r(c,null,{default:h(()=>[x("content/"+ee(t(n)._file),1)]),_:1}),x(" to see this page taking shape. ")]),_:1})),t(S)&&t(n)&&t(H)?(p(),g(oe,{key:2},[r(L),r(M)],64)):k("",!0)]),t(b)?(p(),g("div",de,[_("div",me,[_("button",{onClick:o[0]||(o[0]=K=>i.value=!t(i))},[fe,r(j,{name:"heroicons-outline:chevron-right",class:y(["icon",[t(i)&&"rotate"]])},null,8,["class"])]),_("div",{class:y(["docs-toc-wrapper",[t(i)&&"opened"]])},[r(E,{onMove:o[1]||(o[1]=K=>i.value=!1)})],2)])])):k("",!0)]),_:3},8,["fluid","padded","class"])}}}),Pe=le(ve,[["__scopeId","data-v-331382a7"]]);export{Pe as default}; +import O from"./DocsAside.J1JT7aj-.js";import R from"./ProseCodeInline.nA1Kl2E3.js";import{d as U,W,aw as Y,s as q,K as m,r as V,m as J,o as Q,a7 as X,b as p,Y as A,w as h,L as t,c as g,g as r,f as k,e as _,ad as Z,G as x,t as ee,F as oe,n as y,az as te,a1 as ae,aA as ne,p as se,i as ce,k as le}from"./entry.2w2g1VWZ.js";import re from"./DocsPageBottom.xF3M7Xuf.js";import ie from"./DocsPrevNext.NyR6m4jP.js";import ue from"./DocsToc.ahcS4zzc.js";import"./ProseA.OLhUCis1.js";import"./EditOnLink.vue.aDm18t_T.js";import"./DocsTocLinks.n_8BwfoV.js";const pe=d=>(se("data-v-331382a7"),d=d(),ce(),d),_e={class:"page-body"},de={key:1,class:"toc"},me={class:"toc-wrapper"},fe=pe(()=>_("span",{class:"title"},"Table of Contents",-1)),ve=U({__name:"DocsPageLayout",setup(d){const{page:n}=W(),{config:f,tree:T}=Y(),z=q(),F=(e,o=!0)=>{var a;return typeof((a=n.value)==null?void 0:a[e])<"u"?n.value[e]:o},S=m(()=>{var e,o,a;return!n.value||((a=(o=(e=n.value)==null?void 0:e.body)==null?void 0:o.children)==null?void 0:a.length)>0}),b=m(()=>{var e,o,a,c,l;return((e=n.value)==null?void 0:e.toc)!==!1&&((l=(c=(a=(o=n.value)==null?void 0:o.body)==null?void 0:a.toc)==null?void 0:c.links)==null?void 0:l.length)>=2}),C=m(()=>{var e,o,a,c,l;return((e=n.value)==null?void 0:e.aside)!==!1&&(((o=T.value)==null?void 0:o.length)>1||((l=(c=(a=T.value)==null?void 0:a[0])==null?void 0:c.children)==null?void 0:l.length))}),H=m(()=>F("bottom",!0)),i=V(!1),s=V(null),v=()=>z.path.split("/").slice(0,2).join("/"),u=J("asideScroll",()=>{var e;return{parentPath:v(),scrollTop:((e=s.value)==null?void 0:e.scrollTop)||0}});function P(){s.value&&(s.value.scrollHeight===0&&setTimeout(P,0),s.value.scrollTop=u.value.scrollTop)}return Q(()=>{u.value.parentPath!==v()?(u.value.parentPath=v(),u.value.scrollTop=0):P()}),X(()=>{s.value&&(u.value.scrollTop=s.value.scrollTop)}),(e,o)=>{var w,B,D,N,I,$;const a=O,c=R,l=te,L=re,M=ie,j=ae,E=ue,G=ne;return p(),A(G,{fluid:(B=(w=t(f))==null?void 0:w.main)==null?void 0:B.fluid,padded:(N=(D=t(f))==null?void 0:D.main)==null?void 0:N.padded,class:y(["docs-page-content",{fluid:($=(I=t(f))==null?void 0:I.main)==null?void 0:$.fluid,"has-toc":t(b),"has-aside":t(C)}])},{default:h(()=>[t(C)?(p(),g("aside",{key:0,ref_key:"asideNav",ref:s,class:"aside-nav"},[r(a,{class:"app-aside"})],512)):k("",!0),_("article",_e,[t(S)?Z(e.$slots,"default",{key:0},void 0,!0):(p(),A(l,{key:1,type:"info"},{default:h(()=>[x(" Start writing in "),r(c,null,{default:h(()=>[x("content/"+ee(t(n)._file),1)]),_:1}),x(" to see this page taking shape. ")]),_:1})),t(S)&&t(n)&&t(H)?(p(),g(oe,{key:2},[r(L),r(M)],64)):k("",!0)]),t(b)?(p(),g("div",de,[_("div",me,[_("button",{onClick:o[0]||(o[0]=K=>i.value=!t(i))},[fe,r(j,{name:"heroicons-outline:chevron-right",class:y(["icon",[t(i)&&"rotate"]])},null,8,["class"])]),_("div",{class:y(["docs-toc-wrapper",[t(i)&&"opened"]])},[r(E,{onMove:o[1]||(o[1]=K=>i.value=!1)})],2)])])):k("",!0)]),_:3},8,["fluid","padded","class"])}}}),Pe=le(ve,[["__scopeId","data-v-331382a7"]]);export{Pe as default}; diff --git a/_nuxt/DocsPrevNext.4e5rRBAE.js b/_nuxt/DocsPrevNext.NyR6m4jP.js similarity index 95% rename from _nuxt/DocsPrevNext.4e5rRBAE.js rename to _nuxt/DocsPrevNext.NyR6m4jP.js index 9a5bf4f0a6..252afa351c 100644 --- a/_nuxt/DocsPrevNext.4e5rRBAE.js +++ b/_nuxt/DocsPrevNext.NyR6m4jP.js @@ -1 +1 @@ -import{d as y,W as f,L as t,b as a,c as r,Y as h,w as u,g as m,t as p,f as i,e as l,aB as k,a1 as g,H as w,aC as C,k as B}from"./entry.TEDHt2QA.js";const N={key:0,class:"docs-prev-next"},b={class:"wrapper"},D={key:0,class:"directory"},V={class:"title"},F={key:1},H={class:"wrapper"},I={key:0,class:"directory"},L={class:"title"},P=y({__name:"DocsPrevNext",setup(j){const{prev:e,next:s,navigation:v}=f(),{navDirFromPath:x}=C(),c=d=>{var n;const _=x(d._path,v.value||[]);if(_&&_[0])return((n=_[0])==null?void 0:n._path)??"";{const o=d.split("/");return(o.length>1?o[o.length-2]:"").split("-").map(k).join(" ")}};return(d,_)=>{const n=g,o=w;return t(e)||t(s)?(a(),r("div",N,[t(e)&&t(e)._path?(a(),h(o,{key:0,to:t(e)._path,class:"prev"},{default:u(()=>[m(n,{name:"heroicons-outline:arrow-sm-left",class:"icon"}),l("div",b,[c(t(e)._path)?(a(),r("span",D,p(c(t(e)._path)),1)):i("",!0),l("span",V,p(t(e).title),1)])]),_:1},8,["to"])):(a(),r("span",F)),t(s)&&t(s)._path?(a(),h(o,{key:2,to:t(s)._path,class:"next"},{default:u(()=>[l("div",H,[c(t(s)._path)?(a(),r("span",I,p(c(t(s)._path)),1)):i("",!0),l("span",L,p(t(s).title),1)]),m(n,{name:"heroicons-outline:arrow-sm-right",class:"icon"})]),_:1},8,["to"])):i("",!0)])):i("",!0)}}}),W=B(P,[["__scopeId","data-v-9256bb11"]]);export{W as default}; +import{d as y,W as f,L as t,b as a,c as r,Y as h,w as u,g as m,t as p,f as i,e as l,aB as k,a1 as g,H as w,aC as C,k as B}from"./entry.2w2g1VWZ.js";const N={key:0,class:"docs-prev-next"},b={class:"wrapper"},D={key:0,class:"directory"},V={class:"title"},F={key:1},H={class:"wrapper"},I={key:0,class:"directory"},L={class:"title"},P=y({__name:"DocsPrevNext",setup(j){const{prev:e,next:s,navigation:v}=f(),{navDirFromPath:x}=C(),c=d=>{var n;const _=x(d._path,v.value||[]);if(_&&_[0])return((n=_[0])==null?void 0:n._path)??"";{const o=d.split("/");return(o.length>1?o[o.length-2]:"").split("-").map(k).join(" ")}};return(d,_)=>{const n=g,o=w;return t(e)||t(s)?(a(),r("div",N,[t(e)&&t(e)._path?(a(),h(o,{key:0,to:t(e)._path,class:"prev"},{default:u(()=>[m(n,{name:"heroicons-outline:arrow-sm-left",class:"icon"}),l("div",b,[c(t(e)._path)?(a(),r("span",D,p(c(t(e)._path)),1)):i("",!0),l("span",V,p(t(e).title),1)])]),_:1},8,["to"])):(a(),r("span",F)),t(s)&&t(s)._path?(a(),h(o,{key:2,to:t(s)._path,class:"next"},{default:u(()=>[l("div",H,[c(t(s)._path)?(a(),r("span",I,p(c(t(s)._path)),1)):i("",!0),l("span",L,p(t(s).title),1)]),m(n,{name:"heroicons-outline:arrow-sm-right",class:"icon"})]),_:1},8,["to"])):i("",!0)])):i("",!0)}}}),W=B(P,[["__scopeId","data-v-9256bb11"]]);export{W as default}; diff --git a/_nuxt/DocsToc.PfHxU9at.js b/_nuxt/DocsToc.ahcS4zzc.js similarity index 80% rename from _nuxt/DocsToc.PfHxU9at.js rename to _nuxt/DocsToc.ahcS4zzc.js index c9170947e0..ff327d75ff 100644 --- a/_nuxt/DocsToc.PfHxU9at.js +++ b/_nuxt/DocsToc.ahcS4zzc.js @@ -1 +1 @@ -import r from"./DocsTocLinks.9MUhhUzY.js";import{d as l,W as u,b as c,c as a,L as _,F as f,g as k,f as v,p as x,i as h,e as p,k as C}from"./entry.TEDHt2QA.js";const I=e=>(x("data-v-6964a4e8"),e=e(),h(),e),g={class:"docs-toc"},B=I(()=>p("div",{class:"docs-toc-title"},[p("span",null,"Table of Contents")],-1)),N=l({__name:"DocsToc",emits:["move"],setup(e,{emit:i}){const{toc:o}=u(),m=i;return(S,t)=>{var s,n;const d=r;return c(),a("div",g,[(n=(s=_(o))==null?void 0:s.links)!=null&&n.length?(c(),a(f,{key:0},[B,k(d,{links:_(o).links,onMove:t[0]||(t[0]=T=>m("move"))},null,8,["links"])],64)):v("",!0)])}}}),D=C(N,[["__scopeId","data-v-6964a4e8"]]);export{D as default}; +import r from"./DocsTocLinks.n_8BwfoV.js";import{d as l,W as u,b as c,c as a,L as _,F as f,g as k,f as v,p as x,i as h,e as p,k as C}from"./entry.2w2g1VWZ.js";const I=e=>(x("data-v-6964a4e8"),e=e(),h(),e),g={class:"docs-toc"},B=I(()=>p("div",{class:"docs-toc-title"},[p("span",null,"Table of Contents")],-1)),N=l({__name:"DocsToc",emits:["move"],setup(e,{emit:i}){const{toc:o}=u(),m=i;return(S,t)=>{var s,n;const d=r;return c(),a("div",g,[(n=(s=_(o))==null?void 0:s.links)!=null&&n.length?(c(),a(f,{key:0},[B,k(d,{links:_(o).links,onMove:t[0]||(t[0]=T=>m("move"))},null,8,["links"])],64)):v("",!0)])}}}),D=C(N,[["__scopeId","data-v-6964a4e8"]]);export{D as default}; diff --git a/_nuxt/DocsTocLinks.9MUhhUzY.js b/_nuxt/DocsTocLinks.n_8BwfoV.js similarity index 96% rename from _nuxt/DocsTocLinks.9MUhhUzY.js rename to _nuxt/DocsTocLinks.n_8BwfoV.js index c42708639d..20bfa60fc0 100644 --- a/_nuxt/DocsTocLinks.9MUhhUzY.js +++ b/_nuxt/DocsTocLinks.n_8BwfoV.js @@ -1 +1 @@ -import{r as d,a6 as _,aD as g,a7 as k,d as y,u as b,b as u,c as m,F as x,aE as B,n as h,e as C,t as H,L as S,aF as A,Y as q,f as D,k as E}from"./entry.TEDHt2QA.js";const L=()=>{const a=d(),s=d([]),c=d([]),l=e=>e.forEach(t=>{const r=t.target.id;t.isIntersecting?s.value.push(r):s.value=s.value.filter(n=>n!==r)}),i=e=>e.forEach(t=>{a.value.observe(t)});return _(s,(e,t)=>{e.length===0?c.value=t:c.value=e},{deep:!0}),g(()=>a.value=new IntersectionObserver(l)),k(()=>{var e;return(e=a.value)==null?void 0:e.disconnect()}),{visibleHeadings:s,activeHeadings:c,updateHeadings:i}},M={class:"docs-toc-links"},T=["href","onClick"],$=y({__name:"DocsTocLinks",props:{links:{type:Array,default:()=>[]}},emits:["move"],setup(a,{emit:s}){const c=s,l=b(),{activeHeadings:i,updateHeadings:e}=L();setTimeout(()=>{e([...document.querySelectorAll(".document-driven-page h1, .docus-content h1"),...document.querySelectorAll(".document-driven-page h2, .docus-content h2"),...document.querySelectorAll(".document-driven-page h3, .docus-content h3"),...document.querySelectorAll(".document-driven-page h4, .docus-content h4")])},300);function t(n){l.push(`#${n}`),c("move",n)}function r(n){c("move",n)}return(n,v)=>{const f=w;return u(),m("ul",M,[(u(!0),m(x,null,B(a.links,o=>(u(),m("li",{key:o.text,class:h([`depth-${o.depth}`])},[C("a",{href:`#${o.id}`,class:h([S(i).includes(o.id)&&"active"]),onClick:A(p=>t(o.id),["prevent"])},H(o.text),11,T),o.children?(u(),q(f,{key:0,links:o.children,onMove:v[0]||(v[0]=p=>r(p))},null,8,["links"])):D("",!0)],2))),128))])}}}),w=E($,[["__scopeId","data-v-026480db"]]);export{w as default}; +import{r as d,a6 as _,aD as g,a7 as k,d as y,u as b,b as u,c as m,F as x,aE as B,n as h,e as C,t as H,L as S,aF as A,Y as q,f as D,k as E}from"./entry.2w2g1VWZ.js";const L=()=>{const a=d(),s=d([]),c=d([]),l=e=>e.forEach(t=>{const r=t.target.id;t.isIntersecting?s.value.push(r):s.value=s.value.filter(n=>n!==r)}),i=e=>e.forEach(t=>{a.value.observe(t)});return _(s,(e,t)=>{e.length===0?c.value=t:c.value=e},{deep:!0}),g(()=>a.value=new IntersectionObserver(l)),k(()=>{var e;return(e=a.value)==null?void 0:e.disconnect()}),{visibleHeadings:s,activeHeadings:c,updateHeadings:i}},M={class:"docs-toc-links"},T=["href","onClick"],$=y({__name:"DocsTocLinks",props:{links:{type:Array,default:()=>[]}},emits:["move"],setup(a,{emit:s}){const c=s,l=b(),{activeHeadings:i,updateHeadings:e}=L();setTimeout(()=>{e([...document.querySelectorAll(".document-driven-page h1, .docus-content h1"),...document.querySelectorAll(".document-driven-page h2, .docus-content h2"),...document.querySelectorAll(".document-driven-page h3, .docus-content h3"),...document.querySelectorAll(".document-driven-page h4, .docus-content h4")])},300);function t(n){l.push(`#${n}`),c("move",n)}function r(n){c("move",n)}return(n,v)=>{const f=w;return u(),m("ul",M,[(u(!0),m(x,null,B(a.links,o=>(u(),m("li",{key:o.text,class:h([`depth-${o.depth}`])},[C("a",{href:`#${o.id}`,class:h([S(i).includes(o.id)&&"active"]),onClick:A(p=>t(o.id),["prevent"])},H(o.text),11,T),o.children?(u(),q(f,{key:0,links:o.children,onMove:v[0]||(v[0]=p=>r(p))},null,8,["links"])):D("",!0)],2))),128))])}}}),w=E($,[["__scopeId","data-v-026480db"]]);export{w as default}; diff --git a/_nuxt/DocumentDrivenEmpty.uAjfpuCj.js b/_nuxt/DocumentDrivenEmpty.-WgfKx9h.js similarity index 77% rename from _nuxt/DocumentDrivenEmpty.uAjfpuCj.js rename to _nuxt/DocumentDrivenEmpty.-WgfKx9h.js index bb1f25f863..b30281a8c5 100644 --- a/_nuxt/DocumentDrivenEmpty.uAjfpuCj.js +++ b/_nuxt/DocumentDrivenEmpty.-WgfKx9h.js @@ -1 +1 @@ -import{d as n,Q as e}from"./entry.TEDHt2QA.js";const r=n({name:"DocumentDrivenEmpty",props:{value:{type:Object,required:!0}},render({value:t}){return e("div",void 0,[e("p","Document is empty"),e("p",`Add content to it by opening ${t._source}/${t._file} file.`)])}});export{r as default}; +import{d as n,Q as e}from"./entry.2w2g1VWZ.js";const r=n({name:"DocumentDrivenEmpty",props:{value:{type:Object,required:!0}},render({value:t}){return e("div",void 0,[e("p","Document is empty"),e("p",`Add content to it by opening ${t._source}/${t._file} file.`)])}});export{r as default}; diff --git a/_nuxt/DocumentDrivenNotFound.xfb8EcE2.js b/_nuxt/DocumentDrivenNotFound.EW4TuDtB.js similarity index 81% rename from _nuxt/DocumentDrivenNotFound.xfb8EcE2.js rename to _nuxt/DocumentDrivenNotFound.EW4TuDtB.js index e4257ee11c..aca262aa5d 100644 --- a/_nuxt/DocumentDrivenNotFound.xfb8EcE2.js +++ b/_nuxt/DocumentDrivenNotFound.EW4TuDtB.js @@ -1 +1 @@ -import s from"./ButtonLink.KvhTbcIS.js";import{k as c,b as a,c as _,e,g as i,w as d,G as r,p,i as l}from"./entry.TEDHt2QA.js";const u={},t=o=>(p("data-v-581efae0"),o=o(),l(),o),h={class:"document-driven-not-found not-prose"},f=t(()=>e("p",null," 404 ",-1)),m={class:"content"},v=t(()=>e("div",{class:"text-section"},[e("h1",null," Not Found "),e("p",null," This is not the page you're looking for. ")],-1)),x={class:"button-section"};function k(o,g){const n=s;return a(),_("div",h,[e("main",null,[f,e("div",m,[v,e("div",x,[i(n,{href:"/",size:"large",variant:"primary"},{default:d(()=>[r(" Go back home ")]),_:1})])])])])}const N=c(u,[["render",k],["__scopeId","data-v-581efae0"]]);export{N as default}; +import s from"./ButtonLink.zZVq8ThH.js";import{k as c,b as a,c as _,e,g as i,w as d,G as r,p,i as l}from"./entry.2w2g1VWZ.js";const u={},t=o=>(p("data-v-581efae0"),o=o(),l(),o),h={class:"document-driven-not-found not-prose"},f=t(()=>e("p",null," 404 ",-1)),m={class:"content"},v=t(()=>e("div",{class:"text-section"},[e("h1",null," Not Found "),e("p",null," This is not the page you're looking for. ")],-1)),x={class:"button-section"};function k(o,g){const n=s;return a(),_("div",h,[e("main",null,[f,e("div",m,[v,e("div",x,[i(n,{href:"/",size:"large",variant:"primary"},{default:d(()=>[r(" Go back home ")]),_:1})])])])])}const N=c(u,[["render",k],["__scopeId","data-v-581efae0"]]);export{N as default}; diff --git a/_nuxt/EditOnLink.Am6BZK5o.js b/_nuxt/EditOnLink.Am6BZK5o.js deleted file mode 100644 index 265c1028b0..0000000000 --- a/_nuxt/EditOnLink.Am6BZK5o.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./EditOnLink.vue.ygqPpcZl.js";import"./entry.TEDHt2QA.js";export{m as default}; diff --git a/_nuxt/EditOnLink.c1MbaT8y.js b/_nuxt/EditOnLink.c1MbaT8y.js new file mode 100644 index 0000000000..bff394233a --- /dev/null +++ b/_nuxt/EditOnLink.c1MbaT8y.js @@ -0,0 +1 @@ +import{_ as m}from"./EditOnLink.vue.aDm18t_T.js";import"./entry.2w2g1VWZ.js";export{m as default}; diff --git a/_nuxt/EditOnLink.vue.ygqPpcZl.js b/_nuxt/EditOnLink.vue.aDm18t_T.js similarity index 94% rename from _nuxt/EditOnLink.vue.ygqPpcZl.js rename to _nuxt/EditOnLink.vue.aDm18t_T.js index 2feab4c2b3..6b84a7bf1d 100644 --- a/_nuxt/EditOnLink.vue.ygqPpcZl.js +++ b/_nuxt/EditOnLink.vue.aDm18t_T.js @@ -1 +1 @@ -import{d as v,x as u,K as d,ay as w,af as p}from"./entry.TEDHt2QA.js";const S=v({props:{baseUrl:{type:String,default:()=>{var e,t,r;return((r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.baseUrl)||"https://github.com"},required:!1},owner:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.owner},required:!1},repo:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.repo},required:!1},branch:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.branch},required:!1},dir:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.dir},required:!1},source:{type:String,required:!1,default:void 0},page:{type:Object,required:!1,default:void 0},contentDir:{type:String,required:!1,default:()=>{var e,t,r;return((r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.dir)||"content"}},edit:{type:Boolean,required:!1,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.edit}}},setup(e){if(!e.owner||!e.repo||!e.branch)throw new Error("If you want to use `GithubLink` component, you must specify: `owner`, `repo` and `branch`.");const t=d(()=>{var h,b;let{baseUrl:n,repo:a,owner:c,branch:l,contentDir:f}=e,s="";if((b=(h=u())==null?void 0:h.public)!=null&&b.content){let i;const{sources:g}=u().public.content;for(const y in g||[])if(e.page._id.startsWith(y)){i=g[y];break}(i==null?void 0:i.driver)==="github"&&(a=i.repo||e.repo||"",c=i.owner||e.owner||"",l=i.branch||e.branch||"main",f=i.dir||e.contentDir||"",s=i.prefix||"")}return{baseUrl:n,repo:a,owner:c,branch:l,contentDir:f,prefix:s}}),r=d(()=>w(`${t.value.baseUrl}/${t.value.owner}/${t.value.repo}`)),o=d(()=>{var a;const n=[];return(a=e==null?void 0:e.page)!=null&&a._path?(t.value.contentDir&&n.push(t.value.contentDir),n.push(e.page._file.substring(t.value.prefix.length)),n):(e.dir&&n.push(e.dir),e.source&&n.push(e.source),n)});return{url:d(()=>{var a;const n=[r.value];return e.edit?n.push("edit"):n.push("tree"),n.push(((a=t==null?void 0:t.value)==null?void 0:a.branch)||"",...o.value),n.filter(Boolean).join("/")})}},render(e){var o;const{url:t}=e,r=p();return(o=r==null?void 0:r.default)==null?void 0:o.call(r,{url:t})}});export{S as _}; +import{d as v,x as u,K as d,ay as w,af as p}from"./entry.2w2g1VWZ.js";const S=v({props:{baseUrl:{type:String,default:()=>{var e,t,r;return((r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.baseUrl)||"https://github.com"},required:!1},owner:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.owner},required:!1},repo:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.repo},required:!1},branch:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.branch},required:!1},dir:{type:String,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.dir},required:!1},source:{type:String,required:!1,default:void 0},page:{type:Object,required:!1,default:void 0},contentDir:{type:String,required:!1,default:()=>{var e,t,r;return((r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.dir)||"content"}},edit:{type:Boolean,required:!1,default:()=>{var e,t,r;return(r=(t=(e=u())==null?void 0:e.docus)==null?void 0:t.github)==null?void 0:r.edit}}},setup(e){if(!e.owner||!e.repo||!e.branch)throw new Error("If you want to use `GithubLink` component, you must specify: `owner`, `repo` and `branch`.");const t=d(()=>{var h,b;let{baseUrl:n,repo:a,owner:c,branch:l,contentDir:f}=e,s="";if((b=(h=u())==null?void 0:h.public)!=null&&b.content){let i;const{sources:g}=u().public.content;for(const y in g||[])if(e.page._id.startsWith(y)){i=g[y];break}(i==null?void 0:i.driver)==="github"&&(a=i.repo||e.repo||"",c=i.owner||e.owner||"",l=i.branch||e.branch||"main",f=i.dir||e.contentDir||"",s=i.prefix||"")}return{baseUrl:n,repo:a,owner:c,branch:l,contentDir:f,prefix:s}}),r=d(()=>w(`${t.value.baseUrl}/${t.value.owner}/${t.value.repo}`)),o=d(()=>{var a;const n=[];return(a=e==null?void 0:e.page)!=null&&a._path?(t.value.contentDir&&n.push(t.value.contentDir),n.push(e.page._file.substring(t.value.prefix.length)),n):(e.dir&&n.push(e.dir),e.source&&n.push(e.source),n)});return{url:d(()=>{var a;const n=[r.value];return e.edit?n.push("edit"):n.push("tree"),n.push(((a=t==null?void 0:t.value)==null?void 0:a.branch)||"",...o.value),n.filter(Boolean).join("/")})}},render(e){var o;const{url:t}=e,r=p();return(o=r==null?void 0:r.default)==null?void 0:o.call(r,{url:t})}});export{S as _}; diff --git a/_nuxt/Ellipsis.flpaOiFy.js b/_nuxt/Ellipsis.MWZY-yMY.js similarity index 95% rename from _nuxt/Ellipsis.flpaOiFy.js rename to _nuxt/Ellipsis.MWZY-yMY.js index f79647302b..3fee43bd65 100644 --- a/_nuxt/Ellipsis.flpaOiFy.js +++ b/_nuxt/Ellipsis.MWZY-yMY.js @@ -1 +1 @@ -import{d as m,K as a,ae as S,b as y,c as I,n as b,L as p,p as x,i as $,e as v,k as E}from"./entry.TEDHt2QA.js";const k=n=>(x("data-v-2490f91e"),n=n(),$(),n),w=k(()=>v("div",{class:"ellipsis-item"},null,-1)),z=[w],B=m({__name:"Ellipsis",props:{width:{type:String,default:"10rem"},height:{type:String,default:"10rem"},zIndex:{type:String,default:"10"},top:{type:String,default:"0"},left:{type:String,default:"auto"},right:{type:String,default:"auto"},blur:{type:String,default:"50px"},colors:{type:Array,default:()=>["rgba(0, 71, 225, 0.22)","rgba(26, 214, 255, 0.22)","rgba(0, 220, 130, 0.22)"]}},setup(n){const l=a(()=>((t=e)=>t.top)()),o=a(()=>((t=e)=>t.left)()),d=a(()=>((t=e)=>t.right)()),_=a(()=>((t=e)=>t.zIndex)()),r=a(()=>((t=e)=>t.width)()),u=a(()=>((t=e)=>t.height)()),f=a(()=>((t=e)=>`blur(${t.blur})`)()),g=a(()=>((t=e)=>{var i,s,c;return`linear-gradient(97.62deg, ${(i=t==null?void 0:t.colors)==null?void 0:i[0]} 2.27%, ${(s=t==null?void 0:t.colors)==null?void 0:s[1]} 50.88%, ${(c=t==null?void 0:t.colors)==null?void 0:c[2]} 98.48%)`})()),e=n,{$pinceau:h}=S(e,void 0,{_cCN_top:l,_eih_insetInlineStart:o,_IfB_insetInlineEnd:d,_SsE_zIndex:_,_wj8_maxWidth:r,_t33_height:u,_Jfd_filter:f,_yUj_background:g});return(t,i)=>(y(),I("div",{class:b(["ellipsis",[p(h)]])},z,2))}}),j=E(B,[["__scopeId","data-v-2490f91e"]]);export{j as default}; +import{d as m,K as a,ae as S,b as y,c as I,n as b,L as p,p as x,i as $,e as v,k as E}from"./entry.2w2g1VWZ.js";const k=n=>(x("data-v-2490f91e"),n=n(),$(),n),w=k(()=>v("div",{class:"ellipsis-item"},null,-1)),z=[w],B=m({__name:"Ellipsis",props:{width:{type:String,default:"10rem"},height:{type:String,default:"10rem"},zIndex:{type:String,default:"10"},top:{type:String,default:"0"},left:{type:String,default:"auto"},right:{type:String,default:"auto"},blur:{type:String,default:"50px"},colors:{type:Array,default:()=>["rgba(0, 71, 225, 0.22)","rgba(26, 214, 255, 0.22)","rgba(0, 220, 130, 0.22)"]}},setup(n){const l=a(()=>((t=e)=>t.top)()),o=a(()=>((t=e)=>t.left)()),d=a(()=>((t=e)=>t.right)()),_=a(()=>((t=e)=>t.zIndex)()),r=a(()=>((t=e)=>t.width)()),u=a(()=>((t=e)=>t.height)()),f=a(()=>((t=e)=>`blur(${t.blur})`)()),g=a(()=>((t=e)=>{var i,s,c;return`linear-gradient(97.62deg, ${(i=t==null?void 0:t.colors)==null?void 0:i[0]} 2.27%, ${(s=t==null?void 0:t.colors)==null?void 0:s[1]} 50.88%, ${(c=t==null?void 0:t.colors)==null?void 0:c[2]} 98.48%)`})()),e=n,{$pinceau:h}=S(e,void 0,{_cCN_top:l,_eih_insetInlineStart:o,_IfB_insetInlineEnd:d,_SsE_zIndex:_,_wj8_maxWidth:r,_t33_height:u,_Jfd_filter:f,_yUj_background:g});return(t,i)=>(y(),I("div",{class:b(["ellipsis",[p(h)]])},z,2))}}),j=E(B,[["__scopeId","data-v-2490f91e"]]);export{j as default}; diff --git a/_nuxt/IconCSS.FVhw5sC8.js b/_nuxt/IconCSS.mxCjQHSh.js similarity index 92% rename from _nuxt/IconCSS.FVhw5sC8.js rename to _nuxt/IconCSS.mxCjQHSh.js index 5e03e91fa6..f395809465 100644 --- a/_nuxt/IconCSS.FVhw5sC8.js +++ b/_nuxt/IconCSS.mxCjQHSh.js @@ -1 +1 @@ -import{d as m,aV as x,x as _,K as o,b as f,c as z,aU as S,L as a,k as I}from"./entry.TEDHt2QA.js";const y=m({__name:"IconCSS",props:{name:{type:String,required:!0},size:{type:String,default:""}},setup(l){var r;x(s=>({"589837de":a(d)}));const e=_();(r=e==null?void 0:e.nuxtIcon)!=null&&r.aliases;const n=l,p=o(()=>{var s;return(((s=e==null?void 0:e.nuxtIcon)==null?void 0:s.aliases)||{})[n.name]||n.name}),d=o(()=>`url('https://api.iconify.design/${p.value.replace(":","/")}.svg')`),c=o(()=>{var t,i,u;if(!n.size&&typeof((t=e.nuxtIcon)==null?void 0:t.size)=="boolean"&&!((i=e.nuxtIcon)!=null&&i.size))return;const s=n.size||((u=e.nuxtIcon)==null?void 0:u.size)||"1em";return String(Number(s))===s?`${s}px`:s});return(s,t)=>(f(),z("span",{style:S({width:a(c),height:a(c)})},null,4))}}),g=I(y,[["__scopeId","data-v-e9d3514d"]]);export{g as default}; +import{d as m,aV as x,x as _,K as o,b as f,c as z,aU as S,L as a,k as I}from"./entry.2w2g1VWZ.js";const y=m({__name:"IconCSS",props:{name:{type:String,required:!0},size:{type:String,default:""}},setup(l){var r;x(s=>({"589837de":a(d)}));const e=_();(r=e==null?void 0:e.nuxtIcon)!=null&&r.aliases;const n=l,p=o(()=>{var s;return(((s=e==null?void 0:e.nuxtIcon)==null?void 0:s.aliases)||{})[n.name]||n.name}),d=o(()=>`url('https://api.iconify.design/${p.value.replace(":","/")}.svg')`),c=o(()=>{var t,i,u;if(!n.size&&typeof((t=e.nuxtIcon)==null?void 0:t.size)=="boolean"&&!((i=e.nuxtIcon)!=null&&i.size))return;const s=n.size||((u=e.nuxtIcon)==null?void 0:u.size)||"1em";return String(Number(s))===s?`${s}px`:s});return(s,t)=>(f(),z("span",{style:S({width:a(c),height:a(c)})},null,4))}}),g=I(y,[["__scopeId","data-v-e9d3514d"]]);export{g as default}; diff --git a/_nuxt/IconCodeSandBox.iZ-QV741.js b/_nuxt/IconCodeSandBox.JjBFbY0D.js similarity index 85% rename from _nuxt/IconCodeSandBox.iZ-QV741.js rename to _nuxt/IconCodeSandBox.JjBFbY0D.js index 77977b000a..7335748856 100644 --- a/_nuxt/IconCodeSandBox.iZ-QV741.js +++ b/_nuxt/IconCodeSandBox.JjBFbY0D.js @@ -1 +1 @@ -import{k as e,b as o,c as n,e as t}from"./entry.TEDHt2QA.js";const c={},s={viewBox:"0 0 105 104",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r=t("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M104.297.31104.87354.3111V103.735H104.297V.31104ZM93.7196 93.1572V10.8885H11.4509v82.2687h82.2687Z",fill:"currentColor"},null,-1),l=[r];function d(_,a){return o(),n("svg",s,l)}const f=e(c,[["render",d]]);export{f as default}; +import{k as e,b as o,c as n,e as t}from"./entry.2w2g1VWZ.js";const c={},s={viewBox:"0 0 105 104",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r=t("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M104.297.31104.87354.3111V103.735H104.297V.31104ZM93.7196 93.1572V10.8885H11.4509v82.2687h82.2687Z",fill:"currentColor"},null,-1),l=[r];function d(_,a){return o(),n("svg",s,l)}const f=e(c,[["render",d]]);export{f as default}; diff --git a/_nuxt/IconDocus.a4OyoZiK.js b/_nuxt/IconDocus.ZKicOodD.js similarity index 91% rename from _nuxt/IconDocus.a4OyoZiK.js rename to _nuxt/IconDocus.ZKicOodD.js index 75ab6d8f4d..b0c1c0dae5 100644 --- a/_nuxt/IconDocus.a4OyoZiK.js +++ b/_nuxt/IconDocus.ZKicOodD.js @@ -1 +1 @@ -import{k as e,b as o,c,e as s}from"./entry.TEDHt2QA.js";const t={},n={viewBox:"0 0 57 57",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r=s("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M28.5445 0C12.8044 0 0 12.7599 0 28.5v25.4549c0 1.5835 1.28368 2.8672 2.86718 2.8672H28.5889C44.2799 56.8221 57 44.102 57 28.4111 57 12.7201 44.2355 0 28.5445 0Zm15.4963 34.452c3.3649 0 6.0927-2.7278 6.0927-6.0928 0-3.3649-2.7278-6.0927-6.0927-6.0927-3.365 0-6.0928 2.7278-6.0928 6.0927 0 3.365 2.7278 6.0928 6.0928 6.0928Zm-18.0833.0003c3.3649 0 6.0927-2.7278 6.0927-6.0927s-2.7278-6.0928-6.0927-6.0928-6.0928 2.7279-6.0928 6.0928c0 3.3649 2.7279 6.0927 6.0928 6.0927Z",fill:"currentColor"},null,-1),l=[r];function _(a,d){return o(),c("svg",n,l)}const f=e(t,[["render",_]]);export{f as default}; +import{k as e,b as o,c,e as s}from"./entry.2w2g1VWZ.js";const t={},n={viewBox:"0 0 57 57",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r=s("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M28.5445 0C12.8044 0 0 12.7599 0 28.5v25.4549c0 1.5835 1.28368 2.8672 2.86718 2.8672H28.5889C44.2799 56.8221 57 44.102 57 28.4111 57 12.7201 44.2355 0 28.5445 0Zm15.4963 34.452c3.3649 0 6.0927-2.7278 6.0927-6.0928 0-3.3649-2.7278-6.0927-6.0927-6.0927-3.365 0-6.0928 2.7278-6.0928 6.0927 0 3.365 2.7278 6.0928 6.0928 6.0928Zm-18.0833.0003c3.3649 0 6.0927-2.7278 6.0927-6.0927s-2.7278-6.0928-6.0927-6.0928-6.0928 2.7279-6.0928 6.0928c0 3.3649 2.7279 6.0927 6.0928 6.0927Z",fill:"currentColor"},null,-1),l=[r];function _(a,d){return o(),c("svg",n,l)}const f=e(t,[["render",_]]);export{f as default}; diff --git a/_nuxt/IconNuxt.GcwYnMUL.js b/_nuxt/IconNuxt.zSFBKkBR.js similarity index 94% rename from _nuxt/IconNuxt.GcwYnMUL.js rename to _nuxt/IconNuxt.zSFBKkBR.js index c3d5a85cbc..7abd3e1d87 100644 --- a/_nuxt/IconNuxt.GcwYnMUL.js +++ b/_nuxt/IconNuxt.zSFBKkBR.js @@ -1 +1 @@ -import{k as c,b as e,c as t,e as o}from"./entry.TEDHt2QA.js";const s={},n={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},r=o("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1),_=[r];function l(a,h){return e(),t("svg",n,_)}const i=c(s,[["render",l]]);export{i as default}; +import{k as c,b as e,c as t,e as o}from"./entry.2w2g1VWZ.js";const s={},n={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},r=o("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1),_=[r];function l(a,h){return e(),t("svg",n,_)}const i=c(s,[["render",l]]);export{i as default}; diff --git a/_nuxt/IconNuxtContent.GcwYnMUL.js b/_nuxt/IconNuxtContent.zSFBKkBR.js similarity index 94% rename from _nuxt/IconNuxtContent.GcwYnMUL.js rename to _nuxt/IconNuxtContent.zSFBKkBR.js index c3d5a85cbc..7abd3e1d87 100644 --- a/_nuxt/IconNuxtContent.GcwYnMUL.js +++ b/_nuxt/IconNuxtContent.zSFBKkBR.js @@ -1 +1 @@ -import{k as c,b as e,c as t,e as o}from"./entry.TEDHt2QA.js";const s={},n={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},r=o("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1),_=[r];function l(a,h){return e(),t("svg",n,_)}const i=c(s,[["render",l]]);export{i as default}; +import{k as c,b as e,c as t,e as o}from"./entry.2w2g1VWZ.js";const s={},n={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},r=o("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1),_=[r];function l(a,h){return e(),t("svg",n,_)}const i=c(s,[["render",l]]);export{i as default}; diff --git a/_nuxt/IconNuxtLabs.-k75stbx.js b/_nuxt/IconNuxtLabs.TbnZSbTI.js similarity index 94% rename from _nuxt/IconNuxtLabs.-k75stbx.js rename to _nuxt/IconNuxtLabs.TbnZSbTI.js index 9b5173bfa5..2e8578a81c 100644 --- a/_nuxt/IconNuxtLabs.-k75stbx.js +++ b/_nuxt/IconNuxtLabs.TbnZSbTI.js @@ -1 +1 @@ -import{k as c,b as e,c as t,e as o}from"./entry.TEDHt2QA.js";const s={},n={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},r=o("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1),_=[r];function a(l,h){return e(),t("svg",n,_)}const i=c(s,[["render",a]]);export{i as default}; +import{k as c,b as e,c as t,e as o}from"./entry.2w2g1VWZ.js";const s={},n={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},r=o("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1),_=[r];function a(l,h){return e(),t("svg",n,_)}const i=c(s,[["render",a]]);export{i as default}; diff --git a/_nuxt/IconNuxtStudio.idr9sHr4.js b/_nuxt/IconNuxtStudio.US0XkEUX.js similarity index 89% rename from _nuxt/IconNuxtStudio.idr9sHr4.js rename to _nuxt/IconNuxtStudio.US0XkEUX.js index 2c8b8e108d..17f98fb725 100644 --- a/_nuxt/IconNuxtStudio.idr9sHr4.js +++ b/_nuxt/IconNuxtStudio.US0XkEUX.js @@ -1 +1 @@ -import{k as e,b as o,c as t,p as s,i as a,e as _}from"./entry.TEDHt2QA.js";const n={},r=c=>(s("data-v-7086cbe4"),c=c(),a(),c),d={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},p=r(()=>_("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1)),l=[p];function h(c,i){return o(),t("svg",d,l)}const f=e(n,[["render",h],["__scopeId","data-v-7086cbe4"]]);export{f as default}; +import{k as e,b as o,c as t,p as s,i as a,e as _}from"./entry.2w2g1VWZ.js";const n={},r=c=>(s("data-v-7086cbe4"),c=c(),a(),c),d={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 324 324"},p=r(()=>_("path",{fill:"currentColor",d:"M181.767 270h120.444c3.826 0 7.584-.997 10.897-2.893 3.313-1.896 6.064-4.623 7.976-7.907 1.912-3.285 2.918-7.01 2.916-10.801-.002-3.792-1.011-7.516-2.926-10.798L240.187 98.7439c-1.912-3.2832-4.662-6.0097-7.974-7.9054-3.312-1.8956-7.07-2.8936-10.895-2.8936-3.824 0-7.582.998-10.894 2.8936-3.312 1.8957-6.063 4.6222-7.975 7.9054l-20.682 35.5281-40.438-69.4745c-1.913-3.283-4.665-6.0091-7.978-7.9044C130.038 54.9978 126.28 54 122.454 54c-3.825 0-7.583.9978-10.896 2.8931-3.313 1.8953-6.065 4.6214-7.978 7.9044L2.9255 237.601C1.0107 240.883.0017 244.607 0 248.399c-.0017 3.791 1.004 7.516 2.916 10.801 1.912 3.284 4.6628 6.011 7.9758 7.907C14.2047 269.003 17.963 270 21.7886 270h75.605c29.9554 0 52.0464-13.041 67.2474-38.483l36.905-63.345 19.767-33.9L280.637 236.1h-79.091L181.767 270Zm-85.6059-33.935-52.7627-.011L122.49 100.291l39.463 67.881-26.422 45.371c-10.095 16.508-21.563 22.522-39.3699 22.522Z"},null,-1)),l=[p];function h(c,i){return o(),t("svg",d,l)}const f=e(n,[["render",h],["__scopeId","data-v-7086cbe4"]]);export{f as default}; diff --git a/_nuxt/IconStackBlitz.S2MfOnZJ.js b/_nuxt/IconStackBlitz.Ti8Oiwdd.js similarity index 82% rename from _nuxt/IconStackBlitz.S2MfOnZJ.js rename to _nuxt/IconStackBlitz.Ti8Oiwdd.js index c052a7ef68..4071456d64 100644 --- a/_nuxt/IconStackBlitz.S2MfOnZJ.js +++ b/_nuxt/IconStackBlitz.Ti8Oiwdd.js @@ -1 +1 @@ -import{k as e,b as t,c as o,e as c}from"./entry.TEDHt2QA.js";const s={},n={viewBox:"0 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r=c("path",{d:"M11.46 14.773H4L17.638 0l-3.671 10.227h7.46L7.788 25l3.671-10.227h.001Z",fill:"currentColor"},null,-1),l=[r];function _(a,i){return t(),o("svg",n,l)}const f=e(s,[["render",_]]);export{f as default}; +import{k as e,b as t,c as o,e as c}from"./entry.2w2g1VWZ.js";const s={},n={viewBox:"0 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r=c("path",{d:"M11.46 14.773H4L17.638 0l-3.671 10.227h7.46L7.788 25l3.671-10.227h.001Z",fill:"currentColor"},null,-1),l=[r];function _(a,i){return t(),o("svg",n,l)}const f=e(s,[["render",_]]);export{f as default}; diff --git a/_nuxt/IconVueTelescope.ETNU1tC6.js b/_nuxt/IconVueTelescope.hijrETea.js similarity index 91% rename from _nuxt/IconVueTelescope.ETNU1tC6.js rename to _nuxt/IconVueTelescope.hijrETea.js index 46bfd01047..243504dead 100644 --- a/_nuxt/IconVueTelescope.ETNU1tC6.js +++ b/_nuxt/IconVueTelescope.hijrETea.js @@ -1 +1 @@ -import{k as e,b as t,c as l,e as o}from"./entry.TEDHt2QA.js";const n={},s={viewBox:"0 0 124 124",fill:"none",xmlns:"http://www.w3.org/2000/svg"},c=o("path",{d:"M48 82.5887L57.1066 98.175C59.3073 101.942 64.8092 101.942 67.0102 98.175L101 40H72.8834L48 82.5887Z",fill:"currentColor"},null,-1),r=o("path",{d:"M77 33H104.936L105.23 32.4924C107.417 28.718 104.684 24 100.31 24H82.2142L77 33Z",fill:"currentColor"},null,-1),_=o("path",{d:"M74 24L68.7601 33H19.0689L18.7734 32.4924C16.5759 28.718 19.3228 24 23.7177 24H74Z",fill:"currentColor"},null,-1),a=o("path",{d:"M65 40L44 76L23 40H65Z",fill:"currentColor"},null,-1),i=[c,r,_,a];function d(h,u){return t(),l("svg",s,i)}const p=e(n,[["render",d]]);export{p as default}; +import{k as e,b as t,c as l,e as o}from"./entry.2w2g1VWZ.js";const n={},s={viewBox:"0 0 124 124",fill:"none",xmlns:"http://www.w3.org/2000/svg"},c=o("path",{d:"M48 82.5887L57.1066 98.175C59.3073 101.942 64.8092 101.942 67.0102 98.175L101 40H72.8834L48 82.5887Z",fill:"currentColor"},null,-1),r=o("path",{d:"M77 33H104.936L105.23 32.4924C107.417 28.718 104.684 24 100.31 24H82.2142L77 33Z",fill:"currentColor"},null,-1),_=o("path",{d:"M74 24L68.7601 33H19.0689L18.7734 32.4924C16.5759 28.718 19.3228 24 23.7177 24H74Z",fill:"currentColor"},null,-1),a=o("path",{d:"M65 40L44 76L23 40H65Z",fill:"currentColor"},null,-1),i=[c,r,_,a];function d(h,u){return t(),l("svg",s,i)}const p=e(n,[["render",d]]);export{p as default}; diff --git a/_nuxt/IndexDemo.T7S8AmOE.js b/_nuxt/IndexDemo.D_WynMN1.js similarity index 75% rename from _nuxt/IndexDemo.T7S8AmOE.js rename to _nuxt/IndexDemo.D_WynMN1.js index 73b2edcb2e..dcbc6b86f6 100644 --- a/_nuxt/IndexDemo.T7S8AmOE.js +++ b/_nuxt/IndexDemo.D_WynMN1.js @@ -1 +1 @@ -import a from"./Card.L9sNeYTi.js";import{k as n,b as r,c as _,e as s,g as d,w as o,G as e,$ as l}from"./entry.TEDHt2QA.js";const i={},f={class:"flex gap-4 mb-8"},m={class:"w-2/3"},h=s("code",null,"",-1),p={class:"w-1/3"};function x(t,u){const c=a;return r(),_("div",f,[s("div",m,[d(c,{class:"h-full"},{title:o(()=>[e(" Easy to use ")]),description:o(()=>[e(" Use "),h,e(" to render reCAPTCHA checkbox ")]),_:1})]),s("div",p,[l(t.$slots,"default")])])}const b=n(i,[["render",x]]);export{b as default}; +import a from"./Card.BzG3yGUC.js";import{k as n,b as r,c as _,e as s,g as d,w as o,G as e,$ as l}from"./entry.2w2g1VWZ.js";const i={},f={class:"flex gap-4 mb-8"},m={class:"w-2/3"},h=s("code",null,"",-1),p={class:"w-1/3"};function x(t,u){const c=a;return r(),_("div",f,[s("div",m,[d(c,{class:"h-full"},{title:o(()=>[e(" Easy to use ")]),description:o(()=>[e(" Use "),h,e(" to render reCAPTCHA checkbox ")]),_:1})]),s("div",p,[l(t.$slots,"default")])])}const b=n(i,[["render",x]]);export{b as default}; diff --git a/_nuxt/List.S2mTRTab.js b/_nuxt/List.X_fwvQfv.js similarity index 92% rename from _nuxt/List.S2mTRTab.js rename to _nuxt/List.X_fwvQfv.js index 591cda2d2c..f52856f094 100644 --- a/_nuxt/List.S2mTRTab.js +++ b/_nuxt/List.X_fwvQfv.js @@ -1 +1 @@ -import{aK as r,aL as l,d as u,af as p,K as m,Q as n,a1 as f,k as d}from"./entry.TEDHt2QA.js";import{_}from"./MDCSlot.AOMUK9gf.js";const y=()=>({unwrap:r,flatUnwrap:l}),h={primary:"heroicons-outline:check",info:"heroicons-outline:information-circle",success:"heroicons-outline:check-circle",warning:"heroicons-outline:exclamation",danger:"heroicons-outline:exclamation-circle"},w=u({props:{icon:{type:String,default:null},type:{type:String,default:"primary",validator:a=>["primary","info","success","warning","danger"].includes(a)}},setup(a){const o=p(),{flatUnwrap:s,unwrap:t}=y(),c=m(()=>a.icon||h[a.type]);return()=>{const i=s((o.default&&o.default())??[],["ul"]).map(e=>t(e,["li"]));return n("ul",i.map(e=>n("li",[n("span",{class:`list-icon ${a.type}`},n(f,{name:c.value,class:"icon"})),n("span",n(_,{use:()=>e}))])))}}}),k=d(w,[["__scopeId","data-v-40141052"]]);export{k as default}; +import{aK as r,aL as l,d as u,af as p,K as m,Q as n,a1 as f,k as d}from"./entry.2w2g1VWZ.js";import{_}from"./MDCSlot.GLK9dOCB.js";const y=()=>({unwrap:r,flatUnwrap:l}),h={primary:"heroicons-outline:check",info:"heroicons-outline:information-circle",success:"heroicons-outline:check-circle",warning:"heroicons-outline:exclamation",danger:"heroicons-outline:exclamation-circle"},w=u({props:{icon:{type:String,default:null},type:{type:String,default:"primary",validator:a=>["primary","info","success","warning","danger"].includes(a)}},setup(a){const o=p(),{flatUnwrap:s,unwrap:t}=y(),c=m(()=>a.icon||h[a.type]);return()=>{const i=s((o.default&&o.default())??[],["ul"]).map(e=>t(e,["li"]));return n("ul",i.map(e=>n("li",[n("span",{class:`list-icon ${a.type}`},n(f,{name:c.value,class:"icon"})),n("span",n(_,{use:()=>e}))])))}}}),k=d(w,[["__scopeId","data-v-40141052"]]);export{k as default}; diff --git a/_nuxt/MDCSlot.AOMUK9gf.js b/_nuxt/MDCSlot.GLK9dOCB.js similarity index 91% rename from _nuxt/MDCSlot.AOMUK9gf.js rename to _nuxt/MDCSlot.GLK9dOCB.js index 59a931246d..8ae0d7ecaa 100644 --- a/_nuxt/MDCSlot.AOMUK9gf.js +++ b/_nuxt/MDCSlot.GLK9dOCB.js @@ -1 +1 @@ -import{d as i,af as u,K as f,Q as l,aL as c,ab as d}from"./entry.TEDHt2QA.js";const m=i({name:"MDCSlot",functional:!0,props:{name:{type:String,default:"default"},unwrap:{type:[Boolean,String],default:!1},use:{type:Function,default:void 0}},setup(t){const{parent:s}=d(),{default:o}=u(),a=f(()=>typeof t.unwrap=="string"?t.unwrap.split(" "):["*"]);return{fallbackSlot:o,tags:a,parent:s}},render({use:t,unwrap:s,fallbackSlot:o,tags:a,parent:e}){var r;try{let n=t;return typeof t=="string"&&(n=(e==null?void 0:e.slots[t])||((r=e==null?void 0:e.parent)==null?void 0:r.slots[t]),console.warn(`Please set :use="$slots.${t}" in component to enable reactivity`)),n?s?c(n(),a):[n()]:o?o():l("div")}catch{return l("div")}}});export{m as _}; +import{d as i,af as u,K as f,Q as l,aL as c,ab as d}from"./entry.2w2g1VWZ.js";const m=i({name:"MDCSlot",functional:!0,props:{name:{type:String,default:"default"},unwrap:{type:[Boolean,String],default:!1},use:{type:Function,default:void 0}},setup(t){const{parent:s}=d(),{default:o}=u(),a=f(()=>typeof t.unwrap=="string"?t.unwrap.split(" "):["*"]);return{fallbackSlot:o,tags:a,parent:s}},render({use:t,unwrap:s,fallbackSlot:o,tags:a,parent:e}){var r;try{let n=t;return typeof t=="string"&&(n=(e==null?void 0:e.slots[t])||((r=e==null?void 0:e.parent)==null?void 0:r.slots[t]),console.warn(`Please set :use="$slots.${t}" in component to enable reactivity`)),n?s?c(n(),a):[n()]:o?o():l("div")}catch{return l("div")}}});export{m as _}; diff --git a/_nuxt/Markdown.2dGs1H5r.js b/_nuxt/Markdown.2dGs1H5r.js deleted file mode 100644 index e93006c3ff..0000000000 --- a/_nuxt/Markdown.2dGs1H5r.js +++ /dev/null @@ -1 +0,0 @@ -import s from"./ContentSlot.hAjWUk8S.js";import{d as o,af as f,K as u,ab as m}from"./entry.TEDHt2QA.js";import"./MDCSlot.AOMUK9gf.js";const d=o({name:"Markdown",extends:s,setup(t){const{parent:e}=m(),{between:n,default:a}=f(),r=u(()=>typeof t.unwrap=="string"?t.unwrap.split(" "):["*"]);return{fallbackSlot:a,tags:r,between:n,parent:e}}});export{d as default}; diff --git a/_nuxt/Markdown.yuQLeeRs.js b/_nuxt/Markdown.yuQLeeRs.js new file mode 100644 index 0000000000..912b3206a2 --- /dev/null +++ b/_nuxt/Markdown.yuQLeeRs.js @@ -0,0 +1 @@ +import s from"./ContentSlot.KD4hNNCp.js";import{d as o,af as f,K as u,ab as m}from"./entry.2w2g1VWZ.js";import"./MDCSlot.GLK9dOCB.js";const d=o({name:"Markdown",extends:s,setup(t){const{parent:e}=m(),{between:n,default:a}=f(),r=u(()=>typeof t.unwrap=="string"?t.unwrap.split(" "):["*"]);return{fallbackSlot:a,tags:r,between:n,parent:e}}});export{d as default}; diff --git a/_nuxt/Mermaid.gkHdzvQG.js b/_nuxt/Mermaid.kZxDpbbn.js similarity index 75% rename from _nuxt/Mermaid.gkHdzvQG.js rename to _nuxt/Mermaid.kZxDpbbn.js index 84c0c6c205..9f8e2934aa 100644 --- a/_nuxt/Mermaid.gkHdzvQG.js +++ b/_nuxt/Mermaid.kZxDpbbn.js @@ -1,2 +1,2 @@ -import{d as t,r as o,o as n,B as m,L as c,b as i,c as d,G as a,$ as l,f as p}from"./entry.TEDHt2QA.js";import{m as r}from"./mermaid-934d9bea.GjCu814R.js";import"./_commonjsHelpers.5-cIlDoe.js";const u={key:0,class:"mermaid"},x=t({__name:"Mermaid",setup(f){const e=o(!1);return n(async()=>{e.value=!0,await m(),r.initialize({startOnLoad:!1}),r.run({querySelector:".mermaid",suppressErrors:!1})}),(s,_)=>c(e)?(i(),d("pre",u,[a(" "),l(s.$slots,"default",{unwrap:"p"}),a(` +import{d as t,r as o,o as n,B as m,L as c,b as i,c as d,G as a,$ as l,f as p}from"./entry.2w2g1VWZ.js";import{m as r}from"./mermaid-934d9bea.JP-6_YN_.js";import"./_commonjsHelpers.5-cIlDoe.js";const u={key:0,class:"mermaid"},x=t({__name:"Mermaid",setup(f){const e=o(!1);return n(async()=>{e.value=!0,await m(),r.initialize({startOnLoad:!1}),r.run({querySelector:".mermaid",suppressErrors:!1})}),(s,_)=>c(e)?(i(),d("pre",u,[a(" "),l(s.$slots,"default",{unwrap:"p"}),a(` `)])):p("",!0)}});export{x as default}; diff --git a/_nuxt/NuxtImg.U2vgguSn.js b/_nuxt/NuxtImg.U2vgguSn.js new file mode 100644 index 0000000000..f157f84928 --- /dev/null +++ b/_nuxt/NuxtImg.U2vgguSn.js @@ -0,0 +1 @@ +import{_ as m}from"./NuxtImg.vue.5zIl8PSO.js";import"./entry.2w2g1VWZ.js";export{m as default}; diff --git a/_nuxt/NuxtImg.hV9pQHiq.js b/_nuxt/NuxtImg.hV9pQHiq.js deleted file mode 100644 index 75d630a934..0000000000 --- a/_nuxt/NuxtImg.hV9pQHiq.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./NuxtImg.vue.XitBA6AI.js";import"./entry.TEDHt2QA.js";export{m as default}; diff --git a/_nuxt/NuxtImg.vue.XitBA6AI.js b/_nuxt/NuxtImg.vue.5zIl8PSO.js similarity index 89% rename from _nuxt/NuxtImg.vue.XitBA6AI.js rename to _nuxt/NuxtImg.vue.5zIl8PSO.js index 9fddaf6e8b..6871afef61 100644 --- a/_nuxt/NuxtImg.vue.XitBA6AI.js +++ b/_nuxt/NuxtImg.vue.5zIl8PSO.js @@ -1 +1 @@ -import{d as a,K as i,Q as e,aI as n,l as h}from"./entry.TEDHt2QA.js";const f=a({props:{src:{type:[String,Object],default:null}},setup(s){const r=t=>t&&t.startsWith("/")&&!t.startsWith("//")?n(t,h().app.baseURL):t;return{imgSrc:i(()=>{let t=s.src;try{t=JSON.parse(t)}catch{t=s.src}return typeof t=="string"?r(s.src):{light:r(t.light),dark:r(t.dark)}})}},render({imgSrc:s}){if(typeof s=="string")return e("img",{src:s,...this.$attrs});const r=[];return s.light&&r.push(e("img",{src:s.light,class:["dark-img"],...this.$attrs})),s.dark&&r.push(e("img",{src:s.dark,class:["light-img"],...this.$attrs})),r}});export{f as _}; +import{d as a,K as i,Q as e,aI as n,l as h}from"./entry.2w2g1VWZ.js";const f=a({props:{src:{type:[String,Object],default:null}},setup(s){const r=t=>t&&t.startsWith("/")&&!t.startsWith("//")?n(t,h().app.baseURL):t;return{imgSrc:i(()=>{let t=s.src;try{t=JSON.parse(t)}catch{t=s.src}return typeof t=="string"?r(s.src):{light:r(t.light),dark:r(t.dark)}})}},render({imgSrc:s}){if(typeof s=="string")return e("img",{src:s,...this.$attrs});const r=[];return s.light&&r.push(e("img",{src:s.light,class:["dark-img"],...this.$attrs})),s.dark&&r.push(e("img",{src:s.dark,class:["light-img"],...this.$attrs})),r}});export{f as _}; diff --git a/_nuxt/PreviewLayout.Z_o72kN9.js b/_nuxt/PreviewLayout.nAhreDSz.js similarity index 75% rename from _nuxt/PreviewLayout.Z_o72kN9.js rename to _nuxt/PreviewLayout.nAhreDSz.js index 954425a070..e64782707e 100644 --- a/_nuxt/PreviewLayout.Z_o72kN9.js +++ b/_nuxt/PreviewLayout.nAhreDSz.js @@ -1 +1 @@ -import{k as t,b as o,c as s,ad as a}from"./entry.TEDHt2QA.js";const r={},c={class:"preview-layout"};function n(e,d){return o(),s("div",c,[a(e.$slots,"default",{},void 0,!0)])}const _=t(r,[["render",n],["__scopeId","data-v-ef0489ff"]]);export{_ as default}; +import{k as t,b as o,c as s,ad as a}from"./entry.2w2g1VWZ.js";const r={},c={class:"preview-layout"};function n(e,d){return o(),s("div",c,[a(e.$slots,"default",{},void 0,!0)])}const _=t(r,[["render",n],["__scopeId","data-v-ef0489ff"]]);export{_ as default}; diff --git a/_nuxt/PrimaryButton.FCsViibh.js b/_nuxt/PrimaryButton.3_DqpC_5.js similarity index 75% rename from _nuxt/PrimaryButton.FCsViibh.js rename to _nuxt/PrimaryButton.3_DqpC_5.js index cb86fc1b05..614fd82e0d 100644 --- a/_nuxt/PrimaryButton.FCsViibh.js +++ b/_nuxt/PrimaryButton.3_DqpC_5.js @@ -1 +1 @@ -import{k as t,b as o,c as n,ad as c}from"./entry.TEDHt2QA.js";const r={},s={"px-2":"","py-1":"",rounded:"","bg-teal-600":"","text-white":""};function _(e,a){return o(),n("button",s,[c(e.$slots,"default")])}const l=t(r,[["render",_]]);export{l as default}; +import{k as t,b as o,c as n,ad as c}from"./entry.2w2g1VWZ.js";const r={},s={"px-2":"","py-1":"",rounded:"","bg-teal-600":"","text-white":""};function _(e,a){return o(),n("button",s,[c(e.$slots,"default")])}const l=t(r,[["render",_]]);export{l as default}; diff --git a/_nuxt/Props.nUFwBsHm.js b/_nuxt/Props.Yj9DgxsP.js similarity index 87% rename from _nuxt/Props.nUFwBsHm.js rename to _nuxt/Props.Yj9DgxsP.js index b75a24d384..106601a652 100644 --- a/_nuxt/Props.nUFwBsHm.js +++ b/_nuxt/Props.Yj9DgxsP.js @@ -1 +1 @@ -import g from"./ProseTh.Gp788PyL.js";import B from"./ProseTr.MziQFWhf.js";import V from"./ProseThead.M6kiSErj.js";import b from"./ProseCodeInline.sc8XXj9h.js";import C from"./ProseTd.tYMvDBoc.js";import N from"./ProseTbody.hZ4KuiN9.js";import R from"./ProseTable.ye_FMdG5.js";import{k as E,d as X,aM as F,aN as L,K as m,b as o,Y as l,w as e,G as d,g as s,f,F as S,t as c,aE as Y,c as A}from"./entry.TEDHt2QA.js";const G=X({props:{of:{type:String,default:void 0},required:{type:Boolean,default:void 0},values:{type:Boolean,default:void 0},description:{type:Boolean,default:void 0},default:{type:Boolean,default:void 0}},async setup(t){const k=`/api/component-meta/${F(t.of)}`,{data:h}=await L(t.of,()=>$fetch(k),"$LqtXXX1Enc"),i=m(()=>h.value.props.filter(a=>{var n;return!((n=a.tags)!=null&&n.ignore.includes(a))})),w=m(()=>{var a;return t.required!==void 0?t.required:(a=i.value)==null?void 0:a.find(n=>n.required!==void 0)}),q=m(()=>{var a;return t.values!==void 0?t.values:(a=i.value)==null?void 0:a.find(n=>n.values)}),r=m(()=>{var a;return t.description!==void 0?t.description:(a=i.value)==null?void 0:a.find(n=>n.description)}),y=m(()=>{var a;return t.default!==void 0?t.default:(a=i.value)==null?void 0:a.find(n=>n.default)});return{meta:h,properties:i,showRequired:w,showValues:q,showDescription:r,showDefault:y}}});function I(t,k,h,i,w,q){var v,D,P;const r=g,y=B,a=V,n=b,_=C,T=N,$=R;return t.meta&&((v=t.meta)!=null&&v.props)&&((P=(D=t.meta)==null?void 0:D.props)!=null&&P.length)?(o(),l($,{key:0},{default:e(()=>[s(a,null,{default:e(()=>[s(y,null,{default:e(()=>[s(r,null,{default:e(()=>[d("Prop")]),_:1}),s(r,null,{default:e(()=>[d("Type")]),_:1}),t.showRequired?(o(),l(r,{key:0},{default:e(()=>[d(" Required ")]),_:1})):f("",!0),t.showDefault?(o(),l(r,{key:1},{default:e(()=>[d(" Default ")]),_:1})):f("",!0),t.showValues?(o(),l(r,{key:2},{default:e(()=>[d(" Values ")]),_:1})):f("",!0),t.showDescription?(o(),l(r,{key:3},{default:e(()=>[d(" Description ")]),_:1})):f("",!0)]),_:1})]),_:1}),s(T,null,{default:e(()=>[(o(!0),A(S,null,Y(t.properties,u=>(o(),l(y,{key:u.name},{default:e(()=>[s(_,null,{default:e(()=>[s(n,null,{default:e(()=>[d(c((u==null?void 0:u.name)||"?"),1)]),_:2},1024)]),_:2},1024),s(_,null,{default:e(()=>[s(n,null,{default:e(()=>[d(c((u==null?void 0:u.type)||"?"),1)]),_:2},1024)]),_:2},1024),t.showRequired?(o(),l(_,{key:0},{default:e(()=>[s(n,null,{default:e(()=>[d(c(u.required==="?"?"?":u.required?"Yes":"No"),1)]),_:2},1024)]),_:2},1024)):f("",!0),t.showDefault?(o(),l(_,{key:1},{default:e(()=>[u.default?(o(),l(n,{key:0},{default:e(()=>[d(c((u==null?void 0:u.default)||"?"),1)]),_:2},1024)):f("",!0)]),_:2},1024)):f("",!0),t.showValues?(o(),l(_,{key:2},{default:e(()=>[u.values?(o(),l(n,{key:0},{default:e(()=>[d(c((u==null?void 0:u.values)||"?"),1)]),_:2},1024)):(o(),l(n,{key:1},{default:e(()=>[d(" - ")]),_:1}))]),_:2},1024)):f("",!0),t.showDescription?(o(),l(_,{key:3},{default:e(()=>[s(n,null,{default:e(()=>[d(c(u.description),1)]),_:2},1024)]),_:2},1024)):f("",!0)]),_:2},1024))),128))]),_:1})]),_:1})):f("",!0)}const Q=E(G,[["render",I]]);export{Q as default}; +import g from"./ProseTh.Ip6941yd.js";import B from"./ProseTr._3o2EPc3.js";import V from"./ProseThead.EEzaUJfp.js";import b from"./ProseCodeInline.nA1Kl2E3.js";import C from"./ProseTd.5432dWNq.js";import N from"./ProseTbody.NjmcGONp.js";import R from"./ProseTable.vzNeH6Ay.js";import{k as E,d as X,aM as F,aN as L,K as m,b as o,Y as l,w as e,G as d,g as s,f,F as S,t as c,aE as Y,c as A}from"./entry.2w2g1VWZ.js";const G=X({props:{of:{type:String,default:void 0},required:{type:Boolean,default:void 0},values:{type:Boolean,default:void 0},description:{type:Boolean,default:void 0},default:{type:Boolean,default:void 0}},async setup(t){const k=`/api/component-meta/${F(t.of)}`,{data:h}=await L(t.of,()=>$fetch(k),"$LqtXXX1Enc"),i=m(()=>h.value.props.filter(a=>{var n;return!((n=a.tags)!=null&&n.ignore.includes(a))})),w=m(()=>{var a;return t.required!==void 0?t.required:(a=i.value)==null?void 0:a.find(n=>n.required!==void 0)}),q=m(()=>{var a;return t.values!==void 0?t.values:(a=i.value)==null?void 0:a.find(n=>n.values)}),r=m(()=>{var a;return t.description!==void 0?t.description:(a=i.value)==null?void 0:a.find(n=>n.description)}),y=m(()=>{var a;return t.default!==void 0?t.default:(a=i.value)==null?void 0:a.find(n=>n.default)});return{meta:h,properties:i,showRequired:w,showValues:q,showDescription:r,showDefault:y}}});function I(t,k,h,i,w,q){var v,D,P;const r=g,y=B,a=V,n=b,_=C,T=N,$=R;return t.meta&&((v=t.meta)!=null&&v.props)&&((P=(D=t.meta)==null?void 0:D.props)!=null&&P.length)?(o(),l($,{key:0},{default:e(()=>[s(a,null,{default:e(()=>[s(y,null,{default:e(()=>[s(r,null,{default:e(()=>[d("Prop")]),_:1}),s(r,null,{default:e(()=>[d("Type")]),_:1}),t.showRequired?(o(),l(r,{key:0},{default:e(()=>[d(" Required ")]),_:1})):f("",!0),t.showDefault?(o(),l(r,{key:1},{default:e(()=>[d(" Default ")]),_:1})):f("",!0),t.showValues?(o(),l(r,{key:2},{default:e(()=>[d(" Values ")]),_:1})):f("",!0),t.showDescription?(o(),l(r,{key:3},{default:e(()=>[d(" Description ")]),_:1})):f("",!0)]),_:1})]),_:1}),s(T,null,{default:e(()=>[(o(!0),A(S,null,Y(t.properties,u=>(o(),l(y,{key:u.name},{default:e(()=>[s(_,null,{default:e(()=>[s(n,null,{default:e(()=>[d(c((u==null?void 0:u.name)||"?"),1)]),_:2},1024)]),_:2},1024),s(_,null,{default:e(()=>[s(n,null,{default:e(()=>[d(c((u==null?void 0:u.type)||"?"),1)]),_:2},1024)]),_:2},1024),t.showRequired?(o(),l(_,{key:0},{default:e(()=>[s(n,null,{default:e(()=>[d(c(u.required==="?"?"?":u.required?"Yes":"No"),1)]),_:2},1024)]),_:2},1024)):f("",!0),t.showDefault?(o(),l(_,{key:1},{default:e(()=>[u.default?(o(),l(n,{key:0},{default:e(()=>[d(c((u==null?void 0:u.default)||"?"),1)]),_:2},1024)):f("",!0)]),_:2},1024)):f("",!0),t.showValues?(o(),l(_,{key:2},{default:e(()=>[u.values?(o(),l(n,{key:0},{default:e(()=>[d(c((u==null?void 0:u.values)||"?"),1)]),_:2},1024)):(o(),l(n,{key:1},{default:e(()=>[d(" - ")]),_:1}))]),_:2},1024)):f("",!0),t.showDescription?(o(),l(_,{key:3},{default:e(()=>[s(n,null,{default:e(()=>[d(c(u.description),1)]),_:2},1024)]),_:2},1024)):f("",!0)]),_:2},1024))),128))]),_:1})]),_:1})):f("",!0)}const Q=E(G,[["render",I]]);export{Q as default}; diff --git a/_nuxt/ProseA.SwYyso4K.js b/_nuxt/ProseA.OLhUCis1.js similarity index 84% rename from _nuxt/ProseA.SwYyso4K.js rename to _nuxt/ProseA.OLhUCis1.js index b633161f47..616c9a74d4 100644 --- a/_nuxt/ProseA.SwYyso4K.js +++ b/_nuxt/ProseA.OLhUCis1.js @@ -1 +1 @@ -import{d as o,b as n,Y as r,w as s,ad as _,H as c,k as d}from"./entry.TEDHt2QA.js";const u=o({__name:"ProseA",props:{href:{type:String,default:""},target:{type:String,default:void 0,required:!1}},setup(t){return(e,f)=>{const a=c;return n(),r(a,{to:t.href,target:t.target},{default:s(()=>[_(e.$slots,"default",{},void 0,!0)]),_:3},8,["to","target"])}}}),i=d(u,[["__scopeId","data-v-a23c09bb"]]);export{i as default}; +import{d as o,b as n,Y as r,w as s,ad as _,H as c,k as d}from"./entry.2w2g1VWZ.js";const u=o({__name:"ProseA",props:{href:{type:String,default:""},target:{type:String,default:void 0,required:!1}},setup(t){return(e,f)=>{const a=c;return n(),r(a,{to:t.href,target:t.target},{default:s(()=>[_(e.$slots,"default",{},void 0,!0)]),_:3},8,["to","target"])}}}),i=d(u,[["__scopeId","data-v-a23c09bb"]]);export{i as default}; diff --git a/_nuxt/ProseBlockquote.TjuFzBWN.js b/_nuxt/ProseBlockquote.nZcc5AiU.js similarity index 73% rename from _nuxt/ProseBlockquote.TjuFzBWN.js rename to _nuxt/ProseBlockquote.nZcc5AiU.js index 92916520ab..3762694ad5 100644 --- a/_nuxt/ProseBlockquote.TjuFzBWN.js +++ b/_nuxt/ProseBlockquote.nZcc5AiU.js @@ -1 +1 @@ -import{k as o,b as c,c as t,ad as r}from"./entry.TEDHt2QA.js";const a={};function n(e,s){return c(),t("blockquote",null,[r(e.$slots,"default",{},void 0,!0)])}const l=o(a,[["render",n],["__scopeId","data-v-eae89cdc"]]);export{l as default}; +import{k as o,b as c,c as t,ad as r}from"./entry.2w2g1VWZ.js";const a={};function n(e,s){return c(),t("blockquote",null,[r(e.$slots,"default",{},void 0,!0)])}const l=o(a,[["render",n],["__scopeId","data-v-eae89cdc"]]);export{l as default}; diff --git a/_nuxt/ProseCode.I5U9uYQg.js b/_nuxt/ProseCode.QKV6Fi3g.js similarity index 96% rename from _nuxt/ProseCode.I5U9uYQg.js rename to _nuxt/ProseCode.QKV6Fi3g.js index 44635a0b86..ac12b0c187 100644 --- a/_nuxt/ProseCode.I5U9uYQg.js +++ b/_nuxt/ProseCode.QKV6Fi3g.js @@ -1 +1 @@ -import{d as y,r as l,aG as k,aH as w,x as S,b as a,c as p,e as m,g as h,w as x,L as f,Y as _,T as $,n as C,a1 as b,p as I,i as z,k as v,t as N,f as P,ad as T}from"./entry.TEDHt2QA.js";const V=e=>(I("data-v-11c7dd38"),e=e(),z(),e),A=V(()=>m("span",{class:"sr-only"},"Copy to clipboard",-1)),M={class:"icon-wrapper"},R=y({__name:"ProseCodeCopyButton",props:{content:{type:String,default:""},show:{type:Boolean,default:!1}},setup(e){const n=e,s=l(),{copy:t}=k();w(s,()=>{o.value==="copied"&&(o.value="init")});const{prose:c}=S(),o=l("init"),g=B=>{t(n.content).then(()=>{o.value="copied"}).catch(d=>{console.warn("Couldn't copy to clipboard!",d)})};return(B,d)=>{const i=b;return a(),p("button",{ref_key:"copyButtonRef",ref:s,class:C([(e.show||o.value==="copied")&&"show"]),onClick:g},[A,m("span",M,[h($,{name:"fade"},{default:x(()=>{var u,r;return[o.value==="copied"?(a(),_(i,{key:0,name:(u=f(c).copyButton)==null?void 0:u.iconCopied,size:"18",class:"copied"},null,8,["name"])):(a(),_(i,{key:1,name:(r=f(c).copyButton)==null?void 0:r.iconCopy,size:"18"},null,8,["name"]))]}),_:1})])],2)}}}),D=v(R,[["__scopeId","data-v-11c7dd38"]]),E={key:0,class:"filename"},G=y({__name:"ProseCode",props:{code:{type:String,default:""},language:{type:String,default:null},filename:{type:String,default:null},highlights:{type:Array,default:()=>[]}},setup(e){const n=l(!1);return(s,t)=>{const c=D;return a(),p("div",{class:C([[`highlight-${e.language}`],"prose-code"]),onMouseenter:t[0]||(t[0]=o=>n.value=!0),onMouseleave:t[1]||(t[1]=o=>n.value=!1)},[e.filename?(a(),p("span",E,N(e.filename),1)):P("",!0),T(s.$slots,"default",{},void 0,!0),h(c,{show:n.value,content:e.code,class:"copy-button"},null,8,["show","content"])],34)}}}),L=v(G,[["__scopeId","data-v-262fd9e4"]]);export{L as default}; +import{d as y,r as l,aG as k,aH as w,x as S,b as a,c as p,e as m,g as h,w as x,L as f,Y as _,T as $,n as C,a1 as b,p as I,i as z,k as v,t as N,f as P,ad as T}from"./entry.2w2g1VWZ.js";const V=e=>(I("data-v-11c7dd38"),e=e(),z(),e),A=V(()=>m("span",{class:"sr-only"},"Copy to clipboard",-1)),M={class:"icon-wrapper"},R=y({__name:"ProseCodeCopyButton",props:{content:{type:String,default:""},show:{type:Boolean,default:!1}},setup(e){const n=e,s=l(),{copy:t}=k();w(s,()=>{o.value==="copied"&&(o.value="init")});const{prose:c}=S(),o=l("init"),g=B=>{t(n.content).then(()=>{o.value="copied"}).catch(d=>{console.warn("Couldn't copy to clipboard!",d)})};return(B,d)=>{const i=b;return a(),p("button",{ref_key:"copyButtonRef",ref:s,class:C([(e.show||o.value==="copied")&&"show"]),onClick:g},[A,m("span",M,[h($,{name:"fade"},{default:x(()=>{var u,r;return[o.value==="copied"?(a(),_(i,{key:0,name:(u=f(c).copyButton)==null?void 0:u.iconCopied,size:"18",class:"copied"},null,8,["name"])):(a(),_(i,{key:1,name:(r=f(c).copyButton)==null?void 0:r.iconCopy,size:"18"},null,8,["name"]))]}),_:1})])],2)}}}),D=v(R,[["__scopeId","data-v-11c7dd38"]]),E={key:0,class:"filename"},G=y({__name:"ProseCode",props:{code:{type:String,default:""},language:{type:String,default:null},filename:{type:String,default:null},highlights:{type:Array,default:()=>[]}},setup(e){const n=l(!1);return(s,t)=>{const c=D;return a(),p("div",{class:C([[`highlight-${e.language}`],"prose-code"]),onMouseenter:t[0]||(t[0]=o=>n.value=!0),onMouseleave:t[1]||(t[1]=o=>n.value=!1)},[e.filename?(a(),p("span",E,N(e.filename),1)):P("",!0),T(s.$slots,"default",{},void 0,!0),h(c,{show:n.value,content:e.code,class:"copy-button"},null,8,["show","content"])],34)}}}),L=v(G,[["__scopeId","data-v-262fd9e4"]]);export{L as default}; diff --git a/_nuxt/ProseCodeInline.sc8XXj9h.js b/_nuxt/ProseCodeInline.nA1Kl2E3.js similarity index 72% rename from _nuxt/ProseCodeInline.sc8XXj9h.js rename to _nuxt/ProseCodeInline.nA1Kl2E3.js index 0d4b4ae1d1..8ccf159875 100644 --- a/_nuxt/ProseCodeInline.sc8XXj9h.js +++ b/_nuxt/ProseCodeInline.nA1Kl2E3.js @@ -1 +1 @@ -import{k as n,b as t,c as o,ad as c}from"./entry.TEDHt2QA.js";const r={};function a(e,s){return t(),o("code",null,[c(e.$slots,"default",{},void 0,!0)])}const d=n(r,[["render",a],["__scopeId","data-v-e743899b"]]);export{d as default}; +import{k as n,b as t,c as o,ad as c}from"./entry.2w2g1VWZ.js";const r={};function a(e,s){return t(),o("code",null,[c(e.$slots,"default",{},void 0,!0)])}const d=n(r,[["render",a],["__scopeId","data-v-e743899b"]]);export{d as default}; diff --git a/_nuxt/ProseEm.HSjpDM1n.js b/_nuxt/ProseEm.XnUqj1mE.js similarity index 72% rename from _nuxt/ProseEm.HSjpDM1n.js rename to _nuxt/ProseEm.XnUqj1mE.js index 307502566d..69e39b7b12 100644 --- a/_nuxt/ProseEm.HSjpDM1n.js +++ b/_nuxt/ProseEm.XnUqj1mE.js @@ -1 +1 @@ -import{k as r,b as t,c as n,ad as o}from"./entry.TEDHt2QA.js";const s={};function a(e,c){return t(),n("em",null,[o(e.$slots,"default",{},void 0,!0)])}const l=r(s,[["render",a],["__scopeId","data-v-e71d4541"]]);export{l as default}; +import{k as r,b as t,c as n,ad as o}from"./entry.2w2g1VWZ.js";const s={};function a(e,c){return t(),n("em",null,[o(e.$slots,"default",{},void 0,!0)])}const l=r(s,[["render",a],["__scopeId","data-v-e71d4541"]]);export{l as default}; diff --git a/_nuxt/ProseH1.HLcc66Rk.js b/_nuxt/ProseH1.NoOkX9zJ.js similarity index 91% rename from _nuxt/ProseH1.HLcc66Rk.js rename to _nuxt/ProseH1.NoOkX9zJ.js index 4e62822a44..4a3eed6a75 100644 --- a/_nuxt/ProseH1.HLcc66Rk.js +++ b/_nuxt/ProseH1.NoOkX9zJ.js @@ -1 +1 @@ -import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.TEDHt2QA.js";const v=["id"],C=i({__name:"ProseH1",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h1)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h1)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h1",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-a6b5ed16"]]);export{I as default}; +import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.2w2g1VWZ.js";const v=["id"],C=i({__name:"ProseH1",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h1)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h1)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h1",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-a6b5ed16"]]);export{I as default}; diff --git a/_nuxt/ProseH2.uTSq3jPw.js b/_nuxt/ProseH2.tWfneQ31.js similarity index 91% rename from _nuxt/ProseH2.uTSq3jPw.js rename to _nuxt/ProseH2.tWfneQ31.js index b92f921a0f..dcb6786a19 100644 --- a/_nuxt/ProseH2.uTSq3jPw.js +++ b/_nuxt/ProseH2.tWfneQ31.js @@ -1 +1 @@ -import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.TEDHt2QA.js";const v=["id"],C=i({__name:"ProseH2",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h2)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h2)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h2",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-1c268e02"]]);export{I as default}; +import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.2w2g1VWZ.js";const v=["id"],C=i({__name:"ProseH2",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h2)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h2)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h2",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-1c268e02"]]);export{I as default}; diff --git a/_nuxt/ProseH3.b9Z2n1jz.js b/_nuxt/ProseH3.OGmXOyf8.js similarity index 91% rename from _nuxt/ProseH3.b9Z2n1jz.js rename to _nuxt/ProseH3.OGmXOyf8.js index daa68fcbad..e59466849f 100644 --- a/_nuxt/ProseH3.b9Z2n1jz.js +++ b/_nuxt/ProseH3.OGmXOyf8.js @@ -1 +1 @@ -import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.TEDHt2QA.js";const v=["id"],C=i({__name:"ProseH3",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h3)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h3)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h3",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-c3af30bd"]]);export{I as default}; +import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.2w2g1VWZ.js";const v=["id"],C=i({__name:"ProseH3",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h3)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h3)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h3",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-c3af30bd"]]);export{I as default}; diff --git a/_nuxt/ProseH4.vQBbqPgA.js b/_nuxt/ProseH4.-m8eDGJi.js similarity index 91% rename from _nuxt/ProseH4.vQBbqPgA.js rename to _nuxt/ProseH4.-m8eDGJi.js index f0cba69d0e..6486a18342 100644 --- a/_nuxt/ProseH4.vQBbqPgA.js +++ b/_nuxt/ProseH4.-m8eDGJi.js @@ -1 +1 @@ -import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as p,f as h,a1 as k,H as x,k as g}from"./entry.TEDHt2QA.js";const v=["id"],C=i({__name:"ProseH4",props:{id:{}},setup($){const{prose:n}=u(),c=t(()=>{var e,o;return((e=n==null?void 0:n.h4)==null?void 0:e.icon)&&((o=n==null?void 0:n.headings)==null?void 0:o.icon)}),s=t(()=>{var e,o;return((e=n==null?void 0:n.h4)==null?void 0:e.icon)||((o=n==null?void 0:n.headings)==null?void 0:o.icon)});return(e,o)=>{const _=k,d=x;return a(),m("h4",{id:e.id},[r(d,{href:`#${e.id}`},{default:l(()=>[f(e.$slots,"default",{},void 0,!0),c.value?(a(),p(_,{key:0,name:s.value},null,8,["name"])):h("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-8e1edaf9"]]);export{I as default}; +import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as p,f as h,a1 as k,H as x,k as g}from"./entry.2w2g1VWZ.js";const v=["id"],C=i({__name:"ProseH4",props:{id:{}},setup($){const{prose:n}=u(),c=t(()=>{var e,o;return((e=n==null?void 0:n.h4)==null?void 0:e.icon)&&((o=n==null?void 0:n.headings)==null?void 0:o.icon)}),s=t(()=>{var e,o;return((e=n==null?void 0:n.h4)==null?void 0:e.icon)||((o=n==null?void 0:n.headings)==null?void 0:o.icon)});return(e,o)=>{const _=k,d=x;return a(),m("h4",{id:e.id},[r(d,{href:`#${e.id}`},{default:l(()=>[f(e.$slots,"default",{},void 0,!0),c.value?(a(),p(_,{key:0,name:s.value},null,8,["name"])):h("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-8e1edaf9"]]);export{I as default}; diff --git a/_nuxt/ProseH5.1HvbYaY9.js b/_nuxt/ProseH5.V4b62H9u.js similarity index 91% rename from _nuxt/ProseH5.1HvbYaY9.js rename to _nuxt/ProseH5.V4b62H9u.js index 3474e94ee9..28575feeea 100644 --- a/_nuxt/ProseH5.1HvbYaY9.js +++ b/_nuxt/ProseH5.V4b62H9u.js @@ -1 +1 @@ -import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.TEDHt2QA.js";const v=["id"],C=i({__name:"ProseH5",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h5)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h5)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h5",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-c70a6b36"]]);export{I as default}; +import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.2w2g1VWZ.js";const v=["id"],C=i({__name:"ProseH5",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h5)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h5)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const _=k,d=x;return a(),m("h5",{id:n.id},[r(d,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(_,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-c70a6b36"]]);export{I as default}; diff --git a/_nuxt/ProseH6.GpC4Gjjm.js b/_nuxt/ProseH6.VstdmaUv.js similarity index 91% rename from _nuxt/ProseH6.GpC4Gjjm.js rename to _nuxt/ProseH6.VstdmaUv.js index a4128138ae..c6ee608a06 100644 --- a/_nuxt/ProseH6.GpC4Gjjm.js +++ b/_nuxt/ProseH6.VstdmaUv.js @@ -1 +1 @@ -import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.TEDHt2QA.js";const v=["id"],C=i({__name:"ProseH6",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h6)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h6)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const d=k,_=x;return a(),m("h6",{id:n.id},[r(_,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(d,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-d708d2d4"]]);export{I as default}; +import{d as i,x as u,K as t,b as a,c as m,g as r,w as l,ad as f,Y as h,f as p,a1 as k,H as x,k as g}from"./entry.2w2g1VWZ.js";const v=["id"],C=i({__name:"ProseH6",props:{id:{}},setup(B){const{prose:e}=u(),c=t(()=>{var n,o;return((n=e==null?void 0:e.h6)==null?void 0:n.icon)&&((o=e==null?void 0:e.headings)==null?void 0:o.icon)}),s=t(()=>{var n,o;return((n=e==null?void 0:e.h6)==null?void 0:n.icon)||((o=e==null?void 0:e.headings)==null?void 0:o.icon)});return(n,o)=>{const d=k,_=x;return a(),m("h6",{id:n.id},[r(_,{href:`#${n.id}`},{default:l(()=>[f(n.$slots,"default",{},void 0,!0),c.value?(a(),h(d,{key:0,name:s.value},null,8,["name"])):p("",!0)]),_:3},8,["href"])],8,v)}}}),I=g(C,[["__scopeId","data-v-d708d2d4"]]);export{I as default}; diff --git a/_nuxt/ProseHr.yKV-ZC33.js b/_nuxt/ProseHr.H5PQSAnt.js similarity index 64% rename from _nuxt/ProseHr.yKV-ZC33.js rename to _nuxt/ProseHr.H5PQSAnt.js index f308185a59..f970536b0d 100644 --- a/_nuxt/ProseHr.yKV-ZC33.js +++ b/_nuxt/ProseHr.H5PQSAnt.js @@ -1 +1 @@ -import{k as e,b as c,c as r}from"./entry.TEDHt2QA.js";const o={};function t(a,s){return c(),r("hr")}const _=e(o,[["render",t],["__scopeId","data-v-a0643f32"]]);export{_ as default}; +import{k as e,b as c,c as r}from"./entry.2w2g1VWZ.js";const o={};function t(a,s){return c(),r("hr")}const _=e(o,[["render",t],["__scopeId","data-v-a0643f32"]]);export{_ as default}; diff --git a/_nuxt/ProseImg.y-BO5YTd.js b/_nuxt/ProseImg.FhApv7Iv.js similarity index 89% rename from _nuxt/ProseImg.y-BO5YTd.js rename to _nuxt/ProseImg.FhApv7Iv.js index e69f64ce4b..f32faad6c2 100644 --- a/_nuxt/ProseImg.y-BO5YTd.js +++ b/_nuxt/ProseImg.FhApv7Iv.js @@ -1 +1 @@ -import{d as a,K as i,aI as n,l as c,b as o,c as d,R as h,L as u,k as l}from"./entry.TEDHt2QA.js";const f=["src","alt","width","height"],m=a({__name:"ProseImg",props:{src:{type:String,default:""},alt:{type:String,default:""},width:{type:[String,Number],default:void 0},height:{type:[String,Number],default:void 0}},setup(t){const e=t,r=i(()=>{var s;return(s=e.src)!=null&&s.startsWith("/")&&!e.src.startsWith("//")?n(e.src,c().app.baseURL):e.src});return(s,g)=>(o(),d("img",h(s.$attrs,{src:u(r),alt:t.alt,width:t.width,height:t.height}),null,16,f))}}),w=l(m,[["__scopeId","data-v-59fa7d04"]]);export{w as default}; +import{d as a,K as i,aI as n,l as c,b as o,c as d,R as h,L as u,k as l}from"./entry.2w2g1VWZ.js";const f=["src","alt","width","height"],m=a({__name:"ProseImg",props:{src:{type:String,default:""},alt:{type:String,default:""},width:{type:[String,Number],default:void 0},height:{type:[String,Number],default:void 0}},setup(t){const e=t,r=i(()=>{var s;return(s=e.src)!=null&&s.startsWith("/")&&!e.src.startsWith("//")?n(e.src,c().app.baseURL):e.src});return(s,g)=>(o(),d("img",h(s.$attrs,{src:u(r),alt:t.alt,width:t.width,height:t.height}),null,16,f))}}),w=l(m,[["__scopeId","data-v-59fa7d04"]]);export{w as default}; diff --git a/_nuxt/ProseLi.Vche_mwx.js b/_nuxt/ProseLi.OVgRJVLF.js similarity index 72% rename from _nuxt/ProseLi.Vche_mwx.js rename to _nuxt/ProseLi.OVgRJVLF.js index c751dc4c1c..18ed8bae8a 100644 --- a/_nuxt/ProseLi.Vche_mwx.js +++ b/_nuxt/ProseLi.OVgRJVLF.js @@ -1 +1 @@ -import{k as r,b as t,c as n,ad as o}from"./entry.TEDHt2QA.js";const s={};function a(e,c){return t(),n("li",null,[o(e.$slots,"default",{},void 0,!0)])}const l=r(s,[["render",a],["__scopeId","data-v-8d545697"]]);export{l as default}; +import{k as r,b as t,c as n,ad as o}from"./entry.2w2g1VWZ.js";const s={};function a(e,c){return t(),n("li",null,[o(e.$slots,"default",{},void 0,!0)])}const l=r(s,[["render",a],["__scopeId","data-v-8d545697"]]);export{l as default}; diff --git a/_nuxt/ProseOl.4SPj-qY8.js b/_nuxt/ProseOl.vw7kQ1Lt.js similarity index 72% rename from _nuxt/ProseOl.4SPj-qY8.js rename to _nuxt/ProseOl.vw7kQ1Lt.js index bea7d01a34..ef7ace8588 100644 --- a/_nuxt/ProseOl.4SPj-qY8.js +++ b/_nuxt/ProseOl.vw7kQ1Lt.js @@ -1 +1 @@ -import{k as o,b as r,c as t,ad as a}from"./entry.TEDHt2QA.js";const n={};function s(e,c){return r(),t("ol",null,[a(e.$slots,"default",{},void 0,!0)])}const d=o(n,[["render",s],["__scopeId","data-v-315a078b"]]);export{d as default}; +import{k as o,b as r,c as t,ad as a}from"./entry.2w2g1VWZ.js";const n={};function s(e,c){return r(),t("ol",null,[a(e.$slots,"default",{},void 0,!0)])}const d=o(n,[["render",s],["__scopeId","data-v-315a078b"]]);export{d as default}; diff --git a/_nuxt/ProseP.fE1xZC7w.js b/_nuxt/ProseP.nG8WPuIi.js similarity index 72% rename from _nuxt/ProseP.fE1xZC7w.js rename to _nuxt/ProseP.nG8WPuIi.js index 5a04660837..71ec1725c5 100644 --- a/_nuxt/ProseP.fE1xZC7w.js +++ b/_nuxt/ProseP.nG8WPuIi.js @@ -1 +1 @@ -import{k as n,b as t,c as o,ad as c}from"./entry.TEDHt2QA.js";const r={};function a(e,s){return t(),o("p",null,[c(e.$slots,"default",{},void 0,!0)])}const d=n(r,[["render",a],["__scopeId","data-v-fb25b4f3"]]);export{d as default}; +import{k as n,b as t,c as o,ad as c}from"./entry.2w2g1VWZ.js";const r={};function a(e,s){return t(),o("p",null,[c(e.$slots,"default",{},void 0,!0)])}const d=n(r,[["render",a],["__scopeId","data-v-fb25b4f3"]]);export{d as default}; diff --git a/_nuxt/ProsePre.m8am0nAB.js b/_nuxt/ProsePre.vvEkmDus.js similarity index 82% rename from _nuxt/ProsePre.m8am0nAB.js rename to _nuxt/ProsePre.vvEkmDus.js index 399cbb34f1..e0cb51e948 100644 --- a/_nuxt/ProsePre.m8am0nAB.js +++ b/_nuxt/ProsePre.vvEkmDus.js @@ -1 +1 @@ -import l from"./ProseCode.I5U9uYQg.js";import{d as n,b as s,Y as i,w as o,n as r,aU as u,ad as g,e as d}from"./entry.TEDHt2QA.js";const h=n({__name:"ProsePre",props:{code:{type:String,default:""},language:{type:String,default:null},filename:{type:String,default:null},highlights:{type:Array,default:()=>[]},meta:{type:String,default:null},class:{type:String,default:null},style:{type:[String,Object],default:null}},setup(e){return(t,m)=>{const a=l;return s(),i(a,{code:e.code,language:e.language,filename:e.filename,highlights:e.highlights,meta:e.meta},{default:o(()=>[d("pre",{class:r(t.$props.class),style:u(e.style)},[g(t.$slots,"default")],6)]),_:3},8,["code","language","filename","highlights","meta"])}}});export{h as default}; +import l from"./ProseCode.QKV6Fi3g.js";import{d as n,b as s,Y as i,w as o,n as r,aU as u,ad as g,e as d}from"./entry.2w2g1VWZ.js";const h=n({__name:"ProsePre",props:{code:{type:String,default:""},language:{type:String,default:null},filename:{type:String,default:null},highlights:{type:Array,default:()=>[]},meta:{type:String,default:null},class:{type:String,default:null},style:{type:[String,Object],default:null}},setup(e){return(t,m)=>{const a=l;return s(),i(a,{code:e.code,language:e.language,filename:e.filename,highlights:e.highlights,meta:e.meta},{default:o(()=>[d("pre",{class:r(t.$props.class),style:u(e.style)},[g(t.$slots,"default")],6)]),_:3},8,["code","language","filename","highlights","meta"])}}});export{h as default}; diff --git a/_nuxt/ProseStrong.tNX6QKcF.js b/_nuxt/ProseStrong.0e10zWIZ.js similarity index 72% rename from _nuxt/ProseStrong.tNX6QKcF.js rename to _nuxt/ProseStrong.0e10zWIZ.js index 3462222c0d..70f7ab50b6 100644 --- a/_nuxt/ProseStrong.tNX6QKcF.js +++ b/_nuxt/ProseStrong.0e10zWIZ.js @@ -1 +1 @@ -import{k as r,b as t,c as n,ad as o}from"./entry.TEDHt2QA.js";const s={};function a(e,c){return t(),n("strong",null,[o(e.$slots,"default",{},void 0,!0)])}const f=r(s,[["render",a],["__scopeId","data-v-293bb80f"]]);export{f as default}; +import{k as r,b as t,c as n,ad as o}from"./entry.2w2g1VWZ.js";const s={};function a(e,c){return t(),n("strong",null,[o(e.$slots,"default",{},void 0,!0)])}const f=r(s,[["render",a],["__scopeId","data-v-293bb80f"]]);export{f as default}; diff --git a/_nuxt/ProseTable.ye_FMdG5.js b/_nuxt/ProseTable.vzNeH6Ay.js similarity index 77% rename from _nuxt/ProseTable.ye_FMdG5.js rename to _nuxt/ProseTable.vzNeH6Ay.js index 0c2a98bf9b..49e3c1a10e 100644 --- a/_nuxt/ProseTable.ye_FMdG5.js +++ b/_nuxt/ProseTable.vzNeH6Ay.js @@ -1 +1 @@ -import{k as t,b as a,c as s,e as c,ad as n}from"./entry.TEDHt2QA.js";const o={},r={class:"table-wrapper"};function _(e,d){return a(),s("div",r,[c("table",null,[n(e.$slots,"default",{},void 0,!0)])])}const f=t(o,[["render",_],["__scopeId","data-v-fbc01453"]]);export{f as default}; +import{k as t,b as a,c as s,e as c,ad as n}from"./entry.2w2g1VWZ.js";const o={},r={class:"table-wrapper"};function _(e,d){return a(),s("div",r,[c("table",null,[n(e.$slots,"default",{},void 0,!0)])])}const f=t(o,[["render",_],["__scopeId","data-v-fbc01453"]]);export{f as default}; diff --git a/_nuxt/ProseTbody.hZ4KuiN9.js b/_nuxt/ProseTbody.NjmcGONp.js similarity index 66% rename from _nuxt/ProseTbody.hZ4KuiN9.js rename to _nuxt/ProseTbody.NjmcGONp.js index caf2f0d22d..915fe511b3 100644 --- a/_nuxt/ProseTbody.hZ4KuiN9.js +++ b/_nuxt/ProseTbody.NjmcGONp.js @@ -1 +1 @@ -import{k as t,b as n,c as o,ad as c}from"./entry.TEDHt2QA.js";const r={};function s(e,a){return n(),o("tbody",null,[c(e.$slots,"default")])}const l=t(r,[["render",s]]);export{l as default}; +import{k as t,b as n,c as o,ad as c}from"./entry.2w2g1VWZ.js";const r={};function s(e,a){return n(),o("tbody",null,[c(e.$slots,"default")])}const l=t(r,[["render",s]]);export{l as default}; diff --git a/_nuxt/ProseTd.tYMvDBoc.js b/_nuxt/ProseTd.5432dWNq.js similarity index 71% rename from _nuxt/ProseTd.tYMvDBoc.js rename to _nuxt/ProseTd.5432dWNq.js index 0f16190e18..58bf216a78 100644 --- a/_nuxt/ProseTd.tYMvDBoc.js +++ b/_nuxt/ProseTd.5432dWNq.js @@ -1 +1 @@ -import{k as t,b as n,c,ad as o}from"./entry.TEDHt2QA.js";const r={};function a(e,s){return n(),c("td",null,[o(e.$slots,"default",{},void 0,!0)])}const d=t(r,[["render",a],["__scopeId","data-v-e749cfe8"]]);export{d as default}; +import{k as t,b as n,c,ad as o}from"./entry.2w2g1VWZ.js";const r={};function a(e,s){return n(),c("td",null,[o(e.$slots,"default",{},void 0,!0)])}const d=t(r,[["render",a],["__scopeId","data-v-e749cfe8"]]);export{d as default}; diff --git a/_nuxt/ProseTh.Gp788PyL.js b/_nuxt/ProseTh.Ip6941yd.js similarity index 72% rename from _nuxt/ProseTh.Gp788PyL.js rename to _nuxt/ProseTh.Ip6941yd.js index dd89db902b..41369d7ab1 100644 --- a/_nuxt/ProseTh.Gp788PyL.js +++ b/_nuxt/ProseTh.Ip6941yd.js @@ -1 +1 @@ -import{k as t,b as n,c as o,ad as c}from"./entry.TEDHt2QA.js";const r={};function a(e,s){return n(),o("th",null,[c(e.$slots,"default",{},void 0,!0)])}const d=t(r,[["render",a],["__scopeId","data-v-d08e1929"]]);export{d as default}; +import{k as t,b as n,c as o,ad as c}from"./entry.2w2g1VWZ.js";const r={};function a(e,s){return n(),o("th",null,[c(e.$slots,"default",{},void 0,!0)])}const d=t(r,[["render",a],["__scopeId","data-v-d08e1929"]]);export{d as default}; diff --git a/_nuxt/ProseThead.M6kiSErj.js b/_nuxt/ProseThead.EEzaUJfp.js similarity index 72% rename from _nuxt/ProseThead.M6kiSErj.js rename to _nuxt/ProseThead.EEzaUJfp.js index 916eaa93e6..4523d116d6 100644 --- a/_nuxt/ProseThead.M6kiSErj.js +++ b/_nuxt/ProseThead.EEzaUJfp.js @@ -1 +1 @@ -import{k as t,b as n,c as o,ad as a}from"./entry.TEDHt2QA.js";const c={};function r(e,s){return n(),o("thead",null,[a(e.$slots,"default",{},void 0,!0)])}const d=t(c,[["render",r],["__scopeId","data-v-7384b874"]]);export{d as default}; +import{k as t,b as n,c as o,ad as a}from"./entry.2w2g1VWZ.js";const c={};function r(e,s){return n(),o("thead",null,[a(e.$slots,"default",{},void 0,!0)])}const d=t(c,[["render",r],["__scopeId","data-v-7384b874"]]);export{d as default}; diff --git a/_nuxt/ProseTr.MziQFWhf.js b/_nuxt/ProseTr._3o2EPc3.js similarity index 72% rename from _nuxt/ProseTr.MziQFWhf.js rename to _nuxt/ProseTr._3o2EPc3.js index fcce17337e..7eb1a6dd58 100644 --- a/_nuxt/ProseTr.MziQFWhf.js +++ b/_nuxt/ProseTr._3o2EPc3.js @@ -1 +1 @@ -import{k as t,b as n,c as o,ad as r}from"./entry.TEDHt2QA.js";const c={};function a(e,s){return n(),o("tr",null,[r(e.$slots,"default",{},void 0,!0)])}const d=t(c,[["render",a],["__scopeId","data-v-8584fb94"]]);export{d as default}; +import{k as t,b as n,c as o,ad as r}from"./entry.2w2g1VWZ.js";const c={};function a(e,s){return n(),o("tr",null,[r(e.$slots,"default",{},void 0,!0)])}const d=t(c,[["render",a],["__scopeId","data-v-8584fb94"]]);export{d as default}; diff --git a/_nuxt/ProseUl.GQ-g_JfG.js b/_nuxt/ProseUl.XjDMb_cD.js similarity index 72% rename from _nuxt/ProseUl.GQ-g_JfG.js rename to _nuxt/ProseUl.XjDMb_cD.js index 128fce5c4b..f4297248dc 100644 --- a/_nuxt/ProseUl.GQ-g_JfG.js +++ b/_nuxt/ProseUl.XjDMb_cD.js @@ -1 +1 @@ -import{k as r,b as t,c as n,ad as o}from"./entry.TEDHt2QA.js";const s={};function a(e,c){return t(),n("ul",null,[o(e.$slots,"default",{},void 0,!0)])}const d=r(s,[["render",a],["__scopeId","data-v-47f13bb3"]]);export{d as default}; +import{k as r,b as t,c as n,ad as o}from"./entry.2w2g1VWZ.js";const s={};function a(e,c){return t(),n("ul",null,[o(e.$slots,"default",{},void 0,!0)])}const d=r(s,[["render",a],["__scopeId","data-v-47f13bb3"]]);export{d as default}; diff --git a/_nuxt/Sandbox.kzho3R6E.js b/_nuxt/Sandbox.qG8woWRb.js similarity index 91% rename from _nuxt/Sandbox.kzho3R6E.js rename to _nuxt/Sandbox.qG8woWRb.js index daeba8b3de..bf9b1ceef9 100644 --- a/_nuxt/Sandbox.kzho3R6E.js +++ b/_nuxt/Sandbox.qG8woWRb.js @@ -1 +1 @@ -import v from"./TabsHeader.aoUmep7C.js";import{d as x,aO as h,r as n,o as g,b as r,c as l,Y as S,L as c,f as k,k as y}from"./entry.TEDHt2QA.js";const $={class:"sandbox"},w=["src"],B={key:2},C=x({__name:"Sandbox",props:{src:{type:String,default:""},repo:{type:String,default:""},branch:{type:String,default:""},dir:{type:String,default:""},file:{type:String,default:"app.vue"}},setup(i){const e=i,b=h(),o={CodeSandBox:()=>`https://codesandbox.io/embed/github/${e.repo}/tree/${e.branch}/${e.dir}?hidenavigation=1&theme=${b.value}`,StackBlitz:()=>`https://stackblitz.com/github/${e.repo}/tree/${e.branch}/${e.dir}?embed=1&file=${e.file}&theme=${b.value}`},p=Object.keys(o).map(t=>({label:t})),d=n(-1),u=n(),s=n(""),a=n(""),f=t=>{a.value=t,s.value=e.src||o[a.value](),localStorage.setItem("docus_sandbox",t)},m=t=>{d.value=t,f(p[t].label)};return g(()=>{a.value=window.localStorage.getItem("docus_sandbox")||"CodeSandBox",s.value=e.src||o[a.value](),d.value=Object.keys(o).indexOf(a.value)}),(t,I)=>{const _=v;return r(),l("div",$,[i.src?k("",!0):(r(),S(_,{key:0,ref_key:"tabs",ref:u,"active-tab-index":c(d),tabs:c(p),"onUpdate:activeTabIndex":m},null,8,["active-tab-index","tabs"])),c(s)?(r(),l("iframe",{key:1,src:c(s),title:"Sandbox editor",sandbox:"allow-modals allow-forms allow-popups allow-scripts allow-same-origin"},null,8,w)):(r(),l("span",B,"Loading Sandbox..."))])}}}),M=y(C,[["__scopeId","data-v-fb2fb419"]]);export{M as default}; +import v from"./TabsHeader.p2gr41k7.js";import{d as x,aO as h,r as n,o as g,b as r,c as l,Y as S,L as c,f as k,k as y}from"./entry.2w2g1VWZ.js";const $={class:"sandbox"},w=["src"],B={key:2},C=x({__name:"Sandbox",props:{src:{type:String,default:""},repo:{type:String,default:""},branch:{type:String,default:""},dir:{type:String,default:""},file:{type:String,default:"app.vue"}},setup(i){const e=i,b=h(),o={CodeSandBox:()=>`https://codesandbox.io/embed/github/${e.repo}/tree/${e.branch}/${e.dir}?hidenavigation=1&theme=${b.value}`,StackBlitz:()=>`https://stackblitz.com/github/${e.repo}/tree/${e.branch}/${e.dir}?embed=1&file=${e.file}&theme=${b.value}`},p=Object.keys(o).map(t=>({label:t})),d=n(-1),u=n(),s=n(""),a=n(""),f=t=>{a.value=t,s.value=e.src||o[a.value](),localStorage.setItem("docus_sandbox",t)},m=t=>{d.value=t,f(p[t].label)};return g(()=>{a.value=window.localStorage.getItem("docus_sandbox")||"CodeSandBox",s.value=e.src||o[a.value](),d.value=Object.keys(o).indexOf(a.value)}),(t,I)=>{const _=v;return r(),l("div",$,[i.src?k("",!0):(r(),S(_,{key:0,ref_key:"tabs",ref:u,"active-tab-index":c(d),tabs:c(p),"onUpdate:activeTabIndex":m},null,8,["active-tab-index","tabs"])),c(s)?(r(),l("iframe",{key:1,src:c(s),title:"Sandbox editor",sandbox:"allow-modals allow-forms allow-popups allow-scripts allow-same-origin"},null,8,w)):(r(),l("span",B,"Loading Sandbox..."))])}}}),M=y(C,[["__scopeId","data-v-fb2fb419"]]);export{M as default}; diff --git a/_nuxt/SourceLink.jxi0GOSi.js b/_nuxt/SourceLink.jxi0GOSi.js deleted file mode 100644 index c4757f1e52..0000000000 --- a/_nuxt/SourceLink.jxi0GOSi.js +++ /dev/null @@ -1 +0,0 @@ -import o from"./ProseP.fE1xZC7w.js";import{d as r,b as t,Y as n}from"./entry.TEDHt2QA.js";const m=r({__name:"SourceLink",props:{source:{type:String,required:!0}},setup(_){return(c,p)=>{const e=o;return t(),n(e)}}});export{m as default}; diff --git a/_nuxt/SourceLink.vIxZlUnx.js b/_nuxt/SourceLink.vIxZlUnx.js new file mode 100644 index 0000000000..1197ca059f --- /dev/null +++ b/_nuxt/SourceLink.vIxZlUnx.js @@ -0,0 +1 @@ +import o from"./ProseP.nG8WPuIi.js";import{d as r,b as t,Y as n}from"./entry.2w2g1VWZ.js";const m=r({__name:"SourceLink",props:{source:{type:String,required:!0}},setup(_){return(c,p)=>{const e=o;return t(),n(e)}}});export{m as default}; diff --git a/_nuxt/TabsHeader.aoUmep7C.js b/_nuxt/TabsHeader.p2gr41k7.js similarity index 94% rename from _nuxt/TabsHeader.aoUmep7C.js rename to _nuxt/TabsHeader.p2gr41k7.js index 89c5528347..e6cc790790 100644 --- a/_nuxt/TabsHeader.aoUmep7C.js +++ b/_nuxt/TabsHeader.p2gr41k7.js @@ -1 +1 @@ -import{d as b,r as l,a6 as v,b as a,c as s,F as g,aE as x,e as u,f as k,ad as y,n as I,t as T,p as S,i as C,B as $,k as B}from"./entry.TEDHt2QA.js";const w=t=>(S("data-v-ad7417d7"),t=t(),C(),t),N={class:"tabs-header"},U=["onClick"],q=w(()=>u("span",{class:"tab"},null,-1)),E=[q],F=b({__name:"TabsHeader",props:{tabs:{type:Array,required:!0},activeTabIndex:{type:Number,required:!0}},emits:["update:activeTabIndex"],setup(t,{emit:p}){const h=t,f=p,n=l(),i=l(),o=e=>{e&&(i.value.style.insetInlineStart=`${e.offsetLeft}px`,i.value.style.width=`${e.clientWidth}px`)},m=(e,d)=>{f("update:activeTabIndex",d),$(()=>o(e.target))};return v(n,e=>{e&&setTimeout(()=>{o(n.value.children[h.activeTabIndex])},50)},{immediate:!0}),(e,d)=>(a(),s("div",N,[t.tabs?(a(),s("div",{key:0,ref_key:"tabsRef",ref:n,class:"tabs"},[(a(!0),s(g,null,x(t.tabs,({label:c},r)=>(a(),s("button",{key:`${r}${c}`,class:I([t.activeTabIndex===r?"active":"not-active"]),onClick:_=>m(_,r)},T(c),11,U))),128)),u("span",{ref_key:"highlightUnderline",ref:i,class:"highlight-underline"},E,512)],512)):k("",!0),y(e.$slots,"footer",{},void 0,!0)]))}}),L=B(F,[["__scopeId","data-v-ad7417d7"]]);export{L as default}; +import{d as b,r as l,a6 as v,b as a,c as s,F as g,aE as x,e as u,f as k,ad as y,n as I,t as T,p as S,i as C,B as $,k as B}from"./entry.2w2g1VWZ.js";const w=t=>(S("data-v-ad7417d7"),t=t(),C(),t),N={class:"tabs-header"},U=["onClick"],q=w(()=>u("span",{class:"tab"},null,-1)),E=[q],F=b({__name:"TabsHeader",props:{tabs:{type:Array,required:!0},activeTabIndex:{type:Number,required:!0}},emits:["update:activeTabIndex"],setup(t,{emit:p}){const h=t,f=p,n=l(),i=l(),o=e=>{e&&(i.value.style.insetInlineStart=`${e.offsetLeft}px`,i.value.style.width=`${e.clientWidth}px`)},m=(e,d)=>{f("update:activeTabIndex",d),$(()=>o(e.target))};return v(n,e=>{e&&setTimeout(()=>{o(n.value.children[h.activeTabIndex])},50)},{immediate:!0}),(e,d)=>(a(),s("div",N,[t.tabs?(a(),s("div",{key:0,ref_key:"tabsRef",ref:n,class:"tabs"},[(a(!0),s(g,null,x(t.tabs,({label:c},r)=>(a(),s("button",{key:`${r}${c}`,class:I([t.activeTabIndex===r?"active":"not-active"]),onClick:_=>m(_,r)},T(c),11,U))),128)),u("span",{ref_key:"highlightUnderline",ref:i,class:"highlight-underline"},E,512)],512)):k("",!0),y(e.$slots,"footer",{},void 0,!0)]))}}),L=B(F,[["__scopeId","data-v-ad7417d7"]]);export{L as default}; diff --git a/_nuxt/Terminal.qDAZlX-Q.js b/_nuxt/Terminal.ioBbO3yw.js similarity index 89% rename from _nuxt/Terminal.qDAZlX-Q.js rename to _nuxt/Terminal.ioBbO3yw.js index 0970c2278f..aabe97274c 100644 --- a/_nuxt/Terminal.qDAZlX-Q.js +++ b/_nuxt/Terminal.ioBbO3yw.js @@ -1,2 +1,2 @@ -import{d as v,aG as h,r as m,K as f,b as s,c as o,L as i,f as p,e as t,F as y,aE as k,p as C,i as g,t as S,k as b}from"./entry.TEDHt2QA.js";const n=e=>(C("data-v-1c0fc1e1"),e=e(),g(),e),w={key:0,class:"copied"},x=n(()=>t("div",{class:"scrim"},null,-1)),B=n(()=>t("div",{class:"content"}," Copied! ",-1)),I=[x,B],T=n(()=>t("div",{class:"header"},[t("div",{class:"controls"},[t("div"),t("div"),t("div")]),t("div",{class:"title"}," Bash ")],-1)),E={class:"window"},F=n(()=>t("span",{class:"sign"},"$",-1)),L={class:"content"},N={key:1,class:"prompt"},V=v({__name:"Terminal",props:{content:{type:[Array,String],required:!0}},setup(e){const a=e,{copy:l}=h(),c=m("init"),d=f(()=>typeof a.content=="string"?[a.content]:a.content),_=u=>{l(d.value.join(` +import{d as v,aG as h,r as m,K as f,b as s,c as o,L as i,f as p,e as t,F as y,aE as k,p as C,i as g,t as S,k as b}from"./entry.2w2g1VWZ.js";const n=e=>(C("data-v-1c0fc1e1"),e=e(),g(),e),w={key:0,class:"copied"},x=n(()=>t("div",{class:"scrim"},null,-1)),B=n(()=>t("div",{class:"content"}," Copied! ",-1)),I=[x,B],T=n(()=>t("div",{class:"header"},[t("div",{class:"controls"},[t("div"),t("div"),t("div")]),t("div",{class:"title"}," Bash ")],-1)),E={class:"window"},F=n(()=>t("span",{class:"sign"},"$",-1)),L={class:"content"},N={key:1,class:"prompt"},V=v({__name:"Terminal",props:{content:{type:[Array,String],required:!0}},setup(e){const a=e,{copy:l}=h(),c=m("init"),d=f(()=>typeof a.content=="string"?[a.content]:a.content),_=u=>{l(d.value.join(` `)).then(()=>{c.value="copied",setTimeout(()=>{c.value="init"},1e3)}).catch(()=>{console.warn("Couldn't copy to clipboard!")})};return(u,j)=>(s(),o("div",{class:"terminal",onClick:_},[i(c)==="copied"?(s(),o("div",w,I)):p("",!0),T,t("div",E,[(s(!0),o(y,null,k(i(d),r=>(s(),o("span",{key:r,class:"line"},[F,t("span",L,S(r),1)]))),128))]),i(c)!=="copied"?(s(),o("div",N," Click to copy ")):p("",!0)]))}}),A=b(V,[["__scopeId","data-v-1c0fc1e1"]]);export{A as default}; diff --git a/_nuxt/ThemeButton.1RrkhdJY.js b/_nuxt/ThemeButton.1RrkhdJY.js new file mode 100644 index 0000000000..22752ec243 --- /dev/null +++ b/_nuxt/ThemeButton.1RrkhdJY.js @@ -0,0 +1 @@ +import{_ as m}from"./ThemeButton.vue.h40yM2hQ.js";import"./entry.2w2g1VWZ.js";export{m as default}; diff --git a/_nuxt/ThemeButton.eXbhwXzf.js b/_nuxt/ThemeButton.eXbhwXzf.js deleted file mode 100644 index 8057ecd7e8..0000000000 --- a/_nuxt/ThemeButton.eXbhwXzf.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as m}from"./ThemeButton.vue.QVGC5WYd.js";import"./entry.TEDHt2QA.js";export{m as default}; diff --git a/_nuxt/ThemeButton.vue.QVGC5WYd.js b/_nuxt/ThemeButton.vue.h40yM2hQ.js similarity index 87% rename from _nuxt/ThemeButton.vue.QVGC5WYd.js rename to _nuxt/ThemeButton.vue.h40yM2hQ.js index 897ff84f74..30c3752de7 100644 --- a/_nuxt/ThemeButton.vue.QVGC5WYd.js +++ b/_nuxt/ThemeButton.vue.h40yM2hQ.js @@ -1 +1 @@ -import{d as s,a0 as c,b as r,c as l,g as m,L as o,G as p,t as u,a1 as i}from"./entry.TEDHt2QA.js";const x=s({__name:"ThemeButton",props:{modelValue:{}},emits:["update:modelValue"],setup(t){const e=c(t);function n(){e.value=e.value==="light"?"dark":"light"}return(d,g)=>{const a=i;return r(),l("button",{rounded:"","px-2":"","py-1":"","bg-gray-200":"","text-black":"",onClick:n},[m(a,{name:o(e)==="light"?"heroicons:sun":"heroicons:moon",size:"1.2rem"},null,8,["name"]),p(" Toggle theme: "+u(o(e)),1)])}}});export{x as _}; +import{d as s,a0 as c,b as r,c as l,g as m,L as o,G as p,t as u,a1 as i}from"./entry.2w2g1VWZ.js";const x=s({__name:"ThemeButton",props:{modelValue:{}},emits:["update:modelValue"],setup(t){const e=c(t);function n(){e.value=e.value==="light"?"dark":"light"}return(d,g)=>{const a=i;return r(),l("button",{rounded:"","px-2":"","py-1":"","bg-gray-200":"","text-black":"",onClick:n},[m(a,{name:o(e)==="light"?"heroicons:sun":"heroicons:moon",size:"1.2rem"},null,8,["name"]),p(" Toggle theme: "+u(o(e)),1)])}}});export{x as _}; diff --git a/_nuxt/TokensPlayground.TsojWGG-.js b/_nuxt/TokensPlayground.haxm6ye7.js similarity index 74% rename from _nuxt/TokensPlayground.TsojWGG-.js rename to _nuxt/TokensPlayground.haxm6ye7.js index 2eeb1878d5..58e653a46a 100644 --- a/_nuxt/TokensPlayground.TsojWGG-.js +++ b/_nuxt/TokensPlayground.haxm6ye7.js @@ -1 +1 @@ -import{d as n,aP as a,b as s,c as t,e as o,t as r,L as c}from"./entry.TEDHt2QA.js";const m=n({__name:"TokensPlayground",setup(l){const{theme:e}=a();return(u,i)=>(s(),t("div",null,[o("pre",null,r(JSON.stringify(c(e),null,2)),1)]))}});export{m as default}; +import{d as n,aP as a,b as s,c as t,e as o,t as r,L as c}from"./entry.2w2g1VWZ.js";const m=n({__name:"TokensPlayground",setup(l){const{theme:e}=a();return(u,i)=>(s(),t("div",null,[o("pre",null,r(JSON.stringify(c(e),null,2)),1)]))}});export{m as default}; diff --git a/_nuxt/VeeValidateCheckbox.yTMsd4p8.js b/_nuxt/VeeValidateCheckbox.IqFUqOlv.js similarity index 75% rename from _nuxt/VeeValidateCheckbox.yTMsd4p8.js rename to _nuxt/VeeValidateCheckbox.IqFUqOlv.js index 0135259e8d..eddf21862a 100644 --- a/_nuxt/VeeValidateCheckbox.yTMsd4p8.js +++ b/_nuxt/VeeValidateCheckbox.IqFUqOlv.js @@ -1 +1 @@ -import{_ as y}from"./Checkbox.vue.zE85wFil.js";import g from"./PrimaryButton.FCsViibh.js";import{d as k,b as l,c as n,e as o,a2 as S,a3 as C,L as e,Z as d,t as p,f as _,g as f,w as B,G as N}from"./entry.TEDHt2QA.js";import{u as w,c as E,a as v,b as x}from"./index.esm.Trgrr3QY.js";import"./component-v2.a5wbyfd6.js";import"./index.devlPsl3.js";import"./_commonjsHelpers.5-cIlDoe.js";const M={key:0,class:"text-red"},$={key:0,class:"text-red"},L=k({__name:"VeeValidateCheckbox",setup(q){const{handleSubmit:b}=w({validationSchema:E({name:v().required(),recaptcha:v().required("Please verify you are human")})}),{value:r,errorMessage:u}=x("name"),{value:s,errorMessage:m}=x("recaptcha"),i=b(c=>{console.log(c)});return(c,a)=>{const V=y,h=g;return l(),n("form",{class:"flex flex-col gap-2",onSubmit:a[2]||(a[2]=(...t)=>e(i)&&e(i)(...t))},[o("div",null,[S(o("input",{"onUpdate:modelValue":a[0]||(a[0]=t=>d(r)?r.value=t:null),class:"border border-blue p-1",type:"text",placeholder:"Your name"},null,512),[[C,e(r)]]),e(u)?(l(),n("div",M,p(e(u)),1)):_("",!0)]),o("div",null,[f(V,{modelValue:e(s),"onUpdate:modelValue":a[1]||(a[1]=t=>d(s)?s.value=t:null)},null,8,["modelValue"]),e(m)?(l(),n("div",$,p(e(m)),1)):_("",!0)]),o("div",null,[f(h,{type:"submit"},{default:B(()=>[N(" Submit ")]),_:1})])],32)}}});export{L as default}; +import{_ as y}from"./Checkbox.vue.7dAWGJOj.js";import g from"./PrimaryButton.3_DqpC_5.js";import{d as k,b as l,c as n,e as o,a2 as S,a3 as C,L as e,Z as d,t as p,f as _,g as f,w as B,G as N}from"./entry.2w2g1VWZ.js";import{u as w,c as E,a as v,b as x}from"./index.esm.VSbdGIoo.js";import"./component-v2.AWWRLQbf.js";import"./index.OaNwcZ7q.js";import"./_commonjsHelpers.5-cIlDoe.js";const M={key:0,class:"text-red"},$={key:0,class:"text-red"},L=k({__name:"VeeValidateCheckbox",setup(q){const{handleSubmit:b}=w({validationSchema:E({name:v().required(),recaptcha:v().required("Please verify you are human")})}),{value:r,errorMessage:u}=x("name"),{value:s,errorMessage:m}=x("recaptcha"),i=b(c=>{console.log(c)});return(c,a)=>{const V=y,h=g;return l(),n("form",{class:"flex flex-col gap-2",onSubmit:a[2]||(a[2]=(...t)=>e(i)&&e(i)(...t))},[o("div",null,[S(o("input",{"onUpdate:modelValue":a[0]||(a[0]=t=>d(r)?r.value=t:null),class:"border border-blue p-1",type:"text",placeholder:"Your name"},null,512),[[C,e(r)]]),e(u)?(l(),n("div",M,p(e(u)),1)):_("",!0)]),o("div",null,[f(V,{modelValue:e(s),"onUpdate:modelValue":a[1]||(a[1]=t=>d(s)?s.value=t:null)},null,8,["modelValue"]),e(m)?(l(),n("div",$,p(e(m)),1)):_("",!0)]),o("div",null,[f(h,{type:"submit"},{default:B(()=>[N(" Submit ")]),_:1})])],32)}}});export{L as default}; diff --git a/_nuxt/VeeValidateInvisible.ctyKsI9P.js b/_nuxt/VeeValidateInvisible.5mThLuVF.js similarity index 74% rename from _nuxt/VeeValidateInvisible.ctyKsI9P.js rename to _nuxt/VeeValidateInvisible.5mThLuVF.js index 0a7a6d9033..16815ca87b 100644 --- a/_nuxt/VeeValidateInvisible.ctyKsI9P.js +++ b/_nuxt/VeeValidateInvisible.5mThLuVF.js @@ -1 +1 @@ -import b from"./PrimaryButton.FCsViibh.js";import{_ as v}from"./ChallengeV2.vue.VhWqa73j.js";import{d as x,r as g,a4 as y,b as i,c as u,e as n,a2 as S,a3 as h,L as a,Z as d,t as w,f as B,g as p,w as c,G as C}from"./entry.TEDHt2QA.js";import{u as N,c as k,a as $,b as D}from"./index.esm.Trgrr3QY.js";import"./component-v2.a5wbyfd6.js";import"./index.devlPsl3.js";import"./_commonjsHelpers.5-cIlDoe.js";const E={key:0,class:"text-red"},L=x({__name:"VeeValidateInvisible",setup(F){const{handleSubmit:f}=N({validationSchema:k({name:$().required()})}),{value:s,errorMessage:r}=D("name"),t=g(),l=f(async m=>{await y(t).changed(),console.log({...m,response:t.value})});return(m,e)=>{const _=b,V=v;return i(),u("form",{class:"flex flex-col gap-2",onSubmit:e[2]||(e[2]=(...o)=>a(l)&&a(l)(...o))},[n("div",null,[S(n("input",{"onUpdate:modelValue":e[0]||(e[0]=o=>d(s)?s.value=o:null),class:"border border-blue p-1",type:"text",placeholder:"Your name"},null,512),[[h,a(s)]]),a(r)?(i(),u("div",E,w(a(r)),1)):B("",!0)]),n("div",null,[p(V,{modelValue:a(t),"onUpdate:modelValue":e[1]||(e[1]=o=>d(t)?t.value=o:null)},{default:c(()=>[p(_,{type:"submit"},{default:c(()=>[C(" Submit ")]),_:1})]),_:1},8,["modelValue"])])],32)}}});export{L as default}; +import b from"./PrimaryButton.3_DqpC_5.js";import{_ as v}from"./ChallengeV2.vue.MiUOdAxt.js";import{d as x,r as g,a4 as y,b as i,c as u,e as n,a2 as S,a3 as h,L as a,Z as d,t as w,f as B,g as p,w as c,G as C}from"./entry.2w2g1VWZ.js";import{u as N,c as k,a as $,b as D}from"./index.esm.VSbdGIoo.js";import"./component-v2.AWWRLQbf.js";import"./index.OaNwcZ7q.js";import"./_commonjsHelpers.5-cIlDoe.js";const E={key:0,class:"text-red"},L=x({__name:"VeeValidateInvisible",setup(F){const{handleSubmit:f}=N({validationSchema:k({name:$().required()})}),{value:s,errorMessage:r}=D("name"),t=g(),l=f(async m=>{await y(t).changed(),console.log({...m,response:t.value})});return(m,e)=>{const _=b,V=v;return i(),u("form",{class:"flex flex-col gap-2",onSubmit:e[2]||(e[2]=(...o)=>a(l)&&a(l)(...o))},[n("div",null,[S(n("input",{"onUpdate:modelValue":e[0]||(e[0]=o=>d(s)?s.value=o:null),class:"border border-blue p-1",type:"text",placeholder:"Your name"},null,512),[[h,a(s)]]),a(r)?(i(),u("div",E,w(a(r)),1)):B("",!0)]),n("div",null,[p(V,{modelValue:a(t),"onUpdate:modelValue":e[1]||(e[1]=o=>d(t)?t.value=o:null)},{default:c(()=>[p(_,{type:"submit"},{default:c(()=>[C(" Submit ")]),_:1})]),_:1},8,["modelValue"])])],32)}}});export{L as default}; diff --git a/_nuxt/VideoPlayer.nlPS_y-m.js b/_nuxt/VideoPlayer.f-8bQb4l.js similarity index 93% rename from _nuxt/VideoPlayer.nlPS_y-m.js rename to _nuxt/VideoPlayer.f-8bQb4l.js index 7876288761..889619b1fe 100644 --- a/_nuxt/VideoPlayer.nlPS_y-m.js +++ b/_nuxt/VideoPlayer.f-8bQb4l.js @@ -1 +1 @@ -import{_ as m}from"./NuxtImg.vue.XitBA6AI.js";import{d as f,K as i,r as _,b as s,c as a,L as e,Y as h,f as u,F as k,aE as v,n as b,p as w,i as g,e as x,k as B}from"./entry.TEDHt2QA.js";const I=t=>(w("data-v-6bf23cab"),t=t(),g(),t),S={key:1,class:"loaded"},C=["poster"],V=["src"],$=["src","type"],E=["autoplay","src"],N=I(()=>x("button",null,null,-1)),F=[N],L=f({__name:"VideoPlayer",props:{poster:{type:String,default:""},src:{type:String,default:""},sources:{type:Array,default:()=>[]},autoplay:{type:Boolean,default:!1}},setup(t){const r=t,c=i(()=>{if(r.src&&r.src.includes("youtube.com/watch")){const o=r.src.match(/\?v=([^&]*)/);return{name:"youtube",src:`https://www.youtube-nocookie.com/embed/${(o==null?void 0:o[1])||""}?autoplay=1`,poster:r.poster||`https://i3.ytimg.com/vi/${(o==null?void 0:o[1])||""}/hqdefault.jpg`}}}),p=_(!1);if(!r.src&&!r.sources.length)throw new Error("VideoPlayer: you need to provide either `src` or `sources` props");const d=i(()=>{var o,l;return r.src||((l=(o=r.sources)==null?void 0:o[0])==null?void 0:l.src)||!1});return(o,l)=>{const y=m;return s(),a("div",{class:b(["video-player",{loaded:e(p)}])},[(e(c)?e(c).poster:t.poster)?(s(),h(y,{key:0,src:e(c)?e(c).poster:t.poster},null,8,["src"])):u("",!0),e(p)?(s(),a("div",S,[e(c)?e(c).name==="youtube"?(s(),a("iframe",{key:1,allow:"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"true",autoplay:t.autoplay,src:e(c).src},null,8,E)):u("",!0):(s(),a("video",{key:0,poster:t.poster,controls:"",autoplay:""},[e(d)?(s(),a("source",{key:0,src:e(d)},null,8,V)):u("",!0),(s(!0),a(k,null,v(t.sources,n=>(s(),a("source",{key:n.src||n,src:n.src||n,type:n.type},null,8,$))),128))],8,C))])):u("",!0),e(p)?u("",!0):(s(),a("div",{key:2,class:"play-button",onClick:l[0]||(l[0]=n=>p.value=!0)},F))],2)}}}),q=B(L,[["__scopeId","data-v-6bf23cab"]]);export{q as default}; +import{_ as m}from"./NuxtImg.vue.5zIl8PSO.js";import{d as f,K as i,r as _,b as s,c as a,L as e,Y as h,f as u,F as k,aE as v,n as b,p as w,i as g,e as x,k as B}from"./entry.2w2g1VWZ.js";const I=t=>(w("data-v-6bf23cab"),t=t(),g(),t),S={key:1,class:"loaded"},C=["poster"],V=["src"],$=["src","type"],E=["autoplay","src"],N=I(()=>x("button",null,null,-1)),F=[N],L=f({__name:"VideoPlayer",props:{poster:{type:String,default:""},src:{type:String,default:""},sources:{type:Array,default:()=>[]},autoplay:{type:Boolean,default:!1}},setup(t){const r=t,c=i(()=>{if(r.src&&r.src.includes("youtube.com/watch")){const o=r.src.match(/\?v=([^&]*)/);return{name:"youtube",src:`https://www.youtube-nocookie.com/embed/${(o==null?void 0:o[1])||""}?autoplay=1`,poster:r.poster||`https://i3.ytimg.com/vi/${(o==null?void 0:o[1])||""}/hqdefault.jpg`}}}),p=_(!1);if(!r.src&&!r.sources.length)throw new Error("VideoPlayer: you need to provide either `src` or `sources` props");const d=i(()=>{var o,l;return r.src||((l=(o=r.sources)==null?void 0:o[0])==null?void 0:l.src)||!1});return(o,l)=>{const y=m;return s(),a("div",{class:b(["video-player",{loaded:e(p)}])},[(e(c)?e(c).poster:t.poster)?(s(),h(y,{key:0,src:e(c)?e(c).poster:t.poster},null,8,["src"])):u("",!0),e(p)?(s(),a("div",S,[e(c)?e(c).name==="youtube"?(s(),a("iframe",{key:1,allow:"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"true",autoplay:t.autoplay,src:e(c).src},null,8,E)):u("",!0):(s(),a("video",{key:0,poster:t.poster,controls:"",autoplay:""},[e(d)?(s(),a("source",{key:0,src:e(d)},null,8,V)):u("",!0),(s(!0),a(k,null,v(t.sources,n=>(s(),a("source",{key:n.src||n,src:n.src||n,type:n.type},null,8,$))),128))],8,C))])):u("",!0),e(p)?u("",!0):(s(),a("div",{key:2,class:"play-button",onClick:l[0]||(l[0]=n=>p.value=!0)},F))],2)}}}),q=B(L,[["__scopeId","data-v-6bf23cab"]]);export{q as default}; diff --git a/_nuxt/VoltaBoard.zjodTpgW.js b/_nuxt/VoltaBoard.eNwT8-SJ.js similarity index 78% rename from _nuxt/VoltaBoard.zjodTpgW.js rename to _nuxt/VoltaBoard.eNwT8-SJ.js index fead3c1efa..3817afedf0 100644 --- a/_nuxt/VoltaBoard.zjodTpgW.js +++ b/_nuxt/VoltaBoard.eNwT8-SJ.js @@ -1 +1 @@ -import{d as s,K as r,b as n,c,L as a}from"./entry.TEDHt2QA.js";const p=["src"],d=s({__name:"VoltaBoard",props:{token:{type:String,required:!0}},setup(e){const t=e,o=r(()=>`https://volta.net/embed/${t.token}`);return(l,u)=>(n(),c("iframe",{src:a(o),class:"w-full"},null,8,p))}});export{d as default}; +import{d as s,K as r,b as n,c,L as a}from"./entry.2w2g1VWZ.js";const p=["src"],d=s({__name:"VoltaBoard",props:{token:{type:String,required:!0}},setup(e){const t=e,o=r(()=>`https://volta.net/embed/${t.token}`);return(l,u)=>(n(),c("iframe",{src:a(o),class:"w-full"},null,8,p))}});export{d as default}; diff --git a/_nuxt/arc.flIDfKC7.js b/_nuxt/arc.kghs0U58.js similarity index 96% rename from _nuxt/arc.flIDfKC7.js rename to _nuxt/arc.kghs0U58.js index 09bf07f6a7..ac85bd2ffb 100644 --- a/_nuxt/arc.flIDfKC7.js +++ b/_nuxt/arc.kghs0U58.js @@ -1 +1 @@ -import{w as ln,c as Q}from"./path.aUcfwwLI.js";import{aN as an,aO as X,aP as O,aQ as rn,aR as y,aJ as on,aS as z,aT as _,aU as un,aV as t,aW as sn,aX as tn,aY as fn}from"./mermaid-934d9bea.GjCu814R.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function mn(l){return l.endAngle}function pn(l){return l&&l.padAngle}function dn(l,h,D,S,v,R,U,a){var E=D-l,i=S-h,n=U-v,m=a-R,r=m*E-n*i;if(!(r*ru*u+W*W&&(J=w,N=d),{cx:J,cy:N,x01:-n,y01:-m,x11:J*(v/T-1),y11:N*(v/T-1)}}function vn(){var l=cn,h=yn,D=Q(0),S=null,v=gn,R=mn,U=pn,a=null,E=ln(i);function i(){var n,m,r=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-rn,c=R.apply(this,arguments)-rn,V=un(c-f),o=c>f;if(a||(a=n=E()),sy))a.moveTo(0,0);else if(V>on-y)a.moveTo(s*X(f),s*O(f)),a.arc(0,0,s,f,c,!o),r>y&&(a.moveTo(r*X(c),r*O(c)),a.arc(0,0,r,c,f,o));else{var p=f,g=c,A=f,T=c,P=V,I=V,J=U.apply(this,arguments)/2,N=J>y&&(S?+S.apply(this,arguments):z(r*r+s*s)),w=_(un(s-r)/2,+D.apply(this,arguments)),d=w,x=w,e,u;if(N>y){var W=sn(N/r*O(J)),B=sn(N/s*O(J));(P-=W*2)>y?(W*=o?1:-1,A+=W,T-=W):(P=0,A=T=(f+c)/2),(I-=B*2)>y?(B*=o?1:-1,p+=B,g-=B):(I=0,p=g=(f+c)/2)}var Y=s*X(p),j=s*O(p),C=r*X(T),F=r*O(T);if(w>y){var G=s*X(g),H=s*O(g),L=r*X(A),M=r*O(A),q;if(Vy?x>y?(e=K(L,M,Y,j,s,x,o),u=K(G,H,C,F,s,x,o),a.moveTo(e.cx+e.x01,e.cy+e.y01),xy)||!(P>y)?a.lineTo(C,F):d>y?(e=K(C,F,G,H,r,-d,o),u=K(Y,j,L,M,r,-d,o),a.lineTo(e.cx+e.x01,e.cy+e.y01),du*u+W*W&&(J=w,N=d),{cx:J,cy:N,x01:-n,y01:-m,x11:J*(v/T-1),y11:N*(v/T-1)}}function vn(){var l=cn,h=yn,D=Q(0),S=null,v=gn,R=mn,U=pn,a=null,E=ln(i);function i(){var n,m,r=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-rn,c=R.apply(this,arguments)-rn,V=un(c-f),o=c>f;if(a||(a=n=E()),sy))a.moveTo(0,0);else if(V>on-y)a.moveTo(s*X(f),s*O(f)),a.arc(0,0,s,f,c,!o),r>y&&(a.moveTo(r*X(c),r*O(c)),a.arc(0,0,r,c,f,o));else{var p=f,g=c,A=f,T=c,P=V,I=V,J=U.apply(this,arguments)/2,N=J>y&&(S?+S.apply(this,arguments):z(r*r+s*s)),w=_(un(s-r)/2,+D.apply(this,arguments)),d=w,x=w,e,u;if(N>y){var W=sn(N/r*O(J)),B=sn(N/s*O(J));(P-=W*2)>y?(W*=o?1:-1,A+=W,T-=W):(P=0,A=T=(f+c)/2),(I-=B*2)>y?(B*=o?1:-1,p+=B,g-=B):(I=0,p=g=(f+c)/2)}var Y=s*X(p),j=s*O(p),C=r*X(T),F=r*O(T);if(w>y){var G=s*X(g),H=s*O(g),L=r*X(A),M=r*O(A),q;if(Vy?x>y?(e=K(L,M,Y,j,s,x,o),u=K(G,H,C,F,s,x,o),a.moveTo(e.cx+e.x01,e.cy+e.y01),xy)||!(P>y)?a.lineTo(C,F):d>y?(e=K(C,F,G,H,r,-d,o),u=K(Y,j,L,M,r,-d,o),a.lineTo(e.cx+e.x01,e.cy+e.y01),d"u"&&(D.yylloc={});var Ht=D.yylloc;u.push(Ht);var ke=D.options&&D.options.ranges;typeof vt.yy.parseError=="function"?this.parseError=vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ae(){var X;return X=g.pop()||D.lex()||ae,typeof X!="number"&&(X instanceof Array&&(g=X,X=g.pop()),X=x.symbols_[X]||X),X}for(var M,kt,N,qt,Ct={},Mt,z,re,Lt;;){if(kt=m[m.length-1],this.defaultActions[kt]?N=this.defaultActions[kt]:((M===null||typeof M>"u")&&(M=Ae()),N=Tt[kt]&&Tt[kt][M]),typeof N>"u"||!N.length||!N[0]){var Gt="";Lt=[];for(Mt in Tt[kt])this.terminals_[Mt]&&Mt>Ee&&Lt.push("'"+this.terminals_[Mt]+"'");D.showPosition?Gt="Parse error on line "+(Et+1)+`: +import{s as Ce,g as we,a as Oe,b as Te,c as Dt,d as ue,e as Re,f as wt,h as Nt,l as le,i as De,w as Se,j as Kt,k as oe,n as Pe}from"./mermaid-934d9bea.JP-6_YN_.js";import{d as Me,g as Le}from"./svgDrawCommon-ad5ef572.X8xX495e.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";var Yt=function(){var e=function(bt,_,x,m){for(x=x||{},m=bt.length;m--;x[bt[m]]=_);return x},t=[1,24],a=[1,25],o=[1,26],l=[1,27],i=[1,28],s=[1,63],r=[1,64],n=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],E=[1,29],O=[1,30],R=[1,31],S=[1,32],L=[1,33],Y=[1,34],Q=[1,35],H=[1,36],q=[1,37],G=[1,38],K=[1,39],J=[1,40],Z=[1,41],$=[1,42],tt=[1,43],et=[1,44],it=[1,45],nt=[1,46],st=[1,47],at=[1,48],rt=[1,50],lt=[1,51],ot=[1,52],ct=[1,53],ht=[1,54],ut=[1,55],dt=[1,56],ft=[1,57],pt=[1,58],yt=[1,59],gt=[1,60],At=[14,42],Vt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],v=[1,82],k=[1,83],A=[1,84],C=[1,85],w=[12,14,42],ne=[12,14,33,42],Pt=[12,14,33,42,76,77,79,80],mt=[12,33],zt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Xt={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:function(_,x,m,g,T,u,Tt){var y=u.length-1;switch(T){case 3:g.setDirection("TB");break;case 4:g.setDirection("BT");break;case 5:g.setDirection("RL");break;case 6:g.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:g.setC4Type(u[y-3]);break;case 19:g.setTitle(u[y].substring(6)),this.$=u[y].substring(6);break;case 20:g.setAccDescription(u[y].substring(15)),this.$=u[y].substring(15);break;case 21:this.$=u[y].trim(),g.setTitle(this.$);break;case 22:case 23:this.$=u[y].trim(),g.setAccDescription(this.$);break;case 28:case 29:u[y].splice(2,0,"ENTERPRISE"),g.addPersonOrSystemBoundary(...u[y]),this.$=u[y];break;case 30:g.addPersonOrSystemBoundary(...u[y]),this.$=u[y];break;case 31:u[y].splice(2,0,"CONTAINER"),g.addContainerBoundary(...u[y]),this.$=u[y];break;case 32:g.addDeploymentNode("node",...u[y]),this.$=u[y];break;case 33:g.addDeploymentNode("nodeL",...u[y]),this.$=u[y];break;case 34:g.addDeploymentNode("nodeR",...u[y]),this.$=u[y];break;case 35:g.popBoundaryParseStack();break;case 39:g.addPersonOrSystem("person",...u[y]),this.$=u[y];break;case 40:g.addPersonOrSystem("external_person",...u[y]),this.$=u[y];break;case 41:g.addPersonOrSystem("system",...u[y]),this.$=u[y];break;case 42:g.addPersonOrSystem("system_db",...u[y]),this.$=u[y];break;case 43:g.addPersonOrSystem("system_queue",...u[y]),this.$=u[y];break;case 44:g.addPersonOrSystem("external_system",...u[y]),this.$=u[y];break;case 45:g.addPersonOrSystem("external_system_db",...u[y]),this.$=u[y];break;case 46:g.addPersonOrSystem("external_system_queue",...u[y]),this.$=u[y];break;case 47:g.addContainer("container",...u[y]),this.$=u[y];break;case 48:g.addContainer("container_db",...u[y]),this.$=u[y];break;case 49:g.addContainer("container_queue",...u[y]),this.$=u[y];break;case 50:g.addContainer("external_container",...u[y]),this.$=u[y];break;case 51:g.addContainer("external_container_db",...u[y]),this.$=u[y];break;case 52:g.addContainer("external_container_queue",...u[y]),this.$=u[y];break;case 53:g.addComponent("component",...u[y]),this.$=u[y];break;case 54:g.addComponent("component_db",...u[y]),this.$=u[y];break;case 55:g.addComponent("component_queue",...u[y]),this.$=u[y];break;case 56:g.addComponent("external_component",...u[y]),this.$=u[y];break;case 57:g.addComponent("external_component_db",...u[y]),this.$=u[y];break;case 58:g.addComponent("external_component_queue",...u[y]),this.$=u[y];break;case 60:g.addRel("rel",...u[y]),this.$=u[y];break;case 61:g.addRel("birel",...u[y]),this.$=u[y];break;case 62:g.addRel("rel_u",...u[y]),this.$=u[y];break;case 63:g.addRel("rel_d",...u[y]),this.$=u[y];break;case 64:g.addRel("rel_l",...u[y]),this.$=u[y];break;case 65:g.addRel("rel_r",...u[y]),this.$=u[y];break;case 66:g.addRel("rel_b",...u[y]),this.$=u[y];break;case 67:u[y].splice(0,1),g.addRel("rel",...u[y]),this.$=u[y];break;case 68:g.updateElStyle("update_el_style",...u[y]),this.$=u[y];break;case 69:g.updateRelStyle("update_rel_style",...u[y]),this.$=u[y];break;case 70:g.updateLayoutConfig("update_layout_config",...u[y]),this.$=u[y];break;case 71:this.$=[u[y]];break;case 72:u[y].unshift(u[y-1]),this.$=u[y];break;case 73:case 75:this.$=u[y].trim();break;case 74:let Et={};Et[u[y-1].trim()]=u[y].trim(),this.$=Et;break;case 76:this.$="";break}},table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:a,24:o,26:l,28:i,29:49,30:61,32:62,34:s,36:r,37:n,38:h,39:f,40:d,41:p,43:23,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt},{13:70,19:20,20:21,21:22,22:t,23:a,24:o,26:l,28:i,29:49,30:61,32:62,34:s,36:r,37:n,38:h,39:f,40:d,41:p,43:23,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt},{13:71,19:20,20:21,21:22,22:t,23:a,24:o,26:l,28:i,29:49,30:61,32:62,34:s,36:r,37:n,38:h,39:f,40:d,41:p,43:23,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt},{13:72,19:20,20:21,21:22,22:t,23:a,24:o,26:l,28:i,29:49,30:61,32:62,34:s,36:r,37:n,38:h,39:f,40:d,41:p,43:23,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt},{13:73,19:20,20:21,21:22,22:t,23:a,24:o,26:l,28:i,29:49,30:61,32:62,34:s,36:r,37:n,38:h,39:f,40:d,41:p,43:23,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt},{14:[1,74]},e(At,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:r,37:n,38:h,39:f,40:d,41:p,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt}),e(At,[2,14]),e(Vt,[2,16],{12:[1,76]}),e(At,[2,36],{12:[1,77]}),e(Ot,[2,19]),e(Ot,[2,20]),{25:[1,78]},{27:[1,79]},e(Ot,[2,23]),{35:80,75:81,76:v,77:k,79:A,80:C},{35:86,75:81,76:v,77:k,79:A,80:C},{35:87,75:81,76:v,77:k,79:A,80:C},{35:88,75:81,76:v,77:k,79:A,80:C},{35:89,75:81,76:v,77:k,79:A,80:C},{35:90,75:81,76:v,77:k,79:A,80:C},{35:91,75:81,76:v,77:k,79:A,80:C},{35:92,75:81,76:v,77:k,79:A,80:C},{35:93,75:81,76:v,77:k,79:A,80:C},{35:94,75:81,76:v,77:k,79:A,80:C},{35:95,75:81,76:v,77:k,79:A,80:C},{35:96,75:81,76:v,77:k,79:A,80:C},{35:97,75:81,76:v,77:k,79:A,80:C},{35:98,75:81,76:v,77:k,79:A,80:C},{35:99,75:81,76:v,77:k,79:A,80:C},{35:100,75:81,76:v,77:k,79:A,80:C},{35:101,75:81,76:v,77:k,79:A,80:C},{35:102,75:81,76:v,77:k,79:A,80:C},{35:103,75:81,76:v,77:k,79:A,80:C},{35:104,75:81,76:v,77:k,79:A,80:C},e(w,[2,59]),{35:105,75:81,76:v,77:k,79:A,80:C},{35:106,75:81,76:v,77:k,79:A,80:C},{35:107,75:81,76:v,77:k,79:A,80:C},{35:108,75:81,76:v,77:k,79:A,80:C},{35:109,75:81,76:v,77:k,79:A,80:C},{35:110,75:81,76:v,77:k,79:A,80:C},{35:111,75:81,76:v,77:k,79:A,80:C},{35:112,75:81,76:v,77:k,79:A,80:C},{35:113,75:81,76:v,77:k,79:A,80:C},{35:114,75:81,76:v,77:k,79:A,80:C},{35:115,75:81,76:v,77:k,79:A,80:C},{20:116,29:49,30:61,32:62,34:s,36:r,37:n,38:h,39:f,40:d,41:p,43:23,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt},{12:[1,118],33:[1,117]},{35:119,75:81,76:v,77:k,79:A,80:C},{35:120,75:81,76:v,77:k,79:A,80:C},{35:121,75:81,76:v,77:k,79:A,80:C},{35:122,75:81,76:v,77:k,79:A,80:C},{35:123,75:81,76:v,77:k,79:A,80:C},{35:124,75:81,76:v,77:k,79:A,80:C},{35:125,75:81,76:v,77:k,79:A,80:C},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(At,[2,15]),e(Vt,[2,17],{21:22,19:130,22:t,23:a,24:o,26:l,28:i}),e(At,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:a,24:o,26:l,28:i,34:s,36:r,37:n,38:h,39:f,40:d,41:p,44:E,45:O,46:R,47:S,48:L,49:Y,50:Q,51:H,52:q,53:G,54:K,55:J,56:Z,57:$,58:tt,59:et,60:it,61:nt,62:st,63:at,64:rt,65:lt,66:ot,67:ct,68:ht,69:ut,70:dt,71:ft,72:pt,73:yt,74:gt}),e(Ot,[2,21]),e(Ot,[2,22]),e(w,[2,39]),e(ne,[2,71],{75:81,35:132,76:v,77:k,79:A,80:C}),e(Pt,[2,73]),{78:[1,133]},e(Pt,[2,75]),e(Pt,[2,76]),e(w,[2,40]),e(w,[2,41]),e(w,[2,42]),e(w,[2,43]),e(w,[2,44]),e(w,[2,45]),e(w,[2,46]),e(w,[2,47]),e(w,[2,48]),e(w,[2,49]),e(w,[2,50]),e(w,[2,51]),e(w,[2,52]),e(w,[2,53]),e(w,[2,54]),e(w,[2,55]),e(w,[2,56]),e(w,[2,57]),e(w,[2,58]),e(w,[2,60]),e(w,[2,61]),e(w,[2,62]),e(w,[2,63]),e(w,[2,64]),e(w,[2,65]),e(w,[2,66]),e(w,[2,67]),e(w,[2,68]),e(w,[2,69]),e(w,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(mt,[2,28]),e(mt,[2,29]),e(mt,[2,30]),e(mt,[2,31]),e(mt,[2,32]),e(mt,[2,33]),e(mt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Vt,[2,18]),e(At,[2,38]),e(ne,[2,72]),e(Pt,[2,74]),e(w,[2,24]),e(w,[2,35]),e(zt,[2,25]),e(zt,[2,26],{12:[1,138]}),e(zt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:function(_,x){if(x.recoverable)this.trace(_);else{var m=new Error(_);throw m.hash=x,m}},parse:function(_){var x=this,m=[0],g=[],T=[null],u=[],Tt=this.table,y="",Et=0,se=0,Ee=2,ae=1,ve=u.slice.call(arguments,1),D=Object.create(this.lexer),vt={yy:{}};for(var Qt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Qt)&&(vt.yy[Qt]=this.yy[Qt]);D.setInput(_,vt.yy),vt.yy.lexer=D,vt.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Ht=D.yylloc;u.push(Ht);var ke=D.options&&D.options.ranges;typeof vt.yy.parseError=="function"?this.parseError=vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ae(){var X;return X=g.pop()||D.lex()||ae,typeof X!="number"&&(X instanceof Array&&(g=X,X=g.pop()),X=x.symbols_[X]||X),X}for(var M,kt,N,qt,Ct={},Mt,z,re,Lt;;){if(kt=m[m.length-1],this.defaultActions[kt]?N=this.defaultActions[kt]:((M===null||typeof M>"u")&&(M=Ae()),N=Tt[kt]&&Tt[kt][M]),typeof N>"u"||!N.length||!N[0]){var Gt="";Lt=[];for(Mt in Tt[kt])this.terminals_[Mt]&&Mt>Ee&&Lt.push("'"+this.terminals_[Mt]+"'");D.showPosition?Gt="Parse error on line "+(Et+1)+`: `+D.showPosition()+` Expecting `+Lt.join(", ")+", got '"+(this.terminals_[M]||M)+"'":Gt="Parse error on line "+(Et+1)+": Unexpected "+(M==ae?"end of input":"'"+(this.terminals_[M]||M)+"'"),this.parseError(Gt,{text:D.match,token:this.terminals_[M]||M,line:D.yylineno,loc:Ht,expected:Lt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+kt+", token: "+M);switch(N[0]){case 1:m.push(M),T.push(D.yytext),u.push(D.yylloc),m.push(N[1]),M=null,se=D.yyleng,y=D.yytext,Et=D.yylineno,Ht=D.yylloc;break;case 2:if(z=this.productions_[N[1]][1],Ct.$=T[T.length-z],Ct._$={first_line:u[u.length-(z||1)].first_line,last_line:u[u.length-1].last_line,first_column:u[u.length-(z||1)].first_column,last_column:u[u.length-1].last_column},ke&&(Ct._$.range=[u[u.length-(z||1)].range[0],u[u.length-1].range[1]]),qt=this.performAction.apply(Ct,[y,se,Et,vt.yy,N[1],T,u].concat(ve)),typeof qt<"u")return qt;z&&(m=m.slice(0,-1*z*2),T=T.slice(0,-1*z),u=u.slice(0,-1*z)),m.push(this.productions_[N[1]][0]),T.push(Ct.$),u.push(Ct._$),re=Tt[m[m.length-2]][m[m.length-1]],m.push(re);break;case 3:return!0}}return!0}},me=function(){var bt={EOF:1,parseError:function(x,m){if(this.yy.parser)this.yy.parser.parseError(x,m);else throw new Error(x)},setInput:function(_,x){return this.yy=x||this.yy||{},this._input=_,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var _=this._input[0];this.yytext+=_,this.yyleng++,this.offset++,this.match+=_,this.matched+=_;var x=_.match(/(?:\r\n?|\n).*/g);return x?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_},unput:function(_){var x=_.length,m=_.split(/(?:\r\n?|\n)/g);this._input=_+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-x),this.offset-=x;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1&&(this.yylineno-=m.length-1);var T=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===g.length?this.yylloc.first_column:0)+g[g.length-m.length].length-m[0].length:this.yylloc.first_column-x},this.options.ranges&&(this.yylloc.range=[T[0],T[0]+this.yyleng-x]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(_){this.unput(this.match.slice(_))},pastInput:function(){var _=this.matched.substr(0,this.matched.length-this.match.length);return(_.length>20?"...":"")+_.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var _=this.match;return _.length<20&&(_+=this._input.substr(0,20-_.length)),(_.substr(0,20)+(_.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var _=this.pastInput(),x=new Array(_.length+1).join("-");return _+this.upcomingInput()+` diff --git a/_nuxt/classDiagram-48ab76fb.5c6TuKe5.js b/_nuxt/classDiagram-48ab76fb.IXDIkmEp.js similarity index 97% rename from _nuxt/classDiagram-48ab76fb.5c6TuKe5.js rename to _nuxt/classDiagram-48ab76fb.IXDIkmEp.js index e4dc1eccdf..e39b5bc7cb 100644 --- a/_nuxt/classDiagram-48ab76fb.5c6TuKe5.js +++ b/_nuxt/classDiagram-48ab76fb.IXDIkmEp.js @@ -1,2 +1,2 @@ -import{p as A,d as S,s as G}from"./styles-4ba6ed67.fA2HbVXa.js";import{c as v,l as y,h as B,i as W,ap as $,z as M,as as I}from"./mermaid-934d9bea.GjCu814R.js";import{G as O,l as P}from"./layout.cBG5TzxH.js";import{l as X}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";let H=0;const Y=function(i,a,t,o,p){const g=function(e){switch(e){case p.db.relationType.AGGREGATION:return"aggregation";case p.db.relationType.EXTENSION:return"extension";case p.db.relationType.COMPOSITION:return"composition";case p.db.relationType.DEPENDENCY:return"dependency";case p.db.relationType.LOLLIPOP:return"lollipop"}};a.points=a.points.filter(e=>!Number.isNaN(e.y));const s=a.points,c=X().x(function(e){return e.x}).y(function(e){return e.y}).curve($),n=i.append("path").attr("d",c(s)).attr("id","edge"+H).attr("class","relation");let r="";o.arrowMarkerAbsolute&&(r=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,r=r.replace(/\(/g,"\\("),r=r.replace(/\)/g,"\\)")),t.relation.lineType==1&&n.attr("class","relation dashed-line"),t.relation.lineType==10&&n.attr("class","relation dotted-line"),t.relation.type1!=="none"&&n.attr("marker-start","url("+r+"#"+g(t.relation.type1)+"Start)"),t.relation.type2!=="none"&&n.attr("marker-end","url("+r+"#"+g(t.relation.type2)+"End)");let f,h;const x=a.points.length;let b=M.calcLabelPosition(a.points);f=b.x,h=b.y;let u,m,w,k;if(x%2!==0&&x>1){let e=M.calcCardinalityPosition(t.relation.type1!=="none",a.points,a.points[0]),d=M.calcCardinalityPosition(t.relation.type2!=="none",a.points,a.points[x-1]);y.debug("cardinality_1_point "+JSON.stringify(e)),y.debug("cardinality_2_point "+JSON.stringify(d)),u=e.x,m=e.y,w=d.x,k=d.y}if(t.title!==void 0){const e=i.append("g").attr("class","classLabel"),d=e.append("text").attr("class","label").attr("x",f).attr("y",h).attr("fill","red").attr("text-anchor","middle").text(t.title);window.label=d;const l=d.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",l.x-o.padding/2).attr("y",l.y-o.padding/2).attr("width",l.width+o.padding).attr("height",l.height+o.padding)}y.info("Rendering relation "+JSON.stringify(t)),t.relationTitle1!==void 0&&t.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",u).attr("y",m).attr("fill","black").attr("font-size","6").text(t.relationTitle1),t.relationTitle2!==void 0&&t.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",w).attr("y",k).attr("fill","black").attr("font-size","6").text(t.relationTitle2),H++},J=function(i,a,t,o){y.debug("Rendering class ",a,t);const p=a.id,g={id:p,label:a.id,width:0,height:0},s=i.append("g").attr("id",o.db.lookUpDomId(p)).attr("class","classGroup");let c;a.link?c=s.append("svg:a").attr("xlink:href",a.link).attr("target",a.linkTarget).append("text").attr("y",t.textHeight+t.padding).attr("x",0):c=s.append("text").attr("y",t.textHeight+t.padding).attr("x",0);let n=!0;a.annotations.forEach(function(d){const l=c.append("tspan").text("«"+d+"»");n||l.attr("dy",t.textHeight),n=!1});let r=C(a);const f=c.append("tspan").text(r).attr("class","title");n||f.attr("dy",t.textHeight);const h=c.node().getBBox().height;let x,b,u;if(a.members.length>0){x=s.append("line").attr("x1",0).attr("y1",t.padding+h+t.dividerMargin/2).attr("y2",t.padding+h+t.dividerMargin/2);const d=s.append("text").attr("x",t.padding).attr("y",h+t.dividerMargin+t.textHeight).attr("fill","white").attr("class","classText");n=!0,a.members.forEach(function(l){_(d,l,n,t),n=!1}),b=d.node().getBBox()}if(a.methods.length>0){u=s.append("line").attr("x1",0).attr("y1",t.padding+h+t.dividerMargin+b.height).attr("y2",t.padding+h+t.dividerMargin+b.height);const d=s.append("text").attr("x",t.padding).attr("y",h+2*t.dividerMargin+b.height+t.textHeight).attr("fill","white").attr("class","classText");n=!0,a.methods.forEach(function(l){_(d,l,n,t),n=!1})}const m=s.node().getBBox();var w=" ";a.cssClasses.length>0&&(w=w+a.cssClasses.join(" "));const e=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",m.width+2*t.padding).attr("height",m.height+t.padding+.5*t.dividerMargin).attr("class",w).node().getBBox().width;return c.node().childNodes.forEach(function(d){d.setAttribute("x",(e-d.getBBox().width)/2)}),a.tooltip&&c.insert("title").text(a.tooltip),x&&x.attr("x2",e),u&&u.attr("x2",e),g.width=e,g.height=m.height+t.padding+.5*t.dividerMargin,g},C=function(i){let a=i.id;return i.type&&(a+="<"+I(i.type)+">"),a},Z=function(i,a,t,o){y.debug("Rendering note ",a,t);const p=a.id,g={id:p,text:a.text,width:0,height:0},s=i.append("g").attr("id",p).attr("class","classGroup");let c=s.append("text").attr("y",t.textHeight+t.padding).attr("x",0);const n=JSON.parse(`"${a.text}"`).split(` +import{p as A,d as S,s as G}from"./styles-4ba6ed67.oBMPGM8a.js";import{c as v,l as y,h as B,i as W,ap as $,z as M,as as I}from"./mermaid-934d9bea.JP-6_YN_.js";import{G as O,l as P}from"./layout.v3y_H6P2.js";import{l as X}from"./line.uArpYtMu.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";let H=0;const Y=function(i,a,t,o,p){const g=function(e){switch(e){case p.db.relationType.AGGREGATION:return"aggregation";case p.db.relationType.EXTENSION:return"extension";case p.db.relationType.COMPOSITION:return"composition";case p.db.relationType.DEPENDENCY:return"dependency";case p.db.relationType.LOLLIPOP:return"lollipop"}};a.points=a.points.filter(e=>!Number.isNaN(e.y));const s=a.points,c=X().x(function(e){return e.x}).y(function(e){return e.y}).curve($),n=i.append("path").attr("d",c(s)).attr("id","edge"+H).attr("class","relation");let r="";o.arrowMarkerAbsolute&&(r=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,r=r.replace(/\(/g,"\\("),r=r.replace(/\)/g,"\\)")),t.relation.lineType==1&&n.attr("class","relation dashed-line"),t.relation.lineType==10&&n.attr("class","relation dotted-line"),t.relation.type1!=="none"&&n.attr("marker-start","url("+r+"#"+g(t.relation.type1)+"Start)"),t.relation.type2!=="none"&&n.attr("marker-end","url("+r+"#"+g(t.relation.type2)+"End)");let f,h;const x=a.points.length;let b=M.calcLabelPosition(a.points);f=b.x,h=b.y;let u,m,w,k;if(x%2!==0&&x>1){let e=M.calcCardinalityPosition(t.relation.type1!=="none",a.points,a.points[0]),d=M.calcCardinalityPosition(t.relation.type2!=="none",a.points,a.points[x-1]);y.debug("cardinality_1_point "+JSON.stringify(e)),y.debug("cardinality_2_point "+JSON.stringify(d)),u=e.x,m=e.y,w=d.x,k=d.y}if(t.title!==void 0){const e=i.append("g").attr("class","classLabel"),d=e.append("text").attr("class","label").attr("x",f).attr("y",h).attr("fill","red").attr("text-anchor","middle").text(t.title);window.label=d;const l=d.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",l.x-o.padding/2).attr("y",l.y-o.padding/2).attr("width",l.width+o.padding).attr("height",l.height+o.padding)}y.info("Rendering relation "+JSON.stringify(t)),t.relationTitle1!==void 0&&t.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",u).attr("y",m).attr("fill","black").attr("font-size","6").text(t.relationTitle1),t.relationTitle2!==void 0&&t.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",w).attr("y",k).attr("fill","black").attr("font-size","6").text(t.relationTitle2),H++},J=function(i,a,t,o){y.debug("Rendering class ",a,t);const p=a.id,g={id:p,label:a.id,width:0,height:0},s=i.append("g").attr("id",o.db.lookUpDomId(p)).attr("class","classGroup");let c;a.link?c=s.append("svg:a").attr("xlink:href",a.link).attr("target",a.linkTarget).append("text").attr("y",t.textHeight+t.padding).attr("x",0):c=s.append("text").attr("y",t.textHeight+t.padding).attr("x",0);let n=!0;a.annotations.forEach(function(d){const l=c.append("tspan").text("«"+d+"»");n||l.attr("dy",t.textHeight),n=!1});let r=C(a);const f=c.append("tspan").text(r).attr("class","title");n||f.attr("dy",t.textHeight);const h=c.node().getBBox().height;let x,b,u;if(a.members.length>0){x=s.append("line").attr("x1",0).attr("y1",t.padding+h+t.dividerMargin/2).attr("y2",t.padding+h+t.dividerMargin/2);const d=s.append("text").attr("x",t.padding).attr("y",h+t.dividerMargin+t.textHeight).attr("fill","white").attr("class","classText");n=!0,a.members.forEach(function(l){_(d,l,n,t),n=!1}),b=d.node().getBBox()}if(a.methods.length>0){u=s.append("line").attr("x1",0).attr("y1",t.padding+h+t.dividerMargin+b.height).attr("y2",t.padding+h+t.dividerMargin+b.height);const d=s.append("text").attr("x",t.padding).attr("y",h+2*t.dividerMargin+b.height+t.textHeight).attr("fill","white").attr("class","classText");n=!0,a.methods.forEach(function(l){_(d,l,n,t),n=!1})}const m=s.node().getBBox();var w=" ";a.cssClasses.length>0&&(w=w+a.cssClasses.join(" "));const e=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",m.width+2*t.padding).attr("height",m.height+t.padding+.5*t.dividerMargin).attr("class",w).node().getBBox().width;return c.node().childNodes.forEach(function(d){d.setAttribute("x",(e-d.getBBox().width)/2)}),a.tooltip&&c.insert("title").text(a.tooltip),x&&x.attr("x2",e),u&&u.attr("x2",e),g.width=e,g.height=m.height+t.padding+.5*t.dividerMargin,g},C=function(i){let a=i.id;return i.type&&(a+="<"+I(i.type)+">"),a},Z=function(i,a,t,o){y.debug("Rendering note ",a,t);const p=a.id,g={id:p,text:a.text,width:0,height:0},s=i.append("g").attr("id",p).attr("class","classGroup");let c=s.append("text").attr("y",t.textHeight+t.padding).attr("x",0);const n=JSON.parse(`"${a.text}"`).split(` `);n.forEach(function(x){y.debug(`Adding line: ${x}`),c.append("tspan").text(x).attr("class","title").attr("dy",t.textHeight)});const r=s.node().getBBox(),h=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",r.width+2*t.padding).attr("height",r.height+n.length*t.textHeight+t.padding+.5*t.dividerMargin).node().getBBox().width;return c.node().childNodes.forEach(function(x){x.setAttribute("x",(h-x.getBBox().width)/2)}),g.width=h,g.height=r.height+n.length*t.textHeight+t.padding+.5*t.dividerMargin,g},_=function(i,a,t,o){const{displayText:p,cssStyle:g}=a.getDisplayDetails(),s=i.append("tspan").attr("x",o.padding).text(p);g!==""&&s.attr("style",a.cssStyle),t||s.attr("dy",o.textHeight)},N={getClassTitleString:C,drawClass:J,drawEdge:Y,drawNote:Z};let T={};const E=20,L=function(i){const a=Object.entries(T).find(t=>t[1].label===i);if(a)return a[0]},R=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},z=function(i,a,t,o){const p=v().class;T={},y.info("Rendering diagram "+i);const g=v().securityLevel;let s;g==="sandbox"&&(s=B("#i"+a));const c=g==="sandbox"?B(s.nodes()[0].contentDocument.body):B("body"),n=c.select(`[id='${a}']`);R(n);const r=new O({multigraph:!0});r.setGraph({isMultiGraph:!0}),r.setDefaultEdgeLabel(function(){return{}});const f=o.db.getClasses(),h=Object.keys(f);for(const e of h){const d=f[e],l=N.drawClass(n,d,p,o);T[l.id]=l,r.setNode(l.id,l),y.info("Org height: "+l.height)}o.db.getRelations().forEach(function(e){y.info("tjoho"+L(e.id1)+L(e.id2)+JSON.stringify(e)),r.setEdge(L(e.id1),L(e.id2),{relation:e},e.title||"DEFAULT")}),o.db.getNotes().forEach(function(e){y.debug(`Adding note: ${JSON.stringify(e)}`);const d=N.drawNote(n,e,p,o);T[d.id]=d,r.setNode(d.id,d),e.class&&e.class in f&&r.setEdge(e.id,L(e.class),{relation:{id1:e.id,id2:e.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),P(r),r.nodes().forEach(function(e){e!==void 0&&r.node(e)!==void 0&&(y.debug("Node "+e+": "+JSON.stringify(r.node(e))),c.select("#"+(o.db.lookUpDomId(e)||e)).attr("transform","translate("+(r.node(e).x-r.node(e).width/2)+","+(r.node(e).y-r.node(e).height/2)+" )"))}),r.edges().forEach(function(e){e!==void 0&&r.edge(e)!==void 0&&(y.debug("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(r.edge(e))),N.drawEdge(n,r.edge(e),r.edge(e).relation,p,o))});const u=n.node().getBBox(),m=u.width+E*2,w=u.height+E*2;W(n,w,m,p.useMaxWidth);const k=`${u.x-E} ${u.y-E} ${m} ${w}`;y.debug(`viewBox ${k}`),n.attr("viewBox",k)},F={draw:z},et={parser:A,db:S,renderer:F,styles:G,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,S.clear()}};export{et as diagram}; diff --git a/_nuxt/classDiagram-v2-8ecb0bfc.5G0StPuQ.js b/_nuxt/classDiagram-v2-8ecb0bfc.eoEwq_qQ.js similarity index 92% rename from _nuxt/classDiagram-v2-8ecb0bfc.5G0StPuQ.js rename to _nuxt/classDiagram-v2-8ecb0bfc.eoEwq_qQ.js index 3427174015..f46caa065d 100644 --- a/_nuxt/classDiagram-v2-8ecb0bfc.5G0StPuQ.js +++ b/_nuxt/classDiagram-v2-8ecb0bfc.eoEwq_qQ.js @@ -1,2 +1,2 @@ -import{p as M,d as N,s as $}from"./styles-4ba6ed67.fA2HbVXa.js";import{l as d,c,h as w,z as R,u as B,t as E,p as _,q as G,j as C}from"./mermaid-934d9bea.GjCu814R.js";import{G as z}from"./layout.cBG5TzxH.js";import{r as q}from"./index-67a42d7d.xm4RvesR.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./edges-80f1ebb6.h90W1bSR.js";import"./createText-aebacdfe.b7sMoTCr.js";import"./line.yVnlcbB_.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const S=s=>C.sanitizeText(s,c());let k={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const P=function(s,t,y,n){const e=Object.keys(s);d.info("keys:",e),d.info(s),e.forEach(function(i){var o,r;const l=s[i],p={shape:"rect",id:l.id,domId:l.domId,labelText:S(l.id),labelStyle:"",style:"fill: none; stroke: black",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};t.setNode(l.id,p),A(l.classes,t,y,n,l.id),d.info("setNode",p)})},A=function(s,t,y,n,e){const i=Object.keys(s);d.info("keys:",i),d.info(s),i.filter(o=>s[o].parent==e).forEach(function(o){var r,l;const a=s[o],p=a.cssClasses.join(" "),f={labelStyle:"",style:""},h=a.label??a.id,u=0,b={labelStyle:f.labelStyle,shape:"class_box",labelText:S(h),classData:a,rx:u,ry:u,class:p,style:f.style,id:a.id,domId:a.domId,tooltip:n.db.getTooltip(a.id,e)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:((r=c().flowchart)==null?void 0:r.padding)??((l=c().class)==null?void 0:l.padding)};t.setNode(a.id,b),e&&t.setParent(a.id,e),d.info("setNode",b)})},F=function(s,t,y,n){d.info(s),s.forEach(function(e,i){var o,r;const l=e,a="",p={labelStyle:"",style:""},f=l.text,h=0,m={labelStyle:p.labelStyle,shape:"note",labelText:S(f),noteData:l,rx:h,ry:h,class:a,style:p.style,id:l.id,domId:l.id,tooltip:"",type:"note",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};if(t.setNode(l.id,m),d.info("setNode",m),!l.class||!(l.class in n))return;const b=y+i,g={id:`edgeNote${b}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:E(k.curve,_)};t.setEdge(l.id,l.class,g,b)})},H=function(s,t){const y=c().flowchart;let n=0;s.forEach(function(e){var i;n++;const o={classes:"relation",pattern:e.relation.lineType==1?"dashed":"solid",id:"id"+n,arrowhead:e.type==="arrow_open"?"none":"normal",startLabelRight:e.relationTitle1==="none"?"":e.relationTitle1,endLabelLeft:e.relationTitle2==="none"?"":e.relationTitle2,arrowTypeStart:D(e.relation.type1),arrowTypeEnd:D(e.relation.type2),style:"fill:none",labelStyle:"",curve:E(y==null?void 0:y.curve,_)};if(d.info(o,e),e.style!==void 0){const r=G(e.style);o.style=r.style,o.labelStyle=r.labelStyle}e.text=e.title,e.text===void 0?e.style!==void 0&&(o.arrowheadStyle="fill: #333"):(o.arrowheadStyle="fill: #333",o.labelpos="c",((i=c().flowchart)==null?void 0:i.htmlLabels)??c().htmlLabels?(o.labelType="html",o.label=''+e.text+""):(o.labelType="text",o.label=e.text.replace(C.lineBreakRegex,` +import{p as M,d as N,s as $}from"./styles-4ba6ed67.oBMPGM8a.js";import{l as d,c,h as w,z as R,u as B,t as E,p as _,q as G,j as C}from"./mermaid-934d9bea.JP-6_YN_.js";import{G as z}from"./layout.v3y_H6P2.js";import{r as q}from"./index-67a42d7d.k58ohfnG.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./edges-80f1ebb6.gtortKGL.js";import"./createText-aebacdfe.QPUQ3eAz.js";import"./line.uArpYtMu.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const S=s=>C.sanitizeText(s,c());let k={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const P=function(s,t,y,n){const e=Object.keys(s);d.info("keys:",e),d.info(s),e.forEach(function(i){var o,r;const l=s[i],p={shape:"rect",id:l.id,domId:l.domId,labelText:S(l.id),labelStyle:"",style:"fill: none; stroke: black",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};t.setNode(l.id,p),A(l.classes,t,y,n,l.id),d.info("setNode",p)})},A=function(s,t,y,n,e){const i=Object.keys(s);d.info("keys:",i),d.info(s),i.filter(o=>s[o].parent==e).forEach(function(o){var r,l;const a=s[o],p=a.cssClasses.join(" "),f={labelStyle:"",style:""},h=a.label??a.id,u=0,b={labelStyle:f.labelStyle,shape:"class_box",labelText:S(h),classData:a,rx:u,ry:u,class:p,style:f.style,id:a.id,domId:a.domId,tooltip:n.db.getTooltip(a.id,e)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:((r=c().flowchart)==null?void 0:r.padding)??((l=c().class)==null?void 0:l.padding)};t.setNode(a.id,b),e&&t.setParent(a.id,e),d.info("setNode",b)})},F=function(s,t,y,n){d.info(s),s.forEach(function(e,i){var o,r;const l=e,a="",p={labelStyle:"",style:""},f=l.text,h=0,m={labelStyle:p.labelStyle,shape:"note",labelText:S(f),noteData:l,rx:h,ry:h,class:a,style:p.style,id:l.id,domId:l.id,tooltip:"",type:"note",padding:((o=c().flowchart)==null?void 0:o.padding)??((r=c().class)==null?void 0:r.padding)};if(t.setNode(l.id,m),d.info("setNode",m),!l.class||!(l.class in n))return;const b=y+i,g={id:`edgeNote${b}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:E(k.curve,_)};t.setEdge(l.id,l.class,g,b)})},H=function(s,t){const y=c().flowchart;let n=0;s.forEach(function(e){var i;n++;const o={classes:"relation",pattern:e.relation.lineType==1?"dashed":"solid",id:"id"+n,arrowhead:e.type==="arrow_open"?"none":"normal",startLabelRight:e.relationTitle1==="none"?"":e.relationTitle1,endLabelLeft:e.relationTitle2==="none"?"":e.relationTitle2,arrowTypeStart:D(e.relation.type1),arrowTypeEnd:D(e.relation.type2),style:"fill:none",labelStyle:"",curve:E(y==null?void 0:y.curve,_)};if(d.info(o,e),e.style!==void 0){const r=G(e.style);o.style=r.style,o.labelStyle=r.labelStyle}e.text=e.title,e.text===void 0?e.style!==void 0&&(o.arrowheadStyle="fill: #333"):(o.arrowheadStyle="fill: #333",o.labelpos="c",((i=c().flowchart)==null?void 0:i.htmlLabels)??c().htmlLabels?(o.labelType="html",o.label=''+e.text+""):(o.labelType="text",o.label=e.text.replace(C.lineBreakRegex,` `),e.style===void 0&&(o.style=o.style||"stroke: #333; stroke-width: 1.5px;fill:none"),o.labelStyle=o.labelStyle.replace("color:","fill:"))),t.setEdge(e.id1,e.id2,o,n)})},V=function(s){k={...k,...s}},W=async function(s,t,y,n){d.info("Drawing class - ",t);const e=c().flowchart??c().class,i=c().securityLevel;d.info("config:",e);const o=(e==null?void 0:e.nodeSpacing)??50,r=(e==null?void 0:e.rankSpacing)??50,l=new z({multigraph:!0,compound:!0}).setGraph({rankdir:n.db.getDirection(),nodesep:o,ranksep:r,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),a=n.db.getNamespaces(),p=n.db.getClasses(),f=n.db.getRelations(),h=n.db.getNotes();d.info(f),P(a,l,t,n),A(p,l,t,n),H(f,l),F(h,l,f.length+1,p);let u;i==="sandbox"&&(u=w("#i"+t));const m=i==="sandbox"?w(u.nodes()[0].contentDocument.body):w("body"),b=m.select(`[id="${t}"]`),g=m.select("#"+t+" g");if(await q(g,l,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",t),R.insertTitle(b,"classTitleText",(e==null?void 0:e.titleTopMargin)??5,n.db.getDiagramTitle()),B(l,b,e==null?void 0:e.diagramPadding,e==null?void 0:e.useMaxWidth),!(e!=null&&e.htmlLabels)){const T=i==="sandbox"?u.nodes()[0].contentDocument:document,I=T.querySelectorAll('[id="'+t+'"] .edgeLabel .label');for(const x of I){const L=x.getBBox(),v=T.createElementNS("http://www.w3.org/2000/svg","rect");v.setAttribute("rx",0),v.setAttribute("ry",0),v.setAttribute("width",L.width),v.setAttribute("height",L.height),x.insertBefore(v,x.firstChild)}}};function D(s){let t;switch(s){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}const J={setConf:V,draw:W},le={parser:M,db:N,renderer:J,styles:$,init:s=>{s.class||(s.class={}),s.class.arrowMarkerAbsolute=s.arrowMarkerAbsolute,N.clear()}};export{le as diagram}; diff --git a/_nuxt/client-db.pr2ddds2.js b/_nuxt/client-db.4GqS-Rxy.js similarity index 99% rename from _nuxt/client-db.pr2ddds2.js rename to _nuxt/client-db.4GqS-Rxy.js index 7f05785247..b4de653368 100644 --- a/_nuxt/client-db.pr2ddds2.js +++ b/_nuxt/client-db.4GqS-Rxy.js @@ -1 +1 @@ -import{aj as _,aW as W,aX as j,aY as E,aZ as B,a_ as T,a$ as $,b0 as P,b1 as x,ay as k,ah as J,l as M,b2 as b,ak as U,aI as H,j as q}from"./entry.TEDHt2QA.js";import{c as G}from"./_commonjsHelpers.5-cIlDoe.js";const Z="memory",F=()=>{const r=new Map;return{name:Z,options:{},hasItem(t){return r.has(t)},getItem(t){return r.get(t)??null},getItemRaw(t){return r.get(t)??null},setItem(t,n){r.set(t,n)},setItemRaw(t,n){r.set(t,n)},removeItem(t){r.delete(t)},getKeys(){return Array.from(r.keys())},clear(){r.clear()},dispose(){r.clear()}}};function V(r){return!r||typeof r.then!="function"?Promise.resolve(r):r}function p(r,...t){try{return V(r(...t))}catch(n){return Promise.reject(n)}}function X(r){const t=typeof r;return r===null||t!=="object"&&t!=="function"}function Q(r){const t=Object.getPrototypeOf(r);return!t||t.isPrototypeOf(Object)}function K(r){if(X(r))return String(r);if(Q(r)||Array.isArray(r))return JSON.stringify(r);if(typeof r.toJSON=="function")return K(r.toJSON());throw new Error("[unstorage] Cannot stringify value!")}function Y(){if(typeof Buffer===void 0)throw new TypeError("[unstorage] Buffer is not supported!")}const C="base64:";function ee(r){if(typeof r=="string")return r;Y();const t=Buffer.from(r).toString("base64");return C+t}function te(r){return typeof r!="string"||!r.startsWith(C)?r:(Y(),Buffer.from(r.slice(C.length),"base64"))}const re=["hasItem","getItem","getItemRaw","setItem","setItemRaw","removeItem","getMeta","setMeta","removeMeta","getKeys","clear","mount","unmount"];function ne(r,t){if(t=A(t),!t)return r;const n={...r};for(const a of re)n[a]=(l="",...u)=>r[a](t+l,...u);return n.getKeys=(a="",...l)=>r.getKeys(t+a,...l).then(u=>u.map(o=>o.slice(t.length))),n}function d(r){return r?r.split("?")[0].replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""):""}function ie(...r){return d(r.join(":"))}function A(r){return r=d(r),r?r+":":""}const ae="memory",se=()=>{const r=new Map;return{name:ae,options:{},hasItem(t){return r.has(t)},getItem(t){return r.get(t)??null},getItemRaw(t){return r.get(t)??null},setItem(t,n){r.set(t,n)},setItemRaw(t,n){r.set(t,n)},removeItem(t){r.delete(t)},getKeys(){return Array.from(r.keys())},clear(){r.clear()},dispose(){r.clear()}}};function oe(r={}){const t={mounts:{"":r.driver||se()},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}},n=e=>{for(const i of t.mountpoints)if(e.startsWith(i))return{base:i,relativeKey:e.slice(i.length),driver:t.mounts[i]};return{base:"",relativeKey:e,driver:t.mounts[""]}},a=(e,i)=>t.mountpoints.filter(s=>s.startsWith(e)||i&&e.startsWith(s)).map(s=>({relativeBase:e.length>s.length?e.slice(s.length):void 0,mountpoint:s,driver:t.mounts[s]})),l=(e,i)=>{if(t.watching){i=d(i);for(const s of t.watchListeners)s(e,i)}},u=async()=>{if(!t.watching){t.watching=!0;for(const e in t.mounts)t.unwatch[e]=await D(t.mounts[e],l,e)}},o=async()=>{if(t.watching){for(const e in t.unwatch)await t.unwatch[e]();t.unwatch={},t.watching=!1}},h=(e,i,s)=>{const c=new Map,f=m=>{let y=c.get(m.base);return y||(y={driver:m.driver,base:m.base,items:[]},c.set(m.base,y)),y};for(const m of e){const y=typeof m=="string",v=d(y?m:m.key),w=y?void 0:m.value,I=y||!m.options?i:{...i,...m.options},O=n(v);f(O).items.push({key:v,value:w,relativeKey:O.relativeKey,options:I})}return Promise.all([...c.values()].map(m=>s(m))).then(m=>m.flat())},g={hasItem(e,i={}){e=d(e);const{relativeKey:s,driver:c}=n(e);return p(c.hasItem,s,i)},getItem(e,i={}){e=d(e);const{relativeKey:s,driver:c}=n(e);return p(c.getItem,s,i).then(f=>_(f))},getItems(e,i){return h(e,i,s=>s.driver.getItems?p(s.driver.getItems,s.items.map(c=>({key:c.relativeKey,options:c.options})),i).then(c=>c.map(f=>({key:ie(s.base,f.key),value:_(f.value)}))):Promise.all(s.items.map(c=>p(s.driver.getItem,c.relativeKey,c.options).then(f=>({key:c.key,value:_(f)})))))},getItemRaw(e,i={}){e=d(e);const{relativeKey:s,driver:c}=n(e);return c.getItemRaw?p(c.getItemRaw,s,i):p(c.getItem,s,i).then(f=>te(f))},async setItem(e,i,s={}){if(i===void 0)return g.removeItem(e);e=d(e);const{relativeKey:c,driver:f}=n(e);f.setItem&&(await p(f.setItem,c,K(i),s),f.watch||l("update",e))},async setItems(e,i){await h(e,i,async s=>{s.driver.setItems&&await p(s.driver.setItems,s.items.map(c=>({key:c.relativeKey,value:K(c.value),options:c.options})),i),s.driver.setItem&&await Promise.all(s.items.map(c=>p(s.driver.setItem,c.relativeKey,K(c.value),c.options)))})},async setItemRaw(e,i,s={}){if(i===void 0)return g.removeItem(e,s);e=d(e);const{relativeKey:c,driver:f}=n(e);if(f.setItemRaw)await p(f.setItemRaw,c,i,s);else if(f.setItem)await p(f.setItem,c,ee(i),s);else return;f.watch||l("update",e)},async removeItem(e,i={}){typeof i=="boolean"&&(i={removeMeta:i}),e=d(e);const{relativeKey:s,driver:c}=n(e);c.removeItem&&(await p(c.removeItem,s,i),(i.removeMeta||i.removeMata)&&await p(c.removeItem,s+"$",i),c.watch||l("remove",e))},async getMeta(e,i={}){typeof i=="boolean"&&(i={nativeOnly:i}),e=d(e);const{relativeKey:s,driver:c}=n(e),f=Object.create(null);if(c.getMeta&&Object.assign(f,await p(c.getMeta,s,i)),!i.nativeOnly){const m=await p(c.getItem,s+"$",i).then(y=>_(y));m&&typeof m=="object"&&(typeof m.atime=="string"&&(m.atime=new Date(m.atime)),typeof m.mtime=="string"&&(m.mtime=new Date(m.mtime)),Object.assign(f,m))}return f},setMeta(e,i,s={}){return this.setItem(e+"$",i,s)},removeMeta(e,i={}){return this.removeItem(e+"$",i)},async getKeys(e,i={}){e=A(e);const s=a(e,!0);let c=[];const f=[];for(const m of s){const v=(await p(m.driver.getKeys,m.relativeBase,i)).map(w=>m.mountpoint+d(w)).filter(w=>!c.some(I=>w.startsWith(I)));f.push(...v),c=[m.mountpoint,...c.filter(w=>!w.startsWith(m.mountpoint))]}return e?f.filter(m=>m.startsWith(e)&&!m.endsWith("$")):f.filter(m=>!m.endsWith("$"))},async clear(e,i={}){e=A(e),await Promise.all(a(e,!1).map(async s=>{if(s.driver.clear)return p(s.driver.clear,s.relativeBase,i);if(s.driver.removeItem){const c=await s.driver.getKeys(s.relativeBase||"",i);return Promise.all(c.map(f=>s.driver.removeItem(f,i)))}}))},async dispose(){await Promise.all(Object.values(t.mounts).map(e=>L(e)))},async watch(e){return await u(),t.watchListeners.push(e),async()=>{t.watchListeners=t.watchListeners.filter(i=>i!==e),t.watchListeners.length===0&&await o()}},async unwatch(){t.watchListeners=[],await o()},mount(e,i){if(e=A(e),e&&t.mounts[e])throw new Error(`already mounted at ${e}`);return e&&(t.mountpoints.push(e),t.mountpoints.sort((s,c)=>c.length-s.length)),t.mounts[e]=i,t.watching&&Promise.resolve(D(i,l,e)).then(s=>{t.unwatch[e]=s}).catch(console.error),g},async unmount(e,i=!0){e=A(e),!(!e||!t.mounts[e])&&(t.watching&&e in t.unwatch&&(t.unwatch[e](),delete t.unwatch[e]),i&&await L(t.mounts[e]),t.mountpoints=t.mountpoints.filter(s=>s!==e),delete t.mounts[e])},getMount(e=""){e=d(e)+":";const i=n(e);return{driver:i.driver,base:i.base}},getMounts(e="",i={}){return e=d(e),a(e,i.parents).map(c=>({driver:c.driver,base:c.mountpoint}))}};return g}function D(r,t,n){return r.watch?r.watch((a,l)=>t(a,n+l)):()=>{}}async function L(r){typeof r.dispose=="function"&&await p(r.dispose)}function ue(r={}){const t=ce(n,r.operators);function n(a,l){return typeof l!="object"||l instanceof RegExp?t.$eq(a,l):Object.keys(l||{}).every(u=>{const o=l[u];if(u.startsWith("$")&&t[u]){const h=t[u];return typeof h=="function"?h(a,o):!1}return n(W(a,u),o)})}return n}function ce(r,t={}){return{$match:(n,a)=>r(n,a),$eq:(n,a)=>a instanceof RegExp?a.test(n):n===a,$ne:(n,a)=>a instanceof RegExp?!a.test(n):n!==a,$not:(n,a)=>!r(n,a),$and:(n,a)=>(j(a,"$and requires an array as condition"),a.every(l=>r(n,l))),$or:(n,a)=>(j(a,"$or requires an array as condition"),a.some(l=>r(n,l))),$in:(n,a)=>E(a).some(l=>Array.isArray(n)?r(n,{$contains:l}):r(n,l)),$contains:(n,a)=>(n=Array.isArray(n)?n:String(n),E(a).every(l=>n.includes(l))),$icontains:(n,a)=>{if(typeof a!="string")throw new TypeError("$icontains requires a string, use $contains instead");return n=String(n).toLocaleLowerCase(),E(a).every(l=>n.includes(l.toLocaleLowerCase()))},$containsAny:(n,a)=>(j(a,"$containsAny requires an array as condition"),n=Array.isArray(n)?n:String(n),a.some(l=>n.includes(l))),$exists:(n,a)=>a?typeof n<"u":typeof n>"u",$type:(n,a)=>typeof n===String(a),$regex:(n,a)=>{if(!(a instanceof RegExp)){const l=String(a).match(/\/(.*)\/([dgimsuy]*)$/);a=l?new RegExp(l[1],l[2]||""):new RegExp(a)}return a.test(String(n||""))},$lt:(n,a)=>nn<=a,$gt:(n,a)=>n>a,$gte:(n,a)=>n>=a,...t||{}}}function le(r){const t=ue(),n=(u,{query:o,before:h,after:g})=>{const e=typeof o=="string"?{_path:o}:o,i=u.findIndex(c=>t(c,e));h=h??1,g=g??1;const s=new Array(h+g).fill(null,0);return i===-1?s:s.map((c,f)=>u[i-h+f+ +(f>=h)]||null)},a=[(u,o)=>{const h=u.result.filter(g=>E(o.where).every(e=>t(g,e)));return{...u,result:h,total:h.length}},(u,o)=>E(o.sort).forEach(h=>T(u.result,h)),function(o,h,g){var e;if(h.surround){let i=n(((e=o.result)==null?void 0:e.length)===1?g:o.result,h.surround);i=$(P(h.without))(i),i=$(x(h.only))(i),o.surround=i}return o}],l=[(u,o)=>{if(o.skip)return{...u,result:u.result.slice(o.skip),skip:o.skip}},(u,o)=>{if(o.limit)return{...u,result:u.result.slice(0,o.limit),limit:o.limit}},function(o,h,g){var e,i,s;if(h.dirConfig){const c=((e=o.result[0])==null?void 0:e._path)||((s=(i=h.where)==null?void 0:i.find(m=>m._path))==null?void 0:s._path),f=g.find(m=>m._path===k(c,"_dir"));f&&(o.dirConfig={_path:f._path,...P(["_"])(f)})}return o},(u,o)=>({...u,result:$(P(o.without))(u.result)}),(u,o)=>({...u,result:$(x(o.only))(u.result)})];return async u=>{const o=await r(),h=u.params(),g={result:o,limit:0,skip:0,total:o.length},e=a.reduce((s,c)=>c(s,h,o)||s,g);if(h.count)return{result:e.result.length};const i=l.reduce((s,c)=>c(s,h,o)||s,e);return h.first?{...B(["skip","limit","total"])(i),result:i.result[0]}:i}}function N(r){const t=le(r);return async n=>{var u;const a=n.params(),l=await t(n);return a.surround?l==null?void 0:l.surround:(l!=null&&l.dirConfig&&(l.result={_path:(u=l.dirConfig)==null?void 0:u._path,...l.result,_dir:l.dirConfig}),l==null?void 0:l.result)}}var fe={exports:{}};(function(r,t){(function(n,a,l){r.exports=l(),r.exports.default=l()})("slugify",G,function(){var n=JSON.parse(`{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ō":"O","ō":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","Ə":"E","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","ə":"e","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","ѝ":"u","џ":"dz","Ґ":"G","ґ":"g","Ғ":"GH","ғ":"gh","Қ":"KH","қ":"kh","Ң":"NG","ң":"ng","Ү":"UE","ү":"ue","Ұ":"U","ұ":"u","Һ":"H","һ":"h","Ә":"AE","ә":"ae","Ө":"OE","ө":"oe","Ա":"A","Բ":"B","Գ":"G","Դ":"D","Ե":"E","Զ":"Z","Է":"E'","Ը":"Y'","Թ":"T'","Ժ":"JH","Ի":"I","Լ":"L","Խ":"X","Ծ":"C'","Կ":"K","Հ":"H","Ձ":"D'","Ղ":"GH","Ճ":"TW","Մ":"M","Յ":"Y","Ն":"N","Շ":"SH","Չ":"CH","Պ":"P","Ջ":"J","Ռ":"R'","Ս":"S","Վ":"V","Տ":"T","Ր":"R","Ց":"C","Փ":"P'","Ք":"Q'","Օ":"O''","Ֆ":"F","և":"EV","ء":"a","آ":"aa","أ":"a","ؤ":"u","إ":"i","ئ":"e","ا":"a","ب":"b","ة":"h","ت":"t","ث":"th","ج":"j","ح":"h","خ":"kh","د":"d","ذ":"th","ر":"r","ز":"z","س":"s","ش":"sh","ص":"s","ض":"dh","ط":"t","ظ":"z","ع":"a","غ":"gh","ف":"f","ق":"q","ك":"k","ل":"l","م":"m","ن":"n","ه":"h","و":"w","ى":"a","ي":"y","ً":"an","ٌ":"on","ٍ":"en","َ":"a","ُ":"u","ِ":"e","ْ":"","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","پ":"p","چ":"ch","ژ":"zh","ک":"k","گ":"g","ی":"y","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ṣ":"S","ṣ":"s","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","–":"-","‘":"'","’":"'","“":"\\"","”":"\\"","„":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₸":"kazakhstani tenge","₹":"indian rupee","₺":"turkish lira","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial","ﻵ":"laa","ﻷ":"laa","ﻹ":"lai","ﻻ":"la"}`),a=JSON.parse('{"bg":{"Й":"Y","Ц":"Ts","Щ":"Sht","Ъ":"A","Ь":"Y","й":"y","ц":"ts","щ":"sht","ъ":"a","ь":"y"},"de":{"Ä":"AE","ä":"ae","Ö":"OE","ö":"oe","Ü":"UE","ü":"ue","ß":"ss","%":"prozent","&":"und","|":"oder","∑":"summe","∞":"unendlich","♥":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","¢":"centavos","£":"libras","¤":"moneda","₣":"francos","∑":"suma","∞":"infinito","♥":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","¢":"centime","£":"livre","¤":"devise","₣":"franc","∑":"somme","∞":"infini","♥":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","¢":"centavo","∑":"soma","£":"libra","∞":"infinito","♥":"amor"},"uk":{"И":"Y","и":"y","Й":"Y","й":"y","Ц":"Ts","ц":"ts","Х":"Kh","х":"kh","Щ":"Shch","щ":"shch","Г":"H","г":"h"},"vi":{"Đ":"D","đ":"d"},"da":{"Ø":"OE","ø":"oe","Å":"AA","å":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"større end"},"nb":{"&":"og","Å":"AA","Æ":"AE","Ø":"OE","å":"aa","æ":"ae","ø":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","Å":"AA","Ä":"AE","Ö":"OE","å":"aa","ä":"ae","ö":"oe"}}');function l(u,o){if(typeof u!="string")throw new Error("slugify: string argument expected");o=typeof o=="string"?{replacement:o}:o||{};var h=a[o.locale]||{},g=o.replacement===void 0?"-":o.replacement,e=o.trim===void 0?!0:o.trim,i=u.normalize().split("").reduce(function(s,c){var f=h[c];return f===void 0&&(f=n[c]),f===void 0&&(f=c),f===g&&(f=" "),s+f.replace(o.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"")},"");return o.strict&&(i=i.replace(/[^A-Za-z0-9\s]/g,"")),e&&(i=i.trim()),i=i.replace(/\s+/g,g),o.lower&&(i=i.toLowerCase()),i}return l.extend=function(u){Object.assign(n,u)},l})})(fe);const me=r=>r.split(/[\s-]/g).map(J).join(" ");function he(r,t){const{navigation:n}=M().public.content,a=u=>({...pe(["title",...n.fields])(u),...de(u==null?void 0:u.navigation)?u.navigation:{}}),l=r.sort((u,o)=>u._path.localeCompare(o._path)).reduce((u,o)=>{const h=o._path.substring(1).split("/"),g=o._id.split(":").slice(1),e=!!g[g.length-1].match(/([1-9][0-9]*\.)?index.md/g),i=f=>({title:f.title,_path:f._path,_file:f._file,children:[],...a(f),...f._draft?{_draft:!0}:{}}),s=i(o);if(e){const f=t[s._path];if(typeof(f==null?void 0:f.navigation)<"u"&&!(f!=null&&f.navigation))return u;if(o._path!=="/"){const m=i(o);s.children.push(m)}Object.assign(s,a(f))}return h.length===1?(u.push(s),u):(h.slice(0,-1).reduce((f,m,y)=>{const v="/"+h.slice(0,y+1).join("/"),w=t[v];if(typeof(w==null?void 0:w.navigation)<"u"&&!w.navigation)return[];let I=f.find(O=>O._path===v);return I||(I={title:me(m),_path:v,_file:o._file,children:[],...a(w)},f.push(I)),I.children},u).push(s),u)},[]);return z(l)}const ge=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function z(r){var n;const t=r.sort((a,l)=>ge.compare(a._file,l._file));for(const a of t)(n=a.children)!=null&&n.length?z(a.children):delete a.children,delete a._file;return r}function pe(r){return t=>(t=t||{},r&&r.length?r.filter(n=>typeof t[n]<"u").reduce((n,a)=>Object.assign(n,{[a]:t[a]}),{}):t)}function de(r){return Object.prototype.toString.call(r)==="[object Object]"}const ye=r=>H(r,M().public.content.api.baseURL),we=ne(oe({driver:F()}),"@content");function ve(r){async function t(){const n=new Set(await r.getKeys("cache:")),a=U().getPreviewToken();if(a){const u=await r.getItem(`${a}$`).then(g=>g||{});if(Array.isArray(u.ignoreSources)){const g=u.ignoreSources.map(e=>`cache:${e.trim()}:`);for(const e of n)g.some(i=>e.startsWith(i))&&n.delete(e)}const o=await r.getKeys(`${a}:`),h=await Promise.all(o.map(g=>r.getItem(g)));for(const g of h)n.delete(`cache:${g._id}`),g.__deleted||n.add(`${a}:${g._id}`)}return await Promise.all(Array.from(n).map(u=>r.getItem(u)))}return{storage:r,fetch:N(t),query:n=>b(N(t),{initialParams:n,legacy:!0})}}let R=null,S=null;async function Ie(){return S?await S:R||(S=Ae(),R=await S),R}async function Ae(){const r=q(),{content:t}=M().public,n=ve(we),a=await n.storage.getItem("integrity");if(t.integrity!==+(a||0)){const{contents:l,navigation:u}=await $fetch(ye(t.integrity?`cache.${t.integrity}.json`:"cache.json"));await Promise.all(l.map(o=>n.storage.setItem(`cache:${o._id}`,o))),await n.storage.setItem("navigation",u),await n.storage.setItem("integrity",t.integrity)}return await r.callHook("content:storage",n.storage),n}async function _e(r){const t=await Ie();if(!U().getPreviewToken()&&Object.keys(r||{}).length===0)return t.storage.getItem("navigation");const n=await t.query(r).where({_partial:!1,navigation:{$ne:!1}}).find(),l=(await t.query().where({_path:/\/_dir$/i,_partial:!0}).find()).reduce((u,o)=>{var g;((g=o.title)==null?void 0:g.toLowerCase())==="dir"&&(o.title=void 0);const h=o._path.split("/").slice(0,-1).join("/")||"/";return u[h]={...o,...o.body},u},{});return he(n,l)}export{we as contentStorage,ve as createDB,_e as generateNavigation,Ie as useContentDatabase}; +import{aj as _,aW as W,aX as j,aY as E,aZ as B,a_ as T,a$ as $,b0 as P,b1 as x,ay as k,ah as J,l as M,b2 as b,ak as U,aI as H,j as q}from"./entry.2w2g1VWZ.js";import{c as G}from"./_commonjsHelpers.5-cIlDoe.js";const Z="memory",F=()=>{const r=new Map;return{name:Z,options:{},hasItem(t){return r.has(t)},getItem(t){return r.get(t)??null},getItemRaw(t){return r.get(t)??null},setItem(t,n){r.set(t,n)},setItemRaw(t,n){r.set(t,n)},removeItem(t){r.delete(t)},getKeys(){return Array.from(r.keys())},clear(){r.clear()},dispose(){r.clear()}}};function V(r){return!r||typeof r.then!="function"?Promise.resolve(r):r}function p(r,...t){try{return V(r(...t))}catch(n){return Promise.reject(n)}}function X(r){const t=typeof r;return r===null||t!=="object"&&t!=="function"}function Q(r){const t=Object.getPrototypeOf(r);return!t||t.isPrototypeOf(Object)}function K(r){if(X(r))return String(r);if(Q(r)||Array.isArray(r))return JSON.stringify(r);if(typeof r.toJSON=="function")return K(r.toJSON());throw new Error("[unstorage] Cannot stringify value!")}function Y(){if(typeof Buffer===void 0)throw new TypeError("[unstorage] Buffer is not supported!")}const C="base64:";function ee(r){if(typeof r=="string")return r;Y();const t=Buffer.from(r).toString("base64");return C+t}function te(r){return typeof r!="string"||!r.startsWith(C)?r:(Y(),Buffer.from(r.slice(C.length),"base64"))}const re=["hasItem","getItem","getItemRaw","setItem","setItemRaw","removeItem","getMeta","setMeta","removeMeta","getKeys","clear","mount","unmount"];function ne(r,t){if(t=A(t),!t)return r;const n={...r};for(const a of re)n[a]=(l="",...u)=>r[a](t+l,...u);return n.getKeys=(a="",...l)=>r.getKeys(t+a,...l).then(u=>u.map(o=>o.slice(t.length))),n}function d(r){return r?r.split("?")[0].replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""):""}function ie(...r){return d(r.join(":"))}function A(r){return r=d(r),r?r+":":""}const ae="memory",se=()=>{const r=new Map;return{name:ae,options:{},hasItem(t){return r.has(t)},getItem(t){return r.get(t)??null},getItemRaw(t){return r.get(t)??null},setItem(t,n){r.set(t,n)},setItemRaw(t,n){r.set(t,n)},removeItem(t){r.delete(t)},getKeys(){return Array.from(r.keys())},clear(){r.clear()},dispose(){r.clear()}}};function oe(r={}){const t={mounts:{"":r.driver||se()},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}},n=e=>{for(const i of t.mountpoints)if(e.startsWith(i))return{base:i,relativeKey:e.slice(i.length),driver:t.mounts[i]};return{base:"",relativeKey:e,driver:t.mounts[""]}},a=(e,i)=>t.mountpoints.filter(s=>s.startsWith(e)||i&&e.startsWith(s)).map(s=>({relativeBase:e.length>s.length?e.slice(s.length):void 0,mountpoint:s,driver:t.mounts[s]})),l=(e,i)=>{if(t.watching){i=d(i);for(const s of t.watchListeners)s(e,i)}},u=async()=>{if(!t.watching){t.watching=!0;for(const e in t.mounts)t.unwatch[e]=await D(t.mounts[e],l,e)}},o=async()=>{if(t.watching){for(const e in t.unwatch)await t.unwatch[e]();t.unwatch={},t.watching=!1}},h=(e,i,s)=>{const c=new Map,f=m=>{let y=c.get(m.base);return y||(y={driver:m.driver,base:m.base,items:[]},c.set(m.base,y)),y};for(const m of e){const y=typeof m=="string",v=d(y?m:m.key),w=y?void 0:m.value,I=y||!m.options?i:{...i,...m.options},O=n(v);f(O).items.push({key:v,value:w,relativeKey:O.relativeKey,options:I})}return Promise.all([...c.values()].map(m=>s(m))).then(m=>m.flat())},g={hasItem(e,i={}){e=d(e);const{relativeKey:s,driver:c}=n(e);return p(c.hasItem,s,i)},getItem(e,i={}){e=d(e);const{relativeKey:s,driver:c}=n(e);return p(c.getItem,s,i).then(f=>_(f))},getItems(e,i){return h(e,i,s=>s.driver.getItems?p(s.driver.getItems,s.items.map(c=>({key:c.relativeKey,options:c.options})),i).then(c=>c.map(f=>({key:ie(s.base,f.key),value:_(f.value)}))):Promise.all(s.items.map(c=>p(s.driver.getItem,c.relativeKey,c.options).then(f=>({key:c.key,value:_(f)})))))},getItemRaw(e,i={}){e=d(e);const{relativeKey:s,driver:c}=n(e);return c.getItemRaw?p(c.getItemRaw,s,i):p(c.getItem,s,i).then(f=>te(f))},async setItem(e,i,s={}){if(i===void 0)return g.removeItem(e);e=d(e);const{relativeKey:c,driver:f}=n(e);f.setItem&&(await p(f.setItem,c,K(i),s),f.watch||l("update",e))},async setItems(e,i){await h(e,i,async s=>{s.driver.setItems&&await p(s.driver.setItems,s.items.map(c=>({key:c.relativeKey,value:K(c.value),options:c.options})),i),s.driver.setItem&&await Promise.all(s.items.map(c=>p(s.driver.setItem,c.relativeKey,K(c.value),c.options)))})},async setItemRaw(e,i,s={}){if(i===void 0)return g.removeItem(e,s);e=d(e);const{relativeKey:c,driver:f}=n(e);if(f.setItemRaw)await p(f.setItemRaw,c,i,s);else if(f.setItem)await p(f.setItem,c,ee(i),s);else return;f.watch||l("update",e)},async removeItem(e,i={}){typeof i=="boolean"&&(i={removeMeta:i}),e=d(e);const{relativeKey:s,driver:c}=n(e);c.removeItem&&(await p(c.removeItem,s,i),(i.removeMeta||i.removeMata)&&await p(c.removeItem,s+"$",i),c.watch||l("remove",e))},async getMeta(e,i={}){typeof i=="boolean"&&(i={nativeOnly:i}),e=d(e);const{relativeKey:s,driver:c}=n(e),f=Object.create(null);if(c.getMeta&&Object.assign(f,await p(c.getMeta,s,i)),!i.nativeOnly){const m=await p(c.getItem,s+"$",i).then(y=>_(y));m&&typeof m=="object"&&(typeof m.atime=="string"&&(m.atime=new Date(m.atime)),typeof m.mtime=="string"&&(m.mtime=new Date(m.mtime)),Object.assign(f,m))}return f},setMeta(e,i,s={}){return this.setItem(e+"$",i,s)},removeMeta(e,i={}){return this.removeItem(e+"$",i)},async getKeys(e,i={}){e=A(e);const s=a(e,!0);let c=[];const f=[];for(const m of s){const v=(await p(m.driver.getKeys,m.relativeBase,i)).map(w=>m.mountpoint+d(w)).filter(w=>!c.some(I=>w.startsWith(I)));f.push(...v),c=[m.mountpoint,...c.filter(w=>!w.startsWith(m.mountpoint))]}return e?f.filter(m=>m.startsWith(e)&&!m.endsWith("$")):f.filter(m=>!m.endsWith("$"))},async clear(e,i={}){e=A(e),await Promise.all(a(e,!1).map(async s=>{if(s.driver.clear)return p(s.driver.clear,s.relativeBase,i);if(s.driver.removeItem){const c=await s.driver.getKeys(s.relativeBase||"",i);return Promise.all(c.map(f=>s.driver.removeItem(f,i)))}}))},async dispose(){await Promise.all(Object.values(t.mounts).map(e=>L(e)))},async watch(e){return await u(),t.watchListeners.push(e),async()=>{t.watchListeners=t.watchListeners.filter(i=>i!==e),t.watchListeners.length===0&&await o()}},async unwatch(){t.watchListeners=[],await o()},mount(e,i){if(e=A(e),e&&t.mounts[e])throw new Error(`already mounted at ${e}`);return e&&(t.mountpoints.push(e),t.mountpoints.sort((s,c)=>c.length-s.length)),t.mounts[e]=i,t.watching&&Promise.resolve(D(i,l,e)).then(s=>{t.unwatch[e]=s}).catch(console.error),g},async unmount(e,i=!0){e=A(e),!(!e||!t.mounts[e])&&(t.watching&&e in t.unwatch&&(t.unwatch[e](),delete t.unwatch[e]),i&&await L(t.mounts[e]),t.mountpoints=t.mountpoints.filter(s=>s!==e),delete t.mounts[e])},getMount(e=""){e=d(e)+":";const i=n(e);return{driver:i.driver,base:i.base}},getMounts(e="",i={}){return e=d(e),a(e,i.parents).map(c=>({driver:c.driver,base:c.mountpoint}))}};return g}function D(r,t,n){return r.watch?r.watch((a,l)=>t(a,n+l)):()=>{}}async function L(r){typeof r.dispose=="function"&&await p(r.dispose)}function ue(r={}){const t=ce(n,r.operators);function n(a,l){return typeof l!="object"||l instanceof RegExp?t.$eq(a,l):Object.keys(l||{}).every(u=>{const o=l[u];if(u.startsWith("$")&&t[u]){const h=t[u];return typeof h=="function"?h(a,o):!1}return n(W(a,u),o)})}return n}function ce(r,t={}){return{$match:(n,a)=>r(n,a),$eq:(n,a)=>a instanceof RegExp?a.test(n):n===a,$ne:(n,a)=>a instanceof RegExp?!a.test(n):n!==a,$not:(n,a)=>!r(n,a),$and:(n,a)=>(j(a,"$and requires an array as condition"),a.every(l=>r(n,l))),$or:(n,a)=>(j(a,"$or requires an array as condition"),a.some(l=>r(n,l))),$in:(n,a)=>E(a).some(l=>Array.isArray(n)?r(n,{$contains:l}):r(n,l)),$contains:(n,a)=>(n=Array.isArray(n)?n:String(n),E(a).every(l=>n.includes(l))),$icontains:(n,a)=>{if(typeof a!="string")throw new TypeError("$icontains requires a string, use $contains instead");return n=String(n).toLocaleLowerCase(),E(a).every(l=>n.includes(l.toLocaleLowerCase()))},$containsAny:(n,a)=>(j(a,"$containsAny requires an array as condition"),n=Array.isArray(n)?n:String(n),a.some(l=>n.includes(l))),$exists:(n,a)=>a?typeof n<"u":typeof n>"u",$type:(n,a)=>typeof n===String(a),$regex:(n,a)=>{if(!(a instanceof RegExp)){const l=String(a).match(/\/(.*)\/([dgimsuy]*)$/);a=l?new RegExp(l[1],l[2]||""):new RegExp(a)}return a.test(String(n||""))},$lt:(n,a)=>nn<=a,$gt:(n,a)=>n>a,$gte:(n,a)=>n>=a,...t||{}}}function le(r){const t=ue(),n=(u,{query:o,before:h,after:g})=>{const e=typeof o=="string"?{_path:o}:o,i=u.findIndex(c=>t(c,e));h=h??1,g=g??1;const s=new Array(h+g).fill(null,0);return i===-1?s:s.map((c,f)=>u[i-h+f+ +(f>=h)]||null)},a=[(u,o)=>{const h=u.result.filter(g=>E(o.where).every(e=>t(g,e)));return{...u,result:h,total:h.length}},(u,o)=>E(o.sort).forEach(h=>T(u.result,h)),function(o,h,g){var e;if(h.surround){let i=n(((e=o.result)==null?void 0:e.length)===1?g:o.result,h.surround);i=$(P(h.without))(i),i=$(x(h.only))(i),o.surround=i}return o}],l=[(u,o)=>{if(o.skip)return{...u,result:u.result.slice(o.skip),skip:o.skip}},(u,o)=>{if(o.limit)return{...u,result:u.result.slice(0,o.limit),limit:o.limit}},function(o,h,g){var e,i,s;if(h.dirConfig){const c=((e=o.result[0])==null?void 0:e._path)||((s=(i=h.where)==null?void 0:i.find(m=>m._path))==null?void 0:s._path),f=g.find(m=>m._path===k(c,"_dir"));f&&(o.dirConfig={_path:f._path,...P(["_"])(f)})}return o},(u,o)=>({...u,result:$(P(o.without))(u.result)}),(u,o)=>({...u,result:$(x(o.only))(u.result)})];return async u=>{const o=await r(),h=u.params(),g={result:o,limit:0,skip:0,total:o.length},e=a.reduce((s,c)=>c(s,h,o)||s,g);if(h.count)return{result:e.result.length};const i=l.reduce((s,c)=>c(s,h,o)||s,e);return h.first?{...B(["skip","limit","total"])(i),result:i.result[0]}:i}}function N(r){const t=le(r);return async n=>{var u;const a=n.params(),l=await t(n);return a.surround?l==null?void 0:l.surround:(l!=null&&l.dirConfig&&(l.result={_path:(u=l.dirConfig)==null?void 0:u._path,...l.result,_dir:l.dirConfig}),l==null?void 0:l.result)}}var fe={exports:{}};(function(r,t){(function(n,a,l){r.exports=l(),r.exports.default=l()})("slugify",G,function(){var n=JSON.parse(`{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ō":"O","ō":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","Ə":"E","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","ə":"e","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","ѝ":"u","џ":"dz","Ґ":"G","ґ":"g","Ғ":"GH","ғ":"gh","Қ":"KH","қ":"kh","Ң":"NG","ң":"ng","Ү":"UE","ү":"ue","Ұ":"U","ұ":"u","Һ":"H","һ":"h","Ә":"AE","ә":"ae","Ө":"OE","ө":"oe","Ա":"A","Բ":"B","Գ":"G","Դ":"D","Ե":"E","Զ":"Z","Է":"E'","Ը":"Y'","Թ":"T'","Ժ":"JH","Ի":"I","Լ":"L","Խ":"X","Ծ":"C'","Կ":"K","Հ":"H","Ձ":"D'","Ղ":"GH","Ճ":"TW","Մ":"M","Յ":"Y","Ն":"N","Շ":"SH","Չ":"CH","Պ":"P","Ջ":"J","Ռ":"R'","Ս":"S","Վ":"V","Տ":"T","Ր":"R","Ց":"C","Փ":"P'","Ք":"Q'","Օ":"O''","Ֆ":"F","և":"EV","ء":"a","آ":"aa","أ":"a","ؤ":"u","إ":"i","ئ":"e","ا":"a","ب":"b","ة":"h","ت":"t","ث":"th","ج":"j","ح":"h","خ":"kh","د":"d","ذ":"th","ر":"r","ز":"z","س":"s","ش":"sh","ص":"s","ض":"dh","ط":"t","ظ":"z","ع":"a","غ":"gh","ف":"f","ق":"q","ك":"k","ل":"l","م":"m","ن":"n","ه":"h","و":"w","ى":"a","ي":"y","ً":"an","ٌ":"on","ٍ":"en","َ":"a","ُ":"u","ِ":"e","ْ":"","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","پ":"p","چ":"ch","ژ":"zh","ک":"k","گ":"g","ی":"y","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ṣ":"S","ṣ":"s","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","–":"-","‘":"'","’":"'","“":"\\"","”":"\\"","„":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₸":"kazakhstani tenge","₹":"indian rupee","₺":"turkish lira","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial","ﻵ":"laa","ﻷ":"laa","ﻹ":"lai","ﻻ":"la"}`),a=JSON.parse('{"bg":{"Й":"Y","Ц":"Ts","Щ":"Sht","Ъ":"A","Ь":"Y","й":"y","ц":"ts","щ":"sht","ъ":"a","ь":"y"},"de":{"Ä":"AE","ä":"ae","Ö":"OE","ö":"oe","Ü":"UE","ü":"ue","ß":"ss","%":"prozent","&":"und","|":"oder","∑":"summe","∞":"unendlich","♥":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","¢":"centavos","£":"libras","¤":"moneda","₣":"francos","∑":"suma","∞":"infinito","♥":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","¢":"centime","£":"livre","¤":"devise","₣":"franc","∑":"somme","∞":"infini","♥":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","¢":"centavo","∑":"soma","£":"libra","∞":"infinito","♥":"amor"},"uk":{"И":"Y","и":"y","Й":"Y","й":"y","Ц":"Ts","ц":"ts","Х":"Kh","х":"kh","Щ":"Shch","щ":"shch","Г":"H","г":"h"},"vi":{"Đ":"D","đ":"d"},"da":{"Ø":"OE","ø":"oe","Å":"AA","å":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"større end"},"nb":{"&":"og","Å":"AA","Æ":"AE","Ø":"OE","å":"aa","æ":"ae","ø":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","Å":"AA","Ä":"AE","Ö":"OE","å":"aa","ä":"ae","ö":"oe"}}');function l(u,o){if(typeof u!="string")throw new Error("slugify: string argument expected");o=typeof o=="string"?{replacement:o}:o||{};var h=a[o.locale]||{},g=o.replacement===void 0?"-":o.replacement,e=o.trim===void 0?!0:o.trim,i=u.normalize().split("").reduce(function(s,c){var f=h[c];return f===void 0&&(f=n[c]),f===void 0&&(f=c),f===g&&(f=" "),s+f.replace(o.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"")},"");return o.strict&&(i=i.replace(/[^A-Za-z0-9\s]/g,"")),e&&(i=i.trim()),i=i.replace(/\s+/g,g),o.lower&&(i=i.toLowerCase()),i}return l.extend=function(u){Object.assign(n,u)},l})})(fe);const me=r=>r.split(/[\s-]/g).map(J).join(" ");function he(r,t){const{navigation:n}=M().public.content,a=u=>({...pe(["title",...n.fields])(u),...de(u==null?void 0:u.navigation)?u.navigation:{}}),l=r.sort((u,o)=>u._path.localeCompare(o._path)).reduce((u,o)=>{const h=o._path.substring(1).split("/"),g=o._id.split(":").slice(1),e=!!g[g.length-1].match(/([1-9][0-9]*\.)?index.md/g),i=f=>({title:f.title,_path:f._path,_file:f._file,children:[],...a(f),...f._draft?{_draft:!0}:{}}),s=i(o);if(e){const f=t[s._path];if(typeof(f==null?void 0:f.navigation)<"u"&&!(f!=null&&f.navigation))return u;if(o._path!=="/"){const m=i(o);s.children.push(m)}Object.assign(s,a(f))}return h.length===1?(u.push(s),u):(h.slice(0,-1).reduce((f,m,y)=>{const v="/"+h.slice(0,y+1).join("/"),w=t[v];if(typeof(w==null?void 0:w.navigation)<"u"&&!w.navigation)return[];let I=f.find(O=>O._path===v);return I||(I={title:me(m),_path:v,_file:o._file,children:[],...a(w)},f.push(I)),I.children},u).push(s),u)},[]);return z(l)}const ge=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function z(r){var n;const t=r.sort((a,l)=>ge.compare(a._file,l._file));for(const a of t)(n=a.children)!=null&&n.length?z(a.children):delete a.children,delete a._file;return r}function pe(r){return t=>(t=t||{},r&&r.length?r.filter(n=>typeof t[n]<"u").reduce((n,a)=>Object.assign(n,{[a]:t[a]}),{}):t)}function de(r){return Object.prototype.toString.call(r)==="[object Object]"}const ye=r=>H(r,M().public.content.api.baseURL),we=ne(oe({driver:F()}),"@content");function ve(r){async function t(){const n=new Set(await r.getKeys("cache:")),a=U().getPreviewToken();if(a){const u=await r.getItem(`${a}$`).then(g=>g||{});if(Array.isArray(u.ignoreSources)){const g=u.ignoreSources.map(e=>`cache:${e.trim()}:`);for(const e of n)g.some(i=>e.startsWith(i))&&n.delete(e)}const o=await r.getKeys(`${a}:`),h=await Promise.all(o.map(g=>r.getItem(g)));for(const g of h)n.delete(`cache:${g._id}`),g.__deleted||n.add(`${a}:${g._id}`)}return await Promise.all(Array.from(n).map(u=>r.getItem(u)))}return{storage:r,fetch:N(t),query:n=>b(N(t),{initialParams:n,legacy:!0})}}let R=null,S=null;async function Ie(){return S?await S:R||(S=Ae(),R=await S),R}async function Ae(){const r=q(),{content:t}=M().public,n=ve(we),a=await n.storage.getItem("integrity");if(t.integrity!==+(a||0)){const{contents:l,navigation:u}=await $fetch(ye(t.integrity?`cache.${t.integrity}.json`:"cache.json"));await Promise.all(l.map(o=>n.storage.setItem(`cache:${o._id}`,o))),await n.storage.setItem("navigation",u),await n.storage.setItem("integrity",t.integrity)}return await r.callHook("content:storage",n.storage),n}async function _e(r){const t=await Ie();if(!U().getPreviewToken()&&Object.keys(r||{}).length===0)return t.storage.getItem("navigation");const n=await t.query(r).where({_partial:!1,navigation:{$ne:!1}}).find(),l=(await t.query().where({_path:/\/_dir$/i,_partial:!0}).find()).reduce((u,o)=>{var g;((g=o.title)==null?void 0:g.toLowerCase())==="dir"&&(o.title=void 0);const h=o._path.split("/").slice(0,-1).join("/")||"/";return u[h]={...o,...o.body},u},{});return he(n,l)}export{we as contentStorage,ve as createDB,_e as generateNavigation,Ie as useContentDatabase}; diff --git a/_nuxt/component-v2.a5wbyfd6.js b/_nuxt/component-v2.AWWRLQbf.js similarity index 90% rename from _nuxt/component-v2.a5wbyfd6.js rename to _nuxt/component-v2.AWWRLQbf.js index 9a35cade89..1bfd5a9cff 100644 --- a/_nuxt/component-v2.a5wbyfd6.js +++ b/_nuxt/component-v2.AWWRLQbf.js @@ -1 +1 @@ -import{t as b,w as g,c as v}from"./index.devlPsl3.js";import{aq as K,r as x,ar as m,K as y,a6 as C}from"./entry.TEDHt2QA.js";var c=(r=>(r.Init="init",r.Verified="verified",r.Expired="expired",r.Error="error",r))(c||{});function D({root:r=x(),options:f={}}){const e=K(),t=x(),n=m(),i=v(),s=v(),u=v(),l=b(r),a=x("init");return g(l,async p=>{const d=await n.render(p,{...f,sitekey:e,callback:i.trigger,"expired-callback":s.trigger,"error-callback":u.trigger});t.value=d}),i.on(()=>{a.value="verified"}),s.on(()=>{a.value="expired"}),u.on(()=>{a.value="error"}),{root:l,widgetID:t,execute(){typeof t.value<"u"&&n.execute(t.value)},reset(){a.value="init",typeof t.value<"u"&&n.reset(t.value)},state:a,onVerify:i.on,onExpired:s.on,onError:u.on}}function q(r,f,e){const{root:t,state:n,widgetID:i,onError:s,onExpired:u,onVerify:l,reset:a,execute:p}=D({options:r||{}}),d=y(()=>n.value===c.Expired),V=y(()=>n.value===c.Error),w=y(()=>n.value===c.Verified);return g(i,o=>{e("load",o),e("update:widgetId",o)}),C(f,(o,I)=>{!o&&I&&!d.value&&E()}),u(()=>{e("update:modelValue",null),e("expired",i.value)}),s(o=>{e("error",o)}),l(o=>{e("success",o),e("update:modelValue",o)}),{root:t,widgetID:i,state:n,isError:V,isExpired:d,isVerified:w,reset:E,execute:p};function E(){a(),k()}function k(){e("update:modelValue",null)}}export{c as R,q as u}; +import{t as b,w as g,c as v}from"./index.OaNwcZ7q.js";import{aq as K,r as x,ar as m,K as y,a6 as C}from"./entry.2w2g1VWZ.js";var c=(r=>(r.Init="init",r.Verified="verified",r.Expired="expired",r.Error="error",r))(c||{});function D({root:r=x(),options:f={}}){const e=K(),t=x(),n=m(),i=v(),s=v(),u=v(),l=b(r),a=x("init");return g(l,async p=>{const d=await n.render(p,{...f,sitekey:e,callback:i.trigger,"expired-callback":s.trigger,"error-callback":u.trigger});t.value=d}),i.on(()=>{a.value="verified"}),s.on(()=>{a.value="expired"}),u.on(()=>{a.value="error"}),{root:l,widgetID:t,execute(){typeof t.value<"u"&&n.execute(t.value)},reset(){a.value="init",typeof t.value<"u"&&n.reset(t.value)},state:a,onVerify:i.on,onExpired:s.on,onError:u.on}}function q(r,f,e){const{root:t,state:n,widgetID:i,onError:s,onExpired:u,onVerify:l,reset:a,execute:p}=D({options:r||{}}),d=y(()=>n.value===c.Expired),V=y(()=>n.value===c.Error),w=y(()=>n.value===c.Verified);return g(i,o=>{e("load",o),e("update:widgetId",o)}),C(f,(o,I)=>{!o&&I&&!d.value&&E()}),u(()=>{e("update:modelValue",null),e("expired",i.value)}),s(o=>{e("error",o)}),l(o=>{e("success",o),e("update:modelValue",o)}),{root:t,widgetID:i,state:n,isError:V,isExpired:d,isVerified:w,reset:E,execute:p};function E(){a(),k()}function k(){e("update:modelValue",null)}}export{c as R,q as u}; diff --git a/_nuxt/createText-aebacdfe.b7sMoTCr.js b/_nuxt/createText-aebacdfe.QPUQ3eAz.js similarity index 99% rename from _nuxt/createText-aebacdfe.b7sMoTCr.js rename to _nuxt/createText-aebacdfe.QPUQ3eAz.js index d4f5ff6871..1e0c85239b 100644 --- a/_nuxt/createText-aebacdfe.b7sMoTCr.js +++ b/_nuxt/createText-aebacdfe.QPUQ3eAz.js @@ -1,4 +1,4 @@ -import{l as At,ao as zt,aq as It}from"./mermaid-934d9bea.GjCu814R.js";const Tt={};function Bt(n,r){const t=r||Tt,e=typeof t.includeImageAlt=="boolean"?t.includeImageAlt:!0,i=typeof t.includeHtml=="boolean"?t.includeHtml:!0;return et(n,e,i)}function et(n,r,t){if(Lt(n)){if("value"in n)return n.type==="html"&&!t?"":n.value;if(r&&"alt"in n&&n.alt)return n.alt;if("children"in n)return Vn(n.children,r,t)}return Array.isArray(n)?Vn(n,r,t):""}function Vn(n,r,t){const e=[];let i=-1;for(;++ii?0:i+r:r=r>i?i:r,t=t>0?t:0,e.length<1e4)u=Array.from(e),u.unshift(r,t),[].splice.apply(n,u);else for(t&&[].splice.apply(n,[r,t]);l0?(en(n,n.length,0,r),n):r}const Wn={}.hasOwnProperty;function Ot(n){const r={};let t=-1;for(;++tu))return;const P=r.events.length;let R=P,j,V;for(;R--;)if(r.events[R][0]==="exit"&&r.events[R][1].type==="chunkFlow"){if(j){V=r.events[R][1].end;break}j=!0}for(y(e),d=P;dF;){const O=t[L];r.containerState=O[1],O[0].exit.call(r,n)}t.length=F}function _(){i.write([null]),l=void 0,i=void 0,r.containerState._closeFlow=void 0}}function Qt(n,r,t){return T(n,n.attempt(this.parser.constructs.document,r,t),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function $n(n){if(n===null||Y(n)||jt(n))return 1;if(qt(n))return 2}function Ln(n,r,t){const e=[];let i=-1;for(;++i1&&n[t][1].end.offset-n[t][1].start.offset>1?2:1;const x=Object.assign({},n[e][1].end),g=Object.assign({},n[t][1].start);Zn(x,-c),Zn(g,c),u={type:c>1?"strongSequence":"emphasisSequence",start:x,end:Object.assign({},n[e][1].end)},a={type:c>1?"strongSequence":"emphasisSequence",start:Object.assign({},n[t][1].start),end:g},l={type:c>1?"strongText":"emphasisText",start:Object.assign({},n[e][1].end),end:Object.assign({},n[t][1].start)},i={type:c>1?"strong":"emphasis",start:Object.assign({},u.start),end:Object.assign({},a.end)},n[e][1].end=Object.assign({},u.start),n[t][1].start=Object.assign({},a.end),p=[],n[e][1].end.offset-n[e][1].start.offset&&(p=Z(p,[["enter",n[e][1],r],["exit",n[e][1],r]])),p=Z(p,[["enter",i,r],["enter",u,r],["exit",u,r],["enter",l,r]]),p=Z(p,Ln(r.parser.constructs.insideSpan.null,n.slice(e+1,t),r)),p=Z(p,[["exit",l,r],["enter",a,r],["exit",a,r],["exit",i,r]]),n[t][1].end.offset-n[t][1].start.offset?(h=2,p=Z(p,[["enter",n[t][1],r],["exit",n[t][1],r]])):h=0,en(n,e-1,t-e+3,p),t=e+p.length-h-2;break}}for(t=-1;++t=4?u(p):t(p)}function u(p){return p===null?c(p):C(p)?n.attempt(ee,u,c)(p):(n.enter("codeFlowValue"),a(p))}function a(p){return p===null||C(p)?(n.exit("codeFlowValue"),u(p)):(n.consume(p),a)}function c(p){return n.exit("codeIndented"),r(p)}}function ie(n,r,t){const e=this;return i;function i(u){return e.parser.lazy[e.now().line]?t(u):C(u)?(n.enter("lineEnding"),n.consume(u),n.exit("lineEnding"),i):T(n,l,"linePrefix",5)(u)}function l(u){const a=e.events[e.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?r(u):C(u)?i(u):t(u)}}const ue={name:"codeText",tokenize:oe,resolve:le,previous:ae};function le(n){let r=n.length-4,t=3,e,i;if((n[t][1].type==="lineEnding"||n[t][1].type==="space")&&(n[r][1].type==="lineEnding"||n[r][1].type==="space")){for(e=t;++e=4?r(u):n.interrupt(e.parser.constructs.flow,t,r)(u)}}function at(n,r,t,e,i,l,u,a,c){const p=c||Number.POSITIVE_INFINITY;let h=0;return x;function x(y){return y===60?(n.enter(e),n.enter(i),n.enter(l),n.consume(y),n.exit(l),g):y===null||y===41||zn(y)?t(y):(n.enter(e),n.enter(u),n.enter(a),n.enter("chunkString",{contentType:"string"}),B(y))}function g(y){return y===62?(n.enter(l),n.consume(y),n.exit(l),n.exit(i),n.exit(e),r):(n.enter(a),n.enter("chunkString",{contentType:"string"}),f(y))}function f(y){return y===62?(n.exit("chunkString"),n.exit(a),g(y)):y===null||y===60||C(y)?t(y):(n.consume(y),y===92?k:f)}function k(y){return y===60||y===62||y===92?(n.consume(y),f):f(y)}function B(y){return y===40?++h>p?t(y):(n.consume(y),B):y===41?h--?(n.consume(y),B):(n.exit("chunkString"),n.exit(a),n.exit(u),n.exit(e),r(y)):y===null||Y(y)?h?t(y):(n.exit("chunkString"),n.exit(a),n.exit(u),n.exit(e),r(y)):zn(y)?t(y):(n.consume(y),y===92?D:B)}function D(y){return y===40||y===41||y===92?(n.consume(y),B):B(y)}}function ot(n,r,t,e,i,l){const u=this;let a=0,c;return p;function p(f){return n.enter(e),n.enter(i),n.consume(f),n.exit(i),n.enter(l),h}function h(f){return f===null||f===91||f===93&&!c||f===94&&!a&&"_hiddenFootnoteSupport"in u.parser.constructs||a>999?t(f):f===93?(n.exit(l),n.enter(i),n.consume(f),n.exit(i),n.exit(e),r):C(f)?(n.enter("lineEnding"),n.consume(f),n.exit("lineEnding"),h):(n.enter("chunkString",{contentType:"string"}),x(f))}function x(f){return f===null||f===91||f===93||C(f)||a++>999?(n.exit("chunkString"),h(f)):(n.consume(f),c=c||!q(f),f===92?g:x)}function g(f){return f===91||f===92||f===93?(n.consume(f),a++,x):x(f)}}function st(n,r,t,e,i,l){let u;return a;function a(g){return n.enter(e),n.enter(i),n.consume(g),n.exit(i),u=g===40?41:g,c}function c(g){return g===u?(n.enter(i),n.consume(g),n.exit(i),n.exit(e),r):(n.enter(l),p(g))}function p(g){return g===u?(n.exit(l),c(u)):g===null?t(g):C(g)?(n.enter("lineEnding"),n.consume(g),n.exit("lineEnding"),T(n,p,"linePrefix")):(n.enter("chunkString",{contentType:"string"}),h(g))}function h(g){return g===u||g===null||C(g)?(n.exit("chunkString"),p(g)):(n.consume(g),g===92?x:h)}function x(g){return g===u||g===92?(n.consume(g),h):h(g)}}function dn(n,r){let t;return e;function e(i){return C(i)?(n.enter("lineEnding"),n.consume(i),n.exit("lineEnding"),t=!0,e):q(i)?T(n,e,t?"linePrefix":"lineSuffix")(i):r(i)}}function fn(n){return n.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const xe={name:"definition",tokenize:ke},ge={tokenize:de,partial:!0};function ke(n,r,t){const e=this;let i;return l;function l(c){return n.enter("definition"),ot.call(e,n,u,t,"definitionLabel","definitionLabelMarker","definitionLabelString")(c)}function u(c){return i=fn(e.sliceSerialize(e.events[e.events.length-1][1]).slice(1,-1)),c===58?(n.enter("definitionMarker"),n.consume(c),n.exit("definitionMarker"),dn(n,at(n,n.attempt(ge,T(n,a,"whitespace"),T(n,a,"whitespace")),t,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString"))):t(c)}function a(c){return c===null||C(c)?(n.exit("definition"),e.parser.defined.includes(i)||e.parser.defined.push(i),r(c)):t(c)}}function de(n,r,t){return e;function e(u){return Y(u)?dn(n,i)(u):t(u)}function i(u){return u===34||u===39||u===40?st(n,T(n,l,"whitespace"),t,"definitionTitle","definitionTitleMarker","definitionTitleString")(u):t(u)}function l(u){return u===null||C(u)?r(u):t(u)}}const be={name:"hardBreakEscape",tokenize:ye};function ye(n,r,t){return e;function e(l){return n.enter("hardBreakEscape"),n.enter("escapeMarker"),n.consume(l),i}function i(l){return C(l)?(n.exit("escapeMarker"),n.exit("hardBreakEscape"),r(l)):t(l)}}const Se={name:"headingAtx",tokenize:Ee,resolve:Fe};function Fe(n,r){let t=n.length-2,e=3,i,l;return n[e][1].type==="whitespace"&&(e+=2),t-2>e&&n[t][1].type==="whitespace"&&(t-=2),n[t][1].type==="atxHeadingSequence"&&(e===t-1||t-4>e&&n[t-2][1].type==="whitespace")&&(t-=e+1===t?2:4),t>e&&(i={type:"atxHeadingText",start:n[e][1].start,end:n[t][1].end},l={type:"chunkText",start:n[e][1].start,end:n[t][1].end,contentType:"text"},en(n,e,t-e+1,[["enter",i,r],["enter",l,r],["exit",l,r],["exit",i,r]])),n}function Ee(n,r,t){const e=this;let i=0;return l;function l(h){return n.enter("atxHeading"),n.enter("atxHeadingSequence"),u(h)}function u(h){return h===35&&i++<6?(n.consume(h),u):h===null||Y(h)?(n.exit("atxHeadingSequence"),e.interrupt?r(h):a(h)):t(h)}function a(h){return h===35?(n.enter("atxHeadingSequence"),c(h)):h===null||C(h)?(n.exit("atxHeading"),r(h)):q(h)?T(n,a,"whitespace")(h):(n.enter("atxHeadingText"),p(h))}function c(h){return h===35?(n.consume(h),c):(n.exit("atxHeadingSequence"),a(h))}function p(h){return h===null||h===35||Y(h)?(n.exit("atxHeadingText"),a(h)):(n.consume(h),p)}}const we=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Jn=["pre","script","style","textarea"],Ce={name:"htmlFlow",tokenize:Ie,resolveTo:ze,concrete:!0},Ae={tokenize:Te,partial:!0};function ze(n){let r=n.length;for(;r--&&!(n[r][0]==="enter"&&n[r][1].type==="htmlFlow"););return r>1&&n[r-2][1].type==="linePrefix"&&(n[r][1].start=n[r-2][1].start,n[r+1][1].start=n[r-2][1].start,n.splice(r-2,2)),n}function Ie(n,r,t){const e=this;let i,l,u,a,c;return p;function p(o){return n.enter("htmlFlow"),n.enter("htmlFlowData"),n.consume(o),h}function h(o){return o===33?(n.consume(o),x):o===47?(n.consume(o),k):o===63?(n.consume(o),i=3,e.interrupt?r:U):tn(o)?(n.consume(o),u=String.fromCharCode(o),l=!0,B):t(o)}function x(o){return o===45?(n.consume(o),i=2,g):o===91?(n.consume(o),i=5,u="CDATA[",a=0,f):tn(o)?(n.consume(o),i=4,e.interrupt?r:U):t(o)}function g(o){return o===45?(n.consume(o),e.interrupt?r:U):t(o)}function f(o){return o===u.charCodeAt(a++)?(n.consume(o),a===u.length?e.interrupt?r:S:f):t(o)}function k(o){return tn(o)?(n.consume(o),u=String.fromCharCode(o),B):t(o)}function B(o){return o===null||o===47||o===62||Y(o)?o!==47&&l&&Jn.includes(u.toLowerCase())?(i=1,e.interrupt?r(o):S(o)):we.includes(u.toLowerCase())?(i=6,o===47?(n.consume(o),D):e.interrupt?r(o):S(o)):(i=7,e.interrupt&&!e.parser.lazy[e.now().line]?t(o):l?_(o):y(o)):o===45||v(o)?(n.consume(o),u+=String.fromCharCode(o),B):t(o)}function D(o){return o===62?(n.consume(o),e.interrupt?r:S):t(o)}function y(o){return q(o)?(n.consume(o),y):j(o)}function _(o){return o===47?(n.consume(o),j):o===58||o===95||tn(o)?(n.consume(o),F):q(o)?(n.consume(o),_):j(o)}function F(o){return o===45||o===46||o===58||o===95||v(o)?(n.consume(o),F):L(o)}function L(o){return o===61?(n.consume(o),O):q(o)?(n.consume(o),L):_(o)}function O(o){return o===null||o===60||o===61||o===62||o===96?t(o):o===34||o===39?(n.consume(o),c=o,d):q(o)?(n.consume(o),O):(c=null,P(o))}function d(o){return o===null||C(o)?t(o):o===c?(n.consume(o),R):(n.consume(o),d)}function P(o){return o===null||o===34||o===39||o===60||o===61||o===62||o===96||Y(o)?L(o):(n.consume(o),P)}function R(o){return o===47||o===62||q(o)?_(o):t(o)}function j(o){return o===62?(n.consume(o),V):t(o)}function V(o){return q(o)?(n.consume(o),V):o===null||C(o)?S(o):t(o)}function S(o){return o===45&&i===2?(n.consume(o),G):o===60&&i===1?(n.consume(o),nn):o===62&&i===4?(n.consume(o),H):o===63&&i===3?(n.consume(o),U):o===93&&i===5?(n.consume(o),W):C(o)&&(i===6||i===7)?n.check(Ae,H,E)(o):o===null||C(o)?E(o):(n.consume(o),S)}function E(o){return n.exit("htmlFlowData"),A(o)}function A(o){return o===null?s(o):C(o)?n.attempt({tokenize:Q,partial:!0},A,s)(o):(n.enter("htmlFlowData"),S(o))}function Q(o,cn,xn){return hn;function hn(K){return o.enter("lineEnding"),o.consume(K),o.exit("lineEnding"),N}function N(K){return e.parser.lazy[e.now().line]?xn(K):cn(K)}}function G(o){return o===45?(n.consume(o),U):S(o)}function nn(o){return o===47?(n.consume(o),u="",J):S(o)}function J(o){return o===62&&Jn.includes(u.toLowerCase())?(n.consume(o),H):tn(o)&&u.length<8?(n.consume(o),u+=String.fromCharCode(o),J):S(o)}function W(o){return o===93?(n.consume(o),U):S(o)}function U(o){return o===62?(n.consume(o),H):o===45&&i===2?(n.consume(o),U):S(o)}function H(o){return o===null||C(o)?(n.exit("htmlFlowData"),s(o)):(n.consume(o),H)}function s(o){return n.exit("htmlFlow"),r(o)}}function Te(n,r,t){return e;function e(i){return n.exit("htmlFlowData"),n.enter("lineEndingBlank"),n.consume(i),n.exit("lineEndingBlank"),n.attempt(Sn,r,t)}}const Be={name:"htmlText",tokenize:Le};function Le(n,r,t){const e=this;let i,l,u,a;return c;function c(s){return n.enter("htmlText"),n.enter("htmlTextData"),n.consume(s),p}function p(s){return s===33?(n.consume(s),h):s===47?(n.consume(s),P):s===63?(n.consume(s),O):tn(s)?(n.consume(s),V):t(s)}function h(s){return s===45?(n.consume(s),x):s===91?(n.consume(s),l="CDATA[",u=0,D):tn(s)?(n.consume(s),L):t(s)}function x(s){return s===45?(n.consume(s),g):t(s)}function g(s){return s===null||s===62?t(s):s===45?(n.consume(s),f):k(s)}function f(s){return s===null||s===62?t(s):k(s)}function k(s){return s===null?t(s):s===45?(n.consume(s),B):C(s)?(a=k,W(s)):(n.consume(s),k)}function B(s){return s===45?(n.consume(s),H):k(s)}function D(s){return s===l.charCodeAt(u++)?(n.consume(s),u===l.length?y:D):t(s)}function y(s){return s===null?t(s):s===93?(n.consume(s),_):C(s)?(a=y,W(s)):(n.consume(s),y)}function _(s){return s===93?(n.consume(s),F):y(s)}function F(s){return s===62?H(s):s===93?(n.consume(s),F):y(s)}function L(s){return s===null||s===62?H(s):C(s)?(a=L,W(s)):(n.consume(s),L)}function O(s){return s===null?t(s):s===63?(n.consume(s),d):C(s)?(a=O,W(s)):(n.consume(s),O)}function d(s){return s===62?H(s):O(s)}function P(s){return tn(s)?(n.consume(s),R):t(s)}function R(s){return s===45||v(s)?(n.consume(s),R):j(s)}function j(s){return C(s)?(a=j,W(s)):q(s)?(n.consume(s),j):H(s)}function V(s){return s===45||v(s)?(n.consume(s),V):s===47||s===62||Y(s)?S(s):t(s)}function S(s){return s===47?(n.consume(s),H):s===58||s===95||tn(s)?(n.consume(s),E):C(s)?(a=S,W(s)):q(s)?(n.consume(s),S):H(s)}function E(s){return s===45||s===46||s===58||s===95||v(s)?(n.consume(s),E):A(s)}function A(s){return s===61?(n.consume(s),Q):C(s)?(a=A,W(s)):q(s)?(n.consume(s),A):S(s)}function Q(s){return s===null||s===60||s===61||s===62||s===96?t(s):s===34||s===39?(n.consume(s),i=s,G):C(s)?(a=Q,W(s)):q(s)?(n.consume(s),Q):(n.consume(s),i=void 0,J)}function G(s){return s===i?(n.consume(s),nn):s===null?t(s):C(s)?(a=G,W(s)):(n.consume(s),G)}function nn(s){return s===62||s===47||Y(s)?S(s):t(s)}function J(s){return s===null||s===34||s===39||s===60||s===61||s===96?t(s):s===62||Y(s)?S(s):(n.consume(s),J)}function W(s){return n.exit("htmlTextData"),n.enter("lineEnding"),n.consume(s),n.exit("lineEnding"),T(n,U,"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function U(s){return n.enter("htmlTextData"),a(s)}function H(s){return s===62?(n.consume(s),n.exit("htmlTextData"),n.exit("htmlText"),r):t(s)}}const Dn={name:"labelEnd",tokenize:Re,resolveTo:Me,resolveAll:_e},Oe={tokenize:je},De={tokenize:qe},Pe={tokenize:He};function _e(n){let r=-1,t;for(;++r-1&&(u[0]=u[0].slice(e)),l>0&&u.push(n[i].slice(0,l))),u}function cr(n,r){let t=-1;const e=[];let i;for(;++ti?0:i+r:r=r>i?i:r,t=t>0?t:0,e.length<1e4)u=Array.from(e),u.unshift(r,t),[].splice.apply(n,u);else for(t&&[].splice.apply(n,[r,t]);l0?(en(n,n.length,0,r),n):r}const Wn={}.hasOwnProperty;function Ot(n){const r={};let t=-1;for(;++tu))return;const P=r.events.length;let R=P,j,V;for(;R--;)if(r.events[R][0]==="exit"&&r.events[R][1].type==="chunkFlow"){if(j){V=r.events[R][1].end;break}j=!0}for(y(e),d=P;dF;){const O=t[L];r.containerState=O[1],O[0].exit.call(r,n)}t.length=F}function _(){i.write([null]),l=void 0,i=void 0,r.containerState._closeFlow=void 0}}function Qt(n,r,t){return T(n,n.attempt(this.parser.constructs.document,r,t),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function $n(n){if(n===null||Y(n)||jt(n))return 1;if(qt(n))return 2}function Ln(n,r,t){const e=[];let i=-1;for(;++i1&&n[t][1].end.offset-n[t][1].start.offset>1?2:1;const x=Object.assign({},n[e][1].end),g=Object.assign({},n[t][1].start);Zn(x,-c),Zn(g,c),u={type:c>1?"strongSequence":"emphasisSequence",start:x,end:Object.assign({},n[e][1].end)},a={type:c>1?"strongSequence":"emphasisSequence",start:Object.assign({},n[t][1].start),end:g},l={type:c>1?"strongText":"emphasisText",start:Object.assign({},n[e][1].end),end:Object.assign({},n[t][1].start)},i={type:c>1?"strong":"emphasis",start:Object.assign({},u.start),end:Object.assign({},a.end)},n[e][1].end=Object.assign({},u.start),n[t][1].start=Object.assign({},a.end),p=[],n[e][1].end.offset-n[e][1].start.offset&&(p=Z(p,[["enter",n[e][1],r],["exit",n[e][1],r]])),p=Z(p,[["enter",i,r],["enter",u,r],["exit",u,r],["enter",l,r]]),p=Z(p,Ln(r.parser.constructs.insideSpan.null,n.slice(e+1,t),r)),p=Z(p,[["exit",l,r],["enter",a,r],["exit",a,r],["exit",i,r]]),n[t][1].end.offset-n[t][1].start.offset?(h=2,p=Z(p,[["enter",n[t][1],r],["exit",n[t][1],r]])):h=0,en(n,e-1,t-e+3,p),t=e+p.length-h-2;break}}for(t=-1;++t=4?u(p):t(p)}function u(p){return p===null?c(p):C(p)?n.attempt(ee,u,c)(p):(n.enter("codeFlowValue"),a(p))}function a(p){return p===null||C(p)?(n.exit("codeFlowValue"),u(p)):(n.consume(p),a)}function c(p){return n.exit("codeIndented"),r(p)}}function ie(n,r,t){const e=this;return i;function i(u){return e.parser.lazy[e.now().line]?t(u):C(u)?(n.enter("lineEnding"),n.consume(u),n.exit("lineEnding"),i):T(n,l,"linePrefix",5)(u)}function l(u){const a=e.events[e.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?r(u):C(u)?i(u):t(u)}}const ue={name:"codeText",tokenize:oe,resolve:le,previous:ae};function le(n){let r=n.length-4,t=3,e,i;if((n[t][1].type==="lineEnding"||n[t][1].type==="space")&&(n[r][1].type==="lineEnding"||n[r][1].type==="space")){for(e=t;++e=4?r(u):n.interrupt(e.parser.constructs.flow,t,r)(u)}}function at(n,r,t,e,i,l,u,a,c){const p=c||Number.POSITIVE_INFINITY;let h=0;return x;function x(y){return y===60?(n.enter(e),n.enter(i),n.enter(l),n.consume(y),n.exit(l),g):y===null||y===41||zn(y)?t(y):(n.enter(e),n.enter(u),n.enter(a),n.enter("chunkString",{contentType:"string"}),B(y))}function g(y){return y===62?(n.enter(l),n.consume(y),n.exit(l),n.exit(i),n.exit(e),r):(n.enter(a),n.enter("chunkString",{contentType:"string"}),f(y))}function f(y){return y===62?(n.exit("chunkString"),n.exit(a),g(y)):y===null||y===60||C(y)?t(y):(n.consume(y),y===92?k:f)}function k(y){return y===60||y===62||y===92?(n.consume(y),f):f(y)}function B(y){return y===40?++h>p?t(y):(n.consume(y),B):y===41?h--?(n.consume(y),B):(n.exit("chunkString"),n.exit(a),n.exit(u),n.exit(e),r(y)):y===null||Y(y)?h?t(y):(n.exit("chunkString"),n.exit(a),n.exit(u),n.exit(e),r(y)):zn(y)?t(y):(n.consume(y),y===92?D:B)}function D(y){return y===40||y===41||y===92?(n.consume(y),B):B(y)}}function ot(n,r,t,e,i,l){const u=this;let a=0,c;return p;function p(f){return n.enter(e),n.enter(i),n.consume(f),n.exit(i),n.enter(l),h}function h(f){return f===null||f===91||f===93&&!c||f===94&&!a&&"_hiddenFootnoteSupport"in u.parser.constructs||a>999?t(f):f===93?(n.exit(l),n.enter(i),n.consume(f),n.exit(i),n.exit(e),r):C(f)?(n.enter("lineEnding"),n.consume(f),n.exit("lineEnding"),h):(n.enter("chunkString",{contentType:"string"}),x(f))}function x(f){return f===null||f===91||f===93||C(f)||a++>999?(n.exit("chunkString"),h(f)):(n.consume(f),c=c||!q(f),f===92?g:x)}function g(f){return f===91||f===92||f===93?(n.consume(f),a++,x):x(f)}}function st(n,r,t,e,i,l){let u;return a;function a(g){return n.enter(e),n.enter(i),n.consume(g),n.exit(i),u=g===40?41:g,c}function c(g){return g===u?(n.enter(i),n.consume(g),n.exit(i),n.exit(e),r):(n.enter(l),p(g))}function p(g){return g===u?(n.exit(l),c(u)):g===null?t(g):C(g)?(n.enter("lineEnding"),n.consume(g),n.exit("lineEnding"),T(n,p,"linePrefix")):(n.enter("chunkString",{contentType:"string"}),h(g))}function h(g){return g===u||g===null||C(g)?(n.exit("chunkString"),p(g)):(n.consume(g),g===92?x:h)}function x(g){return g===u||g===92?(n.consume(g),h):h(g)}}function dn(n,r){let t;return e;function e(i){return C(i)?(n.enter("lineEnding"),n.consume(i),n.exit("lineEnding"),t=!0,e):q(i)?T(n,e,t?"linePrefix":"lineSuffix")(i):r(i)}}function fn(n){return n.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const xe={name:"definition",tokenize:ke},ge={tokenize:de,partial:!0};function ke(n,r,t){const e=this;let i;return l;function l(c){return n.enter("definition"),ot.call(e,n,u,t,"definitionLabel","definitionLabelMarker","definitionLabelString")(c)}function u(c){return i=fn(e.sliceSerialize(e.events[e.events.length-1][1]).slice(1,-1)),c===58?(n.enter("definitionMarker"),n.consume(c),n.exit("definitionMarker"),dn(n,at(n,n.attempt(ge,T(n,a,"whitespace"),T(n,a,"whitespace")),t,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString"))):t(c)}function a(c){return c===null||C(c)?(n.exit("definition"),e.parser.defined.includes(i)||e.parser.defined.push(i),r(c)):t(c)}}function de(n,r,t){return e;function e(u){return Y(u)?dn(n,i)(u):t(u)}function i(u){return u===34||u===39||u===40?st(n,T(n,l,"whitespace"),t,"definitionTitle","definitionTitleMarker","definitionTitleString")(u):t(u)}function l(u){return u===null||C(u)?r(u):t(u)}}const be={name:"hardBreakEscape",tokenize:ye};function ye(n,r,t){return e;function e(l){return n.enter("hardBreakEscape"),n.enter("escapeMarker"),n.consume(l),i}function i(l){return C(l)?(n.exit("escapeMarker"),n.exit("hardBreakEscape"),r(l)):t(l)}}const Se={name:"headingAtx",tokenize:Ee,resolve:Fe};function Fe(n,r){let t=n.length-2,e=3,i,l;return n[e][1].type==="whitespace"&&(e+=2),t-2>e&&n[t][1].type==="whitespace"&&(t-=2),n[t][1].type==="atxHeadingSequence"&&(e===t-1||t-4>e&&n[t-2][1].type==="whitespace")&&(t-=e+1===t?2:4),t>e&&(i={type:"atxHeadingText",start:n[e][1].start,end:n[t][1].end},l={type:"chunkText",start:n[e][1].start,end:n[t][1].end,contentType:"text"},en(n,e,t-e+1,[["enter",i,r],["enter",l,r],["exit",l,r],["exit",i,r]])),n}function Ee(n,r,t){const e=this;let i=0;return l;function l(h){return n.enter("atxHeading"),n.enter("atxHeadingSequence"),u(h)}function u(h){return h===35&&i++<6?(n.consume(h),u):h===null||Y(h)?(n.exit("atxHeadingSequence"),e.interrupt?r(h):a(h)):t(h)}function a(h){return h===35?(n.enter("atxHeadingSequence"),c(h)):h===null||C(h)?(n.exit("atxHeading"),r(h)):q(h)?T(n,a,"whitespace")(h):(n.enter("atxHeadingText"),p(h))}function c(h){return h===35?(n.consume(h),c):(n.exit("atxHeadingSequence"),a(h))}function p(h){return h===null||h===35||Y(h)?(n.exit("atxHeadingText"),a(h)):(n.consume(h),p)}}const we=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Jn=["pre","script","style","textarea"],Ce={name:"htmlFlow",tokenize:Ie,resolveTo:ze,concrete:!0},Ae={tokenize:Te,partial:!0};function ze(n){let r=n.length;for(;r--&&!(n[r][0]==="enter"&&n[r][1].type==="htmlFlow"););return r>1&&n[r-2][1].type==="linePrefix"&&(n[r][1].start=n[r-2][1].start,n[r+1][1].start=n[r-2][1].start,n.splice(r-2,2)),n}function Ie(n,r,t){const e=this;let i,l,u,a,c;return p;function p(o){return n.enter("htmlFlow"),n.enter("htmlFlowData"),n.consume(o),h}function h(o){return o===33?(n.consume(o),x):o===47?(n.consume(o),k):o===63?(n.consume(o),i=3,e.interrupt?r:U):tn(o)?(n.consume(o),u=String.fromCharCode(o),l=!0,B):t(o)}function x(o){return o===45?(n.consume(o),i=2,g):o===91?(n.consume(o),i=5,u="CDATA[",a=0,f):tn(o)?(n.consume(o),i=4,e.interrupt?r:U):t(o)}function g(o){return o===45?(n.consume(o),e.interrupt?r:U):t(o)}function f(o){return o===u.charCodeAt(a++)?(n.consume(o),a===u.length?e.interrupt?r:S:f):t(o)}function k(o){return tn(o)?(n.consume(o),u=String.fromCharCode(o),B):t(o)}function B(o){return o===null||o===47||o===62||Y(o)?o!==47&&l&&Jn.includes(u.toLowerCase())?(i=1,e.interrupt?r(o):S(o)):we.includes(u.toLowerCase())?(i=6,o===47?(n.consume(o),D):e.interrupt?r(o):S(o)):(i=7,e.interrupt&&!e.parser.lazy[e.now().line]?t(o):l?_(o):y(o)):o===45||v(o)?(n.consume(o),u+=String.fromCharCode(o),B):t(o)}function D(o){return o===62?(n.consume(o),e.interrupt?r:S):t(o)}function y(o){return q(o)?(n.consume(o),y):j(o)}function _(o){return o===47?(n.consume(o),j):o===58||o===95||tn(o)?(n.consume(o),F):q(o)?(n.consume(o),_):j(o)}function F(o){return o===45||o===46||o===58||o===95||v(o)?(n.consume(o),F):L(o)}function L(o){return o===61?(n.consume(o),O):q(o)?(n.consume(o),L):_(o)}function O(o){return o===null||o===60||o===61||o===62||o===96?t(o):o===34||o===39?(n.consume(o),c=o,d):q(o)?(n.consume(o),O):(c=null,P(o))}function d(o){return o===null||C(o)?t(o):o===c?(n.consume(o),R):(n.consume(o),d)}function P(o){return o===null||o===34||o===39||o===60||o===61||o===62||o===96||Y(o)?L(o):(n.consume(o),P)}function R(o){return o===47||o===62||q(o)?_(o):t(o)}function j(o){return o===62?(n.consume(o),V):t(o)}function V(o){return q(o)?(n.consume(o),V):o===null||C(o)?S(o):t(o)}function S(o){return o===45&&i===2?(n.consume(o),G):o===60&&i===1?(n.consume(o),nn):o===62&&i===4?(n.consume(o),H):o===63&&i===3?(n.consume(o),U):o===93&&i===5?(n.consume(o),W):C(o)&&(i===6||i===7)?n.check(Ae,H,E)(o):o===null||C(o)?E(o):(n.consume(o),S)}function E(o){return n.exit("htmlFlowData"),A(o)}function A(o){return o===null?s(o):C(o)?n.attempt({tokenize:Q,partial:!0},A,s)(o):(n.enter("htmlFlowData"),S(o))}function Q(o,cn,xn){return hn;function hn(K){return o.enter("lineEnding"),o.consume(K),o.exit("lineEnding"),N}function N(K){return e.parser.lazy[e.now().line]?xn(K):cn(K)}}function G(o){return o===45?(n.consume(o),U):S(o)}function nn(o){return o===47?(n.consume(o),u="",J):S(o)}function J(o){return o===62&&Jn.includes(u.toLowerCase())?(n.consume(o),H):tn(o)&&u.length<8?(n.consume(o),u+=String.fromCharCode(o),J):S(o)}function W(o){return o===93?(n.consume(o),U):S(o)}function U(o){return o===62?(n.consume(o),H):o===45&&i===2?(n.consume(o),U):S(o)}function H(o){return o===null||C(o)?(n.exit("htmlFlowData"),s(o)):(n.consume(o),H)}function s(o){return n.exit("htmlFlow"),r(o)}}function Te(n,r,t){return e;function e(i){return n.exit("htmlFlowData"),n.enter("lineEndingBlank"),n.consume(i),n.exit("lineEndingBlank"),n.attempt(Sn,r,t)}}const Be={name:"htmlText",tokenize:Le};function Le(n,r,t){const e=this;let i,l,u,a;return c;function c(s){return n.enter("htmlText"),n.enter("htmlTextData"),n.consume(s),p}function p(s){return s===33?(n.consume(s),h):s===47?(n.consume(s),P):s===63?(n.consume(s),O):tn(s)?(n.consume(s),V):t(s)}function h(s){return s===45?(n.consume(s),x):s===91?(n.consume(s),l="CDATA[",u=0,D):tn(s)?(n.consume(s),L):t(s)}function x(s){return s===45?(n.consume(s),g):t(s)}function g(s){return s===null||s===62?t(s):s===45?(n.consume(s),f):k(s)}function f(s){return s===null||s===62?t(s):k(s)}function k(s){return s===null?t(s):s===45?(n.consume(s),B):C(s)?(a=k,W(s)):(n.consume(s),k)}function B(s){return s===45?(n.consume(s),H):k(s)}function D(s){return s===l.charCodeAt(u++)?(n.consume(s),u===l.length?y:D):t(s)}function y(s){return s===null?t(s):s===93?(n.consume(s),_):C(s)?(a=y,W(s)):(n.consume(s),y)}function _(s){return s===93?(n.consume(s),F):y(s)}function F(s){return s===62?H(s):s===93?(n.consume(s),F):y(s)}function L(s){return s===null||s===62?H(s):C(s)?(a=L,W(s)):(n.consume(s),L)}function O(s){return s===null?t(s):s===63?(n.consume(s),d):C(s)?(a=O,W(s)):(n.consume(s),O)}function d(s){return s===62?H(s):O(s)}function P(s){return tn(s)?(n.consume(s),R):t(s)}function R(s){return s===45||v(s)?(n.consume(s),R):j(s)}function j(s){return C(s)?(a=j,W(s)):q(s)?(n.consume(s),j):H(s)}function V(s){return s===45||v(s)?(n.consume(s),V):s===47||s===62||Y(s)?S(s):t(s)}function S(s){return s===47?(n.consume(s),H):s===58||s===95||tn(s)?(n.consume(s),E):C(s)?(a=S,W(s)):q(s)?(n.consume(s),S):H(s)}function E(s){return s===45||s===46||s===58||s===95||v(s)?(n.consume(s),E):A(s)}function A(s){return s===61?(n.consume(s),Q):C(s)?(a=A,W(s)):q(s)?(n.consume(s),A):S(s)}function Q(s){return s===null||s===60||s===61||s===62||s===96?t(s):s===34||s===39?(n.consume(s),i=s,G):C(s)?(a=Q,W(s)):q(s)?(n.consume(s),Q):(n.consume(s),i=void 0,J)}function G(s){return s===i?(n.consume(s),nn):s===null?t(s):C(s)?(a=G,W(s)):(n.consume(s),G)}function nn(s){return s===62||s===47||Y(s)?S(s):t(s)}function J(s){return s===null||s===34||s===39||s===60||s===61||s===96?t(s):s===62||Y(s)?S(s):(n.consume(s),J)}function W(s){return n.exit("htmlTextData"),n.enter("lineEnding"),n.consume(s),n.exit("lineEnding"),T(n,U,"linePrefix",e.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function U(s){return n.enter("htmlTextData"),a(s)}function H(s){return s===62?(n.consume(s),n.exit("htmlTextData"),n.exit("htmlText"),r):t(s)}}const Dn={name:"labelEnd",tokenize:Re,resolveTo:Me,resolveAll:_e},Oe={tokenize:je},De={tokenize:qe},Pe={tokenize:He};function _e(n){let r=-1,t;for(;++r-1&&(u[0]=u[0].slice(e)),l>0&&u.push(n[i].slice(0,l))),u}function cr(n,r){let t=-1;const e=[];let i;for(;++t13&&t<32||t>126&&t<160||t>55295&&t<57344||t>64975&&t<65008||(t&65535)===65535||(t&65535)===65534||t>1114111?"�":String.fromCharCode(t)}const wr=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Cr(n){return n.replace(wr,Ar)}function Ar(n,r,t){if(r)return r;if(t.charCodeAt(0)===35){const i=t.charCodeAt(1),l=i===120||i===88;return pt(t.slice(l?2:1),l?16:10)}return On(t)||n}function yn(n){return!n||typeof n!="object"?"":"position"in n||"type"in n?vn(n.position):"start"in n||"end"in n?vn(n):"line"in n||"column"in n?Tn(n):""}function Tn(n){return nt(n&&n.line)+":"+nt(n&&n.column)}function vn(n){return Tn(n&&n.start)+"-"+Tn(n&&n.end)}function nt(n){return n&&typeof n=="number"?n:1}const mt={}.hasOwnProperty,ft=function(n,r,t){return typeof r!="string"&&(t=r,r=void 0),zr(t)(Er(Sr(t).document().write(Fr()(n,r,!0))))};function zr(n){const r={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:a(Hn),autolinkProtocol:S,autolinkEmail:S,atxHeading:a(Rn),blockQuote:a(Fn),characterEscape:S,characterReference:S,codeFenced:a(Mn),codeFencedFenceInfo:c,codeFencedFenceMeta:c,codeIndented:a(Mn,c),codeText:a(kt,c),codeTextData:S,data:S,codeFlowValue:S,definition:a(dt),definitionDestinationString:c,definitionLabelString:c,definitionTitleString:c,emphasis:a(bt),hardBreakEscape:a(jn),hardBreakTrailing:a(jn),htmlFlow:a(qn,c),htmlFlowData:S,htmlText:a(qn,c),htmlTextData:S,image:a(yt),label:c,link:a(Hn),listItem:a(St),listItemValue:k,listOrdered:a(Nn,f),listUnordered:a(Nn),paragraph:a(Ft),reference:hn,referenceString:c,resourceDestinationString:c,resourceTitleString:c,setextHeading:a(Rn),strong:a(Et),thematicBreak:a(Ct)},exit:{atxHeading:h(),atxHeadingSequence:P,autolink:h(),autolinkEmail:mn,autolinkProtocol:pn,blockQuote:h(),characterEscapeValue:E,characterReferenceMarkerHexadecimal:K,characterReferenceMarkerNumeric:K,characterReferenceValue:ln,codeFenced:h(_),codeFencedFence:y,codeFencedFenceInfo:B,codeFencedFenceMeta:D,codeFlowValue:E,codeIndented:h(F),codeText:h(J),codeTextData:E,data:E,definition:h(),definitionDestinationString:d,definitionLabelString:L,definitionTitleString:O,emphasis:h(),hardBreakEscape:h(Q),hardBreakTrailing:h(Q),htmlFlow:h(G),htmlFlowData:E,htmlText:h(nn),htmlTextData:E,image:h(U),label:s,labelText:H,lineEnding:A,link:h(W),listItem:h(),listOrdered:h(),listUnordered:h(),paragraph:h(),referenceString:N,resourceDestinationString:o,resourceTitleString:cn,resource:xn,setextHeading:h(V),setextHeadingLineSequence:j,setextHeadingText:R,strong:h(),thematicBreak:h()}};xt(r,(n||{}).mdastExtensions||[]);const t={};return e;function e(m){let b={type:"root",children:[]};const w={stack:[b],tokenStack:[],config:r,enter:p,exit:x,buffer:c,resume:g,setData:l,getData:u},z=[];let I=-1;for(;++I0){const X=w.tokenStack[w.tokenStack.length-1];(X[1]||tt).call(w,void 0,X[0])}for(b.position={start:on(m.length>0?m[0][1].start:{line:1,column:1,offset:0}),end:on(m.length>0?m[m.length-2][1].end:{line:1,column:1,offset:0})},I=-1;++I{r.initialize({startOnLoad:!0,theme:"forest",flowchart:{useMaxWidth:!0}})}),(t,_)=>{const o=e;return p(),i(o,null,{default:n(()=>[s(t.$slots,"default")]),_:3})}}});export{b as default}; diff --git a/_nuxt/default.1eR79Hk0.js b/_nuxt/default.1eR79Hk0.js new file mode 100644 index 0000000000..8fb9d2da8e --- /dev/null +++ b/_nuxt/default.1eR79Hk0.js @@ -0,0 +1 @@ +import e from"./DocsPageLayout.soTR2NFE.js";import{m as r}from"./mermaid-934d9bea.JP-6_YN_.js";import{d as a,o as m,Y as i,w as n,b as p,ad as s}from"./entry.2w2g1VWZ.js";import"./DocsAside.J1JT7aj-.js";import"./ProseCodeInline.nA1Kl2E3.js";import"./DocsPageBottom.xF3M7Xuf.js";import"./ProseA.OLhUCis1.js";import"./EditOnLink.vue.aDm18t_T.js";import"./DocsPrevNext.NyR6m4jP.js";import"./DocsToc.ahcS4zzc.js";import"./DocsTocLinks.n_8BwfoV.js";import"./_commonjsHelpers.5-cIlDoe.js";const b=a({__name:"default",setup(u){return m(()=>{r.initialize({startOnLoad:!0,theme:"forest",flowchart:{useMaxWidth:!0}})}),(t,_)=>{const o=e;return p(),i(o,null,{default:n(()=>[s(t.$slots,"default")]),_:3})}}});export{b as default}; diff --git a/_nuxt/document-driven.ww2jjxcZ.js b/_nuxt/document-driven.QQDA_Gni.js similarity index 85% rename from _nuxt/document-driven.ww2jjxcZ.js rename to _nuxt/document-driven.QQDA_Gni.js index 0dc018521f..cf04a0c9ef 100644 --- a/_nuxt/document-driven.ww2jjxcZ.js +++ b/_nuxt/document-driven.QQDA_Gni.js @@ -1 +1 @@ -import h from"./DocumentDrivenEmpty.uAjfpuCj.js";import L from"./ContentRenderer.hmnD5r_q.js";import b from"./DocumentDrivenNotFound.xfb8EcE2.js";import{j as g,d as p,I as k,P as R,s as x,J as C,K as B,L as u,M as c,r as S,N as j,O as N,Q as m,T,R as A,B as O,S as w,U as D,V as E,l as H,W as $,X as q,c as I,g as y,w as _,b as f,Y as v}from"./entry.TEDHt2QA.js";import"./ContentRendererMarkdown.vue.JkbsKsif.js";import"./ButtonLink.KvhTbcIS.js";const M=p({name:"LayoutLoader",inheritAttrs:!1,props:{name:String,layoutProps:Object},async setup(t,o){const e=await c[t.name]().then(n=>n.default||n);return()=>m(e,t.layoutProps,o.slots)}}),V=p({name:"NuxtLayout",inheritAttrs:!1,props:{name:{type:[String,Boolean,Object],default:null},fallback:{type:[String,Object],default:null}},setup(t,o){const e=g(),n=k(R),s=n===x()?C():n,r=B(()=>{let a=u(t.name)??s.meta.layout??"default";return a&&!(a in c)&&t.fallback&&(a=u(t.fallback)),a}),l=S();o.expose({layoutRef:l});const d=e.deferHydration();return()=>{const a=r.value&&r.value in c,i=s.meta.layoutTransition??j;return N(T,a&&i,{default:()=>m(w,{suspensible:!0,onResolve:()=>{O(d)}},{default:()=>m(F,{layoutProps:A(o.attrs,{ref:l}),key:r.value||void 0,name:r.value,shouldProvide:!t.name,hasTransition:!!i},o.slots)})}).default()}}}),F=p({name:"NuxtLayoutProvider",inheritAttrs:!1,props:{name:{type:[String,Boolean]},layoutProps:{type:Object},hasTransition:{type:Boolean},shouldProvide:{type:Boolean}},setup(t,o){const e=t.name;return t.shouldProvide&&D(E,{isCurrent:n=>e===(n.meta.layout??"default")}),()=>{var n,s;return!e||typeof e=="string"&&!(e in c)?(s=(n=o.slots).default)==null?void 0:s.call(n):m(M,{key:e,layoutProps:t.layoutProps,name:e},o.slots)}}}),J={class:"document-driven-page"},z=p({__name:"document-driven",setup(t){const{contentHead:o}=H().public.content,{page:e,layout:n}=$();return e.value,o&&q(e),(s,r)=>{const l=h,d=L,a=b,i=V;return f(),I("div",J,[y(i,{name:u(n)||"default"},{default:_(()=>[u(e)?(f(),v(d,{key:u(e)._id,value:u(e)},{empty:_(({value:P})=>[y(l,{value:P},null,8,["value"])]),_:1},8,["value"])):(f(),v(a,{key:1}))]),_:1},8,["name"])])}}});export{z as default}; +import h from"./DocumentDrivenEmpty.-WgfKx9h.js";import L from"./ContentRenderer.M--L_q55.js";import b from"./DocumentDrivenNotFound.EW4TuDtB.js";import{j as g,d as p,I as k,P as R,s as x,J as C,K as B,L as u,M as c,r as S,N as j,O as N,Q as m,T,R as A,B as O,S as w,U as D,V as E,l as H,W as $,X as q,c as I,g as y,w as _,b as f,Y as v}from"./entry.2w2g1VWZ.js";import"./ContentRendererMarkdown.vue.ILa9pIED.js";import"./ButtonLink.zZVq8ThH.js";const M=p({name:"LayoutLoader",inheritAttrs:!1,props:{name:String,layoutProps:Object},async setup(t,o){const e=await c[t.name]().then(n=>n.default||n);return()=>m(e,t.layoutProps,o.slots)}}),V=p({name:"NuxtLayout",inheritAttrs:!1,props:{name:{type:[String,Boolean,Object],default:null},fallback:{type:[String,Object],default:null}},setup(t,o){const e=g(),n=k(R),s=n===x()?C():n,r=B(()=>{let a=u(t.name)??s.meta.layout??"default";return a&&!(a in c)&&t.fallback&&(a=u(t.fallback)),a}),l=S();o.expose({layoutRef:l});const d=e.deferHydration();return()=>{const a=r.value&&r.value in c,i=s.meta.layoutTransition??j;return N(T,a&&i,{default:()=>m(w,{suspensible:!0,onResolve:()=>{O(d)}},{default:()=>m(F,{layoutProps:A(o.attrs,{ref:l}),key:r.value||void 0,name:r.value,shouldProvide:!t.name,hasTransition:!!i},o.slots)})}).default()}}}),F=p({name:"NuxtLayoutProvider",inheritAttrs:!1,props:{name:{type:[String,Boolean]},layoutProps:{type:Object},hasTransition:{type:Boolean},shouldProvide:{type:Boolean}},setup(t,o){const e=t.name;return t.shouldProvide&&D(E,{isCurrent:n=>e===(n.meta.layout??"default")}),()=>{var n,s;return!e||typeof e=="string"&&!(e in c)?(s=(n=o.slots).default)==null?void 0:s.call(n):m(M,{key:e,layoutProps:t.layoutProps,name:e},o.slots)}}}),J={class:"document-driven-page"},z=p({__name:"document-driven",setup(t){const{contentHead:o}=H().public.content,{page:e,layout:n}=$();return e.value,o&&q(e),(s,r)=>{const l=h,d=L,a=b,i=V;return f(),I("div",J,[y(i,{name:u(n)||"default"},{default:_(()=>[u(e)?(f(),v(d,{key:u(e)._id,value:u(e)},{empty:_(({value:P})=>[y(l,{value:P},null,8,["value"])]),_:1},8,["value"])):(f(),v(a,{key:1}))]),_:1},8,["name"])])}}});export{z as default}; diff --git a/_nuxt/edges-80f1ebb6.h90W1bSR.js b/_nuxt/edges-80f1ebb6.gtortKGL.js similarity index 99% rename from _nuxt/edges-80f1ebb6.h90W1bSR.js rename to _nuxt/edges-80f1ebb6.gtortKGL.js index 19ddba59ac..b7db878b96 100644 --- a/_nuxt/edges-80f1ebb6.h90W1bSR.js +++ b/_nuxt/edges-80f1ebb6.gtortKGL.js @@ -1,4 +1,4 @@ -import{r as $,c as w,d as J,ao as Q,h as M,l as x,z as j,ap as nt}from"./mermaid-934d9bea.GjCu814R.js";import{c as at}from"./createText-aebacdfe.b7sMoTCr.js";import{l as lt}from"./line.yVnlcbB_.js";const ct=(a,t,r,n)=>{t.forEach(e=>{ut[e](a,r,n)})},ht=(a,t,r)=>{x.trace("Making markers for ",r),a.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},ot=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},ft=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},pt=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},yt=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),a.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},dt=(a,t,r)=>{a.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},xt=(a,t,r)=>{a.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},bt=(a,t,r)=>{a.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),a.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},gt=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},ut={extension:ht,composition:ot,aggregation:ft,dependency:pt,lollipop:yt,point:dt,circle:xt,cross:bt,barb:gt},rr=ct;function wt(a,t){t&&a.attr("style",t)}function mt(a){const t=M(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=t.append("xhtml:div"),n=a.label,e=a.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),wt(r,a.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}const kt=(a,t,r,n)=>{let e=a||"";if(typeof e=="object"&&(e=e[0]),$(w().flowchart.htmlLabels)){e=e.replace(/\\n|\n/g,"
"),x.info("vertexText"+e);const i={isNode:n,label:Q(e).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:t.replace("fill:","color:")};return mt(i)}else{const i=document.createElementNS("http://www.w3.org/2000/svg","text");i.setAttribute("style",t.replace("color:","fill:"));let s=[];typeof e=="string"?s=e.split(/\\n|\n|/gi):Array.isArray(e)?s=e:s=[];for(const l of s){const c=document.createElementNS("http://www.w3.org/2000/svg","tspan");c.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),c.setAttribute("dy","1em"),c.setAttribute("x","0"),r?c.setAttribute("class","title-row"):c.setAttribute("class","row"),c.textContent=l.trim(),i.appendChild(c)}return i}},I=kt,_=async(a,t,r,n)=>{let e;const i=t.useHtmlLabels||$(w().flowchart.htmlLabels);r?e=r:e="node default";const s=a.insert("g").attr("class",e).attr("id",t.domId||t.id),l=s.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const o=l.node();let h;t.labelType==="markdown"?h=at(l,J(Q(c),w()),{useHtmlLabels:i,width:t.width||w().flowchart.wrappingWidth,classes:"markdown-node-label"}):h=o.appendChild(I(J(Q(c),w()),t.labelStyle,!1,n));let f=h.getBBox();const y=t.padding/2;if($(w().flowchart.htmlLabels)){const p=h.children[0],u=M(h),k=p.getElementsByTagName("img");if(k){const g=c.replace(/]*>/g,"").trim()==="";await Promise.all([...k].map(d=>new Promise(b=>{function B(){if(d.style.display="flex",d.style.flexDirection="column",g){const C=w().fontSize?w().fontSize:window.getComputedStyle(document.body).fontSize,X=5;d.style.width=parseInt(C,10)*X+"px"}else d.style.width="100%";b(d)}setTimeout(()=>{d.complete&&B()}),d.addEventListener("error",B),d.addEventListener("load",B)})))}f=p.getBoundingClientRect(),u.attr("width",f.width),u.attr("height",f.height)}return i?l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"):l.attr("transform","translate(0, "+-f.height/2+")"),t.centerLabel&&l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:s,bbox:f,halfPadding:y,label:l}},v=(a,t)=>{const r=t.node().getBBox();a.width=r.width,a.height=r.height};function N(a,t,r,n){return a.insert("polygon",":first-child").attr("points",n.map(function(e){return e.x+","+e.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+r/2+")")}function vt(a,t){return a.intersect(t)}function et(a,t,r,n){var e=a.x,i=a.y,s=e-n.x,l=i-n.y,c=Math.sqrt(t*t*l*l+r*r*s*s),o=Math.abs(t*r*s/c);n.x0}function Et(a,t,r){var n=a.x,e=a.y,i=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(u){s=Math.min(s,u.x),l=Math.min(l,u.y)}):(s=Math.min(s,t.x),l=Math.min(l,t.y));for(var c=n-a.width/2-s,o=e-a.height/2-l,h=0;h1&&i.sort(function(u,k){var g=u.x-r.x,d=u.y-r.y,b=Math.sqrt(g*g+d*d),B=k.x-r.x,C=k.y-r.y,X=Math.sqrt(B*B+C*C);return b{var r=a.x,n=a.y,e=t.x-r,i=t.y-n,s=a.width/2,l=a.height/2,c,o;return Math.abs(i)*s>Math.abs(e)*l?(i<0&&(l=-l),c=i===0?0:l*e/i,o=l):(e<0&&(s=-s),c=s,o=e===0?0:s*i/e),{x:r+c,y:n+o}},Mt=Bt,m={node:vt,circle:Lt,ellipse:et,polygon:Et,rect:Mt},_t=async(a,t)=>{t.useHtmlLabels||w().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:n,bbox:e,halfPadding:i}=await _(a,t,"node "+t.classes,!0);x.info("Classes = ",t.classes);const s=n.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-e.width/2-i).attr("y",-e.height/2-i).attr("width",e.width+t.padding).attr("height",e.height+t.padding),v(t,s),t.intersect=function(l){return m.rect(t,l)},n},Ct=_t,K=a=>a?" "+a:"",R=(a,t)=>`${t||"node default"}${K(a.classes)} ${K(a.class)}`,G=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=e+i,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];x.info("Question main (Circle)");const c=N(r,s,s,l);return c.attr("style",t.style),v(t,c),t.intersect=function(o){return x.warn("Intersect called"),m.polygon(t,l,o)},r},Tt=(a,t)=>{const r=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=28,e=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",e.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(s){return m.circle(t,14,s)},r},Rt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=4,i=n.height+t.padding,s=i/e,l=n.width+2*s+t.padding,c=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-i/2},{x:l-s,y:-i},{x:s,y:-i},{x:0,y:-i/2}],o=N(r,l,i,c);return o.attr("style",t.style),v(t,o),t.intersect=function(h){return m.polygon(t,c,h)},r},It=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:-i/2,y:0},{x:e,y:0},{x:e,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}];return N(r,e,i,s).attr("style",t.style),t.width=e+i,t.height=i,t.intersect=function(c){return m.polygon(t,s,c)},r},$t=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:-2*i/6,y:0},{x:e-i/6,y:0},{x:e+2*i/6,y:-i},{x:i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Ht=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:2*i/6,y:0},{x:e+i/6,y:0},{x:e-2*i/6,y:-i},{x:-i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Nt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:-2*i/6,y:0},{x:e+2*i/6,y:0},{x:e-i/6,y:-i},{x:i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Ot=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:i/6,y:0},{x:e-i/6,y:0},{x:e+2*i/6,y:-i},{x:-2*i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Xt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:0,y:0},{x:e+i/2,y:0},{x:e,y:-i/2},{x:e+i/2,y:-i},{x:0,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Yt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=e/2,s=i/(2.5+e/50),l=n.height+s+t.padding,c="M 0,"+s+" a "+i+","+s+" 0,0,0 "+e+" 0 a "+i+","+s+" 0,0,0 "+-e+" 0 l 0,"+l+" a "+i+","+s+" 0,0,0 "+e+" 0 l 0,"+-l,o=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-e/2+","+-(l/2+s)+")");return v(t,o),t.intersect=function(h){const f=m.rect(t,h),y=f.x-t.x;if(i!=0&&(Math.abs(y)t.height/2-s)){let p=s*s*(1-y*y/(i*i));p!=0&&(p=Math.sqrt(p)),p=s-p,h.y-t.y>0&&(p=-p),f.y+=p}return f},r},Wt=async(a,t)=>{const{shapeSvg:r,bbox:n,halfPadding:e}=await _(a,t,"node "+t.classes+" "+t.class,!0),i=r.insert("rect",":first-child"),s=n.width+t.padding,l=n.height+t.padding;if(i.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",-n.width/2-e).attr("y",-n.height/2-e).attr("width",s).attr("height",l),t.props){const c=new Set(Object.keys(t.props));t.props.borders&&(st(i,t.props.borders,s,l),c.delete("borders")),c.forEach(o=>{x.warn(`Unknown node property ${o}`)})}return v(t,i),t.intersect=function(c){return m.rect(t,c)},r},Dt=async(a,t)=>{const{shapeSvg:r}=await _(a,t,"label",!0);x.trace("Classes = ",t.class);const n=r.insert("rect",":first-child"),e=0,i=0;if(n.attr("width",e).attr("height",i),r.attr("class","label edgeLabel"),t.props){const s=new Set(Object.keys(t.props));t.props.borders&&(st(n,t.props.borders,e,i),s.delete("borders")),s.forEach(l=>{x.warn(`Unknown node property ${l}`)})}return v(t,n),t.intersect=function(s){return m.rect(t,s)},r};function st(a,t,r,n){const e=[],i=l=>{e.push(l,0)},s=l=>{e.push(0,l)};t.includes("t")?(x.debug("add top border"),i(r)):s(r),t.includes("r")?(x.debug("add right border"),i(n)):s(n),t.includes("b")?(x.debug("add bottom border"),i(r)):s(r),t.includes("l")?(x.debug("add left border"),i(n)):s(n),a.attr("stroke-dasharray",e.join(" "))}const jt=(a,t)=>{let r;t.classes?r="node "+t.classes:r="node default";const n=a.insert("g").attr("class",r).attr("id",t.domId||t.id),e=n.insert("rect",":first-child"),i=n.insert("line"),s=n.insert("g").attr("class","label"),l=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof l=="object"?c=l[0]:c=l,x.info("Label text abc79",c,l,typeof l=="object");const o=s.node().appendChild(I(c,t.labelStyle,!0,!0));let h={width:0,height:0};if($(w().flowchart.htmlLabels)){const k=o.children[0],g=M(o);h=k.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}x.info("Text 2",l);const f=l.slice(1,l.length);let y=o.getBBox();const p=s.node().appendChild(I(f.join?f.join("
"):f,t.labelStyle,!0,!0));if($(w().flowchart.htmlLabels)){const k=p.children[0],g=M(p);h=k.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}const u=t.padding/2;return M(p).attr("transform","translate( "+(h.width>y.width?0:(y.width-h.width)/2)+", "+(y.height+u+5)+")"),M(o).attr("transform","translate( "+(h.width{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.height+t.padding,i=n.width+e/4+t.padding,s=r.insert("rect",":first-child").attr("style",t.style).attr("rx",e/2).attr("ry",e/2).attr("x",-i/2).attr("y",-e/2).attr("width",i).attr("height",e);return v(t,s),t.intersect=function(l){return m.rect(t,l)},r},Ut=async(a,t)=>{const{shapeSvg:r,bbox:n,halfPadding:e}=await _(a,t,R(t,void 0),!0),i=r.insert("circle",":first-child");return i.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+e).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("Circle main"),v(t,i),t.intersect=function(s){return x.info("Circle intersect",t,n.width/2+e,s),m.circle(t,n.width/2+e,s)},r},zt=async(a,t)=>{const{shapeSvg:r,bbox:n,halfPadding:e}=await _(a,t,R(t,void 0),!0),i=5,s=r.insert("g",":first-child"),l=s.insert("circle"),c=s.insert("circle");return s.attr("class",t.class),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+e+i).attr("width",n.width+t.padding+i*2).attr("height",n.height+t.padding+i*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+e).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("DoubleCircle main"),v(t,l),t.intersect=function(o){return x.info("DoubleCircle intersect",t,n.width/2+e+i,o),m.circle(t,n.width/2+e+i,o)},r},Zt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:0,y:0},{x:e,y:0},{x:e,y:-i},{x:0,y:-i},{x:0,y:0},{x:-8,y:0},{x:e+8,y:0},{x:e+8,y:-i},{x:-8,y:-i},{x:-8,y:0}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Ft=(a,t)=>{const r=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),v(t,n),t.intersect=function(e){return m.circle(t,7,e)},r},P=(a,t,r)=>{const n=a.insert("g").attr("class","node default").attr("id",t.domId||t.id);let e=70,i=10;r==="LR"&&(e=10,i=70);const s=n.append("rect").attr("x",-1*e/2).attr("y",-1*i/2).attr("width",e).attr("height",i).attr("class","fork-join");return v(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(l){return m.rect(t,l)},n},Qt=(a,t)=>{const r=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child"),e=r.insert("circle",":first-child");return e.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),v(t,e),t.intersect=function(i){return m.circle(t,7,i)},r},Vt=(a,t)=>{const r=t.padding/2,n=4,e=8;let i;t.classes?i="node "+t.classes:i="node default";const s=a.insert("g").attr("class",i).attr("id",t.domId||t.id),l=s.insert("rect",":first-child"),c=s.insert("line"),o=s.insert("line");let h=0,f=n;const y=s.insert("g").attr("class","label");let p=0;const u=t.classData.annotations&&t.classData.annotations[0],k=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",g=y.node().appendChild(I(k,t.labelStyle,!0,!0));let d=g.getBBox();if($(w().flowchart.htmlLabels)){const L=g.children[0],S=M(g);d=L.getBoundingClientRect(),S.attr("width",d.width),S.attr("height",d.height)}t.classData.annotations[0]&&(f+=d.height+n,h+=d.width);let b=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(w().flowchart.htmlLabels?b+="<"+t.classData.type+">":b+="<"+t.classData.type+">");const B=y.node().appendChild(I(b,t.labelStyle,!0,!0));M(B).attr("class","classTitle");let C=B.getBBox();if($(w().flowchart.htmlLabels)){const L=B.children[0],S=M(B);C=L.getBoundingClientRect(),S.attr("width",C.width),S.attr("height",C.height)}f+=C.height+n,C.width>h&&(h=C.width);const X=[];t.classData.members.forEach(L=>{const S=L.getDisplayDetails();let Y=S.displayText;w().flowchart.htmlLabels&&(Y=Y.replace(//g,">"));const H=y.node().appendChild(I(Y,S.cssStyle?S.cssStyle:t.labelStyle,!0,!0));let T=H.getBBox();if($(w().flowchart.htmlLabels)){const F=H.children[0],D=M(H);T=F.getBoundingClientRect(),D.attr("width",T.width),D.attr("height",T.height)}T.width>h&&(h=T.width),f+=T.height+n,X.push(H)}),f+=e;const V=[];if(t.classData.methods.forEach(L=>{const S=L.getDisplayDetails();let Y=S.displayText;w().flowchart.htmlLabels&&(Y=Y.replace(//g,">"));const H=y.node().appendChild(I(Y,S.cssStyle?S.cssStyle:t.labelStyle,!0,!0));let T=H.getBBox();if($(w().flowchart.htmlLabels)){const F=H.children[0],D=M(H);T=F.getBoundingClientRect(),D.attr("width",T.width),D.attr("height",T.height)}T.width>h&&(h=T.width),f+=T.height+n,V.push(H)}),f+=e,u){let L=(h-d.width)/2;M(g).attr("transform","translate( "+(-1*h/2+L)+", "+-1*f/2+")"),p=d.height+n}let it=(h-C.width)/2;return M(B).attr("transform","translate( "+(-1*h/2+it)+", "+(-1*f/2+p)+")"),p+=C.height+n,c.attr("class","divider").attr("x1",-h/2-r).attr("x2",h/2+r).attr("y1",-f/2-r+e+p).attr("y2",-f/2-r+e+p),p+=e,X.forEach(L=>{M(L).attr("transform","translate( "+-h/2+", "+(-1*f/2+p+e/2)+")");const S=L==null?void 0:L.getBBox();p+=((S==null?void 0:S.height)??0)+n}),p+=e,o.attr("class","divider").attr("x1",-h/2-r).attr("x2",h/2+r).attr("y1",-f/2-r+e+p).attr("y2",-f/2-r+e+p),p+=e,V.forEach(L=>{M(L).attr("transform","translate( "+-h/2+", "+(-1*f/2+p)+")");const S=L==null?void 0:L.getBBox();p+=((S==null?void 0:S.height)??0)+n}),l.attr("class","outer title-state").attr("x",-h/2-r).attr("y",-(f/2)-r).attr("width",h+t.padding).attr("height",f+t.padding),v(t,l),t.intersect=function(L){return m.rect(t,L)},s},tt={rhombus:G,question:G,rect:Wt,labelRect:Dt,rectWithTitle:jt,choice:Tt,circle:Ut,doublecircle:zt,stadium:At,hexagon:Rt,rect_left_inv_arrow:It,lean_right:$t,lean_left:Ht,trapezoid:Nt,inv_trapezoid:Ot,rect_right_inv_arrow:Xt,cylinder:Yt,start:Ft,end:Qt,note:Ct,subroutine:Zt,fork:P,join:P,class_box:Vt};let W={};const ar=async(a,t,r)=>{let n,e;if(t.link){let i;w().securityLevel==="sandbox"?i="_top":t.linkTarget&&(i=t.linkTarget||"_blank"),n=a.insert("svg:a").attr("xlink:href",t.link).attr("target",i),e=await tt[t.shape](n,t,r)}else e=await tt[t.shape](a,t,r),n=e;return t.tooltip&&e.attr("title",t.tooltip),t.class&&e.attr("class","node default "+t.class),W[t.id]=n,t.haveCallback&&W[t.id].attr("class",W[t.id].attr("class")+" clickable"),n},er=(a,t)=>{W[t.id]=a},sr=()=>{W={}},ir=a=>{const t=W[a.id];x.trace("Transforming node",a.diff,a,"translate("+(a.x-a.width/2-5)+", "+a.width/2+")");const r=8,n=a.diff||0;return a.clusterNode?t.attr("transform","translate("+(a.x+n-a.width/2)+", "+(a.y-a.height/2-r)+")"):t.attr("transform","translate("+a.x+", "+a.y+")"),n},O={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function A(a,t){a=z(a),t=z(t);const[r,n]=[a.x,a.y],[e,i]=[t.x,t.y],s=e-r,l=i-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}const z=a=>Array.isArray(a)?{x:a[0],y:a[1]}:a,Jt=a=>({x:function(t,r,n){let e=0;if(r===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:i,deltaX:s}=A(n[0],n[1]);e=O[a.arrowTypeStart]*Math.cos(i)*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:i,deltaX:s}=A(n[n.length-1],n[n.length-2]);e=O[a.arrowTypeEnd]*Math.cos(i)*(s>=0?1:-1)}return z(t).x+e},y:function(t,r,n){let e=0;if(r===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:i,deltaY:s}=A(n[0],n[1]);e=O[a.arrowTypeStart]*Math.abs(Math.sin(i))*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:i,deltaY:s}=A(n[n.length-1],n[n.length-2]);e=O[a.arrowTypeEnd]*Math.abs(Math.sin(i))*(s>=0?1:-1)}return z(t).y+e}});let Z={},E={};const nr=()=>{Z={},E={}},lr=(a,t)=>{const r=$(w().flowchart.htmlLabels),n=t.labelType==="markdown"?at(a,t.label,{style:t.labelStyle,useHtmlLabels:r,addSvgBackground:!0}):I(t.label,t.labelStyle);x.info("abc82",t,t.labelType);const e=a.insert("g").attr("class","edgeLabel"),i=e.insert("g").attr("class","label");i.node().appendChild(n);let s=n.getBBox();if(r){const c=n.children[0],o=M(n);s=c.getBoundingClientRect(),o.attr("width",s.width),o.attr("height",s.height)}i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),Z[t.id]=e,t.width=s.width,t.height=s.height;let l;if(t.startLabelLeft){const c=I(t.startLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),E[t.id]||(E[t.id]={}),E[t.id].startLeft=o,U(l,t.startLabelLeft)}if(t.startLabelRight){const c=I(t.startLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=o.node().appendChild(c),h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),E[t.id]||(E[t.id]={}),E[t.id].startRight=o,U(l,t.startLabelRight)}if(t.endLabelLeft){const c=I(t.endLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),E[t.id]||(E[t.id]={}),E[t.id].endLeft=o,U(l,t.endLabelLeft)}if(t.endLabelRight){const c=I(t.endLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),E[t.id]||(E[t.id]={}),E[t.id].endRight=o,U(l,t.endLabelRight)}return n};function U(a,t){w().flowchart.htmlLabels&&a&&(a.style.width=t.length*9+"px",a.style.height="12px")}const cr=(a,t)=>{x.info("Moving label abc78 ",a.id,a.label,Z[a.id]);let r=t.updatedPath?t.updatedPath:t.originalPath;if(a.label){const n=Z[a.id];let e=a.x,i=a.y;if(r){const s=j.calcLabelPosition(r);x.info("Moving label "+a.label+" from (",e,",",i,") to (",s.x,",",s.y,") abc78"),t.updatedPath&&(e=s.x,i=s.y)}n.attr("transform","translate("+e+", "+i+")")}if(a.startLabelLeft){const n=E[a.id].startLeft;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_left",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}if(a.startLabelRight){const n=E[a.id].startRight;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_right",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}if(a.endLabelLeft){const n=E[a.id].endLeft;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_left",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}if(a.endLabelRight){const n=E[a.id].endRight;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_right",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}},qt=(a,t)=>{const r=a.x,n=a.y,e=Math.abs(t.x-r),i=Math.abs(t.y-n),s=a.width/2,l=a.height/2;return e>=s||i>=l},Kt=(a,t,r)=>{x.warn(`intersection calc abc89: +import{r as $,c as w,d as J,ao as Q,h as M,l as x,z as j,ap as nt}from"./mermaid-934d9bea.JP-6_YN_.js";import{c as at}from"./createText-aebacdfe.QPUQ3eAz.js";import{l as lt}from"./line.uArpYtMu.js";const ct=(a,t,r,n)=>{t.forEach(e=>{ut[e](a,r,n)})},ht=(a,t,r)=>{x.trace("Making markers for ",r),a.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},ot=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},ft=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},pt=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),a.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},yt=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),a.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},dt=(a,t,r)=>{a.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},xt=(a,t,r)=>{a.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),a.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},bt=(a,t,r)=>{a.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),a.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},gt=(a,t,r)=>{a.append("defs").append("marker").attr("id",r+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},ut={extension:ht,composition:ot,aggregation:ft,dependency:pt,lollipop:yt,point:dt,circle:xt,cross:bt,barb:gt},rr=ct;function wt(a,t){t&&a.attr("style",t)}function mt(a){const t=M(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=t.append("xhtml:div"),n=a.label,e=a.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),wt(r,a.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}const kt=(a,t,r,n)=>{let e=a||"";if(typeof e=="object"&&(e=e[0]),$(w().flowchart.htmlLabels)){e=e.replace(/\\n|\n/g,"
"),x.info("vertexText"+e);const i={isNode:n,label:Q(e).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:t.replace("fill:","color:")};return mt(i)}else{const i=document.createElementNS("http://www.w3.org/2000/svg","text");i.setAttribute("style",t.replace("color:","fill:"));let s=[];typeof e=="string"?s=e.split(/\\n|\n|/gi):Array.isArray(e)?s=e:s=[];for(const l of s){const c=document.createElementNS("http://www.w3.org/2000/svg","tspan");c.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),c.setAttribute("dy","1em"),c.setAttribute("x","0"),r?c.setAttribute("class","title-row"):c.setAttribute("class","row"),c.textContent=l.trim(),i.appendChild(c)}return i}},I=kt,_=async(a,t,r,n)=>{let e;const i=t.useHtmlLabels||$(w().flowchart.htmlLabels);r?e=r:e="node default";const s=a.insert("g").attr("class",e).attr("id",t.domId||t.id),l=s.insert("g").attr("class","label").attr("style",t.labelStyle);let c;t.labelText===void 0?c="":c=typeof t.labelText=="string"?t.labelText:t.labelText[0];const o=l.node();let h;t.labelType==="markdown"?h=at(l,J(Q(c),w()),{useHtmlLabels:i,width:t.width||w().flowchart.wrappingWidth,classes:"markdown-node-label"}):h=o.appendChild(I(J(Q(c),w()),t.labelStyle,!1,n));let f=h.getBBox();const y=t.padding/2;if($(w().flowchart.htmlLabels)){const p=h.children[0],u=M(h),k=p.getElementsByTagName("img");if(k){const g=c.replace(/]*>/g,"").trim()==="";await Promise.all([...k].map(d=>new Promise(b=>{function B(){if(d.style.display="flex",d.style.flexDirection="column",g){const C=w().fontSize?w().fontSize:window.getComputedStyle(document.body).fontSize,X=5;d.style.width=parseInt(C,10)*X+"px"}else d.style.width="100%";b(d)}setTimeout(()=>{d.complete&&B()}),d.addEventListener("error",B),d.addEventListener("load",B)})))}f=p.getBoundingClientRect(),u.attr("width",f.width),u.attr("height",f.height)}return i?l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"):l.attr("transform","translate(0, "+-f.height/2+")"),t.centerLabel&&l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:s,bbox:f,halfPadding:y,label:l}},v=(a,t)=>{const r=t.node().getBBox();a.width=r.width,a.height=r.height};function N(a,t,r,n){return a.insert("polygon",":first-child").attr("points",n.map(function(e){return e.x+","+e.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+r/2+")")}function vt(a,t){return a.intersect(t)}function et(a,t,r,n){var e=a.x,i=a.y,s=e-n.x,l=i-n.y,c=Math.sqrt(t*t*l*l+r*r*s*s),o=Math.abs(t*r*s/c);n.x0}function Et(a,t,r){var n=a.x,e=a.y,i=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(u){s=Math.min(s,u.x),l=Math.min(l,u.y)}):(s=Math.min(s,t.x),l=Math.min(l,t.y));for(var c=n-a.width/2-s,o=e-a.height/2-l,h=0;h1&&i.sort(function(u,k){var g=u.x-r.x,d=u.y-r.y,b=Math.sqrt(g*g+d*d),B=k.x-r.x,C=k.y-r.y,X=Math.sqrt(B*B+C*C);return b{var r=a.x,n=a.y,e=t.x-r,i=t.y-n,s=a.width/2,l=a.height/2,c,o;return Math.abs(i)*s>Math.abs(e)*l?(i<0&&(l=-l),c=i===0?0:l*e/i,o=l):(e<0&&(s=-s),c=s,o=e===0?0:s*i/e),{x:r+c,y:n+o}},Mt=Bt,m={node:vt,circle:Lt,ellipse:et,polygon:Et,rect:Mt},_t=async(a,t)=>{t.useHtmlLabels||w().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:n,bbox:e,halfPadding:i}=await _(a,t,"node "+t.classes,!0);x.info("Classes = ",t.classes);const s=n.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-e.width/2-i).attr("y",-e.height/2-i).attr("width",e.width+t.padding).attr("height",e.height+t.padding),v(t,s),t.intersect=function(l){return m.rect(t,l)},n},Ct=_t,K=a=>a?" "+a:"",R=(a,t)=>`${t||"node default"}${K(a.classes)} ${K(a.class)}`,G=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=e+i,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];x.info("Question main (Circle)");const c=N(r,s,s,l);return c.attr("style",t.style),v(t,c),t.intersect=function(o){return x.warn("Intersect called"),m.polygon(t,l,o)},r},Tt=(a,t)=>{const r=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=28,e=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",e.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(s){return m.circle(t,14,s)},r},Rt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=4,i=n.height+t.padding,s=i/e,l=n.width+2*s+t.padding,c=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-i/2},{x:l-s,y:-i},{x:s,y:-i},{x:0,y:-i/2}],o=N(r,l,i,c);return o.attr("style",t.style),v(t,o),t.intersect=function(h){return m.polygon(t,c,h)},r},It=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:-i/2,y:0},{x:e,y:0},{x:e,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}];return N(r,e,i,s).attr("style",t.style),t.width=e+i,t.height=i,t.intersect=function(c){return m.polygon(t,s,c)},r},$t=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:-2*i/6,y:0},{x:e-i/6,y:0},{x:e+2*i/6,y:-i},{x:i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Ht=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:2*i/6,y:0},{x:e+i/6,y:0},{x:e-2*i/6,y:-i},{x:-i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Nt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:-2*i/6,y:0},{x:e+2*i/6,y:0},{x:e-i/6,y:-i},{x:i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Ot=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:i/6,y:0},{x:e-i/6,y:0},{x:e+2*i/6,y:-i},{x:-2*i/6,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Xt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:0,y:0},{x:e+i/2,y:0},{x:e,y:-i/2},{x:e+i/2,y:-i},{x:0,y:-i}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Yt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=e/2,s=i/(2.5+e/50),l=n.height+s+t.padding,c="M 0,"+s+" a "+i+","+s+" 0,0,0 "+e+" 0 a "+i+","+s+" 0,0,0 "+-e+" 0 l 0,"+l+" a "+i+","+s+" 0,0,0 "+e+" 0 l 0,"+-l,o=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-e/2+","+-(l/2+s)+")");return v(t,o),t.intersect=function(h){const f=m.rect(t,h),y=f.x-t.x;if(i!=0&&(Math.abs(y)t.height/2-s)){let p=s*s*(1-y*y/(i*i));p!=0&&(p=Math.sqrt(p)),p=s-p,h.y-t.y>0&&(p=-p),f.y+=p}return f},r},Wt=async(a,t)=>{const{shapeSvg:r,bbox:n,halfPadding:e}=await _(a,t,"node "+t.classes+" "+t.class,!0),i=r.insert("rect",":first-child"),s=n.width+t.padding,l=n.height+t.padding;if(i.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",-n.width/2-e).attr("y",-n.height/2-e).attr("width",s).attr("height",l),t.props){const c=new Set(Object.keys(t.props));t.props.borders&&(st(i,t.props.borders,s,l),c.delete("borders")),c.forEach(o=>{x.warn(`Unknown node property ${o}`)})}return v(t,i),t.intersect=function(c){return m.rect(t,c)},r},Dt=async(a,t)=>{const{shapeSvg:r}=await _(a,t,"label",!0);x.trace("Classes = ",t.class);const n=r.insert("rect",":first-child"),e=0,i=0;if(n.attr("width",e).attr("height",i),r.attr("class","label edgeLabel"),t.props){const s=new Set(Object.keys(t.props));t.props.borders&&(st(n,t.props.borders,e,i),s.delete("borders")),s.forEach(l=>{x.warn(`Unknown node property ${l}`)})}return v(t,n),t.intersect=function(s){return m.rect(t,s)},r};function st(a,t,r,n){const e=[],i=l=>{e.push(l,0)},s=l=>{e.push(0,l)};t.includes("t")?(x.debug("add top border"),i(r)):s(r),t.includes("r")?(x.debug("add right border"),i(n)):s(n),t.includes("b")?(x.debug("add bottom border"),i(r)):s(r),t.includes("l")?(x.debug("add left border"),i(n)):s(n),a.attr("stroke-dasharray",e.join(" "))}const jt=(a,t)=>{let r;t.classes?r="node "+t.classes:r="node default";const n=a.insert("g").attr("class",r).attr("id",t.domId||t.id),e=n.insert("rect",":first-child"),i=n.insert("line"),s=n.insert("g").attr("class","label"),l=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof l=="object"?c=l[0]:c=l,x.info("Label text abc79",c,l,typeof l=="object");const o=s.node().appendChild(I(c,t.labelStyle,!0,!0));let h={width:0,height:0};if($(w().flowchart.htmlLabels)){const k=o.children[0],g=M(o);h=k.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}x.info("Text 2",l);const f=l.slice(1,l.length);let y=o.getBBox();const p=s.node().appendChild(I(f.join?f.join("
"):f,t.labelStyle,!0,!0));if($(w().flowchart.htmlLabels)){const k=p.children[0],g=M(p);h=k.getBoundingClientRect(),g.attr("width",h.width),g.attr("height",h.height)}const u=t.padding/2;return M(p).attr("transform","translate( "+(h.width>y.width?0:(y.width-h.width)/2)+", "+(y.height+u+5)+")"),M(o).attr("transform","translate( "+(h.width{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.height+t.padding,i=n.width+e/4+t.padding,s=r.insert("rect",":first-child").attr("style",t.style).attr("rx",e/2).attr("ry",e/2).attr("x",-i/2).attr("y",-e/2).attr("width",i).attr("height",e);return v(t,s),t.intersect=function(l){return m.rect(t,l)},r},Ut=async(a,t)=>{const{shapeSvg:r,bbox:n,halfPadding:e}=await _(a,t,R(t,void 0),!0),i=r.insert("circle",":first-child");return i.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+e).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("Circle main"),v(t,i),t.intersect=function(s){return x.info("Circle intersect",t,n.width/2+e,s),m.circle(t,n.width/2+e,s)},r},zt=async(a,t)=>{const{shapeSvg:r,bbox:n,halfPadding:e}=await _(a,t,R(t,void 0),!0),i=5,s=r.insert("g",":first-child"),l=s.insert("circle"),c=s.insert("circle");return s.attr("class",t.class),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+e+i).attr("width",n.width+t.padding+i*2).attr("height",n.height+t.padding+i*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+e).attr("width",n.width+t.padding).attr("height",n.height+t.padding),x.info("DoubleCircle main"),v(t,l),t.intersect=function(o){return x.info("DoubleCircle intersect",t,n.width/2+e+i,o),m.circle(t,n.width/2+e+i,o)},r},Zt=async(a,t)=>{const{shapeSvg:r,bbox:n}=await _(a,t,R(t,void 0),!0),e=n.width+t.padding,i=n.height+t.padding,s=[{x:0,y:0},{x:e,y:0},{x:e,y:-i},{x:0,y:-i},{x:0,y:0},{x:-8,y:0},{x:e+8,y:0},{x:e+8,y:-i},{x:-8,y:-i},{x:-8,y:0}],l=N(r,e,i,s);return l.attr("style",t.style),v(t,l),t.intersect=function(c){return m.polygon(t,s,c)},r},Ft=(a,t)=>{const r=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),v(t,n),t.intersect=function(e){return m.circle(t,7,e)},r},P=(a,t,r)=>{const n=a.insert("g").attr("class","node default").attr("id",t.domId||t.id);let e=70,i=10;r==="LR"&&(e=10,i=70);const s=n.append("rect").attr("x",-1*e/2).attr("y",-1*i/2).attr("width",e).attr("height",i).attr("class","fork-join");return v(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(l){return m.rect(t,l)},n},Qt=(a,t)=>{const r=a.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child"),e=r.insert("circle",":first-child");return e.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),v(t,e),t.intersect=function(i){return m.circle(t,7,i)},r},Vt=(a,t)=>{const r=t.padding/2,n=4,e=8;let i;t.classes?i="node "+t.classes:i="node default";const s=a.insert("g").attr("class",i).attr("id",t.domId||t.id),l=s.insert("rect",":first-child"),c=s.insert("line"),o=s.insert("line");let h=0,f=n;const y=s.insert("g").attr("class","label");let p=0;const u=t.classData.annotations&&t.classData.annotations[0],k=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",g=y.node().appendChild(I(k,t.labelStyle,!0,!0));let d=g.getBBox();if($(w().flowchart.htmlLabels)){const L=g.children[0],S=M(g);d=L.getBoundingClientRect(),S.attr("width",d.width),S.attr("height",d.height)}t.classData.annotations[0]&&(f+=d.height+n,h+=d.width);let b=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(w().flowchart.htmlLabels?b+="<"+t.classData.type+">":b+="<"+t.classData.type+">");const B=y.node().appendChild(I(b,t.labelStyle,!0,!0));M(B).attr("class","classTitle");let C=B.getBBox();if($(w().flowchart.htmlLabels)){const L=B.children[0],S=M(B);C=L.getBoundingClientRect(),S.attr("width",C.width),S.attr("height",C.height)}f+=C.height+n,C.width>h&&(h=C.width);const X=[];t.classData.members.forEach(L=>{const S=L.getDisplayDetails();let Y=S.displayText;w().flowchart.htmlLabels&&(Y=Y.replace(//g,">"));const H=y.node().appendChild(I(Y,S.cssStyle?S.cssStyle:t.labelStyle,!0,!0));let T=H.getBBox();if($(w().flowchart.htmlLabels)){const F=H.children[0],D=M(H);T=F.getBoundingClientRect(),D.attr("width",T.width),D.attr("height",T.height)}T.width>h&&(h=T.width),f+=T.height+n,X.push(H)}),f+=e;const V=[];if(t.classData.methods.forEach(L=>{const S=L.getDisplayDetails();let Y=S.displayText;w().flowchart.htmlLabels&&(Y=Y.replace(//g,">"));const H=y.node().appendChild(I(Y,S.cssStyle?S.cssStyle:t.labelStyle,!0,!0));let T=H.getBBox();if($(w().flowchart.htmlLabels)){const F=H.children[0],D=M(H);T=F.getBoundingClientRect(),D.attr("width",T.width),D.attr("height",T.height)}T.width>h&&(h=T.width),f+=T.height+n,V.push(H)}),f+=e,u){let L=(h-d.width)/2;M(g).attr("transform","translate( "+(-1*h/2+L)+", "+-1*f/2+")"),p=d.height+n}let it=(h-C.width)/2;return M(B).attr("transform","translate( "+(-1*h/2+it)+", "+(-1*f/2+p)+")"),p+=C.height+n,c.attr("class","divider").attr("x1",-h/2-r).attr("x2",h/2+r).attr("y1",-f/2-r+e+p).attr("y2",-f/2-r+e+p),p+=e,X.forEach(L=>{M(L).attr("transform","translate( "+-h/2+", "+(-1*f/2+p+e/2)+")");const S=L==null?void 0:L.getBBox();p+=((S==null?void 0:S.height)??0)+n}),p+=e,o.attr("class","divider").attr("x1",-h/2-r).attr("x2",h/2+r).attr("y1",-f/2-r+e+p).attr("y2",-f/2-r+e+p),p+=e,V.forEach(L=>{M(L).attr("transform","translate( "+-h/2+", "+(-1*f/2+p)+")");const S=L==null?void 0:L.getBBox();p+=((S==null?void 0:S.height)??0)+n}),l.attr("class","outer title-state").attr("x",-h/2-r).attr("y",-(f/2)-r).attr("width",h+t.padding).attr("height",f+t.padding),v(t,l),t.intersect=function(L){return m.rect(t,L)},s},tt={rhombus:G,question:G,rect:Wt,labelRect:Dt,rectWithTitle:jt,choice:Tt,circle:Ut,doublecircle:zt,stadium:At,hexagon:Rt,rect_left_inv_arrow:It,lean_right:$t,lean_left:Ht,trapezoid:Nt,inv_trapezoid:Ot,rect_right_inv_arrow:Xt,cylinder:Yt,start:Ft,end:Qt,note:Ct,subroutine:Zt,fork:P,join:P,class_box:Vt};let W={};const ar=async(a,t,r)=>{let n,e;if(t.link){let i;w().securityLevel==="sandbox"?i="_top":t.linkTarget&&(i=t.linkTarget||"_blank"),n=a.insert("svg:a").attr("xlink:href",t.link).attr("target",i),e=await tt[t.shape](n,t,r)}else e=await tt[t.shape](a,t,r),n=e;return t.tooltip&&e.attr("title",t.tooltip),t.class&&e.attr("class","node default "+t.class),W[t.id]=n,t.haveCallback&&W[t.id].attr("class",W[t.id].attr("class")+" clickable"),n},er=(a,t)=>{W[t.id]=a},sr=()=>{W={}},ir=a=>{const t=W[a.id];x.trace("Transforming node",a.diff,a,"translate("+(a.x-a.width/2-5)+", "+a.width/2+")");const r=8,n=a.diff||0;return a.clusterNode?t.attr("transform","translate("+(a.x+n-a.width/2)+", "+(a.y-a.height/2-r)+")"):t.attr("transform","translate("+a.x+", "+a.y+")"),n},O={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function A(a,t){a=z(a),t=z(t);const[r,n]=[a.x,a.y],[e,i]=[t.x,t.y],s=e-r,l=i-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}const z=a=>Array.isArray(a)?{x:a[0],y:a[1]}:a,Jt=a=>({x:function(t,r,n){let e=0;if(r===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:i,deltaX:s}=A(n[0],n[1]);e=O[a.arrowTypeStart]*Math.cos(i)*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:i,deltaX:s}=A(n[n.length-1],n[n.length-2]);e=O[a.arrowTypeEnd]*Math.cos(i)*(s>=0?1:-1)}return z(t).x+e},y:function(t,r,n){let e=0;if(r===0&&Object.hasOwn(O,a.arrowTypeStart)){const{angle:i,deltaY:s}=A(n[0],n[1]);e=O[a.arrowTypeStart]*Math.abs(Math.sin(i))*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(O,a.arrowTypeEnd)){const{angle:i,deltaY:s}=A(n[n.length-1],n[n.length-2]);e=O[a.arrowTypeEnd]*Math.abs(Math.sin(i))*(s>=0?1:-1)}return z(t).y+e}});let Z={},E={};const nr=()=>{Z={},E={}},lr=(a,t)=>{const r=$(w().flowchart.htmlLabels),n=t.labelType==="markdown"?at(a,t.label,{style:t.labelStyle,useHtmlLabels:r,addSvgBackground:!0}):I(t.label,t.labelStyle);x.info("abc82",t,t.labelType);const e=a.insert("g").attr("class","edgeLabel"),i=e.insert("g").attr("class","label");i.node().appendChild(n);let s=n.getBBox();if(r){const c=n.children[0],o=M(n);s=c.getBoundingClientRect(),o.attr("width",s.width),o.attr("height",s.height)}i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),Z[t.id]=e,t.width=s.width,t.height=s.height;let l;if(t.startLabelLeft){const c=I(t.startLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),E[t.id]||(E[t.id]={}),E[t.id].startLeft=o,U(l,t.startLabelLeft)}if(t.startLabelRight){const c=I(t.startLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=o.node().appendChild(c),h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),E[t.id]||(E[t.id]={}),E[t.id].startRight=o,U(l,t.startLabelRight)}if(t.endLabelLeft){const c=I(t.endLabelLeft,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),E[t.id]||(E[t.id]={}),E[t.id].endLeft=o,U(l,t.endLabelLeft)}if(t.endLabelRight){const c=I(t.endLabelRight,t.labelStyle),o=a.insert("g").attr("class","edgeTerminals"),h=o.insert("g").attr("class","inner");l=h.node().appendChild(c);const f=c.getBBox();h.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),o.node().appendChild(c),E[t.id]||(E[t.id]={}),E[t.id].endRight=o,U(l,t.endLabelRight)}return n};function U(a,t){w().flowchart.htmlLabels&&a&&(a.style.width=t.length*9+"px",a.style.height="12px")}const cr=(a,t)=>{x.info("Moving label abc78 ",a.id,a.label,Z[a.id]);let r=t.updatedPath?t.updatedPath:t.originalPath;if(a.label){const n=Z[a.id];let e=a.x,i=a.y;if(r){const s=j.calcLabelPosition(r);x.info("Moving label "+a.label+" from (",e,",",i,") to (",s.x,",",s.y,") abc78"),t.updatedPath&&(e=s.x,i=s.y)}n.attr("transform","translate("+e+", "+i+")")}if(a.startLabelLeft){const n=E[a.id].startLeft;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_left",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}if(a.startLabelRight){const n=E[a.id].startRight;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeStart?10:0,"start_right",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}if(a.endLabelLeft){const n=E[a.id].endLeft;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_left",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}if(a.endLabelRight){const n=E[a.id].endRight;let e=a.x,i=a.y;if(r){const s=j.calcTerminalLabelPosition(a.arrowTypeEnd?10:0,"end_right",r);e=s.x,i=s.y}n.attr("transform","translate("+e+", "+i+")")}},qt=(a,t)=>{const r=a.x,n=a.y,e=Math.abs(t.x-r),i=Math.abs(t.y-n),s=a.width/2,l=a.height/2;return e>=s||i>=l},Kt=(a,t,r)=>{x.warn(`intersection calc abc89: outsidePoint: ${JSON.stringify(t)} insidePoint : ${JSON.stringify(r)} node : x:${a.x} y:${a.y} w:${a.width} h:${a.height}`);const n=a.x,e=a.y,i=Math.abs(n-r.x),s=a.width/2;let l=r.xMath.abs(n-t.x)*c){let f=r.y{x.warn("abc88 cutPathAtIntersect",a,t);let r=[],n=a[0],e=!1;return a.forEach(i=>{if(x.info("abc88 checking point",i,t),!qt(t,i)&&!e){const s=Kt(t,n,i);x.warn("abc88 inside",i,n,s),x.warn("abc88 intersection",s);let l=!1;r.forEach(c=>{l=l||c.x===s.x&&c.y===s.y}),r.some(c=>c.x===s.x&&c.y===s.y)?x.warn("abc88 no intersect",s,r):r.push(s),e=!0}else x.warn("abc88 outside",i,n),n=i,e||r.push(i)}),x.warn("abc88 returning points",r),r},hr=function(a,t,r,n,e,i,s){let l=r.points,c=!1;const o=i.node(t.v);var h=i.node(t.w);x.info("abc88 InsertEdge: ",r),h.intersect&&o.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(o.intersect(l[0])),x.info("Last point",l[l.length-1],h,h.intersect(l[l.length-1])),l.push(h.intersect(l[l.length-1]))),r.toCluster&&(x.info("to cluster abc88",n[r.toCluster]),l=rt(r.points,n[r.toCluster].node),c=!0),r.fromCluster&&(x.info("from cluster abc88",n[r.fromCluster]),l=rt(l.reverse(),n[r.fromCluster].node).reverse(),c=!0);const f=l.filter(C=>!Number.isNaN(C.y));let y=nt;r.curve&&(e==="graph"||e==="flowchart")&&(y=r.curve);const{x:p,y:u}=Jt(r),k=lt().x(p).y(u).curve(y);let g;switch(r.thickness){case"normal":g="edge-thickness-normal";break;case"thick":g="edge-thickness-thick";break;case"invisible":g="edge-thickness-thick";break;default:g=""}switch(r.pattern){case"solid":g+=" edge-pattern-solid";break;case"dotted":g+=" edge-pattern-dotted";break;case"dashed":g+=" edge-pattern-dashed";break}const d=a.append("path").attr("d",k(f)).attr("id",r.id).attr("class"," "+g+(r.classes?" "+r.classes:"")).attr("style",r.style);let b="";switch((w().flowchart.arrowMarkerAbsolute||w().state.arrowMarkerAbsolute)&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),x.info("arrowTypeStart",r.arrowTypeStart),x.info("arrowTypeEnd",r.arrowTypeEnd),r.arrowTypeStart){case"arrow_cross":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-crossStart)");break;case"arrow_point":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-pointStart)");break;case"arrow_barb":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-barbStart)");break;case"arrow_circle":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-circleStart)");break;case"aggregation":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-aggregationStart)");break;case"extension":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-extensionStart)");break;case"composition":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-compositionStart)");break;case"dependency":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-dependencyStart)");break;case"lollipop":d.attr("marker-start","url("+b+"#"+s+"_"+e+"-lollipopStart)");break}switch(r.arrowTypeEnd){case"arrow_cross":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-crossEnd)");break;case"arrow_point":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-pointEnd)");break;case"arrow_barb":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-barbEnd)");break;case"arrow_circle":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-circleEnd)");break;case"aggregation":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-aggregationEnd)");break;case"extension":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-extensionEnd)");break;case"composition":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-compositionEnd)");break;case"dependency":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-dependencyEnd)");break;case"lollipop":d.attr("marker-end","url("+b+"#"+s+"_"+e+"-lollipopEnd)");break}let B={};return c&&(B.updatedPath=l),B.originalPath=r.points,B};export{ar as a,lr as b,hr as c,cr as d,sr as e,nr as f,I as g,Mt as h,rr as i,Jt as j,_ as l,ir as p,er as s,v as u}; diff --git a/_nuxt/entry.TEDHt2QA.js b/_nuxt/entry.2w2g1VWZ.js similarity index 57% rename from _nuxt/entry.TEDHt2QA.js rename to _nuxt/entry.2w2g1VWZ.js index 3c6b0e750b..82b8b5bd37 100644 --- a/_nuxt/entry.TEDHt2QA.js +++ b/_nuxt/entry.2w2g1VWZ.js @@ -1,22 +1,22 @@ -function Di(e,t){const n=new Set(e.split(","));return t?r=>n.has(r.toLowerCase()):r=>n.has(r)}const Ce={},Ln=[],et=()=>{},Ch=()=>!1,$r=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hi=e=>e.startsWith("onUpdate:"),Oe=Object.assign,ji=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Th=Object.prototype.hasOwnProperty,pe=(e,t)=>Th.call(e,t),re=Array.isArray,On=e=>Mr(e)==="[object Map]",Xl=e=>Mr(e)==="[object Set]",Sh=e=>Mr(e)==="[object RegExp]",oe=e=>typeof e=="function",Pe=e=>typeof e=="string",qn=e=>typeof e=="symbol",Ee=e=>e!==null&&typeof e=="object",Fi=e=>(Ee(e)||oe(e))&&oe(e.then)&&oe(e.catch),eu=Object.prototype.toString,Mr=e=>eu.call(e),Ph=e=>Mr(e).slice(8,-1),tu=e=>Mr(e)==="[object Object]",Vi=e=>Pe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ur=Di(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Vo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},xh=/-(\w)/g,bt=Vo(e=>e.replace(xh,(t,n)=>n?n.toUpperCase():"")),Ah=/\B([A-Z])/g,bn=Vo(e=>e.replace(Ah,"-$1").toLowerCase()),Bo=Vo(e=>e.charAt(0).toUpperCase()+e.slice(1)),ds=Vo(e=>e?`on${Bo(e)}`:""),Xt=(e,t)=>!Object.is(e,t),kn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Ds=e=>{const t=parseFloat(e);return isNaN(t)?e:t},nu=e=>{const t=Pe(e)?Number(e):NaN;return isNaN(t)?e:t};let Fa;const ru=()=>Fa||(Fa=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gn(e){if(re(e)){const t={};for(let n=0;n{if(n){const r=n.split(Ih);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function je(e){let t="";if(Pe(e))t=e;else if(re(e))for(let n=0;nPe(e)?e:e==null?"":re(e)||Ee(e)&&(e.toString===eu||!oe(e.toString))?JSON.stringify(e,su,2):String(e),su=(e,t)=>t&&t.__v_isRef?su(e,t.value):On(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o],s)=>(n[hs(r,s)+" =>"]=o,n),{})}:Xl(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>hs(n))}:qn(t)?hs(t):Ee(t)&&!re(t)&&!tu(t)?String(t):t,hs=(e,t="")=>{var n;return qn(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Ze;class iu{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Ze,!t&&Ze&&(this.index=(Ze.scopes||(Ze.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Ze;try{return Ze=this,t()}finally{Ze=n}}}on(){Ze=this}off(){Ze=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n=2))break;Cn(),this._queryings--}return this._dirtyLevel>=2}set dirty(t){this._dirtyLevel=t?3:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Gt,n=pn;try{return Gt=!0,pn=this,this._runnings++,Va(this),this.fn()}finally{Ba(this),this._runnings--,pn=n,Gt=t}}stop(){var t;this.active&&(Va(this),Ba(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Hh(e){return e.value}function Va(e){e._trackId++,e._depsLength=0}function Ba(e){if(e.deps&&e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},go=new WeakMap,mn=Symbol(""),Fs=Symbol("");function Ge(e,t,n){if(Gt&&pn){let r=go.get(e);r||go.set(e,r=new Map);let o=r.get(n);o||r.set(n,o=fu(()=>r.delete(n))),lu(pn,o)}}function Rt(e,t,n,r,o,s){const i=go.get(e);if(!i)return;let a=[];if(t==="clear")a=[...i.values()];else if(n==="length"&&re(e)){const c=Number(r);i.forEach((l,u)=>{(u==="length"||!qn(u)&&u>=c)&&a.push(l)})}else switch(n!==void 0&&a.push(i.get(n)),t){case"add":re(e)?Vi(n)&&a.push(i.get("length")):(a.push(i.get(mn)),On(e)&&a.push(i.get(Fs)));break;case"delete":re(e)||(a.push(i.get(mn)),On(e)&&a.push(i.get(Fs)));break;case"set":On(e)&&a.push(i.get(mn));break}zi();for(const c of a)c&&uu(c,3);Ui()}function jh(e,t){var n;return(n=go.get(e))==null?void 0:n.get(t)}const Fh=Di("__proto__,__v_isRef,__isVue"),du=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(qn)),za=Vh();function Vh(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=me(this);for(let s=0,i=this.length;s{e[t]=function(...n){En(),zi();const r=me(this)[t].apply(this,n);return Ui(),Cn(),r}}),e}function Bh(e){const t=me(this);return Ge(t,"has",e),t.hasOwnProperty(e)}class hu{constructor(t=!1,n=!1){this._isReadonly=t,this._shallow=n}get(t,n,r){const o=this._isReadonly,s=this._shallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return r===(o?s?tp:yu:s?gu:mu).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=re(t);if(!o){if(i&&pe(za,n))return Reflect.get(za,n,r);if(n==="hasOwnProperty")return Bh}const a=Reflect.get(t,n,r);return(qn(n)?du.has(n):Fh(n))||(o||Ge(t,"get",n),s)?a:ke(a)?i&&Vi(n)?a:a.value:Ee(a)?o?qi(a):nt(a):a}}class pu extends hu{constructor(t=!1){super(!1,t)}set(t,n,r,o){let s=t[n];if(!this._shallow){const c=yn(s);if(!yo(r)&&!yn(r)&&(s=me(s),r=me(r)),!re(t)&&ke(s)&&!ke(r))return c?!1:(s.value=r,!0)}const i=re(t)&&Vi(n)?Number(n)e,Uo=e=>Reflect.getPrototypeOf(e);function Br(e,t,n=!1,r=!1){e=e.__v_raw;const o=me(e),s=me(t);n||(Xt(t,s)&&Ge(o,"get",t),Ge(o,"get",s));const{has:i}=Uo(o),a=r?Ki:n?Qi:br;if(i.call(o,t))return a(e.get(t));if(i.call(o,s))return a(e.get(s));e!==o&&e.get(t)}function zr(e,t=!1){const n=this.__v_raw,r=me(n),o=me(e);return t||(Xt(e,o)&&Ge(r,"has",e),Ge(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function Ur(e,t=!1){return e=e.__v_raw,!t&&Ge(me(e),"iterate",mn),Reflect.get(e,"size",e)}function Ua(e){e=me(e);const t=me(this);return Uo(t).has.call(t,e)||(t.add(e),Rt(t,"add",e,e)),this}function Ka(e,t){t=me(t);const n=me(this),{has:r,get:o}=Uo(n);let s=r.call(n,e);s||(e=me(e),s=r.call(n,e));const i=o.call(n,e);return n.set(e,t),s?Xt(t,i)&&Rt(n,"set",e,t):Rt(n,"add",e,t),this}function Wa(e){const t=me(this),{has:n,get:r}=Uo(t);let o=n.call(t,e);o||(e=me(e),o=n.call(t,e)),r&&r.call(t,e);const s=t.delete(e);return o&&Rt(t,"delete",e,void 0),s}function qa(){const e=me(this),t=e.size!==0,n=e.clear();return t&&Rt(e,"clear",void 0,void 0),n}function Kr(e,t){return function(r,o){const s=this,i=s.__v_raw,a=me(i),c=t?Ki:e?Qi:br;return!e&&Ge(a,"iterate",mn),i.forEach((l,u)=>r.call(o,c(l),c(u),s))}}function Wr(e,t,n){return function(...r){const o=this.__v_raw,s=me(o),i=On(s),a=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,l=o[e](...r),u=n?Ki:t?Qi:br;return!t&&Ge(s,"iterate",c?Fs:mn),{next(){const{value:f,done:d}=l.next();return d?{value:f,done:d}:{value:a?[u(f[0]),u(f[1])]:u(f),done:d}},[Symbol.iterator](){return this}}}}function Ht(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function qh(){const e={get(s){return Br(this,s)},get size(){return Ur(this)},has:zr,add:Ua,set:Ka,delete:Wa,clear:qa,forEach:Kr(!1,!1)},t={get(s){return Br(this,s,!1,!0)},get size(){return Ur(this)},has:zr,add:Ua,set:Ka,delete:Wa,clear:qa,forEach:Kr(!1,!0)},n={get(s){return Br(this,s,!0)},get size(){return Ur(this,!0)},has(s){return zr.call(this,s,!0)},add:Ht("add"),set:Ht("set"),delete:Ht("delete"),clear:Ht("clear"),forEach:Kr(!0,!1)},r={get(s){return Br(this,s,!0,!0)},get size(){return Ur(this,!0)},has(s){return zr.call(this,s,!0)},add:Ht("add"),set:Ht("set"),delete:Ht("delete"),clear:Ht("clear"),forEach:Kr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(s=>{e[s]=Wr(s,!1,!1),n[s]=Wr(s,!0,!1),t[s]=Wr(s,!1,!0),r[s]=Wr(s,!0,!0)}),[e,n,t,r]}const[Gh,Qh,Jh,Yh]=qh();function Wi(e,t){const n=t?e?Yh:Jh:e?Qh:Gh;return(r,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(pe(n,o)&&o in r?n:r,o,s)}const Zh={get:Wi(!1,!1)},Xh={get:Wi(!1,!0)},ep={get:Wi(!0,!1)},mu=new WeakMap,gu=new WeakMap,yu=new WeakMap,tp=new WeakMap;function np(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function rp(e){return e.__v_skip||!Object.isExtensible(e)?0:np(Ph(e))}function nt(e){return yn(e)?e:Gi(e,!1,Uh,Zh,mu)}function Qt(e){return Gi(e,!1,Wh,Xh,gu)}function qi(e){return Gi(e,!0,Kh,ep,yu)}function Gi(e,t,n,r,o){if(!Ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=rp(e);if(i===0)return e;const a=new Proxy(e,i===2?r:n);return o.set(e,a),a}function $n(e){return yn(e)?$n(e.__v_raw):!!(e&&e.__v_isReactive)}function yn(e){return!!(e&&e.__v_isReadonly)}function yo(e){return!!(e&&e.__v_isShallow)}function _u(e){return $n(e)||yn(e)}function me(e){const t=e&&e.__v_raw;return t?me(t):e}function vu(e){return mo(e,"__v_skip",!0),e}const br=e=>Ee(e)?nt(e):e,Qi=e=>Ee(e)?qi(e):e;class bu{constructor(t,n,r,o){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Bi(()=>t(this._value),()=>_o(this,1)),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=me(this);return Ji(t),(!t._cacheable||t.effect.dirty)&&Xt(t._value,t._value=t.effect.run())&&_o(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function op(e,t,n=!1){let r,o;const s=oe(e);return s?(r=e,o=et):(r=e.get,o=e.set),new bu(r,o,s||!o,n)}function Ji(e){Gt&&pn&&(e=me(e),lu(pn,e.dep||(e.dep=fu(()=>e.dep=void 0,e instanceof bu?e:void 0))))}function _o(e,t=3,n){e=me(e);const r=e.dep;r&&uu(r,t)}function ke(e){return!!(e&&e.__v_isRef===!0)}function le(e){return wu(e,!1)}function It(e){return wu(e,!0)}function wu(e,t){return ke(e)?e:new sp(e,t)}class sp{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:me(t),this._value=n?t:br(t)}get value(){return Ji(this),this._value}set value(t){const n=this.__v_isShallow||yo(t)||yn(t);t=n?t:me(t),Xt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:br(t),_o(this,3))}}function M(e){return ke(e)?e.value:e}function gP(e){return oe(e)?e():M(e)}const ip={get:(e,t,n)=>M(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return ke(o)&&!ke(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Eu(e){return $n(e)?e:new Proxy(e,ip)}class ap{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>Ji(this),()=>_o(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function cp(e){return new ap(e)}function yP(e){const t=re(e)?new Array(e.length):{};for(const n in e)t[n]=Cu(e,n);return t}class lp{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return jh(me(this._object),this._key)}}class up{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Yi(e,t,n){return ke(e)?e:oe(e)?new up(e):Ee(e)&&arguments.length>1?Cu(e,t,n):le(e)}function Cu(e,t,n){const r=e[t];return ke(r)?r:new lp(e,t,n)}function Jt(e,t,n,r){let o;try{o=r?e(...r):e()}catch(s){Qn(s,t,n)}return o}function at(e,t,n,r){if(oe(e)){const s=Jt(e,t,n,r);return s&&Fi(s)&&s.catch(i=>{Qn(i,t,n)}),s}const o=[];for(let s=0;s>>1,o=He[r],s=Er(o);s_t&&He.splice(t,1)}function Bs(e){re(e)?Mn.push(...e):(!Pt||!Pt.includes(e,e.allowRecurse?un+1:un))&&Mn.push(e),Su()}function Ga(e,t,n=wr?_t+1:0){for(;nEr(n)-Er(r)),un=0;une.id==null?1/0:e.id,pp=(e,t)=>{const n=Er(e)-Er(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Pu(e){Vs=!1,wr=!0,He.sort(pp);try{for(_t=0;_tPe(h)?h.trim():h)),f&&(o=n.map(Ds))}let a,c=r[a=ds(t)]||r[a=ds(bt(t))];!c&&s&&(c=r[a=ds(bn(t))]),c&&at(c,e,6,o);const l=r[a+"Once"];if(l){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,at(l,e,6,o)}}function xu(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const s=e.emits;let i={},a=!1;if(!oe(e)){const c=l=>{const u=xu(l,t,!0);u&&(a=!0,Oe(i,u))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!s&&!a?(Ee(e)&&r.set(e,null),null):(re(s)?s.forEach(c=>i[c]=null):Oe(i,s),Ee(e)&&r.set(e,i),i)}function Wo(e,t){return!e||!$r(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,bn(t))||pe(e,t))}let Me=null,qo=null;function bo(e){const t=Me;return Me=e,qo=e&&e.type.__scopeId||null,t}function Au(e){qo=e}function Ru(){qo=null}function Qe(e,t=Me,n){if(!t||e._n)return e;const r=(...o)=>{r._d&&lc(-1);const s=bo(t);let i;try{i=e(...o)}finally{bo(s),r._d&&lc(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function ps(e){const{type:t,vnode:n,proxy:r,withProxy:o,props:s,propsOptions:[i],slots:a,attrs:c,emit:l,render:u,renderCache:f,data:d,setupState:h,ctx:m,inheritAttrs:p}=e;let y,v;const b=bo(e);try{if(n.shapeFlag&4){const _=o||r,C=_;y=st(u.call(C,_,f,s,h,d,m)),v=c}else{const _=t;y=st(_.length>1?_(s,{attrs:c,slots:a,emit:l}):_(s,null)),v=t.props?c:yp(c)}}catch(_){hr.length=0,Qn(_,e,1),y=se(Ke)}let g=y;if(v&&p!==!1){const _=Object.keys(v),{shapeFlag:C}=g;_.length&&C&7&&(i&&_.some(Hi)&&(v=_p(v,i)),g=Ot(g,v))}return n.dirs&&(g=Ot(g),g.dirs=g.dirs?g.dirs.concat(n.dirs):n.dirs),n.transition&&(g.transition=n.transition),y=g,bo(b),y}function gp(e){let t;for(let n=0;n{let t;for(const n in e)(n==="class"||n==="style"||$r(n))&&((t||(t={}))[n]=e[n]);return t},_p=(e,t)=>{const n={};for(const r in e)(!Hi(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function vp(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:a,patchFlag:c}=t,l=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Qa(r,i,l):!!i;if(c&8){const u=t.dynamicProps;for(let f=0;fe.__isSuspense;let zs=0;const wp={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,s,i,a,c,l){e==null?Ep(t,n,r,o,s,i,a,c,l):Cp(e,t,n,r,o,i,a,c,l)},hydrate:Tp,create:ta,normalize:Sp},ku=wp;function Cr(e,t){const n=e.props&&e.props[t];oe(n)&&n()}function Ep(e,t,n,r,o,s,i,a,c){const{p:l,o:{createElement:u}}=c,f=u("div"),d=e.suspense=ta(e,o,r,t,f,n,s,i,a,c);l(null,d.pendingBranch=e.ssContent,f,null,r,d,s,i),d.deps>0?(Cr(e,"onPending"),Cr(e,"onFallback"),l(null,e.ssFallback,t,n,r,null,s,i),Nn(d,e.ssFallback)):d.resolve(!1,!0)}function Cp(e,t,n,r,o,s,i,a,{p:c,um:l,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const d=t.ssContent,h=t.ssFallback,{activeBranch:m,pendingBranch:p,isInFallback:y,isHydrating:v}=f;if(p)f.pendingBranch=d,ft(d,p)?(c(p,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0?f.resolve():y&&(v||(c(m,h,n,r,o,null,s,i,a),Nn(f,h)))):(f.pendingId=zs++,v?(f.isHydrating=!1,f.activeBranch=p):l(p,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),y?(c(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0?f.resolve():(c(m,h,n,r,o,null,s,i,a),Nn(f,h))):m&&ft(d,m)?(c(m,d,n,r,o,f,s,i,a),f.resolve(!0)):(c(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0&&f.resolve()));else if(m&&ft(d,m))c(m,d,n,r,o,f,s,i,a),Nn(f,d);else if(Cr(t,"onPending"),f.pendingBranch=d,d.shapeFlag&512?f.pendingId=d.component.suspenseId:f.pendingId=zs++,c(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0)f.resolve();else{const{timeout:b,pendingId:g}=f;b>0?setTimeout(()=>{f.pendingId===g&&f.fallback(h)},b):b===0&&f.fallback(h)}}function ta(e,t,n,r,o,s,i,a,c,l,u=!1){const{p:f,m:d,um:h,n:m,o:{parentNode:p,remove:y}}=l;let v;const b=Pp(e);b&&t!=null&&t.pendingBranch&&(v=t.pendingId,t.deps++);const g=e.props?nu(e.props.timeout):void 0,_={vnode:e,parent:t,parentComponent:n,namespace:i,container:r,hiddenContainer:o,anchor:s,deps:0,pendingId:zs++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(C=!1,A=!1){const{vnode:I,activeBranch:L,pendingBranch:H,pendingId:R,effects:S,parentComponent:T,container:P}=_;let B=!1;if(_.isHydrating)_.isHydrating=!1;else if(!C){B=L&&H.transition&&H.transition.mode==="out-in",B&&(L.transition.afterLeave=()=>{R===_.pendingId&&(d(H,P,m(L),0),Bs(S))});let{anchor:Q}=_;L&&(Q=m(L),h(L,T,_,!0)),B||d(H,P,Q,0)}Nn(_,H),_.pendingBranch=null,_.isInFallback=!1;let J=_.parent,V=!1;for(;J;){if(J.pendingBranch){J.effects.push(...S),V=!0;break}J=J.parent}!V&&!B&&Bs(S),_.effects=[],b&&t&&t.pendingBranch&&v===t.pendingId&&(t.deps--,t.deps===0&&!A&&t.resolve()),Cr(I,"onResolve")},fallback(C){if(!_.pendingBranch)return;const{vnode:A,activeBranch:I,parentComponent:L,container:H,namespace:R}=_;Cr(A,"onFallback");const S=m(I),T=()=>{_.isInFallback&&(f(null,C,H,S,L,null,R,a,c),Nn(_,C))},P=C.transition&&C.transition.mode==="out-in";P&&(I.transition.afterLeave=T),_.isInFallback=!0,h(I,L,null,!0),P||T()},move(C,A,I){_.activeBranch&&d(_.activeBranch,C,A,I),_.container=C},next(){return _.activeBranch&&m(_.activeBranch)},registerDep(C,A){const I=!!_.pendingBranch;I&&_.deps++;const L=C.vnode.el;C.asyncDep.catch(H=>{Qn(H,C,0)}).then(H=>{if(C.isUnmounted||_.isUnmounted||_.pendingId!==C.suspenseId)return;C.asyncResolved=!0;const{vnode:R}=C;Ys(C,H,!1),L&&(R.el=L);const S=!L&&C.subTree.el;A(C,R,p(L||C.subTree.el),L?null:m(C.subTree),_,i,c),S&&y(S),Xi(C,R.el),I&&--_.deps===0&&_.resolve()})},unmount(C,A){_.isUnmounted=!0,_.activeBranch&&h(_.activeBranch,n,C,A),_.pendingBranch&&h(_.pendingBranch,n,C,A)}};return _}function Tp(e,t,n,r,o,s,i,a,c){const l=t.suspense=ta(t,r,n,e.parentNode,document.createElement("div"),null,o,s,i,a,!0),u=c(e,l.pendingBranch=t.ssContent,n,l,s,i);return l.deps===0&&l.resolve(!1,!0),u}function Sp(e){const{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=Ya(r?n.default:n),e.ssFallback=r?Ya(n.fallback):se(Ke)}function Ya(e){let t;if(oe(e)){const n=Bn&&e._c;n&&(e._d=!1,q()),e=e(),n&&(e._d=!0,t=it,cf())}return re(e)&&(e=gp(e)),e=st(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function $u(e,t){t&&t.pendingBranch?re(e)?t.effects.push(...e):t.effects.push(e):Bs(e)}function Nn(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e,o=n.el=t.el;r&&r.subTree===n&&(r.vnode.el=o,Xi(r,o))}function Pp(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const xp=Symbol.for("v-scx"),Ap=()=>De(xp);function Rp(e,t){return Qo(e,null,t)}function Ip(e,t){return Qo(e,null,{flush:"post"})}const qr={};function ge(e,t,n){return Qo(e,t,n)}function Qo(e,t,{immediate:n,deep:r,flush:o,once:s,onTrack:i,onTrigger:a}=Ce){if(t&&s){const C=t;t=(...A)=>{C(...A),_()}}const c=Le,l=C=>r===!0?C:hn(C,r===!1?1:void 0);let u,f=!1,d=!1;if(ke(e)?(u=()=>e.value,f=yo(e)):$n(e)?(u=()=>l(e),f=!0):re(e)?(d=!0,f=e.some(C=>$n(C)||yo(C)),u=()=>e.map(C=>{if(ke(C))return C.value;if($n(C))return l(C);if(oe(C))return Jt(C,c,2)})):oe(e)?t?u=()=>Jt(e,c,2):u=()=>(h&&h(),at(e,c,3,[m])):u=et,t&&r){const C=u;u=()=>hn(C())}let h,m=C=>{h=g.onStop=()=>{Jt(C,c,4),h=g.onStop=void 0}},p;if(Dr)if(m=et,t?n&&at(t,c,3,[u(),d?[]:void 0,m]):u(),o==="sync"){const C=Ap();p=C.__watcherHandles||(C.__watcherHandles=[])}else return et;let y=d?new Array(e.length).fill(qr):qr;const v=()=>{if(!(!g.active||!g.dirty))if(t){const C=g.run();(r||f||(d?C.some((A,I)=>Xt(A,y[I])):Xt(C,y)))&&(h&&h(),at(t,c,3,[C,y===qr?void 0:d&&y[0]===qr?[]:y,m]),y=C)}else g.run()};v.allowRecurse=!!t;let b;o==="sync"?b=v:o==="post"?b=()=>Ne(v,c&&c.suspense):(v.pre=!0,c&&(v.id=c.uid),b=()=>Ko(v));const g=new Bi(u,et,b),_=()=>{g.stop(),c&&c.scope&&ji(c.scope.effects,g)};return t?n?v():y=g.run():o==="post"?Ne(g.run.bind(g),c&&c.suspense):g.run(),p&&p.push(_),_}function Lp(e,t,n){const r=this.proxy,o=Pe(e)?e.includes(".")?Mu(r,e):()=>r[e]:e.bind(r,r);let s;oe(t)?s=t:(s=t.handler,n=t);const i=Le;en(this);const a=Qo(o,s.bind(r),n);return i?en(i):Yt(),a}function Mu(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o0){if(n>=t)return e;n++}if(r=r||new Set,r.has(e))return e;if(r.add(e),ke(e))hn(e.value,t,n,r);else if(re(e))for(let o=0;o{hn(o,t,n,r)});else if(tu(e))for(const o in e)hn(e[o],t,n,r);return e}function Nu(e,t){const n=Me;if(n===null)return e;const r=Zo(n)||n.proxy,o=e.dirs||(e.dirs=[]);for(let s=0;s{e.isMounted=!0}),Jn(()=>{e.isUnmounting=!0}),e}const ot=[Function,Array],Du={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ot,onEnter:ot,onAfterEnter:ot,onEnterCancelled:ot,onBeforeLeave:ot,onLeave:ot,onAfterLeave:ot,onLeaveCancelled:ot,onBeforeAppear:ot,onAppear:ot,onAfterAppear:ot,onAppearCancelled:ot},kp={name:"BaseTransition",props:Du,setup(e,{slots:t}){const n=ht(),r=Op();let o;return()=>{const s=t.default&&ju(t.default(),!0);if(!s||!s.length)return;let i=s[0];if(s.length>1){for(const p of s)if(p.type!==Ke){i=p;break}}const a=me(e),{mode:c}=a;if(r.isLeaving)return ms(i);const l=Za(i);if(!l)return ms(i);const u=Us(l,a,r,n);wo(l,u);const f=n.subTree,d=f&&Za(f);let h=!1;const{getTransitionKey:m}=l.type;if(m){const p=m();o===void 0?o=p:p!==o&&(o=p,h=!0)}if(d&&d.type!==Ke&&(!ft(l,d)||h)){const p=Us(d,a,r,n);if(wo(d,p),c==="out-in")return r.isLeaving=!0,p.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},ms(i);c==="in-out"&&l.type!==Ke&&(p.delayLeave=(y,v,b)=>{const g=Hu(r,d);g[String(d.key)]=d,y[zt]=()=>{v(),y[zt]=void 0,delete u.delayedLeave},u.delayedLeave=b})}return i}}},$p=kp;function Hu(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Us(e,t,n,r){const{appear:o,mode:s,persisted:i=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:l,onEnterCancelled:u,onBeforeLeave:f,onLeave:d,onAfterLeave:h,onLeaveCancelled:m,onBeforeAppear:p,onAppear:y,onAfterAppear:v,onAppearCancelled:b}=t,g=String(e.key),_=Hu(n,e),C=(L,H)=>{L&&at(L,r,9,H)},A=(L,H)=>{const R=H[1];C(L,H),re(L)?L.every(S=>S.length<=1)&&R():L.length<=1&&R()},I={mode:s,persisted:i,beforeEnter(L){let H=a;if(!n.isMounted)if(o)H=p||a;else return;L[zt]&&L[zt](!0);const R=_[g];R&&ft(e,R)&&R.el[zt]&&R.el[zt](),C(H,[L])},enter(L){let H=c,R=l,S=u;if(!n.isMounted)if(o)H=y||c,R=v||l,S=b||u;else return;let T=!1;const P=L[Gr]=B=>{T||(T=!0,B?C(S,[L]):C(R,[L]),I.delayedLeave&&I.delayedLeave(),L[Gr]=void 0)};H?A(H,[L,P]):P()},leave(L,H){const R=String(e.key);if(L[Gr]&&L[Gr](!0),n.isUnmounting)return H();C(f,[L]);let S=!1;const T=L[zt]=P=>{S||(S=!0,H(),P?C(m,[L]):C(h,[L]),L[zt]=void 0,_[R]===e&&delete _[R])};_[R]=e,d?A(d,[L,T]):T()},clone(L){return Us(L,t,n,r)}};return I}function ms(e){if(Nr(e))return e=Ot(e),e.children=null,e}function Za(e){return Nr(e)?e.children?e.children[0]:void 0:e}function wo(e,t){e.shapeFlag&6&&e.component?wo(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ju(e,t=!1,n){let r=[],o=0;for(let s=0;s1)for(let s=0;s!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function N(e){oe(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:s,suspensible:i=!0,onError:a}=e;let c=null,l,u=0;const f=()=>(u++,c=null,d()),d=()=>{let h;return c||(h=c=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),a)return new Promise((p,y)=>{a(m,()=>p(f()),()=>y(m),u+1)});throw m}).then(m=>h!==c&&c?c:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),l=m,m)))};return xe({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return l},setup(){const h=Le;if(l)return()=>gs(l,h);const m=b=>{c=null,Qn(b,h,13,!r)};if(i&&h.suspense||Dr)return d().then(b=>()=>gs(b,h)).catch(b=>(m(b),()=>r?se(r,{error:b}):null));const p=le(!1),y=le(),v=le(!!o);return o&&setTimeout(()=>{v.value=!1},o),s!=null&&setTimeout(()=>{if(!p.value&&!y.value){const b=new Error(`Async component timed out after ${s}ms.`);m(b),y.value=b}},s),d().then(()=>{p.value=!0,h.parent&&Nr(h.parent.vnode)&&(h.parent.effect.dirty=!0,Ko(h.parent.update))}).catch(b=>{m(b),y.value=b}),()=>{if(p.value&&l)return gs(l,h);if(y.value&&r)return se(r,{error:y.value});if(n&&!v.value)return se(n)}}})}function gs(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=se(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const Nr=e=>e.type.__isKeepAlive,Mp={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=ht(),r=n.ctx;if(!r.renderer)return()=>{const b=t.default&&t.default();return b&&b.length===1?b[0]:b};const o=new Map,s=new Set;let i=null;const a=n.suspense,{renderer:{p:c,m:l,um:u,o:{createElement:f}}}=r,d=f("div");r.activate=(b,g,_,C,A)=>{const I=b.component;l(b,g,_,0,a),c(I.vnode,b,g,_,I,a,C,b.slotScopeIds,A),Ne(()=>{I.isDeactivated=!1,I.a&&kn(I.a);const L=b.props&&b.props.onVnodeMounted;L&&qe(L,I.parent,b)},a)},r.deactivate=b=>{const g=b.component;l(b,d,null,1,a),Ne(()=>{g.da&&kn(g.da);const _=b.props&&b.props.onVnodeUnmounted;_&&qe(_,g.parent,b),g.isDeactivated=!0},a)};function h(b){ys(b),u(b,n,a,!0)}function m(b){o.forEach((g,_)=>{const C=Zs(g.type);C&&(!b||!b(C))&&p(_)})}function p(b){const g=o.get(b);!i||!ft(g,i)?h(g):i&&ys(i),o.delete(b),s.delete(b)}ge(()=>[e.include,e.exclude],([b,g])=>{b&&m(_=>sr(b,_)),g&&m(_=>!sr(g,_))},{flush:"post",deep:!0});let y=null;const v=()=>{y!=null&&o.set(y,_s(n.subTree))};return Nt(v),Uu(v),Jn(()=>{o.forEach(b=>{const{subTree:g,suspense:_}=n,C=_s(g);if(b.type===C.type&&b.key===C.key){ys(C);const A=C.component.da;A&&Ne(A,_);return}h(b)})}),()=>{if(y=null,!t.default)return null;const b=t.default(),g=b[0];if(b.length>1)return i=null,b;if(!zn(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return i=null,g;let _=_s(g);const C=_.type,A=Zs(gn(_)?_.type.__asyncResolved||{}:C),{include:I,exclude:L,max:H}=e;if(I&&(!A||!sr(I,A))||L&&A&&sr(L,A))return i=_,g;const R=_.key==null?C:_.key,S=o.get(R);return _.el&&(_=Ot(_),g.shapeFlag&128&&(g.ssContent=_)),y=R,S?(_.el=S.el,_.component=S.component,_.transition&&wo(_,_.transition),_.shapeFlag|=512,s.delete(R),s.add(R)):(s.add(R),H&&s.size>parseInt(H,10)&&p(s.values().next().value)),_.shapeFlag|=256,i=_,Ou(g.type)?g:_}}},Np=Mp;function sr(e,t){return re(e)?e.some(n=>sr(n,t)):Pe(e)?e.split(",").includes(t):Sh(e)?e.test(t):!1}function Fu(e,t){Bu(e,"a",t)}function Vu(e,t){Bu(e,"da",t)}function Bu(e,t,n=Le){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Jo(t,r,n),n){let o=n.parent;for(;o&&o.parent;)Nr(o.parent.vnode)&&Dp(r,t,n,o),o=o.parent}}function Dp(e,t,n,r){const o=Jo(t,e,r,!0);Tr(()=>{ji(r[t],o)},n)}function ys(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function _s(e){return e.shapeFlag&128?e.ssContent:e}function Jo(e,t,n=Le,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{if(n.isUnmounted)return;En(),en(n);const a=at(t,n,e,i);return Yt(),Cn(),a});return r?o.unshift(s):o.push(s),s}}const Mt=e=>(t,n=Le)=>(!Dr||e==="sp")&&Jo(e,(...r)=>t(...r),n),zu=Mt("bm"),Nt=Mt("m"),Hp=Mt("bu"),Uu=Mt("u"),Jn=Mt("bum"),Tr=Mt("um"),jp=Mt("sp"),Fp=Mt("rtg"),Vp=Mt("rtc");function Ku(e,t=Le){Jo("ec",e,t)}function Fn(e,t,n,r){let o;const s=n&&n[r];if(re(e)||Pe(e)){o=new Array(e.length);for(let i=0,a=e.length;it(i,a,void 0,s&&s[a]));else{const i=Object.keys(e);o=new Array(i.length);for(let a=0,c=i.length;azn(t)?!(t.type===Ke||t.type===Se&&!Wu(t.children)):!0)?e:null}const Ks=e=>e?df(e)?Zo(e)||e.proxy:Ks(e.parent):null,fr=Oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ks(e.parent),$root:e=>Ks(e.root),$emit:e=>e.emit,$options:e=>na(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Ko(e.update)}),$nextTick:e=>e.n||(e.n=wt.bind(e.proxy)),$watch:e=>Lp.bind(e)}),vs=(e,t)=>e!==Ce&&!e.__isScriptSetup&&pe(e,t),Bp={get({_:e},t){const{ctx:n,setupState:r,data:o,props:s,accessCache:i,type:a,appContext:c}=e;let l;if(t[0]!=="$"){const h=i[t];if(h!==void 0)switch(h){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(vs(r,t))return i[t]=1,r[t];if(o!==Ce&&pe(o,t))return i[t]=2,o[t];if((l=e.propsOptions[0])&&pe(l,t))return i[t]=3,s[t];if(n!==Ce&&pe(n,t))return i[t]=4,n[t];Ws&&(i[t]=0)}}const u=fr[t];let f,d;if(u)return t==="$attrs"&&Ge(e,"get",t),u(e);if((f=a.__cssModules)&&(f=f[t]))return f;if(n!==Ce&&pe(n,t))return i[t]=4,n[t];if(d=c.config.globalProperties,pe(d,t))return d[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:s}=e;return vs(o,t)?(o[t]=n,!0):r!==Ce&&pe(r,t)?(r[t]=n,!0):pe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:s}},i){let a;return!!n[i]||e!==Ce&&pe(e,i)||vs(t,i)||(a=s[0])&&pe(a,i)||pe(r,i)||pe(fr,i)||pe(o.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:pe(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function _P(){return zp().slots}function zp(){const e=ht();return e.setupContext||(e.setupContext=pf(e))}function Xa(e){return re(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function qu(e){const t=ht();let n=e();return Yt(),Fi(n)&&(n=n.catch(r=>{throw en(t),r})),[n,()=>en(t)]}let Ws=!0;function Up(e){const t=na(e),n=e.proxy,r=e.ctx;Ws=!1,t.beforeCreate&&ec(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:a,provide:c,inject:l,created:u,beforeMount:f,mounted:d,beforeUpdate:h,updated:m,activated:p,deactivated:y,beforeDestroy:v,beforeUnmount:b,destroyed:g,unmounted:_,render:C,renderTracked:A,renderTriggered:I,errorCaptured:L,serverPrefetch:H,expose:R,inheritAttrs:S,components:T,directives:P,filters:B}=t;if(l&&Kp(l,r,null),i)for(const Q in i){const U=i[Q];oe(U)&&(r[Q]=U.bind(n))}if(o){const Q=o.call(n,n);Ee(Q)&&(e.data=nt(Q))}if(Ws=!0,s)for(const Q in s){const U=s[Q],he=oe(U)?U.bind(n,n):oe(U.get)?U.get.bind(n,n):et,Re=!oe(U)&&oe(U.set)?U.set.bind(n):et,Ie=ee({get:he,set:Re});Object.defineProperty(r,Q,{enumerable:!0,configurable:!0,get:()=>Ie.value,set:we=>Ie.value=we})}if(a)for(const Q in a)Gu(a[Q],r,n,Q);if(c){const Q=oe(c)?c.call(n):c;Reflect.ownKeys(Q).forEach(U=>{Dn(U,Q[U])})}u&&ec(u,e,"c");function V(Q,U){re(U)?U.forEach(he=>Q(he.bind(n))):U&&Q(U.bind(n))}if(V(zu,f),V(Nt,d),V(Hp,h),V(Uu,m),V(Fu,p),V(Vu,y),V(Ku,L),V(Vp,A),V(Fp,I),V(Jn,b),V(Tr,_),V(jp,H),re(R))if(R.length){const Q=e.exposed||(e.exposed={});R.forEach(U=>{Object.defineProperty(Q,U,{get:()=>n[U],set:he=>n[U]=he})})}else e.exposed||(e.exposed={});C&&e.render===et&&(e.render=C),S!=null&&(e.inheritAttrs=S),T&&(e.components=T),P&&(e.directives=P)}function Kp(e,t,n=et){re(e)&&(e=qs(e));for(const r in e){const o=e[r];let s;Ee(o)?"default"in o?s=De(o.from||r,o.default,!0):s=De(o.from||r):s=De(o),ke(s)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[r]=s}}function ec(e,t,n){at(re(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Gu(e,t,n,r){const o=r.includes(".")?Mu(n,r):()=>n[r];if(Pe(e)){const s=t[e];oe(s)&&ge(o,s)}else if(oe(e))ge(o,e.bind(n));else if(Ee(e))if(re(e))e.forEach(s=>Gu(s,t,n,r));else{const s=oe(e.handler)?e.handler.bind(n):t[e.handler];oe(s)&&ge(o,s,e)}}function na(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,a=s.get(t);let c;return a?c=a:!o.length&&!n&&!r?c=t:(c={},o.length&&o.forEach(l=>Eo(c,l,i,!0)),Eo(c,t,i)),Ee(t)&&s.set(t,c),c}function Eo(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&Eo(e,s,n,!0),o&&o.forEach(i=>Eo(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const a=Wp[i]||n&&n[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const Wp={data:tc,props:nc,emits:nc,methods:ir,computed:ir,beforeCreate:Ue,created:Ue,beforeMount:Ue,mounted:Ue,beforeUpdate:Ue,updated:Ue,beforeDestroy:Ue,beforeUnmount:Ue,destroyed:Ue,unmounted:Ue,activated:Ue,deactivated:Ue,errorCaptured:Ue,serverPrefetch:Ue,components:ir,directives:ir,watch:Gp,provide:tc,inject:qp};function tc(e,t){return t?e?function(){return Oe(oe(e)?e.call(this,this):e,oe(t)?t.call(this,this):t)}:t:e}function qp(e,t){return ir(qs(e),qs(t))}function qs(e){if(re(e)){const t={};for(let n=0;n1)return n&&oe(t)?t.call(r&&r.proxy):t}}function Ju(){return!!(Le||Me||Pr)}function Yp(e,t,n,r=!1){const o={},s={};mo(s,Yo,1),e.propsDefaults=Object.create(null),Yu(e,t,o,s);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=r?o:Qt(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function Zp(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,a=me(o),[c]=e.propsOptions;let l=!1;if((r||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let f=0;f{c=!0;const[d,h]=Zu(f,t,!0);Oe(i,d),h&&a.push(...h)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!c)return Ee(e)&&r.set(e,Ln),Ln;if(re(s))for(let u=0;u-1,h[1]=p<0||m-1||pe(h,"default"))&&a.push(f)}}}const l=[i,a];return Ee(e)&&r.set(e,l),l}function rc(e){return e[0]!=="$"}function oc(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function sc(e,t){return oc(e)===oc(t)}function ic(e,t){return re(t)?t.findIndex(n=>sc(n,e)):oe(t)&&sc(t,e)?0:-1}const Xu=e=>e[0]==="_"||e==="$stable",ra=e=>re(e)?e.map(st):[st(e)],Xp=(e,t,n)=>{if(t._n)return t;const r=Qe((...o)=>ra(t(...o)),n);return r._c=!1,r},ef=(e,t,n)=>{const r=e._ctx;for(const o in e){if(Xu(o))continue;const s=e[o];if(oe(s))t[o]=Xp(o,s,r);else if(s!=null){const i=ra(s);t[o]=()=>i}}},tf=(e,t)=>{const n=ra(t);e.slots.default=()=>n},em=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=me(t),mo(t,"_",n)):ef(t,e.slots={})}else e.slots={},t&&tf(e,t);mo(e.slots,Yo,1)},tm=(e,t,n)=>{const{vnode:r,slots:o}=e;let s=!0,i=Ce;if(r.shapeFlag&32){const a=t._;a?n&&a===1?s=!1:(Oe(o,t),!n&&a===1&&delete o._):(s=!t.$stable,ef(t,o)),i=t}else t&&(tf(e,t),i={default:1});if(s)for(const a in o)!Xu(a)&&i[a]==null&&delete o[a]};function Co(e,t,n,r,o=!1){if(re(e)){e.forEach((d,h)=>Co(d,t&&(re(t)?t[h]:t),n,r,o));return}if(gn(r)&&!o)return;const s=r.shapeFlag&4?Zo(r.component)||r.component.proxy:r.el,i=o?null:s,{i:a,r:c}=e,l=t&&t.r,u=a.refs===Ce?a.refs={}:a.refs,f=a.setupState;if(l!=null&&l!==c&&(Pe(l)?(u[l]=null,pe(f,l)&&(f[l]=null)):ke(l)&&(l.value=null)),oe(c))Jt(c,a,12,[i,u]);else{const d=Pe(c),h=ke(c);if(d||h){const m=()=>{if(e.f){const p=d?pe(f,c)?f[c]:u[c]:c.value;o?re(p)&&ji(p,s):re(p)?p.includes(s)||p.push(s):d?(u[c]=[s],pe(f,c)&&(f[c]=u[c])):(c.value=[s],e.k&&(u[e.k]=c.value))}else d?(u[c]=i,pe(f,c)&&(f[c]=i)):h&&(c.value=i,e.k&&(u[e.k]=i))};i?(m.id=-1,Ne(m,n)):m()}}}let jt=!1;const nm=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",rm=e=>e.namespaceURI.includes("MathML"),Qr=e=>{if(nm(e))return"svg";if(rm(e))return"mathml"},Jr=e=>e.nodeType===8;function om(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:a,insert:c,createComment:l}}=e,u=(g,_)=>{if(!_.hasChildNodes()){n(null,g,_),vo(),_._vnode=g;return}jt=!1,f(_.firstChild,g,null,null,null),vo(),_._vnode=g,jt&&console.error("Hydration completed but contains mismatches.")},f=(g,_,C,A,I,L=!1)=>{const H=Jr(g)&&g.data==="[",R=()=>p(g,_,C,A,I,H),{type:S,ref:T,shapeFlag:P,patchFlag:B}=_;let J=g.nodeType;_.el=g,B===-2&&(L=!1,_.dynamicChildren=null);let V=null;switch(S){case Vn:J!==3?_.children===""?(c(_.el=o(""),i(g),g),V=g):V=R():(g.data!==_.children&&(jt=!0,g.data=_.children),V=s(g));break;case Ke:b(g)?(V=s(g),v(_.el=g.content.firstChild,g,C)):J!==8||H?V=R():V=s(g);break;case Hn:if(H&&(g=s(g),J=g.nodeType),J===1||J===3){V=g;const Q=!_.children.length;for(let U=0;U<_.staticCount;U++)Q&&(_.children+=V.nodeType===1?V.outerHTML:V.data),U===_.staticCount-1&&(_.anchor=V),V=s(V);return H?s(V):V}else R();break;case Se:H?V=m(g,_,C,A,I,L):V=R();break;default:if(P&1)(J!==1||_.type.toLowerCase()!==g.tagName.toLowerCase())&&!b(g)?V=R():V=d(g,_,C,A,I,L);else if(P&6){_.slotScopeIds=I;const Q=i(g);if(H?V=y(g):Jr(g)&&g.data==="teleport start"?V=y(g,g.data,"teleport end"):V=s(g),t(_,Q,null,C,A,Qr(Q),L),gn(_)){let U;H?(U=se(Se),U.anchor=V?V.previousSibling:Q.lastChild):U=g.nodeType===3?Yn(""):se("div"),U.el=g,_.component.subTree=U}}else P&64?J!==8?V=R():V=_.type.hydrate(g,_,C,A,I,L,e,h):P&128&&(V=_.type.hydrate(g,_,C,A,Qr(i(g)),I,L,e,f))}return T!=null&&Co(T,null,A,_),V},d=(g,_,C,A,I,L)=>{L=L||!!_.dynamicChildren;const{type:H,props:R,patchFlag:S,shapeFlag:T,dirs:P,transition:B}=_,J=H==="input"||H==="option";if(J||S!==-1){P&&yt(_,null,C,"created");let V=!1;if(b(g)){V=rf(A,B)&&C&&C.vnode.props&&C.vnode.props.appear;const U=g.content.firstChild;V&&B.beforeEnter(U),v(U,g,C),_.el=g=U}if(T&16&&!(R&&(R.innerHTML||R.textContent))){let U=h(g.firstChild,_,g,C,A,I,L);for(;U;){jt=!0;const he=U;U=U.nextSibling,a(he)}}else T&8&&g.textContent!==_.children&&(jt=!0,g.textContent=_.children);if(R)if(J||!L||S&48)for(const U in R)(J&&(U.endsWith("value")||U==="indeterminate")||$r(U)&&!ur(U)||U[0]===".")&&r(g,U,null,R[U],void 0,void 0,C);else R.onClick&&r(g,"onClick",null,R.onClick,void 0,void 0,C);let Q;(Q=R&&R.onVnodeBeforeMount)&&qe(Q,C,_),P&&yt(_,null,C,"beforeMount"),((Q=R&&R.onVnodeMounted)||P||V)&&$u(()=>{Q&&qe(Q,C,_),V&&B.enter(g),P&&yt(_,null,C,"mounted")},A)}return g.nextSibling},h=(g,_,C,A,I,L,H)=>{H=H||!!_.dynamicChildren;const R=_.children,S=R.length;for(let T=0;T{const{slotScopeIds:H}=_;H&&(I=I?I.concat(H):H);const R=i(g),S=h(s(g),_,R,C,A,I,L);return S&&Jr(S)&&S.data==="]"?s(_.anchor=S):(jt=!0,c(_.anchor=l("]"),R,S),S)},p=(g,_,C,A,I,L)=>{if(jt=!0,_.el=null,L){const S=y(g);for(;;){const T=s(g);if(T&&T!==S)a(T);else break}}const H=s(g),R=i(g);return a(g),n(null,_,R,H,C,A,Qr(R),I),H},y=(g,_="[",C="]")=>{let A=0;for(;g;)if(g=s(g),g&&Jr(g)&&(g.data===_&&A++,g.data===C)){if(A===0)return s(g);A--}return g},v=(g,_,C)=>{const A=_.parentNode;A&&A.replaceChild(g,_);let I=C;for(;I;)I.vnode.el===_&&(I.vnode.el=I.subTree.el=g),I=I.parent},b=g=>g.nodeType===1&&g.tagName.toLowerCase()==="template";return[u,f]}const Ne=$u;function sm(e){return nf(e)}function im(e){return nf(e,om)}function nf(e,t){const n=ru();n.__VUE__=!0;const{insert:r,remove:o,patchProp:s,createElement:i,createText:a,createComment:c,setText:l,setElementText:u,parentNode:f,nextSibling:d,setScopeId:h=et,insertStaticContent:m}=e,p=(w,E,x,O=null,D=null,j=null,G=void 0,z=null,K=!!E.dynamicChildren)=>{if(w===E)return;w&&!ft(w,E)&&(O=$(w),we(w,D,j,!0),w=null),E.patchFlag===-2&&(K=!1,E.dynamicChildren=null);const{type:F,ref:Y,shapeFlag:ne}=E;switch(F){case Vn:y(w,E,x,O);break;case Ke:v(w,E,x,O);break;case Hn:w==null&&b(E,x,O,G);break;case Se:T(w,E,x,O,D,j,G,z,K);break;default:ne&1?C(w,E,x,O,D,j,G,z,K):ne&6?P(w,E,x,O,D,j,G,z,K):(ne&64||ne&128)&&F.process(w,E,x,O,D,j,G,z,K,W)}Y!=null&&D&&Co(Y,w&&w.ref,j,E||w,!E)},y=(w,E,x,O)=>{if(w==null)r(E.el=a(E.children),x,O);else{const D=E.el=w.el;E.children!==w.children&&l(D,E.children)}},v=(w,E,x,O)=>{w==null?r(E.el=c(E.children||""),x,O):E.el=w.el},b=(w,E,x,O)=>{[w.el,w.anchor]=m(w.children,E,x,O,w.el,w.anchor)},g=({el:w,anchor:E},x,O)=>{let D;for(;w&&w!==E;)D=d(w),r(w,x,O),w=D;r(E,x,O)},_=({el:w,anchor:E})=>{let x;for(;w&&w!==E;)x=d(w),o(w),w=x;o(E)},C=(w,E,x,O,D,j,G,z,K)=>{E.type==="svg"?G="svg":E.type==="math"&&(G="mathml"),w==null?A(E,x,O,D,j,G,z,K):H(w,E,D,j,G,z,K)},A=(w,E,x,O,D,j,G,z)=>{let K,F;const{props:Y,shapeFlag:ne,transition:te,dirs:ce}=w;if(K=w.el=i(w.type,j,Y&&Y.is,Y),ne&8?u(K,w.children):ne&16&&L(w.children,K,null,O,D,bs(w,j),G,z),ce&&yt(w,null,O,"created"),I(K,w,w.scopeId,G,O),Y){for(const be in Y)be!=="value"&&!ur(be)&&s(K,be,null,Y[be],j,w.children,O,D,Ae);"value"in Y&&s(K,"value",null,Y.value,j),(F=Y.onVnodeBeforeMount)&&qe(F,O,w)}ce&&yt(w,null,O,"beforeMount");const fe=rf(D,te);fe&&te.beforeEnter(K),r(K,E,x),((F=Y&&Y.onVnodeMounted)||fe||ce)&&Ne(()=>{F&&qe(F,O,w),fe&&te.enter(K),ce&&yt(w,null,O,"mounted")},D)},I=(w,E,x,O,D)=>{if(x&&h(w,x),O)for(let j=0;j{for(let F=K;F{const z=E.el=w.el;let{patchFlag:K,dynamicChildren:F,dirs:Y}=E;K|=w.patchFlag&16;const ne=w.props||Ce,te=E.props||Ce;let ce;if(x&&on(x,!1),(ce=te.onVnodeBeforeUpdate)&&qe(ce,x,E,w),Y&&yt(E,w,x,"beforeUpdate"),x&&on(x,!0),F?R(w.dynamicChildren,F,z,x,O,bs(E,D),j):G||U(w,E,z,null,x,O,bs(E,D),j,!1),K>0){if(K&16)S(z,E,ne,te,x,O,D);else if(K&2&&ne.class!==te.class&&s(z,"class",null,te.class,D),K&4&&s(z,"style",ne.style,te.style,D),K&8){const fe=E.dynamicProps;for(let be=0;be{ce&&qe(ce,x,E,w),Y&&yt(E,w,x,"updated")},O)},R=(w,E,x,O,D,j,G)=>{for(let z=0;z{if(x!==O){if(x!==Ce)for(const z in x)!ur(z)&&!(z in O)&&s(w,z,x[z],null,G,E.children,D,j,Ae);for(const z in O){if(ur(z))continue;const K=O[z],F=x[z];K!==F&&z!=="value"&&s(w,z,F,K,G,E.children,D,j,Ae)}"value"in O&&s(w,"value",x.value,O.value,G)}},T=(w,E,x,O,D,j,G,z,K)=>{const F=E.el=w?w.el:a(""),Y=E.anchor=w?w.anchor:a("");let{patchFlag:ne,dynamicChildren:te,slotScopeIds:ce}=E;ce&&(z=z?z.concat(ce):ce),w==null?(r(F,x,O),r(Y,x,O),L(E.children,x,Y,D,j,G,z,K)):ne>0&&ne&64&&te&&w.dynamicChildren?(R(w.dynamicChildren,te,x,D,j,G,z),(E.key!=null||D&&E===D.subTree)&&oa(w,E,!0)):U(w,E,x,Y,D,j,G,z,K)},P=(w,E,x,O,D,j,G,z,K)=>{E.slotScopeIds=z,w==null?E.shapeFlag&512?D.ctx.activate(E,x,O,G,K):B(E,x,O,D,j,G,K):J(w,E,K)},B=(w,E,x,O,D,j,G)=>{const z=w.component=gm(w,O,D);if(Nr(w)&&(z.ctx.renderer=W),ym(z),z.asyncDep){if(D&&D.registerDep(z,V),!w.el){const K=z.subTree=se(Ke);v(null,K,E,x)}}else V(z,w,E,x,D,j,G)},J=(w,E,x)=>{const O=E.component=w.component;if(vp(w,E,x))if(O.asyncDep&&!O.asyncResolved){Q(O,E,x);return}else O.next=E,hp(O.update),O.effect.dirty=!0,O.update();else E.el=w.el,O.vnode=E},V=(w,E,x,O,D,j,G)=>{const z=()=>{if(w.isMounted){let{next:Y,bu:ne,u:te,parent:ce,vnode:fe}=w;{const Sn=of(w);if(Sn){Y&&(Y.el=fe.el,Q(w,Y,G)),Sn.asyncDep.then(()=>{w.isUnmounted||z()});return}}let be=Y,Te;on(w,!1),Y?(Y.el=fe.el,Q(w,Y,G)):Y=fe,ne&&kn(ne),(Te=Y.props&&Y.props.onVnodeBeforeUpdate)&&qe(Te,ce,Y,fe),on(w,!0);const $e=ps(w),ut=w.subTree;w.subTree=$e,p(ut,$e,f(ut.el),$(ut),w,D,j),Y.el=$e.el,be===null&&Xi(w,$e.el),te&&Ne(te,D),(Te=Y.props&&Y.props.onVnodeUpdated)&&Ne(()=>qe(Te,ce,Y,fe),D)}else{let Y;const{el:ne,props:te}=E,{bm:ce,m:fe,parent:be}=w,Te=gn(E);if(on(w,!1),ce&&kn(ce),!Te&&(Y=te&&te.onVnodeBeforeMount)&&qe(Y,be,E),on(w,!0),ne&&_e){const $e=()=>{w.subTree=ps(w),_e(ne,w.subTree,w,D,null)};Te?E.type.__asyncLoader().then(()=>!w.isUnmounted&&$e()):$e()}else{const $e=w.subTree=ps(w);p(null,$e,x,O,w,D,j),E.el=$e.el}if(fe&&Ne(fe,D),!Te&&(Y=te&&te.onVnodeMounted)){const $e=E;Ne(()=>qe(Y,be,$e),D)}(E.shapeFlag&256||be&&gn(be.vnode)&&be.vnode.shapeFlag&256)&&w.a&&Ne(w.a,D),w.isMounted=!0,E=x=O=null}},K=w.effect=new Bi(z,et,()=>Ko(F),w.scope),F=w.update=()=>{K.dirty&&K.run()};F.id=w.uid,on(w,!0),F()},Q=(w,E,x)=>{E.component=w;const O=w.vnode.props;w.vnode=E,w.next=null,Zp(w,E.props,O,x),tm(w,E.children,x),En(),Ga(w),Cn()},U=(w,E,x,O,D,j,G,z,K=!1)=>{const F=w&&w.children,Y=w?w.shapeFlag:0,ne=E.children,{patchFlag:te,shapeFlag:ce}=E;if(te>0){if(te&128){Re(F,ne,x,O,D,j,G,z,K);return}else if(te&256){he(F,ne,x,O,D,j,G,z,K);return}}ce&8?(Y&16&&Ae(F,D,j),ne!==F&&u(x,ne)):Y&16?ce&16?Re(F,ne,x,O,D,j,G,z,K):Ae(F,D,j,!0):(Y&8&&u(x,""),ce&16&&L(ne,x,O,D,j,G,z,K))},he=(w,E,x,O,D,j,G,z,K)=>{w=w||Ln,E=E||Ln;const F=w.length,Y=E.length,ne=Math.min(F,Y);let te;for(te=0;teY?Ae(w,D,j,!0,!1,ne):L(E,x,O,D,j,G,z,K,ne)},Re=(w,E,x,O,D,j,G,z,K)=>{let F=0;const Y=E.length;let ne=w.length-1,te=Y-1;for(;F<=ne&&F<=te;){const ce=w[F],fe=E[F]=K?Ut(E[F]):st(E[F]);if(ft(ce,fe))p(ce,fe,x,null,D,j,G,z,K);else break;F++}for(;F<=ne&&F<=te;){const ce=w[ne],fe=E[te]=K?Ut(E[te]):st(E[te]);if(ft(ce,fe))p(ce,fe,x,null,D,j,G,z,K);else break;ne--,te--}if(F>ne){if(F<=te){const ce=te+1,fe=cete)for(;F<=ne;)we(w[F],D,j,!0),F++;else{const ce=F,fe=F,be=new Map;for(F=fe;F<=te;F++){const Ye=E[F]=K?Ut(E[F]):st(E[F]);Ye.key!=null&&be.set(Ye.key,F)}let Te,$e=0;const ut=te-fe+1;let Sn=!1,Da=0;const Xn=new Array(ut);for(F=0;F=ut){we(Ye,D,j,!0);continue}let mt;if(Ye.key!=null)mt=be.get(Ye.key);else for(Te=fe;Te<=te;Te++)if(Xn[Te-fe]===0&&ft(Ye,E[Te])){mt=Te;break}mt===void 0?we(Ye,D,j,!0):(Xn[mt-fe]=F+1,mt>=Da?Da=mt:Sn=!0,p(Ye,E[mt],x,null,D,j,G,z,K),$e++)}const Ha=Sn?am(Xn):Ln;for(Te=Ha.length-1,F=ut-1;F>=0;F--){const Ye=fe+F,mt=E[Ye],ja=Ye+1{const{el:j,type:G,transition:z,children:K,shapeFlag:F}=w;if(F&6){Ie(w.component.subTree,E,x,O);return}if(F&128){w.suspense.move(E,x,O);return}if(F&64){G.move(w,E,x,W);return}if(G===Se){r(j,E,x);for(let ne=0;nez.enter(j),D);else{const{leave:ne,delayLeave:te,afterLeave:ce}=z,fe=()=>r(j,E,x),be=()=>{ne(j,()=>{fe(),ce&&ce()})};te?te(j,fe,be):be()}else r(j,E,x)},we=(w,E,x,O=!1,D=!1)=>{const{type:j,props:G,ref:z,children:K,dynamicChildren:F,shapeFlag:Y,patchFlag:ne,dirs:te}=w;if(z!=null&&Co(z,null,x,w,!0),Y&256){E.ctx.deactivate(w);return}const ce=Y&1&&te,fe=!gn(w);let be;if(fe&&(be=G&&G.onVnodeBeforeUnmount)&&qe(be,E,w),Y&6)pt(w.component,x,O);else{if(Y&128){w.suspense.unmount(x,O);return}ce&&yt(w,null,E,"beforeUnmount"),Y&64?w.type.remove(w,E,x,D,W,O):F&&(j!==Se||ne>0&&ne&64)?Ae(F,E,x,!1,!0):(j===Se&&ne&384||!D&&Y&16)&&Ae(K,E,x),O&&ze(w)}(fe&&(be=G&&G.onVnodeUnmounted)||ce)&&Ne(()=>{be&&qe(be,E,w),ce&&yt(w,null,E,"unmounted")},x)},ze=w=>{const{type:E,el:x,anchor:O,transition:D}=w;if(E===Se){rt(x,O);return}if(E===Hn){_(w);return}const j=()=>{o(x),D&&!D.persisted&&D.afterLeave&&D.afterLeave()};if(w.shapeFlag&1&&D&&!D.persisted){const{leave:G,delayLeave:z}=D,K=()=>G(x,j);z?z(w.el,j,K):K()}else j()},rt=(w,E)=>{let x;for(;w!==E;)x=d(w),o(w),w=x;o(E)},pt=(w,E,x)=>{const{bum:O,scope:D,update:j,subTree:G,um:z}=w;O&&kn(O),D.stop(),j&&(j.active=!1,we(G,w,E,x)),z&&Ne(z,E),Ne(()=>{w.isUnmounted=!0},E),E&&E.pendingBranch&&!E.isUnmounted&&w.asyncDep&&!w.asyncResolved&&w.suspenseId===E.pendingId&&(E.deps--,E.deps===0&&E.resolve())},Ae=(w,E,x,O=!1,D=!1,j=0)=>{for(let G=j;Gw.shapeFlag&6?$(w.component.subTree):w.shapeFlag&128?w.suspense.next():d(w.anchor||w.el),Z=(w,E,x)=>{w==null?E._vnode&&we(E._vnode,null,null,!0):p(E._vnode||null,w,E,null,null,null,x),Ga(),vo(),E._vnode=w},W={p,um:we,m:Ie,r:ze,mt:B,mc:L,pc:U,pbc:R,n:$,o:e};let X,_e;return t&&([X,_e]=t(W)),{render:Z,hydrate:X,createApp:Jp(Z,X)}}function bs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function on({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function rf(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function oa(e,t,n=!1){const r=e.children,o=t.children;if(re(r)&&re(o))for(let s=0;s>1,e[n[a]]0&&(t[r]=n[s-1]),n[s]=r)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function of(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:of(t)}const cm=e=>e.__isTeleport,dr=e=>e&&(e.disabled||e.disabled===""),ac=e=>typeof SVGElement<"u"&&e instanceof SVGElement,cc=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Qs=(e,t)=>{const n=e&&e.to;return Pe(n)?t?t(n):null:n},lm={name:"Teleport",__isTeleport:!0,process(e,t,n,r,o,s,i,a,c,l){const{mc:u,pc:f,pbc:d,o:{insert:h,querySelector:m,createText:p,createComment:y}}=l,v=dr(t.props);let{shapeFlag:b,children:g,dynamicChildren:_}=t;if(e==null){const C=t.el=p(""),A=t.anchor=p("");h(C,n,r),h(A,n,r);const I=t.target=Qs(t.props,m),L=t.targetAnchor=p("");I&&(h(L,I),i==="svg"||ac(I)?i="svg":(i==="mathml"||cc(I))&&(i="mathml"));const H=(R,S)=>{b&16&&u(g,R,S,o,s,i,a,c)};v?H(n,A):I&&H(I,L)}else{t.el=e.el;const C=t.anchor=e.anchor,A=t.target=e.target,I=t.targetAnchor=e.targetAnchor,L=dr(e.props),H=L?n:A,R=L?C:I;if(i==="svg"||ac(A)?i="svg":(i==="mathml"||cc(A))&&(i="mathml"),_?(d(e.dynamicChildren,_,H,o,s,i,a),oa(e,t,!0)):c||f(e,t,H,R,o,s,i,a,!1),v)L?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Yr(t,n,C,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const S=t.target=Qs(t.props,m);S&&Yr(t,S,null,l,0)}else L&&Yr(t,A,I,l,1)}af(t)},remove(e,t,n,r,{um:o,o:{remove:s}},i){const{shapeFlag:a,children:c,anchor:l,targetAnchor:u,target:f,props:d}=e;if(f&&s(u),i&&s(l),a&16){const h=i||!dr(d);for(let m=0;m0?it||Ln:null,cf(),Bn>0&&it&&it.push(e),e}function ue(e,t,n,r,o,s){return lf(ie(e,t,n,r,o,s,!0))}function de(e,t,n,r,o){return lf(se(e,t,n,r,o,!0))}function zn(e){return e?e.__v_isVNode===!0:!1}function ft(e,t){return e.type===t.type&&e.key===t.key}const Yo="__vInternal",uf=({key:e})=>e??null,oo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Pe(e)||ke(e)||oe(e)?{i:Me,r:e,k:t,f:!!n}:e:null);function ie(e,t=null,n=null,r=0,o=null,s=e===Se?0:1,i=!1,a=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&uf(t),ref:t&&oo(t),scopeId:qo,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Me};return a?(sa(c,n),s&128&&e.normalize(c)):n&&(c.shapeFlag|=Pe(n)?8:16),Bn>0&&!i&&it&&(c.patchFlag>0||s&6)&&c.patchFlag!==32&&it.push(c),c}const se=fm;function fm(e,t=null,n=null,r=0,o=null,s=!1){if((!e||e===Iu)&&(e=Ke),zn(e)){const a=Ot(e,t,!0);return n&&sa(a,n),Bn>0&&!s&&it&&(a.shapeFlag&6?it[it.indexOf(e)]=a:it.push(a)),a.patchFlag|=-2,a}if(bm(e)&&(e=e.__vccOpts),t){t=ff(t);let{class:a,style:c}=t;a&&!Pe(a)&&(t.class=je(a)),Ee(c)&&(_u(c)&&!re(c)&&(c=Oe({},c)),t.style=Gn(c))}const i=Pe(e)?1:Ou(e)?128:cm(e)?64:Ee(e)?4:oe(e)?2:0;return ie(e,t,n,r,o,i,s,!0)}function ff(e){return e?_u(e)||Yo in e?Oe({},e):e:null}function Ot(e,t,n=!1){const{props:r,ref:o,patchFlag:s,children:i}=e,a=t?hm(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&uf(a),ref:t&&t.ref?n&&o?re(o)?o.concat(oo(t)):[o,oo(t)]:oo(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Se?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ot(e.ssContent),ssFallback:e.ssFallback&&Ot(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function Yn(e=" ",t=0){return se(Vn,null,e,t)}function dm(e,t){const n=se(Hn,null,e);return n.staticCount=t,n}function Fe(e="",t=!1){return t?(q(),de(Ke,null,e)):se(Ke,null,e)}function st(e){return e==null||typeof e=="boolean"?se(Ke):re(e)?se(Se,null,e.slice()):typeof e=="object"?Ut(e):se(Vn,null,String(e))}function Ut(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ot(e)}function sa(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(re(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),sa(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!(Yo in t)?t._ctx=Me:o===3&&Me&&(Me.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else oe(t)?(t={default:t,_ctx:Me},n=32):(t=String(t),r&64?(n=16,t=[Yn(t)]):n=8);e.children=t,e.shapeFlag|=n}function hm(...e){const t={};for(let n=0;nLe||Me;let ia,Js;{const e=ru(),t=(n,r)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(r),s=>{o.length>1?o.forEach(i=>i(s)):o[0](s)}};ia=t("__VUE_INSTANCE_SETTERS__",n=>Le=n),Js=t("__VUE_SSR_SETTERS__",n=>Dr=n)}const en=e=>{ia(e),e.scope.on()},Yt=()=>{Le&&Le.scope.off(),ia(null)};function df(e){return e.vnode.shapeFlag&4}let Dr=!1;function ym(e,t=!1){t&&Js(t);const{props:n,children:r}=e.vnode,o=df(e);Yp(e,n,o,t),em(e,r);const s=o?_m(e,t):void 0;return t&&Js(!1),s}function _m(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=vu(new Proxy(e.ctx,Bp));const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?pf(e):null;en(e),En();const s=Jt(r,e,0,[e.props,o]);if(Cn(),Yt(),Fi(s)){if(s.then(Yt,Yt),t)return s.then(i=>{Ys(e,i,t)}).catch(i=>{Qn(i,e,0)});e.asyncDep=s}else Ys(e,s,t)}else hf(e,t)}function Ys(e,t,n){oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ee(t)&&(e.setupState=Eu(t)),hf(e,n)}let uc;function hf(e,t,n){const r=e.type;if(!e.render){if(!t&&uc&&!r.render){const o=r.template||na(e).template;if(o){const{isCustomElement:s,compilerOptions:i}=e.appContext.config,{delimiters:a,compilerOptions:c}=r,l=Oe(Oe({isCustomElement:s,delimiters:a},i),c);r.render=uc(o,l)}}e.render=r.render||et}{en(e),En();try{Up(e)}finally{Cn(),Yt()}}}function vm(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return Ge(e,"get","$attrs"),t[n]}}))}function pf(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return vm(e)},slots:e.slots,emit:e.emit,expose:t}}function Zo(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Eu(vu(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in fr)return fr[n](e)},has(t,n){return n in t||n in fr}}))}function Zs(e,t=!0){return oe(e)?e.displayName||e.name:e.name||t&&e.__name}function bm(e){return oe(e)&&"__vccOpts"in e}const ee=(e,t)=>op(e,t,Dr);function tt(e,t,n){const r=arguments.length;return r===2?Ee(t)&&!re(t)?zn(t)?se(e,null,[t]):se(e,t):se(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&zn(n)&&(n=[n]),se(e,t,n))}const mf="3.4.4",wm=et,Em="http://www.w3.org/2000/svg",Cm="http://www.w3.org/1998/Math/MathML",Kt=typeof document<"u"?document:null,fc=Kt&&Kt.createElement("template"),Tm={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?Kt.createElementNS(Em,e):t==="mathml"?Kt.createElementNS(Cm,e):Kt.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>Kt.createTextNode(e),createComment:e=>Kt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Kt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{fc.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const a=fc.content;if(r==="svg"||r==="mathml"){const c=a.firstChild;for(;c.firstChild;)a.appendChild(c.firstChild);a.removeChild(c)}t.insertBefore(a,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Ft="transition",er="animation",xr=Symbol("_vtc"),aa=(e,{slots:t})=>tt($p,Sm(e),t);aa.displayName="Transition";const gf={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};aa.props=Oe({},Du,gf);const sn=(e,t=[])=>{re(e)?e.forEach(n=>n(...t)):e&&e(...t)},dc=e=>e?re(e)?e.some(t=>t.length>1):e.length>1:!1;function Sm(e){const t={};for(const T in e)T in gf||(t[T]=e[T]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:c=s,appearActiveClass:l=i,appearToClass:u=a,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:d=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,m=Pm(o),p=m&&m[0],y=m&&m[1],{onBeforeEnter:v,onEnter:b,onEnterCancelled:g,onLeave:_,onLeaveCancelled:C,onBeforeAppear:A=v,onAppear:I=b,onAppearCancelled:L=g}=t,H=(T,P,B)=>{an(T,P?u:a),an(T,P?l:i),B&&B()},R=(T,P)=>{T._isLeaving=!1,an(T,f),an(T,h),an(T,d),P&&P()},S=T=>(P,B)=>{const J=T?I:b,V=()=>H(P,T,B);sn(J,[P,V]),hc(()=>{an(P,T?c:s),Vt(P,T?u:a),dc(J)||pc(P,r,p,V)})};return Oe(t,{onBeforeEnter(T){sn(v,[T]),Vt(T,s),Vt(T,i)},onBeforeAppear(T){sn(A,[T]),Vt(T,c),Vt(T,l)},onEnter:S(!1),onAppear:S(!0),onLeave(T,P){T._isLeaving=!0;const B=()=>R(T,P);Vt(T,f),Rm(),Vt(T,d),hc(()=>{T._isLeaving&&(an(T,f),Vt(T,h),dc(_)||pc(T,r,y,B))}),sn(_,[T,B])},onEnterCancelled(T){H(T,!1),sn(g,[T])},onAppearCancelled(T){H(T,!0),sn(L,[T])},onLeaveCancelled(T){R(T),sn(C,[T])}})}function Pm(e){if(e==null)return null;if(Ee(e))return[ws(e.enter),ws(e.leave)];{const t=ws(e);return[t,t]}}function ws(e){return nu(e)}function Vt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[xr]||(e[xr]=new Set)).add(t)}function an(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[xr];n&&(n.delete(t),n.size||(e[xr]=void 0))}function hc(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let xm=0;function pc(e,t,n,r){const o=e._endId=++xm,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:i,timeout:a,propCount:c}=Am(e,t);if(!i)return r();const l=i+"end";let u=0;const f=()=>{e.removeEventListener(l,d),s()},d=h=>{h.target===e&&++u>=c&&f()};setTimeout(()=>{u(n[m]||"").split(", "),o=r(`${Ft}Delay`),s=r(`${Ft}Duration`),i=mc(o,s),a=r(`${er}Delay`),c=r(`${er}Duration`),l=mc(a,c);let u=null,f=0,d=0;t===Ft?i>0&&(u=Ft,f=i,d=s.length):t===er?l>0&&(u=er,f=l,d=c.length):(f=Math.max(i,l),u=f>0?i>l?Ft:er:null,d=u?u===Ft?s.length:c.length:0);const h=u===Ft&&/\b(transform|all)(,|$)/.test(r(`${Ft}Property`).toString());return{type:u,timeout:f,propCount:d,hasTransform:h}}function mc(e,t){for(;e.lengthgc(n)+gc(e[r])))}function gc(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Rm(){return document.body.offsetHeight}function Im(e,t,n){const r=e[xr];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const ca=Symbol("_vod"),Lm={beforeMount(e,{value:t},{transition:n}){e[ca]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):tr(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),tr(e,!0),r.enter(e)):r.leave(e,()=>{tr(e,!1)}):tr(e,t))},beforeUnmount(e,{value:t}){tr(e,t)}};function tr(e,t){e.style.display=t?e[ca]:"none"}const yf=Symbol("");function vP(e){const t=ht();if(!t)return;const n=t.ut=(o=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(s=>ei(s,o))},r=()=>{const o=e(t.proxy);Xs(t.subTree,o),n(o)};Ip(r),Nt(()=>{const o=new MutationObserver(r);o.observe(t.subTree.el.parentNode,{childList:!0}),Tr(()=>o.disconnect())})}function Xs(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Xs(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)ei(e.el,t);else if(e.type===Se)e.children.forEach(n=>Xs(n,t));else if(e.type===Hn){let{el:n,anchor:r}=e;for(;n&&(ei(n,t),n!==r);)n=n.nextSibling}}function ei(e,t){if(e.nodeType===1){const n=e.style;let r="";for(const o in t)n.setProperty(`--${o}`,t[o]),r+=`--${o}: ${t[o]};`;n[yf]=r}}function Om(e,t,n){const r=e.style,o=Pe(n);if(n&&!o){if(t&&!Pe(t))for(const s in t)n[s]==null&&ti(r,s,"");for(const s in n)ti(r,s,n[s])}else{const s=r.display;if(o){if(t!==n){const i=r[yf];i&&(n+=";"+i),r.cssText=n}}else t&&e.removeAttribute("style");ca in e&&(r.display=s)}}const yc=/\s*!important$/;function ti(e,t,n){if(re(n))n.forEach(r=>ti(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=km(e,t);yc.test(n)?e.setProperty(bn(r),n.replace(yc,""),"important"):e[r]=n}}const _c=["Webkit","Moz","ms"],Es={};function km(e,t){const n=Es[t];if(n)return n;let r=bt(t);if(r!=="filter"&&r in e)return Es[t]=r;r=Bo(r);for(let o=0;o<_c.length;o++){const s=_c[o]+r;if(s in e)return Es[t]=s}return t}const vc="http://www.w3.org/1999/xlink";function $m(e,t,n,r,o){if(r&&t.startsWith("xlink:"))n==null?e.removeAttributeNS(vc,t.slice(6,t.length)):e.setAttributeNS(vc,t,n);else{const s=Mh(t);n==null||s&&!ou(n)?e.removeAttribute(t):e.setAttribute(t,s?"":n)}}function Mm(e,t,n,r,o,s,i){if(t==="innerHTML"||t==="textContent"){r&&i(r,o,s),e[t]=n??"";return}const a=e.tagName;if(t==="value"&&a!=="PROGRESS"&&!a.includes("-")){e._value=n;const l=a==="OPTION"?e.getAttribute("value"):e.value,u=n??"";l!==u&&(e.value=u),n==null&&e.removeAttribute(t);return}let c=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=ou(n):n==null&&l==="string"?(n="",c=!0):l==="number"&&(n=0,c=!0)}try{e[t]=n}catch{}c&&e.removeAttribute(t)}function xn(e,t,n,r){e.addEventListener(t,n,r)}function Nm(e,t,n,r){e.removeEventListener(t,n,r)}const bc=Symbol("_vei");function Dm(e,t,n,r,o=null){const s=e[bc]||(e[bc]={}),i=s[t];if(r&&i)i.value=r;else{const[a,c]=Hm(t);if(r){const l=s[t]=Vm(r,o);xn(e,a,l,c)}else i&&(Nm(e,a,i,c),s[t]=void 0)}}const wc=/(?:Once|Passive|Capture)$/;function Hm(e){let t;if(wc.test(e)){t={};let r;for(;r=e.match(wc);)e=e.slice(0,e.length-r[0].length),t[r[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):bn(e.slice(2)),t]}let Cs=0;const jm=Promise.resolve(),Fm=()=>Cs||(jm.then(()=>Cs=0),Cs=Date.now());function Vm(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;at(Bm(r,n.value),t,5,[r])};return n.value=e,n.attached=Fm(),n}function Bm(e,t){if(re(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const Ec=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,zm=(e,t,n,r,o,s,i,a,c)=>{const l=o==="svg";t==="class"?Im(e,r,l):t==="style"?Om(e,n,r):$r(t)?Hi(t)||Dm(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Um(e,t,r,l))?Mm(e,t,r,s,i,a,c):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),$m(e,t,r,l))};function Um(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ec(t)&&oe(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return Ec(t)&&Pe(n)?!1:t in e}const Cc=e=>{const t=e.props["onUpdate:modelValue"]||!1;return re(t)?n=>kn(t,n):t};function Km(e){e.target.composing=!0}function Tc(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Ts=Symbol("_assign"),Wm={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[Ts]=Cc(o);const s=r||o.props&&o.props.type==="number";xn(e,t?"change":"input",i=>{if(i.target.composing)return;let a=e.value;n&&(a=a.trim()),s&&(a=Ds(a)),e[Ts](a)}),n&&xn(e,"change",()=>{e.value=e.value.trim()}),t||(xn(e,"compositionstart",Km),xn(e,"compositionend",Tc),xn(e,"change",Tc))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},s){if(e[Ts]=Cc(s),e.composing)return;const i=o||e.type==="number"?Ds(e.value):e.value,a=t??"";i!==a&&(document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===a)||(e.value=a))}},qm=["ctrl","shift","alt","meta"],Gm={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>qm.some(n=>e[`${n}Key`]&&!t.includes(n))},ar=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(o,...s)=>{for(let i=0;i{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=o=>{if(!("key"in o))return;const s=bn(o.key);if(t.some(i=>i===s||Qm[i]===s))return e(o)})},_f=Oe({patchProp:zm},Tm);let pr,Sc=!1;function Jm(){return pr||(pr=sm(_f))}function Ym(){return pr=Sc?pr:im(_f),Sc=!0,pr}const Zm=(...e)=>{const t=Jm().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=bf(r);if(!o)return;const s=t._component;!oe(s)&&!s.render&&!s.template&&(s.template=o.innerHTML),o.innerHTML="";const i=n(o,!1,vf(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t},Xm=(...e)=>{const t=Ym().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=bf(r);if(o)return n(o,!0,vf(o))},t};function vf(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function bf(e){return Pe(e)?document.querySelector(e):e}const eg=/#/g,tg=/&/g,ng=/=/g,la=/\+/g,rg=/%5e/gi,og=/%60/gi,sg=/%7c/gi,ig=/%20/gi;function ag(e){return encodeURI(""+e).replace(sg,"|")}function ni(e){return ag(typeof e=="string"?e:JSON.stringify(e)).replace(la,"%2B").replace(ig,"+").replace(eg,"%23").replace(tg,"%26").replace(og,"`").replace(rg,"^")}function Ps(e){return ni(e).replace(ng,"%3D")}function To(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function cg(e){return To(e.replace(la," "))}function lg(e){return To(e.replace(la," "))}function wf(e=""){const t={};e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const r=n.match(/([^=]+)=?(.*)/)||[];if(r.length<2)continue;const o=cg(r[1]);if(o==="__proto__"||o==="constructor")continue;const s=lg(r[2]||"");t[o]===void 0?t[o]=s:Array.isArray(t[o])?t[o].push(s):t[o]=[t[o],s]}return t}function ug(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${Ps(e)}=${ni(n)}`).join("&"):`${Ps(e)}=${ni(t)}`:Ps(e)}function fg(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>ug(t,e[t])).filter(Boolean).join("&")}const dg=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,hg=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,pg=/^([/\\]\s*){2,}[^/\\]/;function kt(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?dg.test(e):hg.test(e)||(t.acceptRelative?pg.test(e):!1)}const mg=/^[\s\0]*(blob|data|javascript|vbscript):$/i;function gg(e){return!!e&&mg.test(e)}const yg=/\/$|\/\?|\/#/;function ri(e="",t){return t?yg.test(e):e.endsWith("/")}function tn(e="",t){if(!t)return(ri(e)?e.slice(0,-1):e)||"/";if(!ri(e,!0))return e||"/";let n=e,r="";const o=e.indexOf("#");o>=0&&(n=e.slice(0,o),r=e.slice(o));const[s,...i]=n.split("?");return(s.slice(0,-1)||"/")+(i.length>0?`?${i.join("?")}`:"")+r}function So(e="",t){if(!t)return e.endsWith("/")?e:e+"/";if(ri(e,!0))return e||"/";let n=e,r="";const o=e.indexOf("#");if(o>=0&&(n=e.slice(0,o),r=e.slice(o),!n))return r;const[s,...i]=n.split("?");return s+"/"+(i.length>0?`?${i.join("?")}`:"")+r}function _g(e=""){return e.startsWith("/")}function oi(e=""){return _g(e)?e:"/"+e}function Ef(e,t){if(Tf(t)||kt(e))return e;const n=tn(t);return e.startsWith(n)?e:Tn(n,e)}function Pc(e,t){if(Tf(t))return e;const n=tn(t);if(!e.startsWith(n))return e;const r=e.slice(n.length);return r[0]==="/"?r:"/"+r}function Cf(e,t){const n=Hr(e),r={...wf(n.search),...t};return n.search=fg(r),Eg(n)}function Tf(e){return!e||e==="/"}function vg(e){return e&&e!=="/"}const bg=/^\.?\//;function Tn(e,...t){let n=e||"";for(const r of t.filter(o=>vg(o)))if(n){const o=r.replace(bg,"");n=So(n)+o}else n=r;return n}function wg(e,t,n={}){return n.trailingSlash||(e=So(e),t=So(t)),n.leadingSlash||(e=oi(e),t=oi(t)),n.encoding||(e=To(e),t=To(t)),e===t}function Hr(e="",t){const n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){const[,f,d=""]=n;return{protocol:f.toLowerCase(),pathname:d,href:f+d,auth:"",host:"",search:"",hash:""}}if(!kt(e,{acceptRelative:!0}))return t?Hr(t+e):xc(e);const[,r="",o,s=""]=e.replace(/\\/g,"/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[],[,i="",a=""]=s.match(/([^#/?]*)(.*)?/)||[],{pathname:c,search:l,hash:u}=xc(a.replace(/\/(?=[A-Za-z]:)/,""));return{protocol:r.toLowerCase(),auth:o?o.slice(0,Math.max(0,o.length-1)):"",host:i,pathname:c,search:l,hash:u}}function xc(e=""){const[t="",n="",r=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function Eg(e){const t=e.pathname||"",n=e.search?(e.search.startsWith("?")?"":"?")+e.search:"",r=e.hash||"",o=e.auth?e.auth+"@":"",s=e.host||"";return(e.protocol?e.protocol+"//":"")+o+s+t+n+r}const Cg=()=>{var e;return((e=window==null?void 0:window.__NUXT__)==null?void 0:e.config)||{}},Po=Cg().app,Tg=()=>Po.baseURL,Sg=()=>Po.buildAssetsDir,ua=(...e)=>Tn(Sf(),Sg(),...e),Sf=(...e)=>{const t=Po.cdnURL||Po.baseURL;return e.length?Tn(t,...e):t};globalThis.__buildAssetsURL=ua,globalThis.__publicAssetsURL=Sf;const Pg=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,xg=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,Ag=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function Rg(e,t){if(e==="__proto__"||e==="constructor"&&t&&typeof t=="object"&&"prototype"in t){Ig(e);return}return t}function Ig(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function Ar(e,t={}){if(typeof e!="string")return e;const n=e.trim();if(e[0]==='"'&&e.at(-1)==='"'&&!e.includes("\\"))return n.slice(1,-1);if(n.length<=9){const r=n.toLowerCase();if(r==="true")return!0;if(r==="false")return!1;if(r==="undefined")return;if(r==="null")return null;if(r==="nan")return Number.NaN;if(r==="infinity")return Number.POSITIVE_INFINITY;if(r==="-infinity")return Number.NEGATIVE_INFINITY}if(!Ag.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(Pg.test(e)||xg.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,Rg)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}class Lg extends Error{constructor(t,n){super(t,n),this.name="FetchError",n!=null&&n.cause&&!this.cause&&(this.cause=n.cause)}}function Og(e){var c,l,u,f,d;const t=((c=e.error)==null?void 0:c.message)||((l=e.error)==null?void 0:l.toString())||"",n=((u=e.request)==null?void 0:u.method)||((f=e.options)==null?void 0:f.method)||"GET",r=((d=e.request)==null?void 0:d.url)||String(e.request)||"/",o=`[${n}] ${JSON.stringify(r)}`,s=e.response?`${e.response.status} ${e.response.statusText}`:"",i=`${o}: ${s}${t?` ${t}`:""}`,a=new Lg(i,e.error?{cause:e.error}:void 0);for(const h of["request","options","response"])Object.defineProperty(a,h,{get(){return e[h]}});for(const[h,m]of[["data","_data"],["status","status"],["statusCode","status"],["statusText","statusText"],["statusMessage","statusText"]])Object.defineProperty(a,h,{get(){return e.response&&e.response[m]}});return a}const kg=new Set(Object.freeze(["PATCH","POST","PUT","DELETE"]));function Ac(e="GET"){return kg.has(e.toUpperCase())}function $g(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.buffer?!1:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}const Mg=new Set(["image/svg","application/xml","application/xhtml","application/html"]),Ng=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function Dg(e=""){if(!e)return"json";const t=e.split(";").shift()||"";return Ng.test(t)?"json":Mg.has(t)||t.startsWith("text/")?"text":"blob"}function Hg(e,t,n=globalThis.Headers){const r={...t,...e};if(t!=null&&t.params&&(e!=null&&e.params)&&(r.params={...t==null?void 0:t.params,...e==null?void 0:e.params}),t!=null&&t.query&&(e!=null&&e.query)&&(r.query={...t==null?void 0:t.query,...e==null?void 0:e.query}),t!=null&&t.headers&&(e!=null&&e.headers)){r.headers=new n((t==null?void 0:t.headers)||{});for(const[o,s]of new n((e==null?void 0:e.headers)||{}))r.headers.set(o,s)}return r}const jg=new Set([408,409,425,429,500,502,503,504]),Fg=new Set([101,204,205,304]);function Pf(e={}){const{fetch:t=globalThis.fetch,Headers:n=globalThis.Headers,AbortController:r=globalThis.AbortController}=e;async function o(a){const c=a.error&&a.error.name==="AbortError"&&!a.options.timeout||!1;if(a.options.retry!==!1&&!c){let u;typeof a.options.retry=="number"?u=a.options.retry:u=Ac(a.options.method)?0:1;const f=a.response&&a.response.status||500;if(u>0&&(Array.isArray(a.options.retryStatusCodes)?a.options.retryStatusCodes.includes(f):jg.has(f))){const d=a.options.retryDelay||0;return d>0&&await new Promise(h=>setTimeout(h,d)),s(a.request,{...a.options,retry:u-1,timeout:a.options.timeout})}}const l=Og(a);throw Error.captureStackTrace&&Error.captureStackTrace(l,s),l}const s=async function(c,l={}){var d;const u={request:c,options:Hg(l,e.defaults,n),response:void 0,error:void 0};if(u.options.method=(d=u.options.method)==null?void 0:d.toUpperCase(),u.options.onRequest&&await u.options.onRequest(u),typeof u.request=="string"&&(u.options.baseURL&&(u.request=Ef(u.request,u.options.baseURL)),(u.options.query||u.options.params)&&(u.request=Cf(u.request,{...u.options.params,...u.options.query}))),u.options.body&&Ac(u.options.method)&&($g(u.options.body)?(u.options.body=typeof u.options.body=="string"?u.options.body:JSON.stringify(u.options.body),u.options.headers=new n(u.options.headers||{}),u.options.headers.has("content-type")||u.options.headers.set("content-type","application/json"),u.options.headers.has("accept")||u.options.headers.set("accept","application/json")):("pipeTo"in u.options.body&&typeof u.options.body.pipeTo=="function"||typeof u.options.body.pipe=="function")&&("duplex"in u.options||(u.options.duplex="half"))),!u.options.signal&&u.options.timeout){const h=new r;setTimeout(()=>h.abort(),u.options.timeout),u.options.signal=h.signal}try{u.response=await t(u.request,u.options)}catch(h){return u.error=h,u.options.onRequestError&&await u.options.onRequestError(u),await o(u)}if(u.response.body&&!Fg.has(u.response.status)&&u.options.method!=="HEAD"){const h=(u.options.parseResponse?"json":u.options.responseType)||Dg(u.response.headers.get("content-type")||"");switch(h){case"json":{const m=await u.response.text(),p=u.options.parseResponse||Ar;u.response._data=p(m);break}case"stream":{u.response._data=u.response.body;break}default:u.response._data=await u.response[h]()}}return u.options.onResponse&&await u.options.onResponse(u),!u.options.ignoreResponseError&&u.response.status>=400&&u.response.status<600?(u.options.onResponseError&&await u.options.onResponseError(u),await o(u)):u.response},i=async function(c,l){return(await s(c,l))._data};return i.raw=s,i.native=(...a)=>t(...a),i.create=(a={})=>Pf({...e,defaults:{...e.defaults,...a}}),i}const fa=function(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}(),Vg=fa.fetch||(()=>Promise.reject(new Error("[ofetch] global.fetch is not supported!"))),Bg=fa.Headers,zg=fa.AbortController,Ug=Pf({fetch:Vg,Headers:Bg,AbortController:zg}),Kg=Ug;globalThis.$fetch||(globalThis.$fetch=Kg.create({baseURL:Tg()}));function si(e,t={},n){for(const r in e){const o=e[r],s=n?`${n}:${r}`:r;typeof o=="object"&&o!==null?si(o,t,s):typeof o=="function"&&(t[s]=o)}return t}const Wg={run:e=>e()},qg=()=>Wg,xf=typeof console.createTask<"u"?console.createTask:qg;function Gg(e,t){const n=t.shift(),r=xf(n);return e.reduce((o,s)=>o.then(()=>r.run(()=>s(...t))),Promise.resolve())}function Qg(e,t){const n=t.shift(),r=xf(n);return Promise.all(e.map(o=>r.run(()=>o(...t))))}function xs(e,t){for(const n of[...e])n(t)}class Jg{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,r={}){if(!t||typeof n!="function")return()=>{};const o=t;let s;for(;this._deprecatedHooks[t];)s=this._deprecatedHooks[t],t=s.to;if(s&&!r.allowDeprecated){let i=s.message;i||(i=`${o} hook has been deprecated`+(s.to?`, please use ${s.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let r,o=(...s)=>(typeof r=="function"&&r(),r=void 0,o=void 0,n(...s));return r=this.hook(t,o),r}removeHook(t,n){if(this._hooks[t]){const r=this._hooks[t].indexOf(n);r!==-1&&this._hooks[t].splice(r,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const r=this._hooks[t]||[];delete this._hooks[t];for(const o of r)this.hook(t,o)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=si(t),r=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of r.splice(0,r.length))o()}}removeHooks(t){const n=si(t);for(const r in n)this.removeHook(r,n[r])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(Gg,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith(Qg,t,...n)}callHookWith(t,n,...r){const o=this._before||this._after?{name:n,args:r,context:{}}:void 0;this._before&&xs(this._before,o);const s=t(n in this._hooks?[...this._hooks[n]]:[],r);return s instanceof Promise?s.finally(()=>{this._after&&o&&xs(this._after,o)}):(this._after&&o&&xs(this._after,o),s)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function Af(){return new Jg}function Yg(e={}){let t,n=!1;const r=i=>{if(t&&t!==i)throw new Error("Context conflict")};let o;if(e.asyncContext){const i=e.AsyncLocalStorage||globalThis.AsyncLocalStorage;i?o=new i:console.warn("[unctx] `AsyncLocalStorage` is not provided.")}const s=()=>{if(o&&t===void 0){const i=o.getStore();if(i!==void 0)return i}return t};return{use:()=>{const i=s();if(i===void 0)throw new Error("Context is not available");return i},tryUse:()=>s(),set:(i,a)=>{a||r(i),t=i,n=!0},unset:()=>{t=void 0,n=!1},call:(i,a)=>{r(i),t=i;try{return o?o.run(i,a):a()}finally{n||(t=void 0)}},async callAsync(i,a){t=i;const c=()=>{t=i},l=()=>t===i?c:void 0;ii.add(l);try{const u=o?o.run(i,a):a();return n||(t=void 0),await u}finally{ii.delete(l)}}}}function Zg(e={}){const t={};return{get(n,r={}){return t[n]||(t[n]=Yg({...e,...r})),t[n],t[n]}}}const xo=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Rc="__unctx__",Xg=xo[Rc]||(xo[Rc]=Zg()),ey=(e,t={})=>Xg.get(e,t),Ic="__unctx_async_handlers__",ii=xo[Ic]||(xo[Ic]=new Set);function Rr(e){const t=[];for(const o of ii){const s=o();s&&t.push(s)}const n=()=>{for(const o of t)o()};let r=e();return r&&typeof r=="object"&&"catch"in r&&(r=r.catch(o=>{throw n(),o})),[r,n]}const Rf=ey("nuxt-app",{asyncContext:!1}),ty="__nuxt_plugin";function ny(e){let t=0;const n={_scope:Nh(),provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.9.0"},get vue(){return n.vueApp.version}},payload:nt({data:{},state:{},once:new Set,_errors:{},...window.__NUXT__??{}}),static:{data:{}},runWithContext:o=>n._scope.run(()=>If(n,o)),isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let o=!1;return()=>{if(!o&&(o=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:{},_payloadRevivers:{},...e};n.hooks=Af(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(o,s)=>{const i="$"+o;Zr(n,i,s),Zr(n.vueApp.config.globalProperties,i,s)},Zr(n.vueApp,"$nuxt",n),Zr(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener("nuxt.preloadError",s=>{n.callHook("app:chunkError",{error:s.payload})}),window.useNuxtApp=window.useNuxtApp||ye;const o=n.hook("app:error",(...s)=>{console.error("[nuxt] error caught during app initialization",...s)});n.hook("app:mounted",o)}const r=nt(n.payload.config);return n.provide("config",r),n}async function ry(e,t){if(t.hooks&&e.hooks.addHooks(t.hooks),typeof t=="function"){const{provide:n}=await e.runWithContext(()=>t(e))||{};if(n&&typeof n=="object")for(const r in n)e.provide(r,n[r])}}async function oy(e,t){const n=[],r=[],o=[],s=[];let i=0;async function a(c){if(c.dependsOn&&!c.dependsOn.every(l=>n.includes(l)))r.push([new Set(c.dependsOn),c]);else{const l=ry(e,c).then(async()=>{c._name&&(n.push(c._name),await Promise.all(r.map(async([u,f])=>{u.has(c._name)&&(u.delete(c._name),u.size===0&&(i++,await a(f)))})))});c.parallel?o.push(l.catch(u=>s.push(u))):await l}}for(const c of t)await a(c);if(await Promise.all(o),i)for(let c=0;c{}),e,{[ty]:!0,_name:t})}function If(e,t,n){const r=()=>n?t(...n):t();return Rf.set(e),e.vueApp.runWithContext(r)}function ye(){var t;let e;if(Ju()&&(e=(t=ht())==null?void 0:t.appContext.app.$nuxt),e=e||Rf.tryUse(),!e)throw new Error("[nuxt] instance unavailable");return e}function Je(){return ye().$config}function Zr(e,t,n){Object.defineProperty(e,t,{get:()=>n})}const sy="modulepreload",iy=function(e,t){return e[0]==="."?new URL(e,t).href:e},Lc={},ay=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link");o=Promise.all(n.map(i=>{if(i=iy(i,r),i in Lc)return;Lc[i]=!0;const a=i.endsWith(".css"),c=a?'[rel="stylesheet"]':"";if(!!r)for(let f=s.length-1;f>=0;f--){const d=s[f];if(d.href===i&&(!a||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${i}"]${c}`))return;const u=document.createElement("link");if(u.rel=a?"stylesheet":sy,a||(u.as="script",u.crossOrigin=""),u.href=i,document.head.appendChild(u),a)return new Promise((f,d)=>{u.addEventListener("load",f),u.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${i}`)))})}))}return o.then(()=>t()).catch(s=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s})},k=(...e)=>ay(...e).catch(t=>{const n=new Event("nuxt.preloadError");throw n.payload=t,window.dispatchEvent(n),t}),cy=-1,ly=-2,uy=-3,fy=-4,dy=-5,hy=-6;function py(e,t){return my(JSON.parse(e),t)}function my(e,t){if(typeof e=="number")return o(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function o(s,i=!1){if(s===cy)return;if(s===uy)return NaN;if(s===fy)return 1/0;if(s===dy)return-1/0;if(s===hy)return-0;if(i)throw new Error("Invalid input");if(s in r)return r[s];const a=n[s];if(!a||typeof a!="object")r[s]=a;else if(Array.isArray(a))if(typeof a[0]=="string"){const c=a[0],l=t==null?void 0:t[c];if(l)return r[s]=l(o(a[1]));switch(c){case"Date":r[s]=new Date(a[1]);break;case"Set":const u=new Set;r[s]=u;for(let h=1;h>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Oc(e){return e._h||da(e._d?e._d:`${e.tag}:${e.textContent||e.innerHTML||""}:${Object.entries(e.props).map(([t,n])=>`${t}:${String(n)}`).join(",")}`)}function Of(e,t){const{props:n,tag:r}=e;if(vy.includes(r))return r;if(r==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];r==="meta"&&o.push("name","property","http-equiv");for(const s of o)if(typeof n[s]<"u"){const i=String(n[s]);return t&&!t(i)?!1:`${r}:${s}:${i}`}return!1}function kc(e,t){return e==null?t||null:typeof e=="function"?e(t):e}async function wy(e,t,n){const r={tag:e,props:await kf(typeof t=="object"&&typeof t!="function"&&!(t instanceof Promise)?{...t}:{[["script","noscript","style"].includes(e)?"innerHTML":"textContent"]:t},["templateParams","titleTemplate"].includes(e))};return Lf.forEach(o=>{const s=typeof r.props[o]<"u"?r.props[o]:n[o];typeof s<"u"&&((!["innerHTML","textContent","children"].includes(o)||yy.includes(r.tag))&&(r[o==="children"?"innerHTML":o]=s),delete r.props[o])}),r.props.body&&(r.tagPosition="bodyClose",delete r.props.body),r.tag==="script"&&typeof r.innerHTML=="object"&&(r.innerHTML=JSON.stringify(r.innerHTML),r.props.type=r.props.type||"application/json"),Array.isArray(r.props.content)?r.props.content.map(o=>({...r,props:{...r.props,content:o}})):r}function Ey(e){return typeof e=="object"&&!Array.isArray(e)&&(e=Object.keys(e).filter(t=>e[t])),(Array.isArray(e)?e.join(" "):e).split(" ").filter(t=>t.trim()).filter(Boolean).join(" ")}async function kf(e,t){for(const n of Object.keys(e)){if(n==="class"){e[n]=Ey(e[n]);continue}if(e[n]instanceof Promise&&(e[n]=await e[n]),!t&&!Lf.includes(n)){const r=String(e[n]),o=n.startsWith("data-");r==="true"||r===""?e[n]=o?"true":!0:e[n]||(o&&r==="false"?e[n]="false":delete e[n])}}return e}const Cy=10;async function Ty(e){const t=[];return Object.entries(e.resolvedInput).filter(([n,r])=>typeof r<"u"&&_y.includes(n)).forEach(([n,r])=>{const o=gy(r);t.push(...o.map(s=>wy(n,s,e)).flat())}),(await Promise.all(t)).flat().filter(Boolean).map((n,r)=>(n._e=e._i,e.mode&&(n._m=e.mode),n._p=(e._i<c&&c[l]||void 0,t):a=t[i],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=e;try{o=decodeURI(e)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const a=r(i.slice(1));typeof a=="string"&&(e=e.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(c,l)=>`${a}${l}`).trim())}),e.includes(Bt)&&(e.endsWith(Bt)&&(e=e.slice(0,-Bt.length).trim()),e.startsWith(Bt)&&(e=e.slice(Bt.length).trim()),e=e.replace(new RegExp(`\\${Bt}\\s*\\${Bt}`,"g"),Bt),e=io(e,{separator:n},n)),e}async function Py(e){const t={tag:e.tagName.toLowerCase(),props:await kf(e.getAttributeNames().reduce((n,r)=>({...n,[r]:e.getAttribute(r)}),{})),innerHTML:e.innerHTML};return t._d=Of(t),t}async function Mf(e,t={}){var u;const n=t.document||e.resolvedOptions.document;if(!n)return;const r={shouldRender:e.dirty,tags:[]};if(await e.hooks.callHook("dom:beforeRender",r),!r.shouldRender)return;const o=(await e.resolveTags()).map(f=>({tag:f,id:so.includes(f.tag)?Oc(f):f.tag,shouldRender:!0}));let s=e._dom;if(!s){s={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const f of["body","head"]){const d=(u=n==null?void 0:n[f])==null?void 0:u.children;for(const h of[...d].filter(m=>so.includes(m.tagName.toLowerCase())))s.elMap[h.getAttribute("data-hid")||Oc(await Py(h))]=h}}s.pendingSideEffects={...s.sideEffects||{}},s.sideEffects={};function i(f,d,h){const m=`${f}:${d}`;s.sideEffects[m]=h,delete s.pendingSideEffects[m]}function a({id:f,$el:d,tag:h}){const m=h.tag.endsWith("Attrs");s.elMap[f]=d,m||(["textContent","innerHTML"].forEach(p=>{h[p]&&h[p]!==d[p]&&(d[p]=h[p])}),i(f,"el",()=>{s.elMap[f].remove(),delete s.elMap[f]})),Object.entries(h.props).forEach(([p,y])=>{const v=`attr:${p}`;if(p==="class")for(const b of(y||"").split(" ").filter(Boolean))m&&i(f,`${v}:${b}`,()=>d.classList.remove(b)),!d.classList.contains(b)&&d.classList.add(b);else d.getAttribute(p)!==y&&d.setAttribute(p,y===!0?"":String(y)),m&&i(f,v,()=>d.removeAttribute(p))})}const c=[],l={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of o){const{tag:d,shouldRender:h,id:m}=f;if(h){if(d.tag==="title"){n.title=d.textContent;continue}f.$el=f.$el||s.elMap[m],f.$el?a(f):so.includes(d.tag)&&c.push(f)}}for(const f of c){const d=f.tag.tagPosition||"head";f.$el=n.createElement(f.tag.tag),a(f),l[d]=l[d]||n.createDocumentFragment(),l[d].appendChild(f.$el)}for(const f of o)await e.hooks.callHook("dom:renderTag",f,n,i);l.head&&n.head.appendChild(l.head),l.bodyOpen&&n.body.insertBefore(l.bodyOpen,n.body.firstChild),l.bodyClose&&n.body.appendChild(l.bodyClose),Object.values(s.pendingSideEffects).forEach(f=>f()),e._dom=s,e.dirty=!1,await e.hooks.callHook("dom:rendered",{renders:o})}async function xy(e,t={}){const n=t.delayFn||(r=>setTimeout(r,10));return e._domUpdatePromise=e._domUpdatePromise||new Promise(r=>n(async()=>{await Mf(e,t),delete e._domUpdatePromise,r()}))}function Ay(e){return t=>{var r,o;const n=((o=(r=t.resolvedOptions.document)==null?void 0:r.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&t.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(s){xy(s,e)}}}}}const Ry=["templateParams","htmlAttrs","bodyAttrs"],Iy={hooks:{"tag:normalise":function({tag:e}){["hid","vmid","key"].forEach(r=>{e.props[r]&&(e.key=e.props[r],delete e.props[r])});const n=Of(e)||(e.key?`${e.tag}:${e.key}`:!1);n&&(e._d=n)},"tags:resolve":function(e){const t={};e.tags.forEach(r=>{const o=(r.key?`${r.tag}:${r.key}`:r._d)||r._p,s=t[o];if(s){let a=r==null?void 0:r.tagDuplicateStrategy;if(!a&&Ry.includes(r.tag)&&(a="merge"),a==="merge"){const c=s.props;["class","style"].forEach(l=>{c[l]&&(r.props[l]?(l==="style"&&!c[l].endsWith(";")&&(c[l]+=";"),r.props[l]=`${c[l]} ${r.props[l]}`):r.props[l]=c[l])}),t[o].props={...c,...r.props};return}else if(r._e===s._e){s._duped=s._duped||[],r._d=`${s._d}:${s._duped.length+1}`,s._duped.push(r);return}else if(Ao(r)>Ao(s))return}const i=Object.keys(r.props).length+(r.innerHTML?1:0)+(r.textContent?1:0);if(so.includes(r.tag)&&i===0){delete t[o];return}t[o]=r});const n=[];Object.values(t).forEach(r=>{const o=r._duped;delete r._duped,n.push(r),o&&n.push(...o)}),e.tags=n,e.tags=e.tags.filter(r=>!(r.tag==="meta"&&(r.props.name||r.props.property)&&!r.props.content))}}},Ly={mode:"server",hooks:{"tags:resolve":function(e){const t={};e.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{t[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(t).length&&e.tags.push({tag:"script",innerHTML:JSON.stringify(t),props:{id:"unhead:payload",type:"application/json"}})}}},Oy=["script","link","bodyAttrs"];function ky(e){const t={},n={};return Object.entries(e.props).forEach(([r,o])=>{r.startsWith("on")&&typeof o=="function"?($f.includes(r)&&(t[r]=`this.dataset.${r} = true`),n[r]=o):t[r]=o}),{props:t,eventHandlers:n}}const $y=e=>({hooks:{"tags:resolve":function(t){for(const n of t.tags)if(Oy.includes(n.tag)){const{props:r,eventHandlers:o}=ky(n);n.props=r,Object.keys(o).length&&((n.props.src||n.props.href)&&(n.key=n.key||da(n.props.src||n.props.href)),n._eventHandlers=o)}},"dom:renderTag":function(t,n,r){if(!t.tag._eventHandlers)return;const o=t.tag.tag==="bodyAttrs"?n.defaultView:t.$el;Object.entries(t.tag._eventHandlers).forEach(([s,i])=>{const a=`${t.tag._d||t.tag._p}:${s}`,c=s.slice(2).toLowerCase(),l=`data-h-${c}`;if(r(t.id,a,()=>{}),t.$el.hasAttribute(l))return;t.$el.setAttribute(l,"");let u;const f=d=>{i(d),u==null||u.disconnect()};s in t.$el.dataset?f(new Event(s.replace("on",""))):$f.includes(s)&&typeof MutationObserver<"u"?(u=new MutationObserver(d=>{d.some(m=>m.attributeName===`data-${s}`)&&(f(new Event(s.replace("on",""))),u==null||u.disconnect())}),u.observe(t.$el,{attributes:!0})):o.addEventListener(c,f),r(t.id,a,()=>{u==null||u.disconnect(),o.removeEventListener(c,f),t.$el.removeAttribute(l)})})}}}),My=["link","style","script","noscript"],Ny={hooks:{"tag:normalise":({tag:e})=>{e.key&&My.includes(e.tag)&&(e.props["data-hid"]=e._h=da(e.key))}}},Dy={hooks:{"tags:resolve":e=>{const t=n=>{var r;return(r=e.tags.find(o=>o._d===n))==null?void 0:r._p};for(const{prefix:n,offset:r}of Sy)for(const o of e.tags.filter(s=>typeof s.tagPriority=="string"&&s.tagPriority.startsWith(n))){const s=t(o.tagPriority.replace(n,""));typeof s<"u"&&(o._p=s+r)}e.tags.sort((n,r)=>n._p-r._p).sort((n,r)=>Ao(n)-Ao(r))}}},Hy={meta:"content",link:"href",htmlAttrs:"lang"},jy=e=>({hooks:{"tags:resolve":t=>{var a;const{tags:n}=t,r=(a=n.find(c=>c.tag==="title"))==null?void 0:a.textContent,o=n.findIndex(c=>c.tag==="templateParams"),s=o!==-1?n[o].props:{},i=s.separator||"|";delete s.separator,s.pageTitle=io(s.pageTitle||r||"",s,i);for(const c of n.filter(l=>l.processTemplateParams!==!1)){const l=Hy[c.tag];l&&typeof c.props[l]=="string"?c.props[l]=io(c.props[l],s,i):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(u=>{typeof c[u]=="string"&&(c[u]=io(c[u],s,i))})}e._templateParams=s,e._separator=i,t.tags=n.filter(c=>c.tag!=="templateParams")}}}),Fy={hooks:{"tags:resolve":e=>{const{tags:t}=e;let n=t.findIndex(o=>o.tag==="titleTemplate");const r=t.findIndex(o=>o.tag==="title");if(r!==-1&&n!==-1){const o=kc(t[n].textContent,t[r].textContent);o!==null?t[r].textContent=o||t[r].textContent:delete t[r]}else if(n!==-1){const o=kc(t[n].textContent);o!==null&&(t[n].textContent=o,t[n].tag="title",n=-1)}n!==-1&&delete t[n],e.tags=t.filter(Boolean)}}},Vy={hooks:{"tags:afterResolve":function(e){for(const t of e.tags)typeof t.innerHTML=="string"&&(t.innerHTML&&["application/ld+json","application/json"].includes(t.props.type)?t.innerHTML=t.innerHTML.replace(/{a.dirty=!0,t.callHook("entries:updated",a)};let o=0,s=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:e,hooks:t,headEntries(){return s},use(c){const l=typeof c=="function"?c(a):c;(!l.key||!i.some(u=>u.key===l.key))&&(i.push(l),Nc(l.mode,n)&&t.addHooks(l.hooks||{}))},push(c,l){l==null||delete l.head;const u={_i:o++,input:c,...l};return Nc(u.mode,n)&&(s.push(u),r()),{dispose(){s=s.filter(f=>f._i!==u._i),t.callHook("entries:updated",a),r()},patch(f){s=s.map(d=>(d._i===u._i&&(d.input=u.input=f),d)),r()}}},async resolveTags(){const c={tags:[],entries:[...s]};await t.callHook("entries:resolve",c);for(const l of c.entries){const u=l.resolvedInput||l.input;if(l.resolvedInput=await(l.transform?l.transform(u):u),l.resolvedInput)for(const f of await Ty(l)){const d={tag:f,entry:l,resolvedOptions:a.resolvedOptions};await t.callHook("tag:normalise",d),c.tags.push(d.tag)}}return await t.callHook("tags:beforeResolve",c),await t.callHook("tags:resolve",c),await t.callHook("tags:afterResolve",c),c.tags},ssr:n};return[Iy,Ly,$y,Ny,Dy,jy,Fy,Vy,...(e==null?void 0:e.plugins)||[]].forEach(c=>a.use(c)),a.hooks.callHook("init",a),a}function Uy(){return Nf}const Ky=mf.startsWith("3");function Wy(e){return typeof e=="function"?e():M(e)}function Ro(e,t=""){if(e instanceof Promise)return e;const n=Wy(e);return!e||!n?n:Array.isArray(n)?n.map(r=>Ro(r,t)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([r,o])=>r==="titleTemplate"||r.startsWith("on")?[r,M(o)]:[r,Ro(o,r)])):n}const qy={hooks:{"entries:resolve":function(e){for(const t of e.entries)t.resolvedInput=Ro(t.input)}}},Df="usehead";function Gy(e){return{install(n){Ky&&(n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(Df,e))}}.install}function Qy(e={}){e.domDelayFn=e.domDelayFn||(n=>wt(()=>setTimeout(()=>n(),0)));const t=By(e);return t.use(qy),t.install=Gy(t),t}const ai=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ci="__unhead_injection_handler__";function Jy(e){ai[ci]=e}function Yy(){if(ci in ai)return ai[ci]();const e=De(Df);return e||Uy()}function Ir(e,t={}){const n=t.head||Yy();if(n)return n.ssr?n.push(e,t):Zy(n,e,t)}function Zy(e,t,n={}){const r=le(!1),o=le({});Rp(()=>{o.value=r.value?{}:Ro(t)});const s=e.push(o.value,n);return ge(o,a=>{s.patch(a)}),ht()&&(Jn(()=>{s.dispose()}),Vu(()=>{r.value=!0}),Fu(()=>{r.value=!1})),s}const Xr=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Xy(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");const n={},o=(t||{}).decode||n_;let s=0;for(;sjf(t,e)}}function Hf(e){const t={};for(const n in e)t[n]=n==="dynamic"?new Map(Object.entries(e[n]).map(([r,o])=>[r,Hf(o)])):new Map(Object.entries(e[n]));return t}function s_(e){return o_(Hf(e))}function jf(e,t){const n=[];for(const[o,s]of Hc(t.wildcard))e.startsWith(o)&&n.push(s);for(const[o,s]of Hc(t.dynamic))if(e.startsWith(o+"/")){const i="/"+e.slice(o.length).split("/").splice(2).join("/");n.push(...jf(i,s))}const r=t.static.get(e);return r&&n.push(r),n.filter(Boolean)}function Hc(e){return[...e.entries()].sort((t,n)=>t[0].length-n[0].length)}function li(e,t,n=".",r){if(!As(t))return li(e,{},n,r);const o=Object.assign({},t);for(const s in e){if(s==="__proto__"||s==="constructor")continue;const i=e[s];i!=null&&(r&&r(o,s,i,n)||(Array.isArray(i)&&Array.isArray(o[s])?o[s]=[...i,...o[s]]:As(i)&&As(o[s])?o[s]=li(i,o[s],(n?`${n}.`:"")+s.toString(),r):o[s]=i))}return o}function As(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Ff(e){return(...t)=>t.reduce((n,r)=>li(n,r,"",e),{})}const jn=Ff(),i_=Ff((e,t,n)=>{if(e[t]!==void 0&&typeof n=="function")return e[t]=n(e[t]),!0});function a_(e,t){try{return t in e}catch{return!1}}var c_=Object.defineProperty,l_=(e,t,n)=>t in e?c_(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ln=(e,t,n)=>(l_(e,typeof t!="symbol"?t+"":t,n),n);class ui extends Error{constructor(t,n={}){super(t,n),ln(this,"statusCode",500),ln(this,"fatal",!1),ln(this,"unhandled",!1),ln(this,"statusMessage"),ln(this,"data"),ln(this,"cause"),n.cause&&!this.cause&&(this.cause=n.cause)}toJSON(){const t={message:this.message,statusCode:di(this.statusCode,500)};return this.statusMessage&&(t.statusMessage=Vf(this.statusMessage)),this.data!==void 0&&(t.data=this.data),t}}ln(ui,"__h3_error__",!0);function fi(e){if(typeof e=="string")return new ui(e);if(u_(e))return e;const t=new ui(e.message??e.statusMessage??"",{cause:e.cause||e});if(a_(e,"stack"))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=di(e.statusCode,t.statusCode):e.status&&(t.statusCode=di(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;Vf(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function u_(e){var t;return((t=e==null?void 0:e.constructor)==null?void 0:t.__h3_error__)===!0}const f_=/[^\u0009\u0020-\u007E]/g;function Vf(e=""){return e.replace(f_,"")}function di(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}const d_=Symbol("layout-meta"),Xo=Symbol("route"),Bf="__nuxt_error",es=()=>Yi(ye().payload,"error"),In=e=>{const t=ts(e);try{const n=ye(),r=es();n.hooks.callHook("app:error",t),r.value=r.value||t}catch{throw t}return t},h_=async(e={})=>{const t=ye(),n=es();t.callHook("app:error:cleared",e),e.redirect&&await lt().replace(e.redirect),n.value=null},p_=e=>!!e&&typeof e=="object"&&Bf in e,ts=e=>{const t=fi(e);return Object.defineProperty(t,Bf,{value:!0,configurable:!1,writable:!1}),t},lt=()=>{var e;return(e=ye())==null?void 0:e.$router},ct=()=>Ju()?De(Xo,ye()._route):ye()._route;const m_=(e,t,n={})=>{const r=ye(),o=n.global||typeof e!="string",s=typeof e!="string"?e:t;if(!s){console.warn("[nuxt] No route middleware passed to `addRouteMiddleware`.",e);return}o?r._middleware.global.push(s):r._middleware.named[e]=s},g_=()=>{try{if(ye()._processingMiddleware)return!0}catch{return!0}return!1},zf=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:Cf(e.path||"/",e.query||{})+(e.hash||"");if(t!=null&&t.open){{const{target:a="_blank",windowFeatures:c={}}=t.open,l=Object.entries(c).filter(([u,f])=>f!==void 0).map(([u,f])=>`${u.toLowerCase()}=${f}`).join(", ");open(n,a,l)}return Promise.resolve()}const r=(t==null?void 0:t.external)||kt(n,{acceptRelative:!0});if(r){if(!(t!=null&&t.external))throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");const a=Hr(n).protocol;if(a&&gg(a))throw new Error(`Cannot navigate to a URL with '${a}' protocol.`)}const o=g_();if(!r&&o)return e;const s=lt(),i=ye();return r?(i._scope.stop(),t!=null&&t.replace?location.replace(n):location.href=n,o?i.isHydrating?new Promise(()=>{}):!1:Promise.resolve()):t!=null&&t.replace?s.replace(e):s.push(e)},y_={docus:{title:"vue-recaptcha",description:"Document for vue-recaptcha",url:"https://dansnow.github.io/vue-recaptcha",socials:{github:"DanSnow/vue-recaptcha"},github:{dir:"docs/content",owner:"DanSnow",repo:"vue-recaptcha",branch:"v3",edit:!0}}},__={docus:{title:"Docus",description:"The best place to start your documentation.",url:"https://docus.dev",image:"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png",socials:{},layout:"default",header:{title:"",logo:!1,showLinkIcon:!1,fluid:!1,exclude:[]},aside:{level:0,collapsed:!1,exclude:[]},footer:{credits:{icon:"IconDocus",text:"Powered by Docus",href:"https://docus.dev"},textLinks:[],iconLinks:[],fluid:!1},github:{dir:void 0,branch:void 0,repo:void 0,owner:void 0,edit:!1}}},v_={prose:{copyButton:{iconCopy:"ph:copy",iconCopied:"ph:check"},headings:{icon:"ph:link"}}},b_={},w_={nuxt:{buildId:"51da5e00-e6ef-48ae-b22a-db8c4398e774"}},E_=i_(y_,__,v_,b_,w_);function ha(){const e=ye();return e._appConfig||(e._appConfig=nt(E_)),e._appConfig}const bP=!1,hi=!1,C_=!1,T_={componentName:"NuxtLink"},S_={deep:!0},P_="#__nuxt";let ao,Uf;function x_(){var t;const e=(t=ha().nuxt)==null?void 0:t.buildId;return ao=$fetch(ua(`builds/meta/${e}.json`)),ao.then(n=>{Uf=s_(n.matcher)}),ao}function ns(){return ao||x_()}async function Kf(e){return await ns(),jn({},...Uf.matchAll(e).reverse())}function jc(e,t={}){const n=A_(e,t),r=ye(),o=r._payloadCache=r._payloadCache||{};return n in o||(o[n]=R_(e).then(s=>s?Wf(n).then(i=>i||(delete o[n],null)):(o[n]=null,null))),o[n]}const Fc="json";function A_(e,t={}){const n=new URL(e,"http://localhost");if(n.search)throw new Error("Payload URL cannot contain search params: "+e);if(n.host!=="localhost"||kt(n.pathname,{acceptRelative:!0}))throw new Error("Payload URL must not include hostname: "+e);const r=t.hash||(t.fresh?Date.now():"");return Tn(Je().app.baseURL,n.pathname,r?`_payload.${r}.${Fc}`:`_payload.${Fc}`)}async function Wf(e){const t=fetch(e).then(n=>n.text().then(qf));try{return await t}catch(n){console.warn("[nuxt] Cannot load payload ",e,n)}return null}async function R_(e=ct().path){if(e=tn(e),(await ns()).prerendered.includes(e))return!0;const n=await Kf(e);return!!n.prerender&&!n.redirect}let eo=null;async function I_(){if(eo)return eo;const e=document.getElementById("__NUXT_DATA__");if(!e)return{};const t=qf(e.textContent||""),n=e.dataset.src?await Wf(e.dataset.src):void 0;return eo={...t,...n,...window.__NUXT__},eo}function qf(e){return py(e,ye()._payloadRevivers)}function L_(e,t){ye()._payloadRevivers[e]=t}const Vc={NuxtError:e=>ts(e),EmptyShallowRef:e=>It(e==="_"?void 0:e==="0n"?BigInt(0):Ar(e)),EmptyRef:e=>le(e==="_"?void 0:e==="0n"?BigInt(0):Ar(e)),ShallowRef:e=>It(e),ShallowReactive:e=>Qt(e),Ref:e=>le(e),Reactive:e=>nt(e)},O_=Ve({name:"nuxt:revive-payload:client",order:-30,async setup(e){let t,n;for(const r in Vc)L_(r,Vc[r]);Object.assign(e.payload,([t,n]=Rr(()=>e.runWithContext(I_)),t=await t,n(),t)),window.__NUXT__=e.payload}}),k_=[],$_=Ve({name:"nuxt:head",enforce:"pre",setup(e){const t=Qy({plugins:k_});Jy(()=>ye().vueApp._context.provides.usehead),e.vueApp.use(t);{let n=!0;const r=async()=>{n=!1,await Mf(t)};t.hooks.hook("dom:beforeRender",o=>{o.shouldRender=!n}),e.hooks.hook("page:start",()=>{n=!0}),e.hooks.hook("page:finish",()=>{e.isHydrating||r()}),e.hooks.hook("app:error",r),e.hooks.hook("app:suspense:resolve",r)}}});/*! +function Di(e,t){const n=new Set(e.split(","));return t?r=>n.has(r.toLowerCase()):r=>n.has(r)}const Ce={},Ln=[],et=()=>{},Ch=()=>!1,$r=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hi=e=>e.startsWith("onUpdate:"),Oe=Object.assign,ji=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Th=Object.prototype.hasOwnProperty,pe=(e,t)=>Th.call(e,t),re=Array.isArray,On=e=>Mr(e)==="[object Map]",Xl=e=>Mr(e)==="[object Set]",Sh=e=>Mr(e)==="[object RegExp]",oe=e=>typeof e=="function",Pe=e=>typeof e=="string",qn=e=>typeof e=="symbol",Ee=e=>e!==null&&typeof e=="object",Fi=e=>(Ee(e)||oe(e))&&oe(e.then)&&oe(e.catch),eu=Object.prototype.toString,Mr=e=>eu.call(e),Ph=e=>Mr(e).slice(8,-1),tu=e=>Mr(e)==="[object Object]",Vi=e=>Pe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ur=Di(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Bo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},xh=/-(\w)/g,bt=Bo(e=>e.replace(xh,(t,n)=>n?n.toUpperCase():"")),Ah=/\B([A-Z])/g,bn=Bo(e=>e.replace(Ah,"-$1").toLowerCase()),zo=Bo(e=>e.charAt(0).toUpperCase()+e.slice(1)),ds=Bo(e=>e?`on${zo(e)}`:""),Xt=(e,t)=>!Object.is(e,t),kn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Ds=e=>{const t=parseFloat(e);return isNaN(t)?e:t},nu=e=>{const t=Pe(e)?Number(e):NaN;return isNaN(t)?e:t};let Fa;const ru=()=>Fa||(Fa=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gn(e){if(re(e)){const t={};for(let n=0;n{if(n){const r=n.split(Ih);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function je(e){let t="";if(Pe(e))t=e;else if(re(e))for(let n=0;nPe(e)?e:e==null?"":re(e)||Ee(e)&&(e.toString===eu||!oe(e.toString))?JSON.stringify(e,su,2):String(e),su=(e,t)=>t&&t.__v_isRef?su(e,t.value):On(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o],s)=>(n[hs(r,s)+" =>"]=o,n),{})}:Xl(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>hs(n))}:qn(t)?hs(t):Ee(t)&&!re(t)&&!tu(t)?String(t):t,hs=(e,t="")=>{var n;return qn(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Ze;class iu{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Ze,!t&&Ze&&(this.index=(Ze.scopes||(Ze.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Ze;try{return Ze=this,t()}finally{Ze=n}}}on(){Ze=this}off(){Ze=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n=2))break;Cn(),this._queryings--}return this._dirtyLevel>=2}set dirty(t){this._dirtyLevel=t?3:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Gt,n=pn;try{return Gt=!0,pn=this,this._runnings++,Va(this),this.fn()}finally{Ba(this),this._runnings--,pn=n,Gt=t}}stop(){var t;this.active&&(Va(this),Ba(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Hh(e){return e.value}function Va(e){e._trackId++,e._depsLength=0}function Ba(e){if(e.deps&&e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},yo=new WeakMap,mn=Symbol(""),Fs=Symbol("");function Ge(e,t,n){if(Gt&&pn){let r=yo.get(e);r||yo.set(e,r=new Map);let o=r.get(n);o||r.set(n,o=fu(()=>r.delete(n))),lu(pn,o)}}function Rt(e,t,n,r,o,s){const i=yo.get(e);if(!i)return;let a=[];if(t==="clear")a=[...i.values()];else if(n==="length"&&re(e)){const c=Number(r);i.forEach((l,u)=>{(u==="length"||!qn(u)&&u>=c)&&a.push(l)})}else switch(n!==void 0&&a.push(i.get(n)),t){case"add":re(e)?Vi(n)&&a.push(i.get("length")):(a.push(i.get(mn)),On(e)&&a.push(i.get(Fs)));break;case"delete":re(e)||(a.push(i.get(mn)),On(e)&&a.push(i.get(Fs)));break;case"set":On(e)&&a.push(i.get(mn));break}zi();for(const c of a)c&&uu(c,3);Ui()}function jh(e,t){var n;return(n=yo.get(e))==null?void 0:n.get(t)}const Fh=Di("__proto__,__v_isRef,__isVue"),du=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(qn)),za=Vh();function Vh(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=me(this);for(let s=0,i=this.length;s{e[t]=function(...n){En(),zi();const r=me(this)[t].apply(this,n);return Ui(),Cn(),r}}),e}function Bh(e){const t=me(this);return Ge(t,"has",e),t.hasOwnProperty(e)}class hu{constructor(t=!1,n=!1){this._isReadonly=t,this._shallow=n}get(t,n,r){const o=this._isReadonly,s=this._shallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return r===(o?s?tp:yu:s?gu:mu).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=re(t);if(!o){if(i&&pe(za,n))return Reflect.get(za,n,r);if(n==="hasOwnProperty")return Bh}const a=Reflect.get(t,n,r);return(qn(n)?du.has(n):Fh(n))||(o||Ge(t,"get",n),s)?a:ke(a)?i&&Vi(n)?a:a.value:Ee(a)?o?qi(a):nt(a):a}}class pu extends hu{constructor(t=!1){super(!1,t)}set(t,n,r,o){let s=t[n];if(!this._shallow){const c=yn(s);if(!_o(r)&&!yn(r)&&(s=me(s),r=me(r)),!re(t)&&ke(s)&&!ke(r))return c?!1:(s.value=r,!0)}const i=re(t)&&Vi(n)?Number(n)e,Uo=e=>Reflect.getPrototypeOf(e);function zr(e,t,n=!1,r=!1){e=e.__v_raw;const o=me(e),s=me(t);n||(Xt(t,s)&&Ge(o,"get",t),Ge(o,"get",s));const{has:i}=Uo(o),a=r?Ki:n?Qi:br;if(i.call(o,t))return a(e.get(t));if(i.call(o,s))return a(e.get(s));e!==o&&e.get(t)}function Ur(e,t=!1){const n=this.__v_raw,r=me(n),o=me(e);return t||(Xt(e,o)&&Ge(r,"has",e),Ge(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function Kr(e,t=!1){return e=e.__v_raw,!t&&Ge(me(e),"iterate",mn),Reflect.get(e,"size",e)}function Ua(e){e=me(e);const t=me(this);return Uo(t).has.call(t,e)||(t.add(e),Rt(t,"add",e,e)),this}function Ka(e,t){t=me(t);const n=me(this),{has:r,get:o}=Uo(n);let s=r.call(n,e);s||(e=me(e),s=r.call(n,e));const i=o.call(n,e);return n.set(e,t),s?Xt(t,i)&&Rt(n,"set",e,t):Rt(n,"add",e,t),this}function Wa(e){const t=me(this),{has:n,get:r}=Uo(t);let o=n.call(t,e);o||(e=me(e),o=n.call(t,e)),r&&r.call(t,e);const s=t.delete(e);return o&&Rt(t,"delete",e,void 0),s}function qa(){const e=me(this),t=e.size!==0,n=e.clear();return t&&Rt(e,"clear",void 0,void 0),n}function Wr(e,t){return function(r,o){const s=this,i=s.__v_raw,a=me(i),c=t?Ki:e?Qi:br;return!e&&Ge(a,"iterate",mn),i.forEach((l,u)=>r.call(o,c(l),c(u),s))}}function qr(e,t,n){return function(...r){const o=this.__v_raw,s=me(o),i=On(s),a=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,l=o[e](...r),u=n?Ki:t?Qi:br;return!t&&Ge(s,"iterate",c?Fs:mn),{next(){const{value:f,done:d}=l.next();return d?{value:f,done:d}:{value:a?[u(f[0]),u(f[1])]:u(f),done:d}},[Symbol.iterator](){return this}}}}function Ht(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function qh(){const e={get(s){return zr(this,s)},get size(){return Kr(this)},has:Ur,add:Ua,set:Ka,delete:Wa,clear:qa,forEach:Wr(!1,!1)},t={get(s){return zr(this,s,!1,!0)},get size(){return Kr(this)},has:Ur,add:Ua,set:Ka,delete:Wa,clear:qa,forEach:Wr(!1,!0)},n={get(s){return zr(this,s,!0)},get size(){return Kr(this,!0)},has(s){return Ur.call(this,s,!0)},add:Ht("add"),set:Ht("set"),delete:Ht("delete"),clear:Ht("clear"),forEach:Wr(!0,!1)},r={get(s){return zr(this,s,!0,!0)},get size(){return Kr(this,!0)},has(s){return Ur.call(this,s,!0)},add:Ht("add"),set:Ht("set"),delete:Ht("delete"),clear:Ht("clear"),forEach:Wr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(s=>{e[s]=qr(s,!1,!1),n[s]=qr(s,!0,!1),t[s]=qr(s,!1,!0),r[s]=qr(s,!0,!0)}),[e,n,t,r]}const[Gh,Qh,Jh,Yh]=qh();function Wi(e,t){const n=t?e?Yh:Jh:e?Qh:Gh;return(r,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(pe(n,o)&&o in r?n:r,o,s)}const Zh={get:Wi(!1,!1)},Xh={get:Wi(!1,!0)},ep={get:Wi(!0,!1)},mu=new WeakMap,gu=new WeakMap,yu=new WeakMap,tp=new WeakMap;function np(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function rp(e){return e.__v_skip||!Object.isExtensible(e)?0:np(Ph(e))}function nt(e){return yn(e)?e:Gi(e,!1,Uh,Zh,mu)}function Qt(e){return Gi(e,!1,Wh,Xh,gu)}function qi(e){return Gi(e,!0,Kh,ep,yu)}function Gi(e,t,n,r,o){if(!Ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=rp(e);if(i===0)return e;const a=new Proxy(e,i===2?r:n);return o.set(e,a),a}function $n(e){return yn(e)?$n(e.__v_raw):!!(e&&e.__v_isReactive)}function yn(e){return!!(e&&e.__v_isReadonly)}function _o(e){return!!(e&&e.__v_isShallow)}function _u(e){return $n(e)||yn(e)}function me(e){const t=e&&e.__v_raw;return t?me(t):e}function vu(e){return go(e,"__v_skip",!0),e}const br=e=>Ee(e)?nt(e):e,Qi=e=>Ee(e)?qi(e):e;class bu{constructor(t,n,r,o){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Bi(()=>t(this._value),()=>vo(this,1)),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=me(this);return Ji(t),(!t._cacheable||t.effect.dirty)&&Xt(t._value,t._value=t.effect.run())&&vo(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function op(e,t,n=!1){let r,o;const s=oe(e);return s?(r=e,o=et):(r=e.get,o=e.set),new bu(r,o,s||!o,n)}function Ji(e){Gt&&pn&&(e=me(e),lu(pn,e.dep||(e.dep=fu(()=>e.dep=void 0,e instanceof bu?e:void 0))))}function vo(e,t=3,n){e=me(e);const r=e.dep;r&&uu(r,t)}function ke(e){return!!(e&&e.__v_isRef===!0)}function le(e){return wu(e,!1)}function It(e){return wu(e,!0)}function wu(e,t){return ke(e)?e:new sp(e,t)}class sp{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:me(t),this._value=n?t:br(t)}get value(){return Ji(this),this._value}set value(t){const n=this.__v_isShallow||_o(t)||yn(t);t=n?t:me(t),Xt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:br(t),vo(this,3))}}function M(e){return ke(e)?e.value:e}function gP(e){return oe(e)?e():M(e)}const ip={get:(e,t,n)=>M(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return ke(o)&&!ke(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Eu(e){return $n(e)?e:new Proxy(e,ip)}class ap{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>Ji(this),()=>vo(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function cp(e){return new ap(e)}function yP(e){const t=re(e)?new Array(e.length):{};for(const n in e)t[n]=Cu(e,n);return t}class lp{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return jh(me(this._object),this._key)}}class up{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Yi(e,t,n){return ke(e)?e:oe(e)?new up(e):Ee(e)&&arguments.length>1?Cu(e,t,n):le(e)}function Cu(e,t,n){const r=e[t];return ke(r)?r:new lp(e,t,n)}function Jt(e,t,n,r){let o;try{o=r?e(...r):e()}catch(s){Qn(s,t,n)}return o}function at(e,t,n,r){if(oe(e)){const s=Jt(e,t,n,r);return s&&Fi(s)&&s.catch(i=>{Qn(i,t,n)}),s}const o=[];for(let s=0;s>>1,o=He[r],s=Er(o);s_t&&He.splice(t,1)}function Bs(e){re(e)?Mn.push(...e):(!Pt||!Pt.includes(e,e.allowRecurse?un+1:un))&&Mn.push(e),Su()}function Ga(e,t,n=wr?_t+1:0){for(;nEr(n)-Er(r)),un=0;une.id==null?1/0:e.id,pp=(e,t)=>{const n=Er(e)-Er(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Pu(e){Vs=!1,wr=!0,He.sort(pp);try{for(_t=0;_tPe(h)?h.trim():h)),f&&(o=n.map(Ds))}let a,c=r[a=ds(t)]||r[a=ds(bt(t))];!c&&s&&(c=r[a=ds(bn(t))]),c&&at(c,e,6,o);const l=r[a+"Once"];if(l){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,at(l,e,6,o)}}function xu(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const s=e.emits;let i={},a=!1;if(!oe(e)){const c=l=>{const u=xu(l,t,!0);u&&(a=!0,Oe(i,u))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!s&&!a?(Ee(e)&&r.set(e,null),null):(re(s)?s.forEach(c=>i[c]=null):Oe(i,s),Ee(e)&&r.set(e,i),i)}function Wo(e,t){return!e||!$r(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,bn(t))||pe(e,t))}let Me=null,qo=null;function wo(e){const t=Me;return Me=e,qo=e&&e.type.__scopeId||null,t}function Au(e){qo=e}function Ru(){qo=null}function Qe(e,t=Me,n){if(!t||e._n)return e;const r=(...o)=>{r._d&&lc(-1);const s=wo(t);let i;try{i=e(...o)}finally{wo(s),r._d&&lc(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function ps(e){const{type:t,vnode:n,proxy:r,withProxy:o,props:s,propsOptions:[i],slots:a,attrs:c,emit:l,render:u,renderCache:f,data:d,setupState:h,ctx:m,inheritAttrs:p}=e;let y,v;const b=wo(e);try{if(n.shapeFlag&4){const _=o||r,P=_;y=st(u.call(P,_,f,s,h,d,m)),v=c}else{const _=t;y=st(_.length>1?_(s,{attrs:c,slots:a,emit:l}):_(s,null)),v=t.props?c:yp(c)}}catch(_){hr.length=0,Qn(_,e,1),y=se(Ke)}let g=y;if(v&&p!==!1){const _=Object.keys(v),{shapeFlag:P}=g;_.length&&P&7&&(i&&_.some(Hi)&&(v=_p(v,i)),g=Ot(g,v))}return n.dirs&&(g=Ot(g),g.dirs=g.dirs?g.dirs.concat(n.dirs):n.dirs),n.transition&&(g.transition=n.transition),y=g,wo(b),y}function gp(e){let t;for(let n=0;n{let t;for(const n in e)(n==="class"||n==="style"||$r(n))&&((t||(t={}))[n]=e[n]);return t},_p=(e,t)=>{const n={};for(const r in e)(!Hi(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function vp(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:a,patchFlag:c}=t,l=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Qa(r,i,l):!!i;if(c&8){const u=t.dynamicProps;for(let f=0;fe.__isSuspense;let zs=0;const wp={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,s,i,a,c,l){e==null?Ep(t,n,r,o,s,i,a,c,l):Cp(e,t,n,r,o,i,a,c,l)},hydrate:Tp,create:ta,normalize:Sp},ku=wp;function Cr(e,t){const n=e.props&&e.props[t];oe(n)&&n()}function Ep(e,t,n,r,o,s,i,a,c){const{p:l,o:{createElement:u}}=c,f=u("div"),d=e.suspense=ta(e,o,r,t,f,n,s,i,a,c);l(null,d.pendingBranch=e.ssContent,f,null,r,d,s,i),d.deps>0?(Cr(e,"onPending"),Cr(e,"onFallback"),l(null,e.ssFallback,t,n,r,null,s,i),Nn(d,e.ssFallback)):d.resolve(!1,!0)}function Cp(e,t,n,r,o,s,i,a,{p:c,um:l,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const d=t.ssContent,h=t.ssFallback,{activeBranch:m,pendingBranch:p,isInFallback:y,isHydrating:v}=f;if(p)f.pendingBranch=d,ft(d,p)?(c(p,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0?f.resolve():y&&(v||(c(m,h,n,r,o,null,s,i,a),Nn(f,h)))):(f.pendingId=zs++,v?(f.isHydrating=!1,f.activeBranch=p):l(p,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),y?(c(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0?f.resolve():(c(m,h,n,r,o,null,s,i,a),Nn(f,h))):m&&ft(d,m)?(c(m,d,n,r,o,f,s,i,a),f.resolve(!0)):(c(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0&&f.resolve()));else if(m&&ft(d,m))c(m,d,n,r,o,f,s,i,a),Nn(f,d);else if(Cr(t,"onPending"),f.pendingBranch=d,d.shapeFlag&512?f.pendingId=d.component.suspenseId:f.pendingId=zs++,c(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0)f.resolve();else{const{timeout:b,pendingId:g}=f;b>0?setTimeout(()=>{f.pendingId===g&&f.fallback(h)},b):b===0&&f.fallback(h)}}function ta(e,t,n,r,o,s,i,a,c,l,u=!1){const{p:f,m:d,um:h,n:m,o:{parentNode:p,remove:y}}=l;let v;const b=Pp(e);b&&t!=null&&t.pendingBranch&&(v=t.pendingId,t.deps++);const g=e.props?nu(e.props.timeout):void 0,_={vnode:e,parent:t,parentComponent:n,namespace:i,container:r,hiddenContainer:o,anchor:s,deps:0,pendingId:zs++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(P=!1,S=!1){const{vnode:I,activeBranch:L,pendingBranch:H,pendingId:R,effects:T,parentComponent:C,container:x}=_;let B=!1;if(_.isHydrating)_.isHydrating=!1;else if(!P){B=L&&H.transition&&H.transition.mode==="out-in",B&&(L.transition.afterLeave=()=>{R===_.pendingId&&(d(H,x,m(L),0),Bs(T))});let{anchor:Q}=_;L&&(Q=m(L),h(L,C,_,!0)),B||d(H,x,Q,0)}Nn(_,H),_.pendingBranch=null,_.isInFallback=!1;let J=_.parent,V=!1;for(;J;){if(J.pendingBranch){J.effects.push(...T),V=!0;break}J=J.parent}!V&&!B&&Bs(T),_.effects=[],b&&t&&t.pendingBranch&&v===t.pendingId&&(t.deps--,t.deps===0&&!S&&t.resolve()),Cr(I,"onResolve")},fallback(P){if(!_.pendingBranch)return;const{vnode:S,activeBranch:I,parentComponent:L,container:H,namespace:R}=_;Cr(S,"onFallback");const T=m(I),C=()=>{_.isInFallback&&(f(null,P,H,T,L,null,R,a,c),Nn(_,P))},x=P.transition&&P.transition.mode==="out-in";x&&(I.transition.afterLeave=C),_.isInFallback=!0,h(I,L,null,!0),x||C()},move(P,S,I){_.activeBranch&&d(_.activeBranch,P,S,I),_.container=P},next(){return _.activeBranch&&m(_.activeBranch)},registerDep(P,S){const I=!!_.pendingBranch;I&&_.deps++;const L=P.vnode.el;P.asyncDep.catch(H=>{Qn(H,P,0)}).then(H=>{if(P.isUnmounted||_.isUnmounted||_.pendingId!==P.suspenseId)return;P.asyncResolved=!0;const{vnode:R}=P;Ys(P,H,!1),L&&(R.el=L);const T=!L&&P.subTree.el;S(P,R,p(L||P.subTree.el),L?null:m(P.subTree),_,i,c),T&&y(T),Xi(P,R.el),I&&--_.deps===0&&_.resolve()})},unmount(P,S){_.isUnmounted=!0,_.activeBranch&&h(_.activeBranch,n,P,S),_.pendingBranch&&h(_.pendingBranch,n,P,S)}};return _}function Tp(e,t,n,r,o,s,i,a,c){const l=t.suspense=ta(t,r,n,e.parentNode,document.createElement("div"),null,o,s,i,a,!0),u=c(e,l.pendingBranch=t.ssContent,n,l,s,i);return l.deps===0&&l.resolve(!1,!0),u}function Sp(e){const{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=Ya(r?n.default:n),e.ssFallback=r?Ya(n.fallback):se(Ke)}function Ya(e){let t;if(oe(e)){const n=Bn&&e._c;n&&(e._d=!1,q()),e=e(),n&&(e._d=!0,t=it,cf())}return re(e)&&(e=gp(e)),e=st(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function $u(e,t){t&&t.pendingBranch?re(e)?t.effects.push(...e):t.effects.push(e):Bs(e)}function Nn(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e,o=n.el=t.el;r&&r.subTree===n&&(r.vnode.el=o,Xi(r,o))}function Pp(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const xp=Symbol.for("v-scx"),Ap=()=>De(xp);function Rp(e,t){return Qo(e,null,t)}function Ip(e,t){return Qo(e,null,{flush:"post"})}const Gr={};function ge(e,t,n){return Qo(e,t,n)}function Qo(e,t,{immediate:n,deep:r,flush:o,once:s,onTrack:i,onTrigger:a}=Ce){if(t&&s){const S=t;t=(...I)=>{S(...I),P()}}const c=Le,l=S=>r===!0?S:hn(S,r===!1?1:void 0);let u,f=!1,d=!1;if(ke(e)?(u=()=>e.value,f=_o(e)):$n(e)?(u=()=>l(e),f=!0):re(e)?(d=!0,f=e.some(S=>$n(S)||_o(S)),u=()=>e.map(S=>{if(ke(S))return S.value;if($n(S))return l(S);if(oe(S))return Jt(S,c,2)})):oe(e)?t?u=()=>Jt(e,c,2):u=()=>(h&&h(),at(e,c,3,[m])):u=et,t&&r){const S=u;u=()=>hn(S())}let h,m=S=>{h=g.onStop=()=>{Jt(S,c,4),h=g.onStop=void 0}},p;if(Hr)if(m=et,t?n&&at(t,c,3,[u(),d?[]:void 0,m]):u(),o==="sync"){const S=Ap();p=S.__watcherHandles||(S.__watcherHandles=[])}else return et;let y=d?new Array(e.length).fill(Gr):Gr;const v=()=>{if(!(!g.active||!g.dirty))if(t){const S=g.run();(r||f||(d?S.some((I,L)=>Xt(I,y[L])):Xt(S,y)))&&(h&&h(),at(t,c,3,[S,y===Gr?void 0:d&&y[0]===Gr?[]:y,m]),y=S)}else g.run()};v.allowRecurse=!!t;let b;o==="sync"?b=v:o==="post"?b=()=>Ne(v,c&&c.suspense):(v.pre=!0,c&&(v.id=c.uid),b=()=>Ko(v));const g=new Bi(u,et,b),_=Nr(),P=()=>{g.stop(),_&&ji(_.effects,g)};return t?n?v():y=g.run():o==="post"?Ne(g.run.bind(g),c&&c.suspense):g.run(),p&&p.push(P),P}function Lp(e,t,n){const r=this.proxy,o=Pe(e)?e.includes(".")?Mu(r,e):()=>r[e]:e.bind(r,r);let s;oe(t)?s=t:(s=t.handler,n=t);const i=Le;en(this);const a=Qo(o,s.bind(r),n);return i?en(i):Yt(),a}function Mu(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o0){if(n>=t)return e;n++}if(r=r||new Set,r.has(e))return e;if(r.add(e),ke(e))hn(e.value,t,n,r);else if(re(e))for(let o=0;o{hn(o,t,n,r)});else if(tu(e))for(const o in e)hn(e[o],t,n,r);return e}function Nu(e,t){const n=Me;if(n===null)return e;const r=Zo(n)||n.proxy,o=e.dirs||(e.dirs=[]);for(let s=0;s{e.isMounted=!0}),Jn(()=>{e.isUnmounting=!0}),e}const ot=[Function,Array],Du={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ot,onEnter:ot,onAfterEnter:ot,onEnterCancelled:ot,onBeforeLeave:ot,onLeave:ot,onAfterLeave:ot,onLeaveCancelled:ot,onBeforeAppear:ot,onAppear:ot,onAfterAppear:ot,onAppearCancelled:ot},kp={name:"BaseTransition",props:Du,setup(e,{slots:t}){const n=ht(),r=Op();let o;return()=>{const s=t.default&&ju(t.default(),!0);if(!s||!s.length)return;let i=s[0];if(s.length>1){for(const p of s)if(p.type!==Ke){i=p;break}}const a=me(e),{mode:c}=a;if(r.isLeaving)return ms(i);const l=Za(i);if(!l)return ms(i);const u=Us(l,a,r,n);Eo(l,u);const f=n.subTree,d=f&&Za(f);let h=!1;const{getTransitionKey:m}=l.type;if(m){const p=m();o===void 0?o=p:p!==o&&(o=p,h=!0)}if(d&&d.type!==Ke&&(!ft(l,d)||h)){const p=Us(d,a,r,n);if(Eo(d,p),c==="out-in")return r.isLeaving=!0,p.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},ms(i);c==="in-out"&&l.type!==Ke&&(p.delayLeave=(y,v,b)=>{const g=Hu(r,d);g[String(d.key)]=d,y[zt]=()=>{v(),y[zt]=void 0,delete u.delayedLeave},u.delayedLeave=b})}return i}}},$p=kp;function Hu(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Us(e,t,n,r){const{appear:o,mode:s,persisted:i=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:l,onEnterCancelled:u,onBeforeLeave:f,onLeave:d,onAfterLeave:h,onLeaveCancelled:m,onBeforeAppear:p,onAppear:y,onAfterAppear:v,onAppearCancelled:b}=t,g=String(e.key),_=Hu(n,e),P=(L,H)=>{L&&at(L,r,9,H)},S=(L,H)=>{const R=H[1];P(L,H),re(L)?L.every(T=>T.length<=1)&&R():L.length<=1&&R()},I={mode:s,persisted:i,beforeEnter(L){let H=a;if(!n.isMounted)if(o)H=p||a;else return;L[zt]&&L[zt](!0);const R=_[g];R&&ft(e,R)&&R.el[zt]&&R.el[zt](),P(H,[L])},enter(L){let H=c,R=l,T=u;if(!n.isMounted)if(o)H=y||c,R=v||l,T=b||u;else return;let C=!1;const x=L[Qr]=B=>{C||(C=!0,B?P(T,[L]):P(R,[L]),I.delayedLeave&&I.delayedLeave(),L[Qr]=void 0)};H?S(H,[L,x]):x()},leave(L,H){const R=String(e.key);if(L[Qr]&&L[Qr](!0),n.isUnmounting)return H();P(f,[L]);let T=!1;const C=L[zt]=x=>{T||(T=!0,H(),x?P(m,[L]):P(h,[L]),L[zt]=void 0,_[R]===e&&delete _[R])};_[R]=e,d?S(d,[L,C]):C()},clone(L){return Us(L,t,n,r)}};return I}function ms(e){if(Dr(e))return e=Ot(e),e.children=null,e}function Za(e){return Dr(e)?e.children?e.children[0]:void 0:e}function Eo(e,t){e.shapeFlag&6&&e.component?Eo(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ju(e,t=!1,n){let r=[],o=0;for(let s=0;s1)for(let s=0;s!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function N(e){oe(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:s,suspensible:i=!0,onError:a}=e;let c=null,l,u=0;const f=()=>(u++,c=null,d()),d=()=>{let h;return c||(h=c=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),a)return new Promise((p,y)=>{a(m,()=>p(f()),()=>y(m),u+1)});throw m}).then(m=>h!==c&&c?c:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),l=m,m)))};return xe({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return l},setup(){const h=Le;if(l)return()=>gs(l,h);const m=b=>{c=null,Qn(b,h,13,!r)};if(i&&h.suspense||Hr)return d().then(b=>()=>gs(b,h)).catch(b=>(m(b),()=>r?se(r,{error:b}):null));const p=le(!1),y=le(),v=le(!!o);return o&&setTimeout(()=>{v.value=!1},o),s!=null&&setTimeout(()=>{if(!p.value&&!y.value){const b=new Error(`Async component timed out after ${s}ms.`);m(b),y.value=b}},s),d().then(()=>{p.value=!0,h.parent&&Dr(h.parent.vnode)&&(h.parent.effect.dirty=!0,Ko(h.parent.update))}).catch(b=>{m(b),y.value=b}),()=>{if(p.value&&l)return gs(l,h);if(y.value&&r)return se(r,{error:y.value});if(n&&!v.value)return se(n)}}})}function gs(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=se(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const Dr=e=>e.type.__isKeepAlive,Mp={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=ht(),r=n.ctx;if(!r.renderer)return()=>{const b=t.default&&t.default();return b&&b.length===1?b[0]:b};const o=new Map,s=new Set;let i=null;const a=n.suspense,{renderer:{p:c,m:l,um:u,o:{createElement:f}}}=r,d=f("div");r.activate=(b,g,_,P,S)=>{const I=b.component;l(b,g,_,0,a),c(I.vnode,b,g,_,I,a,P,b.slotScopeIds,S),Ne(()=>{I.isDeactivated=!1,I.a&&kn(I.a);const L=b.props&&b.props.onVnodeMounted;L&&qe(L,I.parent,b)},a)},r.deactivate=b=>{const g=b.component;l(b,d,null,1,a),Ne(()=>{g.da&&kn(g.da);const _=b.props&&b.props.onVnodeUnmounted;_&&qe(_,g.parent,b),g.isDeactivated=!0},a)};function h(b){ys(b),u(b,n,a,!0)}function m(b){o.forEach((g,_)=>{const P=Zs(g.type);P&&(!b||!b(P))&&p(_)})}function p(b){const g=o.get(b);!i||!ft(g,i)?h(g):i&&ys(i),o.delete(b),s.delete(b)}ge(()=>[e.include,e.exclude],([b,g])=>{b&&m(_=>sr(b,_)),g&&m(_=>!sr(g,_))},{flush:"post",deep:!0});let y=null;const v=()=>{y!=null&&o.set(y,_s(n.subTree))};return Nt(v),Uu(v),Jn(()=>{o.forEach(b=>{const{subTree:g,suspense:_}=n,P=_s(g);if(b.type===P.type&&b.key===P.key){ys(P);const S=P.component.da;S&&Ne(S,_);return}h(b)})}),()=>{if(y=null,!t.default)return null;const b=t.default(),g=b[0];if(b.length>1)return i=null,b;if(!zn(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return i=null,g;let _=_s(g);const P=_.type,S=Zs(gn(_)?_.type.__asyncResolved||{}:P),{include:I,exclude:L,max:H}=e;if(I&&(!S||!sr(I,S))||L&&S&&sr(L,S))return i=_,g;const R=_.key==null?P:_.key,T=o.get(R);return _.el&&(_=Ot(_),g.shapeFlag&128&&(g.ssContent=_)),y=R,T?(_.el=T.el,_.component=T.component,_.transition&&Eo(_,_.transition),_.shapeFlag|=512,s.delete(R),s.add(R)):(s.add(R),H&&s.size>parseInt(H,10)&&p(s.values().next().value)),_.shapeFlag|=256,i=_,Ou(g.type)?g:_}}},Np=Mp;function sr(e,t){return re(e)?e.some(n=>sr(n,t)):Pe(e)?e.split(",").includes(t):Sh(e)?e.test(t):!1}function Fu(e,t){Bu(e,"a",t)}function Vu(e,t){Bu(e,"da",t)}function Bu(e,t,n=Le){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Jo(t,r,n),n){let o=n.parent;for(;o&&o.parent;)Dr(o.parent.vnode)&&Dp(r,t,n,o),o=o.parent}}function Dp(e,t,n,r){const o=Jo(t,e,r,!0);Tr(()=>{ji(r[t],o)},n)}function ys(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function _s(e){return e.shapeFlag&128?e.ssContent:e}function Jo(e,t,n=Le,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{if(n.isUnmounted)return;En(),en(n);const a=at(t,n,e,i);return Yt(),Cn(),a});return r?o.unshift(s):o.push(s),s}}const Mt=e=>(t,n=Le)=>(!Hr||e==="sp")&&Jo(e,(...r)=>t(...r),n),zu=Mt("bm"),Nt=Mt("m"),Hp=Mt("bu"),Uu=Mt("u"),Jn=Mt("bum"),Tr=Mt("um"),jp=Mt("sp"),Fp=Mt("rtg"),Vp=Mt("rtc");function Ku(e,t=Le){Jo("ec",e,t)}function Fn(e,t,n,r){let o;const s=n&&n[r];if(re(e)||Pe(e)){o=new Array(e.length);for(let i=0,a=e.length;it(i,a,void 0,s&&s[a]));else{const i=Object.keys(e);o=new Array(i.length);for(let a=0,c=i.length;azn(t)?!(t.type===Ke||t.type===Se&&!Wu(t.children)):!0)?e:null}const Ks=e=>e?df(e)?Zo(e)||e.proxy:Ks(e.parent):null,fr=Oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ks(e.parent),$root:e=>Ks(e.root),$emit:e=>e.emit,$options:e=>na(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Ko(e.update)}),$nextTick:e=>e.n||(e.n=wt.bind(e.proxy)),$watch:e=>Lp.bind(e)}),vs=(e,t)=>e!==Ce&&!e.__isScriptSetup&&pe(e,t),Bp={get({_:e},t){const{ctx:n,setupState:r,data:o,props:s,accessCache:i,type:a,appContext:c}=e;let l;if(t[0]!=="$"){const h=i[t];if(h!==void 0)switch(h){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(vs(r,t))return i[t]=1,r[t];if(o!==Ce&&pe(o,t))return i[t]=2,o[t];if((l=e.propsOptions[0])&&pe(l,t))return i[t]=3,s[t];if(n!==Ce&&pe(n,t))return i[t]=4,n[t];Ws&&(i[t]=0)}}const u=fr[t];let f,d;if(u)return t==="$attrs"&&Ge(e,"get",t),u(e);if((f=a.__cssModules)&&(f=f[t]))return f;if(n!==Ce&&pe(n,t))return i[t]=4,n[t];if(d=c.config.globalProperties,pe(d,t))return d[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:s}=e;return vs(o,t)?(o[t]=n,!0):r!==Ce&&pe(r,t)?(r[t]=n,!0):pe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:s}},i){let a;return!!n[i]||e!==Ce&&pe(e,i)||vs(t,i)||(a=s[0])&&pe(a,i)||pe(r,i)||pe(fr,i)||pe(o.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:pe(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function _P(){return zp().slots}function zp(){const e=ht();return e.setupContext||(e.setupContext=pf(e))}function Xa(e){return re(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function qu(e){const t=ht();let n=e();return Yt(),Fi(n)&&(n=n.catch(r=>{throw en(t),r})),[n,()=>en(t)]}let Ws=!0;function Up(e){const t=na(e),n=e.proxy,r=e.ctx;Ws=!1,t.beforeCreate&&ec(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:a,provide:c,inject:l,created:u,beforeMount:f,mounted:d,beforeUpdate:h,updated:m,activated:p,deactivated:y,beforeDestroy:v,beforeUnmount:b,destroyed:g,unmounted:_,render:P,renderTracked:S,renderTriggered:I,errorCaptured:L,serverPrefetch:H,expose:R,inheritAttrs:T,components:C,directives:x,filters:B}=t;if(l&&Kp(l,r,null),i)for(const Q in i){const U=i[Q];oe(U)&&(r[Q]=U.bind(n))}if(o){const Q=o.call(n,n);Ee(Q)&&(e.data=nt(Q))}if(Ws=!0,s)for(const Q in s){const U=s[Q],he=oe(U)?U.bind(n,n):oe(U.get)?U.get.bind(n,n):et,Re=!oe(U)&&oe(U.set)?U.set.bind(n):et,Ie=ee({get:he,set:Re});Object.defineProperty(r,Q,{enumerable:!0,configurable:!0,get:()=>Ie.value,set:we=>Ie.value=we})}if(a)for(const Q in a)Gu(a[Q],r,n,Q);if(c){const Q=oe(c)?c.call(n):c;Reflect.ownKeys(Q).forEach(U=>{Dn(U,Q[U])})}u&&ec(u,e,"c");function V(Q,U){re(U)?U.forEach(he=>Q(he.bind(n))):U&&Q(U.bind(n))}if(V(zu,f),V(Nt,d),V(Hp,h),V(Uu,m),V(Fu,p),V(Vu,y),V(Ku,L),V(Vp,S),V(Fp,I),V(Jn,b),V(Tr,_),V(jp,H),re(R))if(R.length){const Q=e.exposed||(e.exposed={});R.forEach(U=>{Object.defineProperty(Q,U,{get:()=>n[U],set:he=>n[U]=he})})}else e.exposed||(e.exposed={});P&&e.render===et&&(e.render=P),T!=null&&(e.inheritAttrs=T),C&&(e.components=C),x&&(e.directives=x)}function Kp(e,t,n=et){re(e)&&(e=qs(e));for(const r in e){const o=e[r];let s;Ee(o)?"default"in o?s=De(o.from||r,o.default,!0):s=De(o.from||r):s=De(o),ke(s)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[r]=s}}function ec(e,t,n){at(re(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Gu(e,t,n,r){const o=r.includes(".")?Mu(n,r):()=>n[r];if(Pe(e)){const s=t[e];oe(s)&&ge(o,s)}else if(oe(e))ge(o,e.bind(n));else if(Ee(e))if(re(e))e.forEach(s=>Gu(s,t,n,r));else{const s=oe(e.handler)?e.handler.bind(n):t[e.handler];oe(s)&&ge(o,s,e)}}function na(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,a=s.get(t);let c;return a?c=a:!o.length&&!n&&!r?c=t:(c={},o.length&&o.forEach(l=>Co(c,l,i,!0)),Co(c,t,i)),Ee(t)&&s.set(t,c),c}function Co(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&Co(e,s,n,!0),o&&o.forEach(i=>Co(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const a=Wp[i]||n&&n[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const Wp={data:tc,props:nc,emits:nc,methods:ir,computed:ir,beforeCreate:Ue,created:Ue,beforeMount:Ue,mounted:Ue,beforeUpdate:Ue,updated:Ue,beforeDestroy:Ue,beforeUnmount:Ue,destroyed:Ue,unmounted:Ue,activated:Ue,deactivated:Ue,errorCaptured:Ue,serverPrefetch:Ue,components:ir,directives:ir,watch:Gp,provide:tc,inject:qp};function tc(e,t){return t?e?function(){return Oe(oe(e)?e.call(this,this):e,oe(t)?t.call(this,this):t)}:t:e}function qp(e,t){return ir(qs(e),qs(t))}function qs(e){if(re(e)){const t={};for(let n=0;n1)return n&&oe(t)?t.call(r&&r.proxy):t}}function Ju(){return!!(Le||Me||Pr)}function Yp(e,t,n,r=!1){const o={},s={};go(s,Yo,1),e.propsDefaults=Object.create(null),Yu(e,t,o,s);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=r?o:Qt(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function Zp(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,a=me(o),[c]=e.propsOptions;let l=!1;if((r||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let f=0;f{c=!0;const[d,h]=Zu(f,t,!0);Oe(i,d),h&&a.push(...h)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!c)return Ee(e)&&r.set(e,Ln),Ln;if(re(s))for(let u=0;u-1,h[1]=p<0||m-1||pe(h,"default"))&&a.push(f)}}}const l=[i,a];return Ee(e)&&r.set(e,l),l}function rc(e){return e[0]!=="$"}function oc(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function sc(e,t){return oc(e)===oc(t)}function ic(e,t){return re(t)?t.findIndex(n=>sc(n,e)):oe(t)&&sc(t,e)?0:-1}const Xu=e=>e[0]==="_"||e==="$stable",ra=e=>re(e)?e.map(st):[st(e)],Xp=(e,t,n)=>{if(t._n)return t;const r=Qe((...o)=>ra(t(...o)),n);return r._c=!1,r},ef=(e,t,n)=>{const r=e._ctx;for(const o in e){if(Xu(o))continue;const s=e[o];if(oe(s))t[o]=Xp(o,s,r);else if(s!=null){const i=ra(s);t[o]=()=>i}}},tf=(e,t)=>{const n=ra(t);e.slots.default=()=>n},em=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=me(t),go(t,"_",n)):ef(t,e.slots={})}else e.slots={},t&&tf(e,t);go(e.slots,Yo,1)},tm=(e,t,n)=>{const{vnode:r,slots:o}=e;let s=!0,i=Ce;if(r.shapeFlag&32){const a=t._;a?n&&a===1?s=!1:(Oe(o,t),!n&&a===1&&delete o._):(s=!t.$stable,ef(t,o)),i=t}else t&&(tf(e,t),i={default:1});if(s)for(const a in o)!Xu(a)&&i[a]==null&&delete o[a]};function To(e,t,n,r,o=!1){if(re(e)){e.forEach((d,h)=>To(d,t&&(re(t)?t[h]:t),n,r,o));return}if(gn(r)&&!o)return;const s=r.shapeFlag&4?Zo(r.component)||r.component.proxy:r.el,i=o?null:s,{i:a,r:c}=e,l=t&&t.r,u=a.refs===Ce?a.refs={}:a.refs,f=a.setupState;if(l!=null&&l!==c&&(Pe(l)?(u[l]=null,pe(f,l)&&(f[l]=null)):ke(l)&&(l.value=null)),oe(c))Jt(c,a,12,[i,u]);else{const d=Pe(c),h=ke(c);if(d||h){const m=()=>{if(e.f){const p=d?pe(f,c)?f[c]:u[c]:c.value;o?re(p)&&ji(p,s):re(p)?p.includes(s)||p.push(s):d?(u[c]=[s],pe(f,c)&&(f[c]=u[c])):(c.value=[s],e.k&&(u[e.k]=c.value))}else d?(u[c]=i,pe(f,c)&&(f[c]=i)):h&&(c.value=i,e.k&&(u[e.k]=i))};i?(m.id=-1,Ne(m,n)):m()}}}let jt=!1;const nm=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",rm=e=>e.namespaceURI.includes("MathML"),Jr=e=>{if(nm(e))return"svg";if(rm(e))return"mathml"},Yr=e=>e.nodeType===8;function om(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:a,insert:c,createComment:l}}=e,u=(g,_)=>{if(!_.hasChildNodes()){n(null,g,_),bo(),_._vnode=g;return}jt=!1,f(_.firstChild,g,null,null,null),bo(),_._vnode=g,jt&&console.error("Hydration completed but contains mismatches.")},f=(g,_,P,S,I,L=!1)=>{const H=Yr(g)&&g.data==="[",R=()=>p(g,_,P,S,I,H),{type:T,ref:C,shapeFlag:x,patchFlag:B}=_;let J=g.nodeType;_.el=g,B===-2&&(L=!1,_.dynamicChildren=null);let V=null;switch(T){case Vn:J!==3?_.children===""?(c(_.el=o(""),i(g),g),V=g):V=R():(g.data!==_.children&&(jt=!0,g.data=_.children),V=s(g));break;case Ke:b(g)?(V=s(g),v(_.el=g.content.firstChild,g,P)):J!==8||H?V=R():V=s(g);break;case Hn:if(H&&(g=s(g),J=g.nodeType),J===1||J===3){V=g;const Q=!_.children.length;for(let U=0;U<_.staticCount;U++)Q&&(_.children+=V.nodeType===1?V.outerHTML:V.data),U===_.staticCount-1&&(_.anchor=V),V=s(V);return H?s(V):V}else R();break;case Se:H?V=m(g,_,P,S,I,L):V=R();break;default:if(x&1)(J!==1||_.type.toLowerCase()!==g.tagName.toLowerCase())&&!b(g)?V=R():V=d(g,_,P,S,I,L);else if(x&6){_.slotScopeIds=I;const Q=i(g);if(H?V=y(g):Yr(g)&&g.data==="teleport start"?V=y(g,g.data,"teleport end"):V=s(g),t(_,Q,null,P,S,Jr(Q),L),gn(_)){let U;H?(U=se(Se),U.anchor=V?V.previousSibling:Q.lastChild):U=g.nodeType===3?Yn(""):se("div"),U.el=g,_.component.subTree=U}}else x&64?J!==8?V=R():V=_.type.hydrate(g,_,P,S,I,L,e,h):x&128&&(V=_.type.hydrate(g,_,P,S,Jr(i(g)),I,L,e,f))}return C!=null&&To(C,null,S,_),V},d=(g,_,P,S,I,L)=>{L=L||!!_.dynamicChildren;const{type:H,props:R,patchFlag:T,shapeFlag:C,dirs:x,transition:B}=_,J=H==="input"||H==="option";if(J||T!==-1){x&&yt(_,null,P,"created");let V=!1;if(b(g)){V=rf(S,B)&&P&&P.vnode.props&&P.vnode.props.appear;const U=g.content.firstChild;V&&B.beforeEnter(U),v(U,g,P),_.el=g=U}if(C&16&&!(R&&(R.innerHTML||R.textContent))){let U=h(g.firstChild,_,g,P,S,I,L);for(;U;){jt=!0;const he=U;U=U.nextSibling,a(he)}}else C&8&&g.textContent!==_.children&&(jt=!0,g.textContent=_.children);if(R)if(J||!L||T&48)for(const U in R)(J&&(U.endsWith("value")||U==="indeterminate")||$r(U)&&!ur(U)||U[0]===".")&&r(g,U,null,R[U],void 0,void 0,P);else R.onClick&&r(g,"onClick",null,R.onClick,void 0,void 0,P);let Q;(Q=R&&R.onVnodeBeforeMount)&&qe(Q,P,_),x&&yt(_,null,P,"beforeMount"),((Q=R&&R.onVnodeMounted)||x||V)&&$u(()=>{Q&&qe(Q,P,_),V&&B.enter(g),x&&yt(_,null,P,"mounted")},S)}return g.nextSibling},h=(g,_,P,S,I,L,H)=>{H=H||!!_.dynamicChildren;const R=_.children,T=R.length;for(let C=0;C{const{slotScopeIds:H}=_;H&&(I=I?I.concat(H):H);const R=i(g),T=h(s(g),_,R,P,S,I,L);return T&&Yr(T)&&T.data==="]"?s(_.anchor=T):(jt=!0,c(_.anchor=l("]"),R,T),T)},p=(g,_,P,S,I,L)=>{if(jt=!0,_.el=null,L){const T=y(g);for(;;){const C=s(g);if(C&&C!==T)a(C);else break}}const H=s(g),R=i(g);return a(g),n(null,_,R,H,P,S,Jr(R),I),H},y=(g,_="[",P="]")=>{let S=0;for(;g;)if(g=s(g),g&&Yr(g)&&(g.data===_&&S++,g.data===P)){if(S===0)return s(g);S--}return g},v=(g,_,P)=>{const S=_.parentNode;S&&S.replaceChild(g,_);let I=P;for(;I;)I.vnode.el===_&&(I.vnode.el=I.subTree.el=g),I=I.parent},b=g=>g.nodeType===1&&g.tagName.toLowerCase()==="template";return[u,f]}const Ne=$u;function sm(e){return nf(e)}function im(e){return nf(e,om)}function nf(e,t){const n=ru();n.__VUE__=!0;const{insert:r,remove:o,patchProp:s,createElement:i,createText:a,createComment:c,setText:l,setElementText:u,parentNode:f,nextSibling:d,setScopeId:h=et,insertStaticContent:m}=e,p=(w,E,A,O=null,D=null,j=null,G=void 0,z=null,K=!!E.dynamicChildren)=>{if(w===E)return;w&&!ft(w,E)&&(O=$(w),we(w,D,j,!0),w=null),E.patchFlag===-2&&(K=!1,E.dynamicChildren=null);const{type:F,ref:Y,shapeFlag:ne}=E;switch(F){case Vn:y(w,E,A,O);break;case Ke:v(w,E,A,O);break;case Hn:w==null&&b(E,A,O,G);break;case Se:C(w,E,A,O,D,j,G,z,K);break;default:ne&1?P(w,E,A,O,D,j,G,z,K):ne&6?x(w,E,A,O,D,j,G,z,K):(ne&64||ne&128)&&F.process(w,E,A,O,D,j,G,z,K,W)}Y!=null&&D&&To(Y,w&&w.ref,j,E||w,!E)},y=(w,E,A,O)=>{if(w==null)r(E.el=a(E.children),A,O);else{const D=E.el=w.el;E.children!==w.children&&l(D,E.children)}},v=(w,E,A,O)=>{w==null?r(E.el=c(E.children||""),A,O):E.el=w.el},b=(w,E,A,O)=>{[w.el,w.anchor]=m(w.children,E,A,O,w.el,w.anchor)},g=({el:w,anchor:E},A,O)=>{let D;for(;w&&w!==E;)D=d(w),r(w,A,O),w=D;r(E,A,O)},_=({el:w,anchor:E})=>{let A;for(;w&&w!==E;)A=d(w),o(w),w=A;o(E)},P=(w,E,A,O,D,j,G,z,K)=>{E.type==="svg"?G="svg":E.type==="math"&&(G="mathml"),w==null?S(E,A,O,D,j,G,z,K):H(w,E,D,j,G,z,K)},S=(w,E,A,O,D,j,G,z)=>{let K,F;const{props:Y,shapeFlag:ne,transition:te,dirs:ce}=w;if(K=w.el=i(w.type,j,Y&&Y.is,Y),ne&8?u(K,w.children):ne&16&&L(w.children,K,null,O,D,bs(w,j),G,z),ce&&yt(w,null,O,"created"),I(K,w,w.scopeId,G,O),Y){for(const be in Y)be!=="value"&&!ur(be)&&s(K,be,null,Y[be],j,w.children,O,D,Ae);"value"in Y&&s(K,"value",null,Y.value,j),(F=Y.onVnodeBeforeMount)&&qe(F,O,w)}ce&&yt(w,null,O,"beforeMount");const fe=rf(D,te);fe&&te.beforeEnter(K),r(K,E,A),((F=Y&&Y.onVnodeMounted)||fe||ce)&&Ne(()=>{F&&qe(F,O,w),fe&&te.enter(K),ce&&yt(w,null,O,"mounted")},D)},I=(w,E,A,O,D)=>{if(A&&h(w,A),O)for(let j=0;j{for(let F=K;F{const z=E.el=w.el;let{patchFlag:K,dynamicChildren:F,dirs:Y}=E;K|=w.patchFlag&16;const ne=w.props||Ce,te=E.props||Ce;let ce;if(A&&on(A,!1),(ce=te.onVnodeBeforeUpdate)&&qe(ce,A,E,w),Y&&yt(E,w,A,"beforeUpdate"),A&&on(A,!0),F?R(w.dynamicChildren,F,z,A,O,bs(E,D),j):G||U(w,E,z,null,A,O,bs(E,D),j,!1),K>0){if(K&16)T(z,E,ne,te,A,O,D);else if(K&2&&ne.class!==te.class&&s(z,"class",null,te.class,D),K&4&&s(z,"style",ne.style,te.style,D),K&8){const fe=E.dynamicProps;for(let be=0;be{ce&&qe(ce,A,E,w),Y&&yt(E,w,A,"updated")},O)},R=(w,E,A,O,D,j,G)=>{for(let z=0;z{if(A!==O){if(A!==Ce)for(const z in A)!ur(z)&&!(z in O)&&s(w,z,A[z],null,G,E.children,D,j,Ae);for(const z in O){if(ur(z))continue;const K=O[z],F=A[z];K!==F&&z!=="value"&&s(w,z,F,K,G,E.children,D,j,Ae)}"value"in O&&s(w,"value",A.value,O.value,G)}},C=(w,E,A,O,D,j,G,z,K)=>{const F=E.el=w?w.el:a(""),Y=E.anchor=w?w.anchor:a("");let{patchFlag:ne,dynamicChildren:te,slotScopeIds:ce}=E;ce&&(z=z?z.concat(ce):ce),w==null?(r(F,A,O),r(Y,A,O),L(E.children,A,Y,D,j,G,z,K)):ne>0&&ne&64&&te&&w.dynamicChildren?(R(w.dynamicChildren,te,A,D,j,G,z),(E.key!=null||D&&E===D.subTree)&&oa(w,E,!0)):U(w,E,A,Y,D,j,G,z,K)},x=(w,E,A,O,D,j,G,z,K)=>{E.slotScopeIds=z,w==null?E.shapeFlag&512?D.ctx.activate(E,A,O,G,K):B(E,A,O,D,j,G,K):J(w,E,K)},B=(w,E,A,O,D,j,G)=>{const z=w.component=gm(w,O,D);if(Dr(w)&&(z.ctx.renderer=W),ym(z),z.asyncDep){if(D&&D.registerDep(z,V),!w.el){const K=z.subTree=se(Ke);v(null,K,E,A)}}else V(z,w,E,A,D,j,G)},J=(w,E,A)=>{const O=E.component=w.component;if(vp(w,E,A))if(O.asyncDep&&!O.asyncResolved){Q(O,E,A);return}else O.next=E,hp(O.update),O.effect.dirty=!0,O.update();else E.el=w.el,O.vnode=E},V=(w,E,A,O,D,j,G)=>{const z=()=>{if(w.isMounted){let{next:Y,bu:ne,u:te,parent:ce,vnode:fe}=w;{const Sn=of(w);if(Sn){Y&&(Y.el=fe.el,Q(w,Y,G)),Sn.asyncDep.then(()=>{w.isUnmounted||z()});return}}let be=Y,Te;on(w,!1),Y?(Y.el=fe.el,Q(w,Y,G)):Y=fe,ne&&kn(ne),(Te=Y.props&&Y.props.onVnodeBeforeUpdate)&&qe(Te,ce,Y,fe),on(w,!0);const $e=ps(w),ut=w.subTree;w.subTree=$e,p(ut,$e,f(ut.el),$(ut),w,D,j),Y.el=$e.el,be===null&&Xi(w,$e.el),te&&Ne(te,D),(Te=Y.props&&Y.props.onVnodeUpdated)&&Ne(()=>qe(Te,ce,Y,fe),D)}else{let Y;const{el:ne,props:te}=E,{bm:ce,m:fe,parent:be}=w,Te=gn(E);if(on(w,!1),ce&&kn(ce),!Te&&(Y=te&&te.onVnodeBeforeMount)&&qe(Y,be,E),on(w,!0),ne&&_e){const $e=()=>{w.subTree=ps(w),_e(ne,w.subTree,w,D,null)};Te?E.type.__asyncLoader().then(()=>!w.isUnmounted&&$e()):$e()}else{const $e=w.subTree=ps(w);p(null,$e,A,O,w,D,j),E.el=$e.el}if(fe&&Ne(fe,D),!Te&&(Y=te&&te.onVnodeMounted)){const $e=E;Ne(()=>qe(Y,be,$e),D)}(E.shapeFlag&256||be&&gn(be.vnode)&&be.vnode.shapeFlag&256)&&w.a&&Ne(w.a,D),w.isMounted=!0,E=A=O=null}},K=w.effect=new Bi(z,et,()=>Ko(F),w.scope),F=w.update=()=>{K.dirty&&K.run()};F.id=w.uid,on(w,!0),F()},Q=(w,E,A)=>{E.component=w;const O=w.vnode.props;w.vnode=E,w.next=null,Zp(w,E.props,O,A),tm(w,E.children,A),En(),Ga(w),Cn()},U=(w,E,A,O,D,j,G,z,K=!1)=>{const F=w&&w.children,Y=w?w.shapeFlag:0,ne=E.children,{patchFlag:te,shapeFlag:ce}=E;if(te>0){if(te&128){Re(F,ne,A,O,D,j,G,z,K);return}else if(te&256){he(F,ne,A,O,D,j,G,z,K);return}}ce&8?(Y&16&&Ae(F,D,j),ne!==F&&u(A,ne)):Y&16?ce&16?Re(F,ne,A,O,D,j,G,z,K):Ae(F,D,j,!0):(Y&8&&u(A,""),ce&16&&L(ne,A,O,D,j,G,z,K))},he=(w,E,A,O,D,j,G,z,K)=>{w=w||Ln,E=E||Ln;const F=w.length,Y=E.length,ne=Math.min(F,Y);let te;for(te=0;teY?Ae(w,D,j,!0,!1,ne):L(E,A,O,D,j,G,z,K,ne)},Re=(w,E,A,O,D,j,G,z,K)=>{let F=0;const Y=E.length;let ne=w.length-1,te=Y-1;for(;F<=ne&&F<=te;){const ce=w[F],fe=E[F]=K?Ut(E[F]):st(E[F]);if(ft(ce,fe))p(ce,fe,A,null,D,j,G,z,K);else break;F++}for(;F<=ne&&F<=te;){const ce=w[ne],fe=E[te]=K?Ut(E[te]):st(E[te]);if(ft(ce,fe))p(ce,fe,A,null,D,j,G,z,K);else break;ne--,te--}if(F>ne){if(F<=te){const ce=te+1,fe=cete)for(;F<=ne;)we(w[F],D,j,!0),F++;else{const ce=F,fe=F,be=new Map;for(F=fe;F<=te;F++){const Ye=E[F]=K?Ut(E[F]):st(E[F]);Ye.key!=null&&be.set(Ye.key,F)}let Te,$e=0;const ut=te-fe+1;let Sn=!1,Da=0;const Xn=new Array(ut);for(F=0;F=ut){we(Ye,D,j,!0);continue}let mt;if(Ye.key!=null)mt=be.get(Ye.key);else for(Te=fe;Te<=te;Te++)if(Xn[Te-fe]===0&&ft(Ye,E[Te])){mt=Te;break}mt===void 0?we(Ye,D,j,!0):(Xn[mt-fe]=F+1,mt>=Da?Da=mt:Sn=!0,p(Ye,E[mt],A,null,D,j,G,z,K),$e++)}const Ha=Sn?am(Xn):Ln;for(Te=Ha.length-1,F=ut-1;F>=0;F--){const Ye=fe+F,mt=E[Ye],ja=Ye+1{const{el:j,type:G,transition:z,children:K,shapeFlag:F}=w;if(F&6){Ie(w.component.subTree,E,A,O);return}if(F&128){w.suspense.move(E,A,O);return}if(F&64){G.move(w,E,A,W);return}if(G===Se){r(j,E,A);for(let ne=0;nez.enter(j),D);else{const{leave:ne,delayLeave:te,afterLeave:ce}=z,fe=()=>r(j,E,A),be=()=>{ne(j,()=>{fe(),ce&&ce()})};te?te(j,fe,be):be()}else r(j,E,A)},we=(w,E,A,O=!1,D=!1)=>{const{type:j,props:G,ref:z,children:K,dynamicChildren:F,shapeFlag:Y,patchFlag:ne,dirs:te}=w;if(z!=null&&To(z,null,A,w,!0),Y&256){E.ctx.deactivate(w);return}const ce=Y&1&&te,fe=!gn(w);let be;if(fe&&(be=G&&G.onVnodeBeforeUnmount)&&qe(be,E,w),Y&6)pt(w.component,A,O);else{if(Y&128){w.suspense.unmount(A,O);return}ce&&yt(w,null,E,"beforeUnmount"),Y&64?w.type.remove(w,E,A,D,W,O):F&&(j!==Se||ne>0&&ne&64)?Ae(F,E,A,!1,!0):(j===Se&&ne&384||!D&&Y&16)&&Ae(K,E,A),O&&ze(w)}(fe&&(be=G&&G.onVnodeUnmounted)||ce)&&Ne(()=>{be&&qe(be,E,w),ce&&yt(w,null,E,"unmounted")},A)},ze=w=>{const{type:E,el:A,anchor:O,transition:D}=w;if(E===Se){rt(A,O);return}if(E===Hn){_(w);return}const j=()=>{o(A),D&&!D.persisted&&D.afterLeave&&D.afterLeave()};if(w.shapeFlag&1&&D&&!D.persisted){const{leave:G,delayLeave:z}=D,K=()=>G(A,j);z?z(w.el,j,K):K()}else j()},rt=(w,E)=>{let A;for(;w!==E;)A=d(w),o(w),w=A;o(E)},pt=(w,E,A)=>{const{bum:O,scope:D,update:j,subTree:G,um:z}=w;O&&kn(O),D.stop(),j&&(j.active=!1,we(G,w,E,A)),z&&Ne(z,E),Ne(()=>{w.isUnmounted=!0},E),E&&E.pendingBranch&&!E.isUnmounted&&w.asyncDep&&!w.asyncResolved&&w.suspenseId===E.pendingId&&(E.deps--,E.deps===0&&E.resolve())},Ae=(w,E,A,O=!1,D=!1,j=0)=>{for(let G=j;Gw.shapeFlag&6?$(w.component.subTree):w.shapeFlag&128?w.suspense.next():d(w.anchor||w.el),Z=(w,E,A)=>{w==null?E._vnode&&we(E._vnode,null,null,!0):p(E._vnode||null,w,E,null,null,null,A),Ga(),bo(),E._vnode=w},W={p,um:we,m:Ie,r:ze,mt:B,mc:L,pc:U,pbc:R,n:$,o:e};let X,_e;return t&&([X,_e]=t(W)),{render:Z,hydrate:X,createApp:Jp(Z,X)}}function bs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function on({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function rf(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function oa(e,t,n=!1){const r=e.children,o=t.children;if(re(r)&&re(o))for(let s=0;s>1,e[n[a]]0&&(t[r]=n[s-1]),n[s]=r)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function of(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:of(t)}const cm=e=>e.__isTeleport,dr=e=>e&&(e.disabled||e.disabled===""),ac=e=>typeof SVGElement<"u"&&e instanceof SVGElement,cc=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Qs=(e,t)=>{const n=e&&e.to;return Pe(n)?t?t(n):null:n},lm={name:"Teleport",__isTeleport:!0,process(e,t,n,r,o,s,i,a,c,l){const{mc:u,pc:f,pbc:d,o:{insert:h,querySelector:m,createText:p,createComment:y}}=l,v=dr(t.props);let{shapeFlag:b,children:g,dynamicChildren:_}=t;if(e==null){const P=t.el=p(""),S=t.anchor=p("");h(P,n,r),h(S,n,r);const I=t.target=Qs(t.props,m),L=t.targetAnchor=p("");I&&(h(L,I),i==="svg"||ac(I)?i="svg":(i==="mathml"||cc(I))&&(i="mathml"));const H=(R,T)=>{b&16&&u(g,R,T,o,s,i,a,c)};v?H(n,S):I&&H(I,L)}else{t.el=e.el;const P=t.anchor=e.anchor,S=t.target=e.target,I=t.targetAnchor=e.targetAnchor,L=dr(e.props),H=L?n:S,R=L?P:I;if(i==="svg"||ac(S)?i="svg":(i==="mathml"||cc(S))&&(i="mathml"),_?(d(e.dynamicChildren,_,H,o,s,i,a),oa(e,t,!0)):c||f(e,t,H,R,o,s,i,a,!1),v)L?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Zr(t,n,P,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const T=t.target=Qs(t.props,m);T&&Zr(t,T,null,l,0)}else L&&Zr(t,S,I,l,1)}af(t)},remove(e,t,n,r,{um:o,o:{remove:s}},i){const{shapeFlag:a,children:c,anchor:l,targetAnchor:u,target:f,props:d}=e;if(f&&s(u),i&&s(l),a&16){const h=i||!dr(d);for(let m=0;m0?it||Ln:null,cf(),Bn>0&&it&&it.push(e),e}function ue(e,t,n,r,o,s){return lf(ie(e,t,n,r,o,s,!0))}function de(e,t,n,r,o){return lf(se(e,t,n,r,o,!0))}function zn(e){return e?e.__v_isVNode===!0:!1}function ft(e,t){return e.type===t.type&&e.key===t.key}const Yo="__vInternal",uf=({key:e})=>e??null,so=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Pe(e)||ke(e)||oe(e)?{i:Me,r:e,k:t,f:!!n}:e:null);function ie(e,t=null,n=null,r=0,o=null,s=e===Se?0:1,i=!1,a=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&uf(t),ref:t&&so(t),scopeId:qo,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Me};return a?(sa(c,n),s&128&&e.normalize(c)):n&&(c.shapeFlag|=Pe(n)?8:16),Bn>0&&!i&&it&&(c.patchFlag>0||s&6)&&c.patchFlag!==32&&it.push(c),c}const se=fm;function fm(e,t=null,n=null,r=0,o=null,s=!1){if((!e||e===Iu)&&(e=Ke),zn(e)){const a=Ot(e,t,!0);return n&&sa(a,n),Bn>0&&!s&&it&&(a.shapeFlag&6?it[it.indexOf(e)]=a:it.push(a)),a.patchFlag|=-2,a}if(bm(e)&&(e=e.__vccOpts),t){t=ff(t);let{class:a,style:c}=t;a&&!Pe(a)&&(t.class=je(a)),Ee(c)&&(_u(c)&&!re(c)&&(c=Oe({},c)),t.style=Gn(c))}const i=Pe(e)?1:Ou(e)?128:cm(e)?64:Ee(e)?4:oe(e)?2:0;return ie(e,t,n,r,o,i,s,!0)}function ff(e){return e?_u(e)||Yo in e?Oe({},e):e:null}function Ot(e,t,n=!1){const{props:r,ref:o,patchFlag:s,children:i}=e,a=t?hm(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&uf(a),ref:t&&t.ref?n&&o?re(o)?o.concat(so(t)):[o,so(t)]:so(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Se?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ot(e.ssContent),ssFallback:e.ssFallback&&Ot(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function Yn(e=" ",t=0){return se(Vn,null,e,t)}function dm(e,t){const n=se(Hn,null,e);return n.staticCount=t,n}function Fe(e="",t=!1){return t?(q(),de(Ke,null,e)):se(Ke,null,e)}function st(e){return e==null||typeof e=="boolean"?se(Ke):re(e)?se(Se,null,e.slice()):typeof e=="object"?Ut(e):se(Vn,null,String(e))}function Ut(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ot(e)}function sa(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(re(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),sa(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!(Yo in t)?t._ctx=Me:o===3&&Me&&(Me.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else oe(t)?(t={default:t,_ctx:Me},n=32):(t=String(t),r&64?(n=16,t=[Yn(t)]):n=8);e.children=t,e.shapeFlag|=n}function hm(...e){const t={};for(let n=0;nLe||Me;let ia,Js;{const e=ru(),t=(n,r)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(r),s=>{o.length>1?o.forEach(i=>i(s)):o[0](s)}};ia=t("__VUE_INSTANCE_SETTERS__",n=>Le=n),Js=t("__VUE_SSR_SETTERS__",n=>Hr=n)}const en=e=>{ia(e),e.scope.on()},Yt=()=>{Le&&Le.scope.off(),ia(null)};function df(e){return e.vnode.shapeFlag&4}let Hr=!1;function ym(e,t=!1){t&&Js(t);const{props:n,children:r}=e.vnode,o=df(e);Yp(e,n,o,t),em(e,r);const s=o?_m(e,t):void 0;return t&&Js(!1),s}function _m(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=vu(new Proxy(e.ctx,Bp));const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?pf(e):null;en(e),En();const s=Jt(r,e,0,[e.props,o]);if(Cn(),Yt(),Fi(s)){if(s.then(Yt,Yt),t)return s.then(i=>{Ys(e,i,t)}).catch(i=>{Qn(i,e,0)});e.asyncDep=s}else Ys(e,s,t)}else hf(e,t)}function Ys(e,t,n){oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ee(t)&&(e.setupState=Eu(t)),hf(e,n)}let uc;function hf(e,t,n){const r=e.type;if(!e.render){if(!t&&uc&&!r.render){const o=r.template||na(e).template;if(o){const{isCustomElement:s,compilerOptions:i}=e.appContext.config,{delimiters:a,compilerOptions:c}=r,l=Oe(Oe({isCustomElement:s,delimiters:a},i),c);r.render=uc(o,l)}}e.render=r.render||et}{en(e),En();try{Up(e)}finally{Cn(),Yt()}}}function vm(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return Ge(e,"get","$attrs"),t[n]}}))}function pf(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return vm(e)},slots:e.slots,emit:e.emit,expose:t}}function Zo(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Eu(vu(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in fr)return fr[n](e)},has(t,n){return n in t||n in fr}}))}function Zs(e,t=!0){return oe(e)?e.displayName||e.name:e.name||t&&e.__name}function bm(e){return oe(e)&&"__vccOpts"in e}const ee=(e,t)=>op(e,t,Hr);function tt(e,t,n){const r=arguments.length;return r===2?Ee(t)&&!re(t)?zn(t)?se(e,null,[t]):se(e,t):se(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&zn(n)&&(n=[n]),se(e,t,n))}const mf="3.4.5",wm=et,Em="http://www.w3.org/2000/svg",Cm="http://www.w3.org/1998/Math/MathML",Kt=typeof document<"u"?document:null,fc=Kt&&Kt.createElement("template"),Tm={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?Kt.createElementNS(Em,e):t==="mathml"?Kt.createElementNS(Cm,e):Kt.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>Kt.createTextNode(e),createComment:e=>Kt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Kt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{fc.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const a=fc.content;if(r==="svg"||r==="mathml"){const c=a.firstChild;for(;c.firstChild;)a.appendChild(c.firstChild);a.removeChild(c)}t.insertBefore(a,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Ft="transition",er="animation",xr=Symbol("_vtc"),aa=(e,{slots:t})=>tt($p,Sm(e),t);aa.displayName="Transition";const gf={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};aa.props=Oe({},Du,gf);const sn=(e,t=[])=>{re(e)?e.forEach(n=>n(...t)):e&&e(...t)},dc=e=>e?re(e)?e.some(t=>t.length>1):e.length>1:!1;function Sm(e){const t={};for(const C in e)C in gf||(t[C]=e[C]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:c=s,appearActiveClass:l=i,appearToClass:u=a,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:d=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,m=Pm(o),p=m&&m[0],y=m&&m[1],{onBeforeEnter:v,onEnter:b,onEnterCancelled:g,onLeave:_,onLeaveCancelled:P,onBeforeAppear:S=v,onAppear:I=b,onAppearCancelled:L=g}=t,H=(C,x,B)=>{an(C,x?u:a),an(C,x?l:i),B&&B()},R=(C,x)=>{C._isLeaving=!1,an(C,f),an(C,h),an(C,d),x&&x()},T=C=>(x,B)=>{const J=C?I:b,V=()=>H(x,C,B);sn(J,[x,V]),hc(()=>{an(x,C?c:s),Vt(x,C?u:a),dc(J)||pc(x,r,p,V)})};return Oe(t,{onBeforeEnter(C){sn(v,[C]),Vt(C,s),Vt(C,i)},onBeforeAppear(C){sn(S,[C]),Vt(C,c),Vt(C,l)},onEnter:T(!1),onAppear:T(!0),onLeave(C,x){C._isLeaving=!0;const B=()=>R(C,x);Vt(C,f),Rm(),Vt(C,d),hc(()=>{C._isLeaving&&(an(C,f),Vt(C,h),dc(_)||pc(C,r,y,B))}),sn(_,[C,B])},onEnterCancelled(C){H(C,!1),sn(g,[C])},onAppearCancelled(C){H(C,!0),sn(L,[C])},onLeaveCancelled(C){R(C),sn(P,[C])}})}function Pm(e){if(e==null)return null;if(Ee(e))return[ws(e.enter),ws(e.leave)];{const t=ws(e);return[t,t]}}function ws(e){return nu(e)}function Vt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[xr]||(e[xr]=new Set)).add(t)}function an(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[xr];n&&(n.delete(t),n.size||(e[xr]=void 0))}function hc(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let xm=0;function pc(e,t,n,r){const o=e._endId=++xm,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:i,timeout:a,propCount:c}=Am(e,t);if(!i)return r();const l=i+"end";let u=0;const f=()=>{e.removeEventListener(l,d),s()},d=h=>{h.target===e&&++u>=c&&f()};setTimeout(()=>{u(n[m]||"").split(", "),o=r(`${Ft}Delay`),s=r(`${Ft}Duration`),i=mc(o,s),a=r(`${er}Delay`),c=r(`${er}Duration`),l=mc(a,c);let u=null,f=0,d=0;t===Ft?i>0&&(u=Ft,f=i,d=s.length):t===er?l>0&&(u=er,f=l,d=c.length):(f=Math.max(i,l),u=f>0?i>l?Ft:er:null,d=u?u===Ft?s.length:c.length:0);const h=u===Ft&&/\b(transform|all)(,|$)/.test(r(`${Ft}Property`).toString());return{type:u,timeout:f,propCount:d,hasTransform:h}}function mc(e,t){for(;e.lengthgc(n)+gc(e[r])))}function gc(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Rm(){return document.body.offsetHeight}function Im(e,t,n){const r=e[xr];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const ca=Symbol("_vod"),Lm={beforeMount(e,{value:t},{transition:n}){e[ca]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):tr(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),tr(e,!0),r.enter(e)):r.leave(e,()=>{tr(e,!1)}):tr(e,t))},beforeUnmount(e,{value:t}){tr(e,t)}};function tr(e,t){e.style.display=t?e[ca]:"none"}const yf=Symbol("");function vP(e){const t=ht();if(!t)return;const n=t.ut=(o=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(s=>ei(s,o))},r=()=>{const o=e(t.proxy);Xs(t.subTree,o),n(o)};Ip(r),Nt(()=>{const o=new MutationObserver(r);o.observe(t.subTree.el.parentNode,{childList:!0}),Tr(()=>o.disconnect())})}function Xs(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Xs(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)ei(e.el,t);else if(e.type===Se)e.children.forEach(n=>Xs(n,t));else if(e.type===Hn){let{el:n,anchor:r}=e;for(;n&&(ei(n,t),n!==r);)n=n.nextSibling}}function ei(e,t){if(e.nodeType===1){const n=e.style;let r="";for(const o in t)n.setProperty(`--${o}`,t[o]),r+=`--${o}: ${t[o]};`;n[yf]=r}}function Om(e,t,n){const r=e.style,o=Pe(n);if(n&&!o){if(t&&!Pe(t))for(const s in t)n[s]==null&&ti(r,s,"");for(const s in n)ti(r,s,n[s])}else{const s=r.display;if(o){if(t!==n){const i=r[yf];i&&(n+=";"+i),r.cssText=n}}else t&&e.removeAttribute("style");ca in e&&(r.display=s)}}const yc=/\s*!important$/;function ti(e,t,n){if(re(n))n.forEach(r=>ti(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=km(e,t);yc.test(n)?e.setProperty(bn(r),n.replace(yc,""),"important"):e[r]=n}}const _c=["Webkit","Moz","ms"],Es={};function km(e,t){const n=Es[t];if(n)return n;let r=bt(t);if(r!=="filter"&&r in e)return Es[t]=r;r=zo(r);for(let o=0;o<_c.length;o++){const s=_c[o]+r;if(s in e)return Es[t]=s}return t}const vc="http://www.w3.org/1999/xlink";function $m(e,t,n,r,o){if(r&&t.startsWith("xlink:"))n==null?e.removeAttributeNS(vc,t.slice(6,t.length)):e.setAttributeNS(vc,t,n);else{const s=Mh(t);n==null||s&&!ou(n)?e.removeAttribute(t):e.setAttribute(t,s?"":n)}}function Mm(e,t,n,r,o,s,i){if(t==="innerHTML"||t==="textContent"){r&&i(r,o,s),e[t]=n??"";return}const a=e.tagName;if(t==="value"&&a!=="PROGRESS"&&!a.includes("-")){e._value=n;const l=a==="OPTION"?e.getAttribute("value"):e.value,u=n??"";l!==u&&(e.value=u),n==null&&e.removeAttribute(t);return}let c=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=ou(n):n==null&&l==="string"?(n="",c=!0):l==="number"&&(n=0,c=!0)}try{e[t]=n}catch{}c&&e.removeAttribute(t)}function xn(e,t,n,r){e.addEventListener(t,n,r)}function Nm(e,t,n,r){e.removeEventListener(t,n,r)}const bc=Symbol("_vei");function Dm(e,t,n,r,o=null){const s=e[bc]||(e[bc]={}),i=s[t];if(r&&i)i.value=r;else{const[a,c]=Hm(t);if(r){const l=s[t]=Vm(r,o);xn(e,a,l,c)}else i&&(Nm(e,a,i,c),s[t]=void 0)}}const wc=/(?:Once|Passive|Capture)$/;function Hm(e){let t;if(wc.test(e)){t={};let r;for(;r=e.match(wc);)e=e.slice(0,e.length-r[0].length),t[r[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):bn(e.slice(2)),t]}let Cs=0;const jm=Promise.resolve(),Fm=()=>Cs||(jm.then(()=>Cs=0),Cs=Date.now());function Vm(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;at(Bm(r,n.value),t,5,[r])};return n.value=e,n.attached=Fm(),n}function Bm(e,t){if(re(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const Ec=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,zm=(e,t,n,r,o,s,i,a,c)=>{const l=o==="svg";t==="class"?Im(e,r,l):t==="style"?Om(e,n,r):$r(t)?Hi(t)||Dm(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Um(e,t,r,l))?Mm(e,t,r,s,i,a,c):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),$m(e,t,r,l))};function Um(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ec(t)&&oe(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return Ec(t)&&Pe(n)?!1:t in e}const Cc=e=>{const t=e.props["onUpdate:modelValue"]||!1;return re(t)?n=>kn(t,n):t};function Km(e){e.target.composing=!0}function Tc(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Ts=Symbol("_assign"),Wm={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[Ts]=Cc(o);const s=r||o.props&&o.props.type==="number";xn(e,t?"change":"input",i=>{if(i.target.composing)return;let a=e.value;n&&(a=a.trim()),s&&(a=Ds(a)),e[Ts](a)}),n&&xn(e,"change",()=>{e.value=e.value.trim()}),t||(xn(e,"compositionstart",Km),xn(e,"compositionend",Tc),xn(e,"change",Tc))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},s){if(e[Ts]=Cc(s),e.composing)return;const i=o||e.type==="number"?Ds(e.value):e.value,a=t??"";i!==a&&(document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===a)||(e.value=a))}},qm=["ctrl","shift","alt","meta"],Gm={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>qm.some(n=>e[`${n}Key`]&&!t.includes(n))},ar=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(o,...s)=>{for(let i=0;i{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=o=>{if(!("key"in o))return;const s=bn(o.key);if(t.some(i=>i===s||Qm[i]===s))return e(o)})},_f=Oe({patchProp:zm},Tm);let pr,Sc=!1;function Jm(){return pr||(pr=sm(_f))}function Ym(){return pr=Sc?pr:im(_f),Sc=!0,pr}const Zm=(...e)=>{const t=Jm().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=bf(r);if(!o)return;const s=t._component;!oe(s)&&!s.render&&!s.template&&(s.template=o.innerHTML),o.innerHTML="";const i=n(o,!1,vf(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t},Xm=(...e)=>{const t=Ym().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=bf(r);if(o)return n(o,!0,vf(o))},t};function vf(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function bf(e){return Pe(e)?document.querySelector(e):e}const eg=/#/g,tg=/&/g,ng=/=/g,la=/\+/g,rg=/%5e/gi,og=/%60/gi,sg=/%7c/gi,ig=/%20/gi;function ag(e){return encodeURI(""+e).replace(sg,"|")}function ni(e){return ag(typeof e=="string"?e:JSON.stringify(e)).replace(la,"%2B").replace(ig,"+").replace(eg,"%23").replace(tg,"%26").replace(og,"`").replace(rg,"^")}function Ps(e){return ni(e).replace(ng,"%3D")}function So(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function cg(e){return So(e.replace(la," "))}function lg(e){return So(e.replace(la," "))}function wf(e=""){const t={};e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const r=n.match(/([^=]+)=?(.*)/)||[];if(r.length<2)continue;const o=cg(r[1]);if(o==="__proto__"||o==="constructor")continue;const s=lg(r[2]||"");t[o]===void 0?t[o]=s:Array.isArray(t[o])?t[o].push(s):t[o]=[t[o],s]}return t}function ug(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${Ps(e)}=${ni(n)}`).join("&"):`${Ps(e)}=${ni(t)}`:Ps(e)}function fg(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>ug(t,e[t])).filter(Boolean).join("&")}const dg=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,hg=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,pg=/^([/\\]\s*){2,}[^/\\]/;function kt(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?dg.test(e):hg.test(e)||(t.acceptRelative?pg.test(e):!1)}const mg=/^[\s\0]*(blob|data|javascript|vbscript):$/i;function gg(e){return!!e&&mg.test(e)}const yg=/\/$|\/\?|\/#/;function ri(e="",t){return t?yg.test(e):e.endsWith("/")}function tn(e="",t){if(!t)return(ri(e)?e.slice(0,-1):e)||"/";if(!ri(e,!0))return e||"/";let n=e,r="";const o=e.indexOf("#");o>=0&&(n=e.slice(0,o),r=e.slice(o));const[s,...i]=n.split("?");return(s.slice(0,-1)||"/")+(i.length>0?`?${i.join("?")}`:"")+r}function Po(e="",t){if(!t)return e.endsWith("/")?e:e+"/";if(ri(e,!0))return e||"/";let n=e,r="";const o=e.indexOf("#");if(o>=0&&(n=e.slice(0,o),r=e.slice(o),!n))return r;const[s,...i]=n.split("?");return s+"/"+(i.length>0?`?${i.join("?")}`:"")+r}function _g(e=""){return e.startsWith("/")}function oi(e=""){return _g(e)?e:"/"+e}function Ef(e,t){if(Tf(t)||kt(e))return e;const n=tn(t);return e.startsWith(n)?e:Tn(n,e)}function Pc(e,t){if(Tf(t))return e;const n=tn(t);if(!e.startsWith(n))return e;const r=e.slice(n.length);return r[0]==="/"?r:"/"+r}function Cf(e,t){const n=jr(e),r={...wf(n.search),...t};return n.search=fg(r),Eg(n)}function Tf(e){return!e||e==="/"}function vg(e){return e&&e!=="/"}const bg=/^\.?\//;function Tn(e,...t){let n=e||"";for(const r of t.filter(o=>vg(o)))if(n){const o=r.replace(bg,"");n=Po(n)+o}else n=r;return n}function wg(e,t,n={}){return n.trailingSlash||(e=Po(e),t=Po(t)),n.leadingSlash||(e=oi(e),t=oi(t)),n.encoding||(e=So(e),t=So(t)),e===t}function jr(e="",t){const n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){const[,f,d=""]=n;return{protocol:f.toLowerCase(),pathname:d,href:f+d,auth:"",host:"",search:"",hash:""}}if(!kt(e,{acceptRelative:!0}))return t?jr(t+e):xc(e);const[,r="",o,s=""]=e.replace(/\\/g,"/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[],[,i="",a=""]=s.match(/([^#/?]*)(.*)?/)||[],{pathname:c,search:l,hash:u}=xc(a.replace(/\/(?=[A-Za-z]:)/,""));return{protocol:r.toLowerCase(),auth:o?o.slice(0,Math.max(0,o.length-1)):"",host:i,pathname:c,search:l,hash:u}}function xc(e=""){const[t="",n="",r=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function Eg(e){const t=e.pathname||"",n=e.search?(e.search.startsWith("?")?"":"?")+e.search:"",r=e.hash||"",o=e.auth?e.auth+"@":"",s=e.host||"";return(e.protocol?e.protocol+"//":"")+o+s+t+n+r}const Cg=()=>{var e;return((e=window==null?void 0:window.__NUXT__)==null?void 0:e.config)||{}},xo=Cg().app,Tg=()=>xo.baseURL,Sg=()=>xo.buildAssetsDir,ua=(...e)=>Tn(Sf(),Sg(),...e),Sf=(...e)=>{const t=xo.cdnURL||xo.baseURL;return e.length?Tn(t,...e):t};globalThis.__buildAssetsURL=ua,globalThis.__publicAssetsURL=Sf;const Pg=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,xg=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,Ag=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function Rg(e,t){if(e==="__proto__"||e==="constructor"&&t&&typeof t=="object"&&"prototype"in t){Ig(e);return}return t}function Ig(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function Ar(e,t={}){if(typeof e!="string")return e;const n=e.trim();if(e[0]==='"'&&e.at(-1)==='"'&&!e.includes("\\"))return n.slice(1,-1);if(n.length<=9){const r=n.toLowerCase();if(r==="true")return!0;if(r==="false")return!1;if(r==="undefined")return;if(r==="null")return null;if(r==="nan")return Number.NaN;if(r==="infinity")return Number.POSITIVE_INFINITY;if(r==="-infinity")return Number.NEGATIVE_INFINITY}if(!Ag.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(Pg.test(e)||xg.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,Rg)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}class Lg extends Error{constructor(t,n){super(t,n),this.name="FetchError",n!=null&&n.cause&&!this.cause&&(this.cause=n.cause)}}function Og(e){var c,l,u,f,d;const t=((c=e.error)==null?void 0:c.message)||((l=e.error)==null?void 0:l.toString())||"",n=((u=e.request)==null?void 0:u.method)||((f=e.options)==null?void 0:f.method)||"GET",r=((d=e.request)==null?void 0:d.url)||String(e.request)||"/",o=`[${n}] ${JSON.stringify(r)}`,s=e.response?`${e.response.status} ${e.response.statusText}`:"",i=`${o}: ${s}${t?` ${t}`:""}`,a=new Lg(i,e.error?{cause:e.error}:void 0);for(const h of["request","options","response"])Object.defineProperty(a,h,{get(){return e[h]}});for(const[h,m]of[["data","_data"],["status","status"],["statusCode","status"],["statusText","statusText"],["statusMessage","statusText"]])Object.defineProperty(a,h,{get(){return e.response&&e.response[m]}});return a}const kg=new Set(Object.freeze(["PATCH","POST","PUT","DELETE"]));function Ac(e="GET"){return kg.has(e.toUpperCase())}function $g(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.buffer?!1:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}const Mg=new Set(["image/svg","application/xml","application/xhtml","application/html"]),Ng=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function Dg(e=""){if(!e)return"json";const t=e.split(";").shift()||"";return Ng.test(t)?"json":Mg.has(t)||t.startsWith("text/")?"text":"blob"}function Hg(e,t,n=globalThis.Headers){const r={...t,...e};if(t!=null&&t.params&&(e!=null&&e.params)&&(r.params={...t==null?void 0:t.params,...e==null?void 0:e.params}),t!=null&&t.query&&(e!=null&&e.query)&&(r.query={...t==null?void 0:t.query,...e==null?void 0:e.query}),t!=null&&t.headers&&(e!=null&&e.headers)){r.headers=new n((t==null?void 0:t.headers)||{});for(const[o,s]of new n((e==null?void 0:e.headers)||{}))r.headers.set(o,s)}return r}const jg=new Set([408,409,425,429,500,502,503,504]),Fg=new Set([101,204,205,304]);function Pf(e={}){const{fetch:t=globalThis.fetch,Headers:n=globalThis.Headers,AbortController:r=globalThis.AbortController}=e;async function o(a){const c=a.error&&a.error.name==="AbortError"&&!a.options.timeout||!1;if(a.options.retry!==!1&&!c){let u;typeof a.options.retry=="number"?u=a.options.retry:u=Ac(a.options.method)?0:1;const f=a.response&&a.response.status||500;if(u>0&&(Array.isArray(a.options.retryStatusCodes)?a.options.retryStatusCodes.includes(f):jg.has(f))){const d=a.options.retryDelay||0;return d>0&&await new Promise(h=>setTimeout(h,d)),s(a.request,{...a.options,retry:u-1,timeout:a.options.timeout})}}const l=Og(a);throw Error.captureStackTrace&&Error.captureStackTrace(l,s),l}const s=async function(c,l={}){var d;const u={request:c,options:Hg(l,e.defaults,n),response:void 0,error:void 0};if(u.options.method=(d=u.options.method)==null?void 0:d.toUpperCase(),u.options.onRequest&&await u.options.onRequest(u),typeof u.request=="string"&&(u.options.baseURL&&(u.request=Ef(u.request,u.options.baseURL)),(u.options.query||u.options.params)&&(u.request=Cf(u.request,{...u.options.params,...u.options.query}))),u.options.body&&Ac(u.options.method)&&($g(u.options.body)?(u.options.body=typeof u.options.body=="string"?u.options.body:JSON.stringify(u.options.body),u.options.headers=new n(u.options.headers||{}),u.options.headers.has("content-type")||u.options.headers.set("content-type","application/json"),u.options.headers.has("accept")||u.options.headers.set("accept","application/json")):("pipeTo"in u.options.body&&typeof u.options.body.pipeTo=="function"||typeof u.options.body.pipe=="function")&&("duplex"in u.options||(u.options.duplex="half"))),!u.options.signal&&u.options.timeout){const h=new r;setTimeout(()=>h.abort(),u.options.timeout),u.options.signal=h.signal}try{u.response=await t(u.request,u.options)}catch(h){return u.error=h,u.options.onRequestError&&await u.options.onRequestError(u),await o(u)}if(u.response.body&&!Fg.has(u.response.status)&&u.options.method!=="HEAD"){const h=(u.options.parseResponse?"json":u.options.responseType)||Dg(u.response.headers.get("content-type")||"");switch(h){case"json":{const m=await u.response.text(),p=u.options.parseResponse||Ar;u.response._data=p(m);break}case"stream":{u.response._data=u.response.body;break}default:u.response._data=await u.response[h]()}}return u.options.onResponse&&await u.options.onResponse(u),!u.options.ignoreResponseError&&u.response.status>=400&&u.response.status<600?(u.options.onResponseError&&await u.options.onResponseError(u),await o(u)):u.response},i=async function(c,l){return(await s(c,l))._data};return i.raw=s,i.native=(...a)=>t(...a),i.create=(a={})=>Pf({...e,defaults:{...e.defaults,...a}}),i}const fa=function(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}(),Vg=fa.fetch||(()=>Promise.reject(new Error("[ofetch] global.fetch is not supported!"))),Bg=fa.Headers,zg=fa.AbortController,Ug=Pf({fetch:Vg,Headers:Bg,AbortController:zg}),Kg=Ug;globalThis.$fetch||(globalThis.$fetch=Kg.create({baseURL:Tg()}));function si(e,t={},n){for(const r in e){const o=e[r],s=n?`${n}:${r}`:r;typeof o=="object"&&o!==null?si(o,t,s):typeof o=="function"&&(t[s]=o)}return t}const Wg={run:e=>e()},qg=()=>Wg,xf=typeof console.createTask<"u"?console.createTask:qg;function Gg(e,t){const n=t.shift(),r=xf(n);return e.reduce((o,s)=>o.then(()=>r.run(()=>s(...t))),Promise.resolve())}function Qg(e,t){const n=t.shift(),r=xf(n);return Promise.all(e.map(o=>r.run(()=>o(...t))))}function xs(e,t){for(const n of[...e])n(t)}class Jg{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,r={}){if(!t||typeof n!="function")return()=>{};const o=t;let s;for(;this._deprecatedHooks[t];)s=this._deprecatedHooks[t],t=s.to;if(s&&!r.allowDeprecated){let i=s.message;i||(i=`${o} hook has been deprecated`+(s.to?`, please use ${s.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let r,o=(...s)=>(typeof r=="function"&&r(),r=void 0,o=void 0,n(...s));return r=this.hook(t,o),r}removeHook(t,n){if(this._hooks[t]){const r=this._hooks[t].indexOf(n);r!==-1&&this._hooks[t].splice(r,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const r=this._hooks[t]||[];delete this._hooks[t];for(const o of r)this.hook(t,o)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=si(t),r=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of r.splice(0,r.length))o()}}removeHooks(t){const n=si(t);for(const r in n)this.removeHook(r,n[r])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(Gg,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith(Qg,t,...n)}callHookWith(t,n,...r){const o=this._before||this._after?{name:n,args:r,context:{}}:void 0;this._before&&xs(this._before,o);const s=t(n in this._hooks?[...this._hooks[n]]:[],r);return s instanceof Promise?s.finally(()=>{this._after&&o&&xs(this._after,o)}):(this._after&&o&&xs(this._after,o),s)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function Af(){return new Jg}function Yg(e={}){let t,n=!1;const r=i=>{if(t&&t!==i)throw new Error("Context conflict")};let o;if(e.asyncContext){const i=e.AsyncLocalStorage||globalThis.AsyncLocalStorage;i?o=new i:console.warn("[unctx] `AsyncLocalStorage` is not provided.")}const s=()=>{if(o&&t===void 0){const i=o.getStore();if(i!==void 0)return i}return t};return{use:()=>{const i=s();if(i===void 0)throw new Error("Context is not available");return i},tryUse:()=>s(),set:(i,a)=>{a||r(i),t=i,n=!0},unset:()=>{t=void 0,n=!1},call:(i,a)=>{r(i),t=i;try{return o?o.run(i,a):a()}finally{n||(t=void 0)}},async callAsync(i,a){t=i;const c=()=>{t=i},l=()=>t===i?c:void 0;ii.add(l);try{const u=o?o.run(i,a):a();return n||(t=void 0),await u}finally{ii.delete(l)}}}}function Zg(e={}){const t={};return{get(n,r={}){return t[n]||(t[n]=Yg({...e,...r})),t[n],t[n]}}}const Ao=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Rc="__unctx__",Xg=Ao[Rc]||(Ao[Rc]=Zg()),ey=(e,t={})=>Xg.get(e,t),Ic="__unctx_async_handlers__",ii=Ao[Ic]||(Ao[Ic]=new Set);function Rr(e){const t=[];for(const o of ii){const s=o();s&&t.push(s)}const n=()=>{for(const o of t)o()};let r=e();return r&&typeof r=="object"&&"catch"in r&&(r=r.catch(o=>{throw n(),o})),[r,n]}const Rf=ey("nuxt-app",{asyncContext:!1}),ty="__nuxt_plugin";function ny(e){let t=0;const n={_scope:Nh(),provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.9.0"},get vue(){return n.vueApp.version}},payload:nt({data:{},state:{},once:new Set,_errors:{},...window.__NUXT__??{}}),static:{data:{}},runWithContext:o=>n._scope.run(()=>If(n,o)),isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let o=!1;return()=>{if(!o&&(o=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:{},_payloadRevivers:{},...e};n.hooks=Af(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(o,s)=>{const i="$"+o;Xr(n,i,s),Xr(n.vueApp.config.globalProperties,i,s)},Xr(n.vueApp,"$nuxt",n),Xr(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener("nuxt.preloadError",s=>{n.callHook("app:chunkError",{error:s.payload})}),window.useNuxtApp=window.useNuxtApp||ye;const o=n.hook("app:error",(...s)=>{console.error("[nuxt] error caught during app initialization",...s)});n.hook("app:mounted",o)}const r=nt(n.payload.config);return n.provide("config",r),n}async function ry(e,t){if(t.hooks&&e.hooks.addHooks(t.hooks),typeof t=="function"){const{provide:n}=await e.runWithContext(()=>t(e))||{};if(n&&typeof n=="object")for(const r in n)e.provide(r,n[r])}}async function oy(e,t){const n=[],r=[],o=[],s=[];let i=0;async function a(c){if(c.dependsOn&&!c.dependsOn.every(l=>n.includes(l)))r.push([new Set(c.dependsOn),c]);else{const l=ry(e,c).then(async()=>{c._name&&(n.push(c._name),await Promise.all(r.map(async([u,f])=>{u.has(c._name)&&(u.delete(c._name),u.size===0&&(i++,await a(f)))})))});c.parallel?o.push(l.catch(u=>s.push(u))):await l}}for(const c of t)await a(c);if(await Promise.all(o),i)for(let c=0;c{}),e,{[ty]:!0,_name:t})}function If(e,t,n){const r=()=>n?t(...n):t();return Rf.set(e),e.vueApp.runWithContext(r)}function ye(){var t;let e;if(Ju()&&(e=(t=ht())==null?void 0:t.appContext.app.$nuxt),e=e||Rf.tryUse(),!e)throw new Error("[nuxt] instance unavailable");return e}function Je(){return ye().$config}function Xr(e,t,n){Object.defineProperty(e,t,{get:()=>n})}const sy="modulepreload",iy=function(e,t){return e[0]==="."?new URL(e,t).href:e},Lc={},ay=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link");o=Promise.all(n.map(i=>{if(i=iy(i,r),i in Lc)return;Lc[i]=!0;const a=i.endsWith(".css"),c=a?'[rel="stylesheet"]':"";if(!!r)for(let f=s.length-1;f>=0;f--){const d=s[f];if(d.href===i&&(!a||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${i}"]${c}`))return;const u=document.createElement("link");if(u.rel=a?"stylesheet":sy,a||(u.as="script",u.crossOrigin=""),u.href=i,document.head.appendChild(u),a)return new Promise((f,d)=>{u.addEventListener("load",f),u.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${i}`)))})}))}return o.then(()=>t()).catch(s=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s})},k=(...e)=>ay(...e).catch(t=>{const n=new Event("nuxt.preloadError");throw n.payload=t,window.dispatchEvent(n),t}),cy=-1,ly=-2,uy=-3,fy=-4,dy=-5,hy=-6;function py(e,t){return my(JSON.parse(e),t)}function my(e,t){if(typeof e=="number")return o(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function o(s,i=!1){if(s===cy)return;if(s===uy)return NaN;if(s===fy)return 1/0;if(s===dy)return-1/0;if(s===hy)return-0;if(i)throw new Error("Invalid input");if(s in r)return r[s];const a=n[s];if(!a||typeof a!="object")r[s]=a;else if(Array.isArray(a))if(typeof a[0]=="string"){const c=a[0],l=t==null?void 0:t[c];if(l)return r[s]=l(o(a[1]));switch(c){case"Date":r[s]=new Date(a[1]);break;case"Set":const u=new Set;r[s]=u;for(let h=1;h>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Oc(e){return e._h||da(e._d?e._d:`${e.tag}:${e.textContent||e.innerHTML||""}:${Object.entries(e.props).map(([t,n])=>`${t}:${String(n)}`).join(",")}`)}function Of(e,t){const{props:n,tag:r}=e;if(vy.includes(r))return r;if(r==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];r==="meta"&&o.push("name","property","http-equiv");for(const s of o)if(typeof n[s]<"u"){const i=String(n[s]);return t&&!t(i)?!1:`${r}:${s}:${i}`}return!1}function kc(e,t){return e==null?t||null:typeof e=="function"?e(t):e}async function wy(e,t,n){const r={tag:e,props:await kf(typeof t=="object"&&typeof t!="function"&&!(t instanceof Promise)?{...t}:{[["script","noscript","style"].includes(e)?"innerHTML":"textContent"]:t},["templateParams","titleTemplate"].includes(e))};return Lf.forEach(o=>{const s=typeof r.props[o]<"u"?r.props[o]:n[o];typeof s<"u"&&((!["innerHTML","textContent","children"].includes(o)||yy.includes(r.tag))&&(r[o==="children"?"innerHTML":o]=s),delete r.props[o])}),r.props.body&&(r.tagPosition="bodyClose",delete r.props.body),r.tag==="script"&&typeof r.innerHTML=="object"&&(r.innerHTML=JSON.stringify(r.innerHTML),r.props.type=r.props.type||"application/json"),Array.isArray(r.props.content)?r.props.content.map(o=>({...r,props:{...r.props,content:o}})):r}function Ey(e){return typeof e=="object"&&!Array.isArray(e)&&(e=Object.keys(e).filter(t=>e[t])),(Array.isArray(e)?e.join(" "):e).split(" ").filter(t=>t.trim()).filter(Boolean).join(" ")}async function kf(e,t){for(const n of Object.keys(e)){if(n==="class"){e[n]=Ey(e[n]);continue}if(e[n]instanceof Promise&&(e[n]=await e[n]),!t&&!Lf.includes(n)){const r=String(e[n]),o=n.startsWith("data-");r==="true"||r===""?e[n]=o?"true":!0:e[n]||(o&&r==="false"?e[n]="false":delete e[n])}}return e}const Cy=10;async function Ty(e){const t=[];return Object.entries(e.resolvedInput).filter(([n,r])=>typeof r<"u"&&_y.includes(n)).forEach(([n,r])=>{const o=gy(r);t.push(...o.map(s=>wy(n,s,e)).flat())}),(await Promise.all(t)).flat().filter(Boolean).map((n,r)=>(n._e=e._i,e.mode&&(n._m=e.mode),n._p=(e._i<c&&c[l]||void 0,t):a=t[i],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=e;try{o=decodeURI(e)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const a=r(i.slice(1));typeof a=="string"&&(e=e.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(c,l)=>`${a}${l}`).trim())}),e.includes(Bt)&&(e.endsWith(Bt)&&(e=e.slice(0,-Bt.length).trim()),e.startsWith(Bt)&&(e=e.slice(Bt.length).trim()),e=e.replace(new RegExp(`\\${Bt}\\s*\\${Bt}`,"g"),Bt),e=ao(e,{separator:n},n)),e}async function Py(e){const t={tag:e.tagName.toLowerCase(),props:await kf(e.getAttributeNames().reduce((n,r)=>({...n,[r]:e.getAttribute(r)}),{})),innerHTML:e.innerHTML};return t._d=Of(t),t}async function Mf(e,t={}){var u;const n=t.document||e.resolvedOptions.document;if(!n)return;const r={shouldRender:e.dirty,tags:[]};if(await e.hooks.callHook("dom:beforeRender",r),!r.shouldRender)return;const o=(await e.resolveTags()).map(f=>({tag:f,id:io.includes(f.tag)?Oc(f):f.tag,shouldRender:!0}));let s=e._dom;if(!s){s={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const f of["body","head"]){const d=(u=n==null?void 0:n[f])==null?void 0:u.children;for(const h of[...d].filter(m=>io.includes(m.tagName.toLowerCase())))s.elMap[h.getAttribute("data-hid")||Oc(await Py(h))]=h}}s.pendingSideEffects={...s.sideEffects||{}},s.sideEffects={};function i(f,d,h){const m=`${f}:${d}`;s.sideEffects[m]=h,delete s.pendingSideEffects[m]}function a({id:f,$el:d,tag:h}){const m=h.tag.endsWith("Attrs");s.elMap[f]=d,m||(["textContent","innerHTML"].forEach(p=>{h[p]&&h[p]!==d[p]&&(d[p]=h[p])}),i(f,"el",()=>{s.elMap[f].remove(),delete s.elMap[f]})),Object.entries(h.props).forEach(([p,y])=>{const v=`attr:${p}`;if(p==="class")for(const b of(y||"").split(" ").filter(Boolean))m&&i(f,`${v}:${b}`,()=>d.classList.remove(b)),!d.classList.contains(b)&&d.classList.add(b);else d.getAttribute(p)!==y&&d.setAttribute(p,y===!0?"":String(y)),m&&i(f,v,()=>d.removeAttribute(p))})}const c=[],l={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of o){const{tag:d,shouldRender:h,id:m}=f;if(h){if(d.tag==="title"){n.title=d.textContent;continue}f.$el=f.$el||s.elMap[m],f.$el?a(f):io.includes(d.tag)&&c.push(f)}}for(const f of c){const d=f.tag.tagPosition||"head";f.$el=n.createElement(f.tag.tag),a(f),l[d]=l[d]||n.createDocumentFragment(),l[d].appendChild(f.$el)}for(const f of o)await e.hooks.callHook("dom:renderTag",f,n,i);l.head&&n.head.appendChild(l.head),l.bodyOpen&&n.body.insertBefore(l.bodyOpen,n.body.firstChild),l.bodyClose&&n.body.appendChild(l.bodyClose),Object.values(s.pendingSideEffects).forEach(f=>f()),e._dom=s,e.dirty=!1,await e.hooks.callHook("dom:rendered",{renders:o})}async function xy(e,t={}){const n=t.delayFn||(r=>setTimeout(r,10));return e._domUpdatePromise=e._domUpdatePromise||new Promise(r=>n(async()=>{await Mf(e,t),delete e._domUpdatePromise,r()}))}function Ay(e){return t=>{var r,o;const n=((o=(r=t.resolvedOptions.document)==null?void 0:r.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&t.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(s){xy(s,e)}}}}}const Ry=["templateParams","htmlAttrs","bodyAttrs"],Iy={hooks:{"tag:normalise":function({tag:e}){["hid","vmid","key"].forEach(r=>{e.props[r]&&(e.key=e.props[r],delete e.props[r])});const n=Of(e)||(e.key?`${e.tag}:${e.key}`:!1);n&&(e._d=n)},"tags:resolve":function(e){const t={};e.tags.forEach(r=>{const o=(r.key?`${r.tag}:${r.key}`:r._d)||r._p,s=t[o];if(s){let a=r==null?void 0:r.tagDuplicateStrategy;if(!a&&Ry.includes(r.tag)&&(a="merge"),a==="merge"){const c=s.props;["class","style"].forEach(l=>{c[l]&&(r.props[l]?(l==="style"&&!c[l].endsWith(";")&&(c[l]+=";"),r.props[l]=`${c[l]} ${r.props[l]}`):r.props[l]=c[l])}),t[o].props={...c,...r.props};return}else if(r._e===s._e){s._duped=s._duped||[],r._d=`${s._d}:${s._duped.length+1}`,s._duped.push(r);return}else if(Ro(r)>Ro(s))return}const i=Object.keys(r.props).length+(r.innerHTML?1:0)+(r.textContent?1:0);if(io.includes(r.tag)&&i===0){delete t[o];return}t[o]=r});const n=[];Object.values(t).forEach(r=>{const o=r._duped;delete r._duped,n.push(r),o&&n.push(...o)}),e.tags=n,e.tags=e.tags.filter(r=>!(r.tag==="meta"&&(r.props.name||r.props.property)&&!r.props.content))}}},Ly={mode:"server",hooks:{"tags:resolve":function(e){const t={};e.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{t[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(t).length&&e.tags.push({tag:"script",innerHTML:JSON.stringify(t),props:{id:"unhead:payload",type:"application/json"}})}}},Oy=["script","link","bodyAttrs"];function ky(e){const t={},n={};return Object.entries(e.props).forEach(([r,o])=>{r.startsWith("on")&&typeof o=="function"?($f.includes(r)&&(t[r]=`this.dataset.${r} = true`),n[r]=o):t[r]=o}),{props:t,eventHandlers:n}}const $y=e=>({hooks:{"tags:resolve":function(t){for(const n of t.tags)if(Oy.includes(n.tag)){const{props:r,eventHandlers:o}=ky(n);n.props=r,Object.keys(o).length&&((n.props.src||n.props.href)&&(n.key=n.key||da(n.props.src||n.props.href)),n._eventHandlers=o)}},"dom:renderTag":function(t,n,r){if(!t.tag._eventHandlers)return;const o=t.tag.tag==="bodyAttrs"?n.defaultView:t.$el;Object.entries(t.tag._eventHandlers).forEach(([s,i])=>{const a=`${t.tag._d||t.tag._p}:${s}`,c=s.slice(2).toLowerCase(),l=`data-h-${c}`;if(r(t.id,a,()=>{}),t.$el.hasAttribute(l))return;t.$el.setAttribute(l,"");let u;const f=d=>{i(d),u==null||u.disconnect()};s in t.$el.dataset?f(new Event(s.replace("on",""))):$f.includes(s)&&typeof MutationObserver<"u"?(u=new MutationObserver(d=>{d.some(m=>m.attributeName===`data-${s}`)&&(f(new Event(s.replace("on",""))),u==null||u.disconnect())}),u.observe(t.$el,{attributes:!0})):o.addEventListener(c,f),r(t.id,a,()=>{u==null||u.disconnect(),o.removeEventListener(c,f),t.$el.removeAttribute(l)})})}}}),My=["link","style","script","noscript"],Ny={hooks:{"tag:normalise":({tag:e})=>{e.key&&My.includes(e.tag)&&(e.props["data-hid"]=e._h=da(e.key))}}},Dy={hooks:{"tags:resolve":e=>{const t=n=>{var r;return(r=e.tags.find(o=>o._d===n))==null?void 0:r._p};for(const{prefix:n,offset:r}of Sy)for(const o of e.tags.filter(s=>typeof s.tagPriority=="string"&&s.tagPriority.startsWith(n))){const s=t(o.tagPriority.replace(n,""));typeof s<"u"&&(o._p=s+r)}e.tags.sort((n,r)=>n._p-r._p).sort((n,r)=>Ro(n)-Ro(r))}}},Hy={meta:"content",link:"href",htmlAttrs:"lang"},jy=e=>({hooks:{"tags:resolve":t=>{var a;const{tags:n}=t,r=(a=n.find(c=>c.tag==="title"))==null?void 0:a.textContent,o=n.findIndex(c=>c.tag==="templateParams"),s=o!==-1?n[o].props:{},i=s.separator||"|";delete s.separator,s.pageTitle=ao(s.pageTitle||r||"",s,i);for(const c of n.filter(l=>l.processTemplateParams!==!1)){const l=Hy[c.tag];l&&typeof c.props[l]=="string"?c.props[l]=ao(c.props[l],s,i):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(u=>{typeof c[u]=="string"&&(c[u]=ao(c[u],s,i))})}e._templateParams=s,e._separator=i,t.tags=n.filter(c=>c.tag!=="templateParams")}}}),Fy={hooks:{"tags:resolve":e=>{const{tags:t}=e;let n=t.findIndex(o=>o.tag==="titleTemplate");const r=t.findIndex(o=>o.tag==="title");if(r!==-1&&n!==-1){const o=kc(t[n].textContent,t[r].textContent);o!==null?t[r].textContent=o||t[r].textContent:delete t[r]}else if(n!==-1){const o=kc(t[n].textContent);o!==null&&(t[n].textContent=o,t[n].tag="title",n=-1)}n!==-1&&delete t[n],e.tags=t.filter(Boolean)}}},Vy={hooks:{"tags:afterResolve":function(e){for(const t of e.tags)typeof t.innerHTML=="string"&&(t.innerHTML&&["application/ld+json","application/json"].includes(t.props.type)?t.innerHTML=t.innerHTML.replace(/{a.dirty=!0,t.callHook("entries:updated",a)};let o=0,s=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:e,hooks:t,headEntries(){return s},use(c){const l=typeof c=="function"?c(a):c;(!l.key||!i.some(u=>u.key===l.key))&&(i.push(l),Nc(l.mode,n)&&t.addHooks(l.hooks||{}))},push(c,l){l==null||delete l.head;const u={_i:o++,input:c,...l};return Nc(u.mode,n)&&(s.push(u),r()),{dispose(){s=s.filter(f=>f._i!==u._i),t.callHook("entries:updated",a),r()},patch(f){s=s.map(d=>(d._i===u._i&&(d.input=u.input=f),d)),r()}}},async resolveTags(){const c={tags:[],entries:[...s]};await t.callHook("entries:resolve",c);for(const l of c.entries){const u=l.resolvedInput||l.input;if(l.resolvedInput=await(l.transform?l.transform(u):u),l.resolvedInput)for(const f of await Ty(l)){const d={tag:f,entry:l,resolvedOptions:a.resolvedOptions};await t.callHook("tag:normalise",d),c.tags.push(d.tag)}}return await t.callHook("tags:beforeResolve",c),await t.callHook("tags:resolve",c),await t.callHook("tags:afterResolve",c),c.tags},ssr:n};return[Iy,Ly,$y,Ny,Dy,jy,Fy,Vy,...(e==null?void 0:e.plugins)||[]].forEach(c=>a.use(c)),a.hooks.callHook("init",a),a}function Uy(){return Nf}const Ky=mf.startsWith("3");function Wy(e){return typeof e=="function"?e():M(e)}function Io(e,t=""){if(e instanceof Promise)return e;const n=Wy(e);return!e||!n?n:Array.isArray(n)?n.map(r=>Io(r,t)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([r,o])=>r==="titleTemplate"||r.startsWith("on")?[r,M(o)]:[r,Io(o,r)])):n}const qy={hooks:{"entries:resolve":function(e){for(const t of e.entries)t.resolvedInput=Io(t.input)}}},Df="usehead";function Gy(e){return{install(n){Ky&&(n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(Df,e))}}.install}function Qy(e={}){e.domDelayFn=e.domDelayFn||(n=>wt(()=>setTimeout(()=>n(),0)));const t=By(e);return t.use(qy),t.install=Gy(t),t}const ai=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ci="__unhead_injection_handler__";function Jy(e){ai[ci]=e}function Yy(){if(ci in ai)return ai[ci]();const e=De(Df);return e||Uy()}function Ir(e,t={}){const n=t.head||Yy();if(n)return n.ssr?n.push(e,t):Zy(n,e,t)}function Zy(e,t,n={}){const r=le(!1),o=le({});Rp(()=>{o.value=r.value?{}:Io(t)});const s=e.push(o.value,n);return ge(o,a=>{s.patch(a)}),ht()&&(Jn(()=>{s.dispose()}),Vu(()=>{r.value=!0}),Fu(()=>{r.value=!1})),s}const eo=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Xy(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");const n={},o=(t||{}).decode||n_;let s=0;for(;sjf(t,e)}}function Hf(e){const t={};for(const n in e)t[n]=n==="dynamic"?new Map(Object.entries(e[n]).map(([r,o])=>[r,Hf(o)])):new Map(Object.entries(e[n]));return t}function s_(e){return o_(Hf(e))}function jf(e,t){const n=[];for(const[o,s]of Hc(t.wildcard))e.startsWith(o)&&n.push(s);for(const[o,s]of Hc(t.dynamic))if(e.startsWith(o+"/")){const i="/"+e.slice(o.length).split("/").splice(2).join("/");n.push(...jf(i,s))}const r=t.static.get(e);return r&&n.push(r),n.filter(Boolean)}function Hc(e){return[...e.entries()].sort((t,n)=>t[0].length-n[0].length)}function li(e,t,n=".",r){if(!As(t))return li(e,{},n,r);const o=Object.assign({},t);for(const s in e){if(s==="__proto__"||s==="constructor")continue;const i=e[s];i!=null&&(r&&r(o,s,i,n)||(Array.isArray(i)&&Array.isArray(o[s])?o[s]=[...i,...o[s]]:As(i)&&As(o[s])?o[s]=li(i,o[s],(n?`${n}.`:"")+s.toString(),r):o[s]=i))}return o}function As(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Ff(e){return(...t)=>t.reduce((n,r)=>li(n,r,"",e),{})}const jn=Ff(),i_=Ff((e,t,n)=>{if(e[t]!==void 0&&typeof n=="function")return e[t]=n(e[t]),!0});function a_(e,t){try{return t in e}catch{return!1}}var c_=Object.defineProperty,l_=(e,t,n)=>t in e?c_(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ln=(e,t,n)=>(l_(e,typeof t!="symbol"?t+"":t,n),n);class ui extends Error{constructor(t,n={}){super(t,n),ln(this,"statusCode",500),ln(this,"fatal",!1),ln(this,"unhandled",!1),ln(this,"statusMessage"),ln(this,"data"),ln(this,"cause"),n.cause&&!this.cause&&(this.cause=n.cause)}toJSON(){const t={message:this.message,statusCode:di(this.statusCode,500)};return this.statusMessage&&(t.statusMessage=Vf(this.statusMessage)),this.data!==void 0&&(t.data=this.data),t}}ln(ui,"__h3_error__",!0);function fi(e){if(typeof e=="string")return new ui(e);if(u_(e))return e;const t=new ui(e.message??e.statusMessage??"",{cause:e.cause||e});if(a_(e,"stack"))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=di(e.statusCode,t.statusCode):e.status&&(t.statusCode=di(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;Vf(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function u_(e){var t;return((t=e==null?void 0:e.constructor)==null?void 0:t.__h3_error__)===!0}const f_=/[^\u0009\u0020-\u007E]/g;function Vf(e=""){return e.replace(f_,"")}function di(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}const d_=Symbol("layout-meta"),Xo=Symbol("route"),Bf="__nuxt_error",es=()=>Yi(ye().payload,"error"),In=e=>{const t=ts(e);try{const n=ye(),r=es();n.hooks.callHook("app:error",t),r.value=r.value||t}catch{throw t}return t},h_=async(e={})=>{const t=ye(),n=es();t.callHook("app:error:cleared",e),e.redirect&&await lt().replace(e.redirect),n.value=null},p_=e=>!!e&&typeof e=="object"&&Bf in e,ts=e=>{const t=fi(e);return Object.defineProperty(t,Bf,{value:!0,configurable:!1,writable:!1}),t},lt=()=>{var e;return(e=ye())==null?void 0:e.$router},ct=()=>Ju()?De(Xo,ye()._route):ye()._route;const m_=(e,t,n={})=>{const r=ye(),o=n.global||typeof e!="string",s=typeof e!="string"?e:t;if(!s){console.warn("[nuxt] No route middleware passed to `addRouteMiddleware`.",e);return}o?r._middleware.global.push(s):r._middleware.named[e]=s},g_=()=>{try{if(ye()._processingMiddleware)return!0}catch{return!0}return!1},zf=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:Cf(e.path||"/",e.query||{})+(e.hash||"");if(t!=null&&t.open){{const{target:a="_blank",windowFeatures:c={}}=t.open,l=Object.entries(c).filter(([u,f])=>f!==void 0).map(([u,f])=>`${u.toLowerCase()}=${f}`).join(", ");open(n,a,l)}return Promise.resolve()}const r=(t==null?void 0:t.external)||kt(n,{acceptRelative:!0});if(r){if(!(t!=null&&t.external))throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");const a=jr(n).protocol;if(a&&gg(a))throw new Error(`Cannot navigate to a URL with '${a}' protocol.`)}const o=g_();if(!r&&o)return e;const s=lt(),i=ye();return r?(i._scope.stop(),t!=null&&t.replace?location.replace(n):location.href=n,o?i.isHydrating?new Promise(()=>{}):!1:Promise.resolve()):t!=null&&t.replace?s.replace(e):s.push(e)},y_={docus:{title:"vue-recaptcha",description:"Document for vue-recaptcha",url:"https://dansnow.github.io/vue-recaptcha",socials:{github:"DanSnow/vue-recaptcha"},github:{dir:"docs/content",owner:"DanSnow",repo:"vue-recaptcha",branch:"v3",edit:!0}}},__={docus:{title:"Docus",description:"The best place to start your documentation.",url:"https://docus.dev",image:"https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png",socials:{},layout:"default",header:{title:"",logo:!1,showLinkIcon:!1,fluid:!1,exclude:[]},aside:{level:0,collapsed:!1,exclude:[]},footer:{credits:{icon:"IconDocus",text:"Powered by Docus",href:"https://docus.dev"},textLinks:[],iconLinks:[],fluid:!1},github:{dir:void 0,branch:void 0,repo:void 0,owner:void 0,edit:!1}}},v_={prose:{copyButton:{iconCopy:"ph:copy",iconCopied:"ph:check"},headings:{icon:"ph:link"}}},b_={},w_={nuxt:{buildId:"3f717189-55ef-42ac-b745-955bd3939c4d"}},E_=i_(y_,__,v_,b_,w_);function ha(){const e=ye();return e._appConfig||(e._appConfig=nt(E_)),e._appConfig}const bP=!1,hi=!1,C_=!1,T_={componentName:"NuxtLink"},S_={deep:!0},P_="#__nuxt";let co,Uf;function x_(){var t;const e=(t=ha().nuxt)==null?void 0:t.buildId;return co=$fetch(ua(`builds/meta/${e}.json`)),co.then(n=>{Uf=s_(n.matcher)}),co}function ns(){return co||x_()}async function Kf(e){return await ns(),jn({},...Uf.matchAll(e).reverse())}function jc(e,t={}){const n=A_(e,t),r=ye(),o=r._payloadCache=r._payloadCache||{};return n in o||(o[n]=R_(e).then(s=>s?Wf(n).then(i=>i||(delete o[n],null)):(o[n]=null,null))),o[n]}const Fc="json";function A_(e,t={}){const n=new URL(e,"http://localhost");if(n.search)throw new Error("Payload URL cannot contain search params: "+e);if(n.host!=="localhost"||kt(n.pathname,{acceptRelative:!0}))throw new Error("Payload URL must not include hostname: "+e);const r=t.hash||(t.fresh?Date.now():"");return Tn(Je().app.baseURL,n.pathname,r?`_payload.${r}.${Fc}`:`_payload.${Fc}`)}async function Wf(e){const t=fetch(e).then(n=>n.text().then(qf));try{return await t}catch(n){console.warn("[nuxt] Cannot load payload ",e,n)}return null}async function R_(e=ct().path){if(e=tn(e),(await ns()).prerendered.includes(e))return!0;const n=await Kf(e);return!!n.prerender&&!n.redirect}let to=null;async function I_(){if(to)return to;const e=document.getElementById("__NUXT_DATA__");if(!e)return{};const t=qf(e.textContent||""),n=e.dataset.src?await Wf(e.dataset.src):void 0;return to={...t,...n,...window.__NUXT__},to}function qf(e){return py(e,ye()._payloadRevivers)}function L_(e,t){ye()._payloadRevivers[e]=t}const Vc={NuxtError:e=>ts(e),EmptyShallowRef:e=>It(e==="_"?void 0:e==="0n"?BigInt(0):Ar(e)),EmptyRef:e=>le(e==="_"?void 0:e==="0n"?BigInt(0):Ar(e)),ShallowRef:e=>It(e),ShallowReactive:e=>Qt(e),Ref:e=>le(e),Reactive:e=>nt(e)},O_=Ve({name:"nuxt:revive-payload:client",order:-30,async setup(e){let t,n;for(const r in Vc)L_(r,Vc[r]);Object.assign(e.payload,([t,n]=Rr(()=>e.runWithContext(I_)),t=await t,n(),t)),window.__NUXT__=e.payload}}),k_=[],$_=Ve({name:"nuxt:head",enforce:"pre",setup(e){const t=Qy({plugins:k_});Jy(()=>ye().vueApp._context.provides.usehead),e.vueApp.use(t);{let n=!0;const r=async()=>{n=!1,await Mf(t)};t.hooks.hook("dom:beforeRender",o=>{o.shouldRender=!n}),e.hooks.hook("page:start",()=>{n=!0}),e.hooks.hook("page:finish",()=>{e.isHydrating||r()}),e.hooks.hook("app:error",r),e.hooks.hook("app:suspense:resolve",r)}}});/*! * vue-router v4.2.5 * (c) 2023 Eduardo San Martin Morote * @license MIT - */const An=typeof window<"u";function M_(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const ve=Object.assign;function Rs(e,t){const n={};for(const r in t){const o=t[r];n[r]=dt(o)?o.map(e):e(o)}return n}const mr=()=>{},dt=Array.isArray,N_=/\/$/,D_=e=>e.replace(N_,"");function Is(e,t,n="/"){let r,o={},s="",i="";const a=t.indexOf("#");let c=t.indexOf("?");return a=0&&(c=-1),c>-1&&(r=t.slice(0,c),s=t.slice(c+1,a>-1?a:t.length),o=e(s)),a>-1&&(r=r||t.slice(0,a),i=t.slice(a,t.length)),r=V_(r??t,n),{fullPath:r+(s&&"?")+s+i,path:r,query:o,hash:i}}function H_(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Bc(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function j_(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&Un(t.matched[r],n.matched[o])&&Gf(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Un(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Gf(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!F_(e[n],t[n]))return!1;return!0}function F_(e,t){return dt(e)?zc(e,t):dt(t)?zc(t,e):e===t}function zc(e,t){return dt(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function V_(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];(o===".."||o===".")&&r.push("");let s=n.length-1,i,a;for(i=0;i1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(i-(i===r.length?1:0)).join("/")}var Lr;(function(e){e.pop="pop",e.push="push"})(Lr||(Lr={}));var gr;(function(e){e.back="back",e.forward="forward",e.unknown=""})(gr||(gr={}));function B_(e){if(!e)if(An){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),D_(e)}const z_=/^[^#]+#/;function U_(e,t){return e.replace(z_,"#")+t}function K_(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const rs=()=>({left:window.pageXOffset,top:window.pageYOffset});function W_(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=K_(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function Uc(e,t){return(history.state?history.state.position-t:-1)+e}const pi=new Map;function q_(e,t){pi.set(e,t)}function G_(e){const t=pi.get(e);return pi.delete(e),t}let Q_=()=>location.protocol+"//"+location.host;function Qf(e,t){const{pathname:n,search:r,hash:o}=t,s=e.indexOf("#");if(s>-1){let a=o.includes(e.slice(s))?e.slice(s).length:1,c=o.slice(a);return c[0]!=="/"&&(c="/"+c),Bc(c,"")}return Bc(n,e)+r+o}function J_(e,t,n,r){let o=[],s=[],i=null;const a=({state:d})=>{const h=Qf(e,location),m=n.value,p=t.value;let y=0;if(d){if(n.value=h,t.value=d,i&&i===m){i=null;return}y=p?d.position-p.position:0}else r(h);o.forEach(v=>{v(n.value,m,{delta:y,type:Lr.pop,direction:y?y>0?gr.forward:gr.back:gr.unknown})})};function c(){i=n.value}function l(d){o.push(d);const h=()=>{const m=o.indexOf(d);m>-1&&o.splice(m,1)};return s.push(h),h}function u(){const{history:d}=window;d.state&&d.replaceState(ve({},d.state,{scroll:rs()}),"")}function f(){for(const d of s)d();s=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:c,listen:l,destroy:f}}function Kc(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?rs():null}}function Y_(e){const{history:t,location:n}=window,r={value:Qf(e,n)},o={value:t.state};o.value||s(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function s(c,l,u){const f=e.indexOf("#"),d=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+c:Q_()+e+c;try{t[u?"replaceState":"pushState"](l,"",d),o.value=l}catch(h){console.error(h),n[u?"replace":"assign"](d)}}function i(c,l){const u=ve({},t.state,Kc(o.value.back,c,o.value.forward,!0),l,{position:o.value.position});s(c,u,!0),r.value=c}function a(c,l){const u=ve({},o.value,t.state,{forward:c,scroll:rs()});s(u.current,u,!0);const f=ve({},Kc(r.value,c,null),{position:u.position+1},l);s(c,f,!1),r.value=c}return{location:r,state:o,push:a,replace:i}}function Jf(e){e=B_(e);const t=Y_(e),n=J_(e,t.state,t.location,t.replace);function r(s,i=!0){i||n.pauseListeners(),history.go(s)}const o=ve({location:"",base:e,go:r,createHref:U_.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function Z_(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Jf(e)}function X_(e){return typeof e=="string"||e&&typeof e=="object"}function Yf(e){return typeof e=="string"||typeof e=="symbol"}const gt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},Zf=Symbol("");var Wc;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Wc||(Wc={}));function Kn(e,t){return ve(new Error,{type:e,[Zf]:!0},t)}function Et(e,t){return e instanceof Error&&Zf in e&&(t==null||!!(e.type&t))}const qc="[^/]+?",ev={sensitive:!1,strict:!1,start:!0,end:!0},tv=/[.+*?^${}()[\]/\\]/g;function nv(e,t){const n=ve({},ev,t),r=[];let o=n.start?"^":"";const s=[];for(const l of e){const u=l.length?[]:[90];n.strict&&!l.length&&(o+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function ov(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const sv={type:0,value:""},iv=/[a-zA-Z0-9_]/;function av(e){if(!e)return[[]];if(e==="/")return[[sv]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(h){throw new Error(`ERR (${n})/"${l}": ${h}`)}let n=0,r=n;const o=[];let s;function i(){s&&o.push(s),s=[]}let a=0,c,l="",u="";function f(){l&&(n===0?s.push({type:0,value:l}):n===1||n===2||n===3?(s.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:l,regexp:u,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),l="")}function d(){l+=c}for(;a{i(b)}:mr}function i(u){if(Yf(u)){const f=r.get(u);f&&(r.delete(u),n.splice(n.indexOf(f),1),f.children.forEach(i),f.alias.forEach(i))}else{const f=n.indexOf(u);f>-1&&(n.splice(f,1),u.record.name&&r.delete(u.record.name),u.children.forEach(i),u.alias.forEach(i))}}function a(){return n}function c(u){let f=0;for(;f=0&&(u.record.path!==n[f].record.path||!Xf(u,n[f]));)f++;n.splice(f,0,u),u.record.name&&!Jc(u)&&r.set(u.record.name,u)}function l(u,f){let d,h={},m,p;if("name"in u&&u.name){if(d=r.get(u.name),!d)throw Kn(1,{location:u});p=d.record.name,h=ve(Qc(f.params,d.keys.filter(b=>!b.optional).map(b=>b.name)),u.params&&Qc(u.params,d.keys.map(b=>b.name))),m=d.stringify(h)}else if("path"in u)m=u.path,d=n.find(b=>b.re.test(m)),d&&(h=d.parse(m),p=d.record.name);else{if(d=f.name?r.get(f.name):n.find(b=>b.re.test(f.path)),!d)throw Kn(1,{location:u,currentLocation:f});p=d.record.name,h=ve({},f.params,u.params),m=d.stringify(h)}const y=[];let v=d;for(;v;)y.unshift(v.record),v=v.parent;return{name:p,path:m,params:h,matched:y,meta:dv(y)}}return e.forEach(u=>s(u)),{addRoute:s,resolve:l,removeRoute:i,getRoutes:a,getRecordMatcher:o}}function Qc(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function uv(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:fv(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function fv(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function Jc(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function dv(e){return e.reduce((t,n)=>ve(t,n.meta),{})}function Yc(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Xf(e,t){return t.children.some(n=>n===e||Xf(e,n))}const ed=/#/g,hv=/&/g,pv=/\//g,mv=/=/g,gv=/\?/g,td=/\+/g,yv=/%5B/g,_v=/%5D/g,nd=/%5E/g,vv=/%60/g,rd=/%7B/g,bv=/%7C/g,od=/%7D/g,wv=/%20/g;function pa(e){return encodeURI(""+e).replace(bv,"|").replace(yv,"[").replace(_v,"]")}function Ev(e){return pa(e).replace(rd,"{").replace(od,"}").replace(nd,"^")}function mi(e){return pa(e).replace(td,"%2B").replace(wv,"+").replace(ed,"%23").replace(hv,"%26").replace(vv,"`").replace(rd,"{").replace(od,"}").replace(nd,"^")}function Cv(e){return mi(e).replace(mv,"%3D")}function Tv(e){return pa(e).replace(ed,"%23").replace(gv,"%3F")}function Sv(e){return e==null?"":Tv(e).replace(pv,"%2F")}function Io(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function Pv(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;os&&mi(s)):[r&&mi(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function xv(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=dt(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const Av=Symbol(""),Xc=Symbol(""),ma=Symbol(""),ga=Symbol(""),gi=Symbol("");function nr(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Wt(e,t,n,r,o){const s=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((i,a)=>{const c=f=>{f===!1?a(Kn(4,{from:n,to:t})):f instanceof Error?a(f):X_(f)?a(Kn(2,{from:t,to:f})):(s&&r.enterCallbacks[o]===s&&typeof f=="function"&&s.push(f),i())},l=e.call(r&&r.instances[o],t,n,c);let u=Promise.resolve(l);e.length<3&&(u=u.then(c)),u.catch(f=>a(f))})}function Ls(e,t,n,r){const o=[];for(const s of e)for(const i in s.components){let a=s.components[i];if(!(t!=="beforeRouteEnter"&&!s.instances[i]))if(Rv(a)){const l=(a.__vccOpts||a)[t];l&&o.push(Wt(l,n,r,s,i))}else{let c=a();o.push(()=>c.then(l=>{if(!l)return Promise.reject(new Error(`Couldn't resolve component "${i}" at "${s.path}"`));const u=M_(l)?l.default:l;s.components[i]=u;const d=(u.__vccOpts||u)[t];return d&&Wt(d,n,r,s,i)()}))}}return o}function Rv(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function el(e){const t=De(ma),n=De(ga),r=ee(()=>t.resolve(M(e.to))),o=ee(()=>{const{matched:c}=r.value,{length:l}=c,u=c[l-1],f=n.matched;if(!u||!f.length)return-1;const d=f.findIndex(Un.bind(null,u));if(d>-1)return d;const h=tl(c[l-2]);return l>1&&tl(u)===h&&f[f.length-1].path!==h?f.findIndex(Un.bind(null,c[l-2])):d}),s=ee(()=>o.value>-1&&kv(n.params,r.value.params)),i=ee(()=>o.value>-1&&o.value===n.matched.length-1&&Gf(n.params,r.value.params));function a(c={}){return Ov(c)?t[M(e.replace)?"replace":"push"](M(e.to)).catch(mr):Promise.resolve()}return{route:r,href:ee(()=>r.value.href),isActive:s,isExactActive:i,navigate:a}}const Iv=xe({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:el,setup(e,{slots:t}){const n=nt(el(e)),{options:r}=De(ma),o=ee(()=>({[nl(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[nl(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const s=t.default&&t.default(n);return e.custom?s:tt("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},s)}}}),Lv=Iv;function Ov(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function kv(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!dt(o)||o.length!==r.length||r.some((s,i)=>s!==o[i]))return!1}return!0}function tl(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const nl=(e,t,n)=>e??t??n,$v=xe({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=De(gi),o=ee(()=>e.route||r.value),s=De(Xc,0),i=ee(()=>{let l=M(s);const{matched:u}=o.value;let f;for(;(f=u[l])&&!f.components;)l++;return l}),a=ee(()=>o.value.matched[i.value]);Dn(Xc,ee(()=>i.value+1)),Dn(Av,a),Dn(gi,o);const c=le();return ge(()=>[c.value,a.value,e.name],([l,u,f],[d,h,m])=>{u&&(u.instances[f]=l,h&&h!==u&&l&&l===d&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),l&&u&&(!h||!Un(u,h)||!d)&&(u.enterCallbacks[f]||[]).forEach(p=>p(l))},{flush:"post"}),()=>{const l=o.value,u=e.name,f=a.value,d=f&&f.components[u];if(!d)return rl(n.default,{Component:d,route:l});const h=f.props[u],m=h?h===!0?l.params:typeof h=="function"?h(l):h:null,y=tt(d,ve({},m,t,{onVnodeUnmounted:v=>{v.component.isUnmounted&&(f.instances[u]=null)},ref:c}));return rl(n.default,{Component:y,route:l})||y}}});function rl(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const sd=$v;function Mv(e){const t=lv(e.routes,e),n=e.parseQuery||Pv,r=e.stringifyQuery||Zc,o=e.history,s=nr(),i=nr(),a=nr(),c=It(gt);let l=gt;An&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=Rs.bind(null,$=>""+$),f=Rs.bind(null,Sv),d=Rs.bind(null,Io);function h($,Z){let W,X;return Yf($)?(W=t.getRecordMatcher($),X=Z):X=$,t.addRoute(X,W)}function m($){const Z=t.getRecordMatcher($);Z&&t.removeRoute(Z)}function p(){return t.getRoutes().map($=>$.record)}function y($){return!!t.getRecordMatcher($)}function v($,Z){if(Z=ve({},Z||c.value),typeof $=="string"){const x=Is(n,$,Z.path),O=t.resolve({path:x.path},Z),D=o.createHref(x.fullPath);return ve(x,O,{params:d(O.params),hash:Io(x.hash),redirectedFrom:void 0,href:D})}let W;if("path"in $)W=ve({},$,{path:Is(n,$.path,Z.path).path});else{const x=ve({},$.params);for(const O in x)x[O]==null&&delete x[O];W=ve({},$,{params:f(x)}),Z.params=f(Z.params)}const X=t.resolve(W,Z),_e=$.hash||"";X.params=u(d(X.params));const w=H_(r,ve({},$,{hash:Ev(_e),path:X.path})),E=o.createHref(w);return ve({fullPath:w,hash:_e,query:r===Zc?xv($.query):$.query||{}},X,{redirectedFrom:void 0,href:E})}function b($){return typeof $=="string"?Is(n,$,c.value.path):ve({},$)}function g($,Z){if(l!==$)return Kn(8,{from:Z,to:$})}function _($){return I($)}function C($){return _(ve(b($),{replace:!0}))}function A($){const Z=$.matched[$.matched.length-1];if(Z&&Z.redirect){const{redirect:W}=Z;let X=typeof W=="function"?W($):W;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=b(X):{path:X},X.params={}),ve({query:$.query,hash:$.hash,params:"path"in X?{}:$.params},X)}}function I($,Z){const W=l=v($),X=c.value,_e=$.state,w=$.force,E=$.replace===!0,x=A(W);if(x)return I(ve(b(x),{state:typeof x=="object"?ve({},_e,x.state):_e,force:w,replace:E}),Z||W);const O=W;O.redirectedFrom=Z;let D;return!w&&j_(r,X,W)&&(D=Kn(16,{to:O,from:X}),Ie(X,X,!0,!1)),(D?Promise.resolve(D):R(O,X)).catch(j=>Et(j)?Et(j,2)?j:Re(j):U(j,O,X)).then(j=>{if(j){if(Et(j,2))return I(ve({replace:E},b(j.to),{state:typeof j.to=="object"?ve({},_e,j.to.state):_e,force:w}),Z||O)}else j=T(O,X,!0,E,_e);return S(O,X,j),j})}function L($,Z){const W=g($,Z);return W?Promise.reject(W):Promise.resolve()}function H($){const Z=rt.values().next().value;return Z&&typeof Z.runWithContext=="function"?Z.runWithContext($):$()}function R($,Z){let W;const[X,_e,w]=Nv($,Z);W=Ls(X.reverse(),"beforeRouteLeave",$,Z);for(const x of X)x.leaveGuards.forEach(O=>{W.push(Wt(O,$,Z))});const E=L.bind(null,$,Z);return W.push(E),Ae(W).then(()=>{W=[];for(const x of s.list())W.push(Wt(x,$,Z));return W.push(E),Ae(W)}).then(()=>{W=Ls(_e,"beforeRouteUpdate",$,Z);for(const x of _e)x.updateGuards.forEach(O=>{W.push(Wt(O,$,Z))});return W.push(E),Ae(W)}).then(()=>{W=[];for(const x of w)if(x.beforeEnter)if(dt(x.beforeEnter))for(const O of x.beforeEnter)W.push(Wt(O,$,Z));else W.push(Wt(x.beforeEnter,$,Z));return W.push(E),Ae(W)}).then(()=>($.matched.forEach(x=>x.enterCallbacks={}),W=Ls(w,"beforeRouteEnter",$,Z),W.push(E),Ae(W))).then(()=>{W=[];for(const x of i.list())W.push(Wt(x,$,Z));return W.push(E),Ae(W)}).catch(x=>Et(x,8)?x:Promise.reject(x))}function S($,Z,W){a.list().forEach(X=>H(()=>X($,Z,W)))}function T($,Z,W,X,_e){const w=g($,Z);if(w)return w;const E=Z===gt,x=An?history.state:{};W&&(X||E?o.replace($.fullPath,ve({scroll:E&&x&&x.scroll},_e)):o.push($.fullPath,_e)),c.value=$,Ie($,Z,W,E),Re()}let P;function B(){P||(P=o.listen(($,Z,W)=>{if(!pt.listening)return;const X=v($),_e=A(X);if(_e){I(ve(_e,{replace:!0}),X).catch(mr);return}l=X;const w=c.value;An&&q_(Uc(w.fullPath,W.delta),rs()),R(X,w).catch(E=>Et(E,12)?E:Et(E,2)?(I(E.to,X).then(x=>{Et(x,20)&&!W.delta&&W.type===Lr.pop&&o.go(-1,!1)}).catch(mr),Promise.reject()):(W.delta&&o.go(-W.delta,!1),U(E,X,w))).then(E=>{E=E||T(X,w,!1),E&&(W.delta&&!Et(E,8)?o.go(-W.delta,!1):W.type===Lr.pop&&Et(E,20)&&o.go(-1,!1)),S(X,w,E)}).catch(mr)}))}let J=nr(),V=nr(),Q;function U($,Z,W){Re($);const X=V.list();return X.length?X.forEach(_e=>_e($,Z,W)):console.error($),Promise.reject($)}function he(){return Q&&c.value!==gt?Promise.resolve():new Promise(($,Z)=>{J.add([$,Z])})}function Re($){return Q||(Q=!$,B(),J.list().forEach(([Z,W])=>$?W($):Z()),J.reset()),$}function Ie($,Z,W,X){const{scrollBehavior:_e}=e;if(!An||!_e)return Promise.resolve();const w=!W&&G_(Uc($.fullPath,0))||(X||!W)&&history.state&&history.state.scroll||null;return wt().then(()=>_e($,Z,w)).then(E=>E&&W_(E)).catch(E=>U(E,$,Z))}const we=$=>o.go($);let ze;const rt=new Set,pt={currentRoute:c,listening:!0,addRoute:h,removeRoute:m,hasRoute:y,getRoutes:p,resolve:v,options:e,push:_,replace:C,go:we,back:()=>we(-1),forward:()=>we(1),beforeEach:s.add,beforeResolve:i.add,afterEach:a.add,onError:V.add,isReady:he,install($){const Z=this;$.component("RouterLink",Lv),$.component("RouterView",sd),$.config.globalProperties.$router=Z,Object.defineProperty($.config.globalProperties,"$route",{enumerable:!0,get:()=>M(c)}),An&&!ze&&c.value===gt&&(ze=!0,_(o.location).catch(_e=>{}));const W={};for(const _e in gt)Object.defineProperty(W,_e,{get:()=>c.value[_e],enumerable:!0});$.provide(ma,Z),$.provide(ga,Qt(W)),$.provide(gi,c);const X=$.unmount;rt.add($),$.unmount=function(){rt.delete($),rt.size<1&&(l=gt,P&&P(),P=null,c.value=gt,ze=!1,Q=!1),X()}}};function Ae($){return $.reduce((Z,W)=>Z.then(()=>H(W)),Promise.resolve())}return pt}function Nv(e,t){const n=[],r=[],o=[],s=Math.max(t.matched.length,e.matched.length);for(let i=0;iUn(l,a))?r.push(a):n.push(a));const c=e.matched[i];c&&(t.matched.find(l=>Un(l,c))||o.push(c))}return[n,r,o]}function wP(){return De(ga)}const Dv=(e,t)=>t.path.replace(/(:\w+)\([^)]+\)/g,"$1").replace(/(:\w+)[?+*]/g,"$1").replace(/:\w+/g,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""}),yi=(e,t)=>{const n=e.route.matched.find(o=>{var s;return((s=o.components)==null?void 0:s.default)===e.Component.type}),r=t??(n==null?void 0:n.meta.key)??(n&&Dv(e.route,n));return typeof r=="function"?r(e.route):r},Hv=(e,t)=>({default:()=>e?tt(Np,e===!0?{}:e,t):t});function ya(e){return Array.isArray(e)?e:[e]}const ol=[{name:"slug",path:"/:slug(.*)*",meta:{},alias:[],redirect:void 0,component:()=>k(()=>import("./document-driven.ww2jjxcZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url).then(e=>e.default||e)}],jv={scrollBehavior(e,t,n){if(!history.state.stop){if(history.state.smooth)return{el:history.state.smooth,behavior:"smooth"};if(e.hash){const r=document.querySelector(e.hash);if(!r)return;const{marginTop:o}=getComputedStyle(r),s=parseInt(o);return{top:document.querySelector(e.hash).offsetTop-s,behavior:"smooth"}}return n||{top:0}}}},Fv=(e,t,n)=>(t=t===!0?{}:t,{default:()=>{var r;return t?tt(e,t,n):(r=n.default)==null?void 0:r.call(n)}});function sl(e){const t=(e==null?void 0:e.meta.key)??e.path.replace(/(:\w+)\([^)]+\)/g,"$1").replace(/(:\w+)[?+*]/g,"$1").replace(/:\w+/g,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""});return typeof t=="function"?t(e):t}function Vv(e,t){return e===t?!1:sl(e)!==sl(t)?!0:!e.matched.every((r,o)=>{var s,i;return r.components&&r.components.default===((i=(s=t.matched[o])==null?void 0:s.components)==null?void 0:i.default)})}const Bv={scrollBehavior(e,t,n){var l;const r=ye(),o=((l=lt().options)==null?void 0:l.scrollBehaviorType)??"auto";let s=n||void 0;const i=typeof e.meta.scrollToTop=="function"?e.meta.scrollToTop(e,t):e.meta.scrollToTop;if(!s&&t&&e&&i!==!1&&Vv(e,t)&&(s={left:0,top:0}),e.path===t.path){if(t.hash&&!e.hash)return{left:0,top:0};if(e.hash)return{el:e.hash,top:il(e.hash),behavior:o}}const a=u=>!!(u.meta.pageTransition??hi),c=a(t)&&a(e)?"page:transition:finish":"page:finish";return new Promise(u=>{r.hooks.hookOnce(c,async()=>{await wt(),e.hash&&(s={el:e.hash,top:il(e.hash),behavior:o}),u(s)})})}};function il(e){try{const t=document.querySelector(e);if(t)return parseFloat(getComputedStyle(t).scrollMarginTop)}catch{}return 0}const zv={hashMode:!1,scrollBehaviorType:"auto"},We={...zv,...Bv,...jv},Uv=async e=>{var c;let t,n;if(!((c=e.meta)!=null&&c.validate))return;const r=ye(),o=lt();if(([t,n]=Rr(()=>Promise.resolve(e.meta.validate(e))),t=await t,n(),t)===!0)return;const i=ts({statusCode:404,statusMessage:`Page Not Found: ${e.fullPath}`,data:{path:e.fullPath}}),a=o.beforeResolve(l=>{if(a(),l===e){const u=o.afterEach(async()=>{u(),await r.runWithContext(()=>In(i)),window.history.pushState({},"",e.fullPath)});return!1}})},Kv=async e=>{let t,n;const r=([t,n]=Rr(()=>Kf(e.path)),t=await t,n(),t);if(r.redirect)return r.redirect},Wv=[Uv,Kv],yr={};function qv(e,t,n){const{pathname:r,search:o,hash:s}=t,i=e.indexOf("#");if(i>-1){const l=s.includes(e.slice(i))?e.slice(i).length:1;let u=s.slice(l);return u[0]!=="/"&&(u="/"+u),Pc(u,"")}const a=Pc(r,e),c=!n||wg(a,n,{trailingSlash:!0})?a:n;return c+(c.includes("?")?"":o)+s}const Gv=Ve({name:"nuxt:router",enforce:"pre",async setup(e){var p,y;let t,n,r=Je().app.baseURL;We.hashMode&&!r.includes("#")&&(r+="#");const o=((p=We.history)==null?void 0:p.call(We,r))??(We.hashMode?Z_(r):Jf(r)),s=((y=We.routes)==null?void 0:y.call(We,ol))??ol;let i;const a=qv(r,window.location,e.payload.path),c=Mv({...We,scrollBehavior:(v,b,g)=>{var _;if(b===gt){i=g;return}return c.options.scrollBehavior=We.scrollBehavior,(_=We.scrollBehavior)==null?void 0:_.call(We,v,gt,i||g)},history:o,routes:s});e.vueApp.use(c);const l=It(c.currentRoute.value);c.afterEach((v,b)=>{l.value=b}),Object.defineProperty(e.vueApp.config.globalProperties,"previousRoute",{get:()=>l.value});const u=It(c.resolve(a)),f=()=>{u.value=c.currentRoute.value};e.hook("page:finish",f),c.afterEach((v,b)=>{var g,_,C,A;((_=(g=v.matched[0])==null?void 0:g.components)==null?void 0:_.default)===((A=(C=b.matched[0])==null?void 0:C.components)==null?void 0:A.default)&&f()});const d={};for(const v in u.value)Object.defineProperty(d,v,{get:()=>u.value[v]});e._route=Qt(d),e._middleware=e._middleware||{global:[],named:{}};const h=es();try{[t,n]=Rr(()=>c.isReady()),await t,n()}catch(v){[t,n]=Rr(()=>e.runWithContext(()=>In(v))),await t,n()}const m=e.payload.state._layout;return c.beforeEach(async(v,b)=>{var g;await e.callHook("page:loading:start"),v.meta=nt(v.meta),e.isHydrating&&m&&!yn(v.meta.layout)&&(v.meta.layout=m),e._processingMiddleware=!0;{const _=new Set([...Wv,...e._middleware.global]);for(const C of v.matched){const A=C.meta.middleware;if(A)for(const I of ya(A))_.add(I)}for(const C of _){const A=typeof C=="string"?e._middleware.named[C]||await((g=yr[C])==null?void 0:g.call(yr).then(L=>L.default||L)):C;if(!A)throw new Error(`Unknown route middleware: '${C}'.`);const I=await e.runWithContext(()=>A(v,b));if(!e.payload.serverRendered&&e.isHydrating&&(I===!1||I instanceof Error)){const L=I||fi({statusCode:404,statusMessage:`Page Not Found: ${a}`});return await e.runWithContext(()=>In(L)),!1}if(I!==!0&&(I||I===!1))return I}}}),c.onError(async()=>{delete e._processingMiddleware,await e.callHook("page:loading:end")}),c.afterEach(async(v,b,g)=>{delete e._processingMiddleware,!e.isHydrating&&h.value&&await e.runWithContext(h_),g&&await e.callHook("page:loading:end"),v.matched.length===0&&await e.runWithContext(()=>In(fi({statusCode:404,fatal:!1,statusMessage:`Page not found: ${v.fullPath}`,data:{path:v.fullPath}})))}),e.hooks.hookOnce("app:created",async()=>{try{await c.replace({...c.resolve(a),name:void 0,force:!0}),c.options.scrollBehavior=We.scrollBehavior}catch(v){await e.runWithContext(()=>In(v))}}),{provide:{router:c}}}}),_i=globalThis.requestIdleCallback||(e=>{const t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),Qv=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),os=e=>{const t=ye();t.isHydrating?t.hooks.hookOnce("app:suspense:resolve",()=>{_i(e)}):_i(e)},Jv=Ve({name:"nuxt:payload",setup(e){lt().beforeResolve(async(t,n)=>{if(t.path===n.path)return;const r=await jc(t.path);r&&Object.assign(e.static.data,r.data)}),os(()=>{var t;e.hooks.hook("link:prefetch",async n=>{Hr(n).protocol||await jc(n)}),((t=navigator.connection)==null?void 0:t.effectiveType)!=="slow-2g"&&setTimeout(ns,1e3)})}}),Yv=Ve(e=>{let t;async function n(){const r=await ns();t&&clearTimeout(t),t=setTimeout(n,1e3*60*60);const o=await $fetch(ua("builds/latest.json"));o.id!==r.id&&e.hooks.callHook("app:manifest:update",o)}os(()=>{t=setTimeout(n,1e3*60*60)})}),Zv=N(()=>k(()=>import("./ChallengeV2Demo.MOrg3CNM.js"),__vite__mapDeps([8,9,10,11,12]),import.meta.url).then(e=>e.default)),Xv=N(()=>k(()=>import("./ChallengeV3Demo.11DElVUe.js"),__vite__mapDeps([13,9,14,12]),import.meta.url).then(e=>e.default)),e0=N(()=>k(()=>import("./CheckboxDemo.wwPeTTHd.js"),__vite__mapDeps([15,16,17,11,12]),import.meta.url).then(e=>e.default)),t0=N(()=>k(()=>import("./IndexDemo.T7S8AmOE.js"),__vite__mapDeps([18,19,20]),import.meta.url).then(e=>e.default)),n0=N(()=>k(()=>import("./Mermaid.gkHdzvQG.js"),__vite__mapDeps([21,22,23]),import.meta.url).then(e=>e.default)),r0=N(()=>k(()=>import("./PrimaryButton.FCsViibh.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),o0=N(()=>k(()=>import("./ThemeButton.eXbhwXzf.js"),__vite__mapDeps([24,16]),import.meta.url).then(e=>e.default)),s0=N(()=>k(()=>import("./VeeValidateCheckbox.yTMsd4p8.js"),__vite__mapDeps([25,17,11,12,9,26,23]),import.meta.url).then(e=>e.default)),i0=N(()=>k(()=>import("./VeeValidateInvisible.ctyKsI9P.js"),__vite__mapDeps([27,9,10,11,12,26,23]),import.meta.url).then(e=>e.default)),a0=N(()=>k(()=>Promise.resolve().then(()=>zC),void 0,import.meta.url).then(e=>e.default)),c0=N(()=>k(()=>Promise.resolve().then(()=>lP),void 0,import.meta.url).then(e=>e.default)),l0=N(()=>k(()=>Promise.resolve().then(()=>tP),void 0,import.meta.url).then(e=>e.default)),u0=N(()=>k(()=>Promise.resolve().then(()=>CC),void 0,import.meta.url).then(e=>e.default)),f0=N(()=>k(()=>Promise.resolve().then(()=>MC),void 0,import.meta.url).then(e=>e.default)),d0=N(()=>k(()=>Promise.resolve().then(()=>HC),void 0,import.meta.url).then(e=>e.default)),h0=N(()=>k(()=>Promise.resolve().then(()=>hP),void 0,import.meta.url).then(e=>e.default)),p0=N(()=>k(()=>Promise.resolve().then(()=>oE),void 0,import.meta.url).then(e=>e.default)),m0=N(()=>k(()=>Promise.resolve().then(()=>FS),void 0,import.meta.url).then(e=>e.default)),g0=N(()=>k(()=>Promise.resolve().then(()=>hC),void 0,import.meta.url).then(e=>e.default)),y0=N(()=>k(()=>import("./DocumentDrivenNotFound.xfb8EcE2.js"),__vite__mapDeps([4,5,6,7]),import.meta.url).then(e=>e.default)),_0=N(()=>k(()=>import("./Ellipsis.flpaOiFy.js"),__vite__mapDeps([28,29]),import.meta.url).then(e=>e.default)),v0=N(()=>k(()=>Promise.resolve().then(()=>RC),void 0,import.meta.url).then(e=>e.default)),b0=N(()=>k(()=>Promise.resolve().then(()=>qS),void 0,import.meta.url).then(e=>e.default)),w0=N(()=>k(()=>import("./DocsAside.J9UiIJmE.js"),__vite__mapDeps([30,31]),import.meta.url).then(e=>e.default)),E0=N(()=>k(()=>Promise.resolve().then(()=>vC),void 0,import.meta.url).then(e=>e.default)),C0=N(()=>k(()=>import("./DocsPageBottom.GLnnhrEg.js"),__vite__mapDeps([32,33,34,35,36]),import.meta.url).then(e=>e.default)),T0=N(()=>k(()=>import("./DocsPageLayout.uxgc1_kz.js"),__vite__mapDeps([37,30,31,38,39,32,33,34,35,36,40,41,42,43,44,45,46]),import.meta.url).then(e=>e.default)),S0=N(()=>k(()=>import("./DocsPrevNext.4e5rRBAE.js"),__vite__mapDeps([40,41]),import.meta.url).then(e=>e.default)),P0=N(()=>k(()=>import("./DocsToc.PfHxU9at.js"),__vite__mapDeps([42,43,44,45]),import.meta.url).then(e=>e.default)),x0=N(()=>k(()=>import("./DocsTocLinks.9MUhhUzY.js"),__vite__mapDeps([43,44]),import.meta.url).then(e=>e.default)),A0=N(()=>k(()=>import("./EditOnLink.Am6BZK5o.js"),__vite__mapDeps([47,35]),import.meta.url).then(e=>e.default)),R0=N(()=>k(()=>import("./SourceLink.jxi0GOSi.js"),__vite__mapDeps([48,49,50]),import.meta.url).then(e=>e.default)),I0=N(()=>k(()=>import("./ProseA.SwYyso4K.js"),__vite__mapDeps([33,34]),import.meta.url).then(e=>e.default)),L0=N(()=>k(()=>import("./ProseBlockquote.TjuFzBWN.js"),__vite__mapDeps([51,52]),import.meta.url).then(e=>e.default)),O0=N(()=>k(()=>import("./ProseCode.I5U9uYQg.js"),__vite__mapDeps([53,54]),import.meta.url).then(e=>e.default)),k0=N(()=>k(()=>import("./ProseCodeInline.sc8XXj9h.js"),__vite__mapDeps([38,39]),import.meta.url).then(e=>e.default)),$0=N(()=>k(()=>import("./ProseEm.HSjpDM1n.js"),__vite__mapDeps([55,56]),import.meta.url).then(e=>e.default)),M0=N(()=>k(()=>import("./ProseH1.HLcc66Rk.js"),__vite__mapDeps([57,58]),import.meta.url).then(e=>e.default)),N0=N(()=>k(()=>import("./ProseH2.uTSq3jPw.js"),__vite__mapDeps([59,60]),import.meta.url).then(e=>e.default)),D0=N(()=>k(()=>import("./ProseH3.b9Z2n1jz.js"),__vite__mapDeps([61,62]),import.meta.url).then(e=>e.default)),H0=N(()=>k(()=>import("./ProseH4.vQBbqPgA.js"),__vite__mapDeps([63,64]),import.meta.url).then(e=>e.default)),j0=N(()=>k(()=>import("./ProseH5.1HvbYaY9.js"),__vite__mapDeps([65,66]),import.meta.url).then(e=>e.default)),F0=N(()=>k(()=>import("./ProseH6.GpC4Gjjm.js"),__vite__mapDeps([67,68]),import.meta.url).then(e=>e.default)),V0=N(()=>k(()=>import("./ProseHr.yKV-ZC33.js"),__vite__mapDeps([69,70]),import.meta.url).then(e=>e.default)),B0=N(()=>k(()=>import("./ProseImg.y-BO5YTd.js"),__vite__mapDeps([71,72]),import.meta.url).then(e=>e.default)),z0=N(()=>k(()=>import("./ProseLi.Vche_mwx.js"),__vite__mapDeps([73,74]),import.meta.url).then(e=>e.default)),U0=N(()=>k(()=>import("./ProseOl.4SPj-qY8.js"),__vite__mapDeps([75,76]),import.meta.url).then(e=>e.default)),K0=N(()=>k(()=>import("./ProseP.fE1xZC7w.js"),__vite__mapDeps([49,50]),import.meta.url).then(e=>e.default)),W0=N(()=>k(()=>import("./ProseStrong.tNX6QKcF.js"),__vite__mapDeps([77,78]),import.meta.url).then(e=>e.default)),q0=N(()=>k(()=>import("./ProseTable.ye_FMdG5.js"),__vite__mapDeps([79,80]),import.meta.url).then(e=>e.default)),G0=N(()=>k(()=>import("./ProseTbody.hZ4KuiN9.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Q0=N(()=>k(()=>import("./ProseTd.tYMvDBoc.js"),__vite__mapDeps([81,82]),import.meta.url).then(e=>e.default)),J0=N(()=>k(()=>import("./ProseTh.Gp788PyL.js"),__vite__mapDeps([83,84]),import.meta.url).then(e=>e.default)),Y0=N(()=>k(()=>import("./ProseThead.M6kiSErj.js"),__vite__mapDeps([85,86]),import.meta.url).then(e=>e.default)),Z0=N(()=>k(()=>import("./ProseTr.MziQFWhf.js"),__vite__mapDeps([87,88]),import.meta.url).then(e=>e.default)),X0=N(()=>k(()=>import("./ProseUl.GQ-g_JfG.js"),__vite__mapDeps([89,90]),import.meta.url).then(e=>e.default)),eb=N(()=>k(()=>Promise.resolve().then(()=>Xw),void 0,import.meta.url).then(e=>e.default)),tb=N(()=>k(()=>import("./Badge.SrXj_iIy.js"),__vite__mapDeps([91,92]),import.meta.url).then(e=>e.default)),nb=N(()=>k(()=>import("./ButtonLink.KvhTbcIS.js"),__vite__mapDeps([5,6]),import.meta.url).then(e=>e.default)),rb=N(()=>k(()=>import("./Callout.j9rHm2NJ.js"),__vite__mapDeps([93,94]),import.meta.url).then(e=>e.default)),ob=N(()=>k(()=>import("./CodeBlock.H5YRz7mE.js"),__vite__mapDeps([95,96]),import.meta.url).then(e=>e.default)),sb=N(()=>k(()=>import("./CodeGroup.kKhKszRR.js"),__vite__mapDeps([97,98,99,100]),import.meta.url).then(e=>e.default)),ib=N(()=>k(()=>Promise.resolve().then(()=>QS),void 0,import.meta.url).then(e=>e.default)),ab=N(()=>k(()=>import("./CopyButton.8nJ4x1BV.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),cb=N(()=>k(()=>import("./List.S2mTRTab.js"),__vite__mapDeps([101,102,103]),import.meta.url).then(e=>e.default)),lb=N(()=>k(()=>import("./NuxtImg.hV9pQHiq.js"),__vite__mapDeps([104,105]),import.meta.url).then(e=>e.default)),ub=N(()=>k(()=>import("./Props.nUFwBsHm.js"),__vite__mapDeps([106,83,84,87,88,85,86,38,39,81,82,107,79,80]),import.meta.url).then(e=>e.default)),fb=N(()=>k(()=>import("./Sandbox.kzho3R6E.js"),__vite__mapDeps([108,98,99,109]),import.meta.url).then(e=>e.default)),db=N(()=>k(()=>import("./TabsHeader.aoUmep7C.js"),__vite__mapDeps([98,99]),import.meta.url).then(e=>e.default)),hb=N(()=>k(()=>import("./Terminal.qDAZlX-Q.js"),__vite__mapDeps([110,111]),import.meta.url).then(e=>e.default)),pb=N(()=>k(()=>import("./VideoPlayer.nlPS_y-m.js"),__vite__mapDeps([112,105,113]),import.meta.url).then(e=>e.default)),mb=N(()=>k(()=>import("./IconCodeSandBox.iZ-QV741.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),gb=N(()=>k(()=>import("./IconDocus.a4OyoZiK.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),yb=N(()=>k(()=>import("./IconNuxt.GcwYnMUL.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),_b=N(()=>k(()=>import("./IconNuxtContent.GcwYnMUL.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),vb=N(()=>k(()=>import("./IconNuxtLabs.-k75stbx.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),bb=N(()=>k(()=>import("./IconNuxtStudio.idr9sHr4.js"),__vite__mapDeps([114,115]),import.meta.url).then(e=>e.default)),wb=N(()=>k(()=>import("./IconStackBlitz.S2MfOnZJ.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Eb=N(()=>k(()=>import("./IconVueTelescope.ETNU1tC6.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Cb=N(()=>k(()=>import("./BlockHero.poWu1pY1.js"),__vite__mapDeps([116,5,6,110,111,112,105,113,117]),import.meta.url).then(e=>e.default)),Tb=N(()=>k(()=>import("./Card.L9sNeYTi.js"),__vite__mapDeps([19,20]),import.meta.url).then(e=>e.default)),Sb=N(()=>k(()=>import("./CardGrid.0MuI_gyy.js"),__vite__mapDeps([118,119]),import.meta.url).then(e=>e.default)),Pb=N(()=>k(()=>import("./VoltaBoard.zjodTpgW.js"),__vite__mapDeps([120,121]),import.meta.url).then(e=>e.default)),xb=N(()=>k(()=>import("./ComponentPlayground.GvB8FG5c.js"),__vite__mapDeps([122,123,98,99,124,63,64,38,39,91,92,49,50,125,126,127,128,129]),import.meta.url).then(e=>e.default)),Ab=N(()=>k(()=>import("./ComponentPlaygroundData.x5WYuf11.js"),__vite__mapDeps([123,98,99,124,63,64,38,39,91,92,49,50,125,126,127,128]),import.meta.url).then(e=>e.default)),Rb=N(()=>k(()=>import("./ComponentPlaygroundProps.eS1hVNDa.js"),__vite__mapDeps([124,63,64,38,39,91,92,49,50,125]),import.meta.url).then(e=>e.default)),Ib=N(()=>k(()=>import("./ComponentPlaygroundSlots.8zrZ057N.js"),__vite__mapDeps([130,126]),import.meta.url).then(e=>e.default)),Lb=N(()=>k(()=>import("./ComponentPlaygroundTokens.sTl3HQTK.js"),__vite__mapDeps([131,127]),import.meta.url).then(e=>e.default)),Ob=N(()=>k(()=>import("./PreviewLayout.Z_o72kN9.js"),__vite__mapDeps([132,133]),import.meta.url).then(e=>e.default)),kb=N(()=>k(()=>import("./TokensPlayground.TsojWGG-.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),$b=N(()=>k(()=>import("./ContentDoc.XNEVUcvJ.js"),__vite__mapDeps([134,2,3,135]),import.meta.url).then(e=>e.default)),Mb=N(()=>k(()=>import("./ContentList.iLZmbKSm.js"),__vite__mapDeps([136,135]),import.meta.url).then(e=>e.default)),Nb=N(()=>k(()=>import("./ContentNavigation.fgixFeAY.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Db=N(()=>k(()=>import("./ContentQuery.poDPsyGM.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Hb=N(()=>k(()=>import("./ContentRenderer.hmnD5r_q.js"),__vite__mapDeps([2,3]),import.meta.url).then(e=>e.default)),jb=N(()=>k(()=>import("./ContentRendererMarkdown.WM_fk24R.js"),__vite__mapDeps([137,3]),import.meta.url).then(e=>e.default)),Fb=N(()=>k(()=>import("./ContentSlot.hAjWUk8S.js"),__vite__mapDeps([138,102]),import.meta.url).then(e=>e.default)),Vb=N(()=>k(()=>import("./DocumentDrivenEmpty.uAjfpuCj.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Bb=N(()=>k(()=>import("./Markdown.2dGs1H5r.js"),__vite__mapDeps([139,138,102]),import.meta.url).then(e=>e.default)),zb=N(()=>k(()=>import("./ProsePre.m8am0nAB.js"),__vite__mapDeps([140,53,54,141]),import.meta.url).then(e=>e.default)),Ub=N(()=>k(()=>import("./Checkbox.rmToST7V.js"),__vite__mapDeps([142,17,11,12]),import.meta.url).then(e=>e.default)),Kb=N(()=>k(()=>import("./ChallengeV2.kmo3670I.js"),__vite__mapDeps([143,10,11,12]),import.meta.url).then(e=>e.default)),Wb=N(()=>k(()=>import("./ChallengeV3.BHTEn9Jm.js"),__vite__mapDeps([144,14,12]),import.meta.url).then(e=>e.default)),qb=N(()=>k(()=>Promise.resolve().then(()=>fC),void 0,import.meta.url).then(e=>e.default)),Gb=N(()=>k(()=>import("./IconCSS.FVhw5sC8.js"),__vite__mapDeps([145,146]),import.meta.url).then(e=>e.default)),Qb=[["ChallengeV2Demo",Zv],["ChallengeV3Demo",Xv],["CheckboxDemo",e0],["IndexDemo",t0],["Mermaid",n0],["PrimaryButton",r0],["ThemeButton",o0],["VeeValidateCheckbox",s0],["VeeValidateInvisible",i0],["AppDocSearch",a0],["AppFooter",c0],["AppHeader",l0],["AppHeaderDialog",u0],["AppHeaderLogo",f0],["AppHeaderNavigation",d0],["AppLayout",h0],["AppLoadingBar",p0],["AppSearch",m0],["AppSocialIcons",g0],["DocumentDrivenNotFound",y0],["Ellipsis",_0],["Logo",v0],["ThemeSelect",b0],["DocsAside",w0],["DocsAsideTree",E0],["DocsPageBottom",C0],["DocsPageLayout",T0],["DocsPrevNext",S0],["DocsToc",P0],["DocsTocLinks",x0],["EditOnLink",A0],["SourceLink",R0],["ProseA",I0],["ProseBlockquote",L0],["ProseCode",O0],["ProseCodeInline",k0],["ProseEm",$0],["ProseH1",M0],["ProseH2",N0],["ProseH3",D0],["ProseH4",H0],["ProseH5",j0],["ProseH6",F0],["ProseHr",V0],["ProseImg",B0],["ProseLi",z0],["ProseOl",U0],["ProseP",K0],["ProseStrong",W0],["ProseTable",q0],["ProseTbody",G0],["ProseTd",Q0],["ProseTh",J0],["ProseThead",Y0],["ProseTr",Z0],["ProseUl",X0],["Alert",eb],["Badge",tb],["ButtonLink",nb],["Callout",rb],["CodeBlock",ob],["CodeGroup",sb],["Container",ib],["CopyButton",ab],["List",cb],["NuxtImg",lb],["Props",ub],["Sandbox",fb],["TabsHeader",db],["Terminal",hb],["VideoPlayer",pb],["IconCodeSandBox",mb],["IconDocus",gb],["IconNuxt",yb],["IconNuxtContent",_b],["IconNuxtLabs",vb],["IconNuxtStudio",bb],["IconStackBlitz",wb],["IconVueTelescope",Eb],["BlockHero",Cb],["Card",Tb],["CardGrid",Sb],["VoltaBoard",Pb],["ComponentPlayground",xb],["ComponentPlaygroundData",Ab],["ComponentPlaygroundProps",Rb],["ComponentPlaygroundSlots",Ib],["ComponentPlaygroundTokens",Lb],["PreviewLayout",Ob],["TokensPlayground",kb],["ContentDoc",$b],["ContentList",Mb],["ContentNavigation",Nb],["ContentQuery",Db],["ContentRenderer",Hb],["ContentRendererMarkdown",jb],["MDCSlot",Fb],["DocumentDrivenEmpty",Vb],["Markdown",Bb],["ProsePre",zb],["RecaptchaCheckbox",Ub],["RecaptchaChallengeV2",Kb],["RecaptchaChallengeV3",Wb],["Icon",qb],["IconCSS",Gb]],Jb=Ve({name:"nuxt:global-components",setup(e){for(const[t,n]of Qb)e.vueApp.component(t,n),e.vueApp.component("Lazy"+t,n)}}),cr={default:()=>k(()=>import("./default.-lrvMl34.js"),__vite__mapDeps([147,37,30,31,38,39,32,33,34,35,36,40,41,42,43,44,45,46,22,23]),import.meta.url).then(e=>e.default||e),page:()=>k(()=>import("./page.SQcsTZUr.js"),__vite__mapDeps([148,149]),import.meta.url).then(e=>e.default||e)},Yb=Ve({name:"nuxt:prefetch",setup(e){const t=lt();e.hooks.hook("app:mounted",()=>{t.beforeEach(async n=>{var o;const r=(o=n==null?void 0:n.meta)==null?void 0:o.layout;r&&typeof cr[r]=="function"&&await cr[r]()})}),e.hooks.hook("link:prefetch",n=>{if(kt(n))return;const r=t.resolve(n);if(!r)return;const o=r.meta.layout;let s=ya(r.meta.middleware);s=s.filter(i=>typeof i=="string");for(const i of s)typeof yr[i]=="function"&&yr[i]();o&&typeof cr[o]=="function"&&cr[o]()})}}),Zb=["ChallengeV2Demo","ChallengeV3Demo","CheckboxDemo","IndexDemo","Mermaid","PrimaryButton","ThemeButton","VeeValidateCheckbox","VeeValidateInvisible","AppDocSearch","AppFooter","AppHeader","AppHeaderDialog","AppHeaderLogo","AppHeaderNavigation","AppLayout","AppLoadingBar","AppSearch","AppSocialIcons","DocumentDrivenNotFound","Ellipsis","Logo","ThemeSelect","DocsAside","DocsAsideTree","DocsPageBottom","DocsPageLayout","DocsPrevNext","DocsToc","DocsTocLinks","EditOnLink","SourceLink","ProseA","ProseBlockquote","ProseCode","ProseCodeInline","ProseEm","ProseH1","ProseH2","ProseH3","ProseH4","ProseH5","ProseH6","ProseHr","ProseImg","ProseLi","ProseOl","ProseP","ProseStrong","ProseTable","ProseTbody","ProseTd","ProseTh","ProseThead","ProseTr","ProseUl","ProseCodeCopyButton","Alert","Badge","ButtonLink","Callout","CodeBlock","CodeGroup","Container","CopyButton","List","NuxtImg","Props","Sandbox","TabsHeader","Terminal","VideoPlayer","IconCodeSandBox","IconDocus","IconNuxt","IconNuxtContent","IconNuxtLabs","IconNuxtStudio","IconStackBlitz","IconVueTelescope","BlockHero","Card","CardGrid","VoltaBoard","ComponentPlayground","ComponentPlaygroundData","ComponentPlaygroundProps","ComponentPlaygroundSlots","ComponentPlaygroundTokens","PreviewLayout","TokensPlayground","UnoIcon","ContentPreviewMode","ContentDoc","ContentList","ContentNavigation","ContentQuery","ContentRenderer","ContentRendererMarkdown","MDCSlot","DocumentDrivenEmpty","Markdown","ProsePre","NuxtWelcome","NuxtLayout","NuxtErrorBoundary","ClientOnly","DevOnly","ServerPlaceholder","NuxtLink","NuxtLoadingIndicator","NuxtPicture","RecaptchaCheckbox","RecaptchaChallengeV2","RecaptchaChallengeV3","ColorScheme","MDC","MDCRenderer","MDCSlot","Icon","IconCSS","NuxtPage","NoScript","Link","Base","Title","Meta","Style","Head","Html","Body"],Xb=/\d/,e1=["-","_","/","."];function t1(e=""){if(!Xb.test(e))return e.toUpperCase()===e}function id(e,t){const n=t??e1,r=[];if(!e||typeof e!="string")return r;let o="",s,i;for(const a of e){const c=n.includes(a);if(c===!0){r.push(o),o="",s=void 0;continue}const l=t1(a);if(i===!1){if(s===!1&&l===!0){r.push(o),o=a,s=l;continue}if(s===!0&&l===!1&&o.length>1){const u=o.at(-1);r.push(o.slice(0,Math.max(0,o.length-1))),o=u+a,s=l;continue}}o+=a,s=l,i=c}return r.push(o),r}function n1(e){return e?e[0].toUpperCase()+e.slice(1):""}function r1(e,t){return e?(Array.isArray(e)?e:id(e)).map(n=>n1(t!=null&&t.normalize?n.toLowerCase():n)).join(""):""}function vi(e,t){return e?(Array.isArray(e)?e:id(e)).map(n=>n.toLowerCase()).join(t??"-"):""}function ad(e){return Array.isArray(e)?e:[e]}const o1=e=>e==="defer"||e===!1;function s1(...e){var h;const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);let[n,r,o={}]=e;if(typeof n!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof r!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");const s=ye(),i=()=>null,a=()=>s.isHydrating?s.payload.data[n]:s.static.data[n];o.server=o.server??!0,o.default=o.default??i,o.getCachedData=o.getCachedData??a,o.lazy=o.lazy??!1,o.immediate=o.immediate??!0,o.deep=o.deep??S_.deep,o.dedupe=o.dedupe??"cancel";const c=()=>![null,void 0].includes(o.getCachedData(n));if(!s._asyncData[n]||!o.immediate){(h=s.payload._errors)[n]??(h[n]=null);const m=o.deep?le:It;s._asyncData[n]={data:m(o.getCachedData(n)??o.default()),pending:le(!c()),error:Yi(s.payload._errors,n),status:le("idle")}}const l={...s._asyncData[n]};l.refresh=l.execute=(m={})=>{if(s._asyncDataPromises[n]){if(o1(m.dedupe??o.dedupe))return s._asyncDataPromises[n];s._asyncDataPromises[n].cancelled=!0}if((m._initial||s.isHydrating&&m._initial!==!1)&&c())return Promise.resolve(o.getCachedData(n));l.pending.value=!0,l.status.value="pending";const p=new Promise((y,v)=>{try{y(r(s))}catch(b){v(b)}}).then(y=>{if(p.cancelled)return s._asyncDataPromises[n];let v=y;o.transform&&(v=o.transform(y)),o.pick&&(v=a1(v,o.pick)),s.payload.data[n]=v,l.data.value=v,l.error.value=null,l.status.value="success"}).catch(y=>{if(p.cancelled)return s._asyncDataPromises[n];l.error.value=ts(y),l.data.value=M(o.default()),l.status.value="error"}).finally(()=>{p.cancelled||(l.pending.value=!1,delete s._asyncDataPromises[n])});return s._asyncDataPromises[n]=p,s._asyncDataPromises[n]};const u=()=>l.refresh({_initial:!0}),f=o.server!==!1&&s.payload.serverRendered;{const m=ht();if(m&&!m._nuxtOnBeforeMountCbs){m._nuxtOnBeforeMountCbs=[];const y=m._nuxtOnBeforeMountCbs;m&&(zu(()=>{y.forEach(v=>{v()}),y.splice(0,y.length)}),Tr(()=>y.splice(0,y.length)))}f&&s.isHydrating&&(l.error.value||c())?(l.pending.value=!1,l.status.value=l.error.value?"error":"success"):m&&(s.payload.serverRendered&&s.isHydrating||o.lazy)&&o.immediate?m._nuxtOnBeforeMountCbs.push(u):o.immediate&&u(),o.watch&&ge(o.watch,()=>l.refresh());const p=s.hook("app:data:refresh",async y=>{(!y||y.includes(n))&&await l.refresh()});m&&Tr(p)}const d=Promise.resolve(s._asyncDataPromises[n]).then(()=>l);return Object.assign(d,l),d}function i1(...e){const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);const[n,r,o]=e;return s1(n,r,{...o,lazy:!0},null)}async function EP(e){await new Promise(n=>os(n));const t=e?ad(e):void 0;await ye().hooks.callHookParallel("app:data:refresh",t)}function a1(e,t){const n={};for(const r of t)n[r]=e[r];return n}const c1="$s";function At(...e){const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);const[n,r]=e;if(!n||typeof n!="string")throw new TypeError("[nuxt] [useState] key must be a string: "+n);if(r!==void 0&&typeof r!="function")throw new Error("[nuxt] [useState] init must be a function: "+r);const o=c1+n,s=ye(),i=Yi(s.payload.state,o);if(i.value===void 0&&r){const a=r();if(ke(a))return s.payload.state[o]=a,a;i.value=a}return i}const al=Object.freeze({ignoreUnknown:!1,respectType:!1,respectFunctionNames:!1,respectFunctionProperties:!1,unorderedObjects:!0,unorderedArrays:!1,unorderedSets:!1,excludeKeys:void 0,excludeValues:void 0,replacer:void 0});function bi(e,t){t?t={...al,...t}:t=al;const n=cd(t);return n.dispatch(e),n.toString()}const l1=Object.freeze(["prototype","__proto__","constructor"]);function cd(e){let t="",n=new Map;const r=o=>{t+=o};return{toString(){return t},getContext(){return n},dispatch(o){return e.replacer&&(o=e.replacer(o)),this[o===null?"null":typeof o](o)},object(o){if(o&&typeof o.toJSON=="function")return this.object(o.toJSON());const s=Object.prototype.toString.call(o);let i="";const a=s.length;a<10?i="unknown:["+s+"]":i=s.slice(8,a-1),i=i.toLowerCase();let c=null;if((c=n.get(o))===void 0)n.set(o,n.size);else return this.dispatch("[CIRCULAR:"+c+"]");if(typeof Buffer<"u"&&Buffer.isBuffer&&Buffer.isBuffer(o))return r("buffer:"),r(o.toString("utf8"));if(i!=="object"&&i!=="function"&&i!=="asyncfunction")this[i]?this[i](o):e.ignoreUnknown||this.unkown(o,i);else{let l=Object.keys(o);e.unorderedObjects&&(l=l.sort());let u=[];e.respectType!==!1&&!cl(o)&&(u=l1),e.excludeKeys&&(l=l.filter(d=>!e.excludeKeys(d)),u=u.filter(d=>!e.excludeKeys(d))),r("object:"+(l.length+u.length)+":");const f=d=>{this.dispatch(d),r(":"),e.excludeValues||this.dispatch(o[d]),r(",")};for(const d of l)f(d);for(const d of u)f(d)}},array(o,s){if(s=s===void 0?e.unorderedArrays!==!1:s,r("array:"+o.length+":"),!s||o.length<=1){for(const c of o)this.dispatch(c);return}const i=new Map,a=o.map(c=>{const l=cd(e);l.dispatch(c);for(const[u,f]of l.getContext())i.set(u,f);return l.toString()});return n=i,a.sort(),this.array(a,!1)},date(o){return r("date:"+o.toJSON())},symbol(o){return r("symbol:"+o.toString())},unkown(o,s){if(r(s),!!o&&(r(":"),o&&typeof o.entries=="function"))return this.array(Array.from(o.entries()),!0)},error(o){return r("error:"+o.toString())},boolean(o){return r("bool:"+o)},string(o){r("string:"+o.length+":"),r(o)},function(o){r("fn:"),cl(o)?this.dispatch("[native]"):this.dispatch(o.toString()),e.respectFunctionNames!==!1&&this.dispatch("function-name:"+String(o.name)),e.respectFunctionProperties&&this.object(o)},number(o){return r("number:"+o)},xml(o){return r("xml:"+o.toString())},null(){return r("Null")},undefined(){return r("Undefined")},regexp(o){return r("regex:"+o.toString())},uint8array(o){return r("uint8array:"),this.dispatch(Array.prototype.slice.call(o))},uint8clampedarray(o){return r("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(o))},int8array(o){return r("int8array:"),this.dispatch(Array.prototype.slice.call(o))},uint16array(o){return r("uint16array:"),this.dispatch(Array.prototype.slice.call(o))},int16array(o){return r("int16array:"),this.dispatch(Array.prototype.slice.call(o))},uint32array(o){return r("uint32array:"),this.dispatch(Array.prototype.slice.call(o))},int32array(o){return r("int32array:"),this.dispatch(Array.prototype.slice.call(o))},float32array(o){return r("float32array:"),this.dispatch(Array.prototype.slice.call(o))},float64array(o){return r("float64array:"),this.dispatch(Array.prototype.slice.call(o))},arraybuffer(o){return r("arraybuffer:"),this.dispatch(new Uint8Array(o))},url(o){return r("url:"+o.toString())},map(o){r("map:");const s=[...o];return this.array(s,e.unorderedSets!==!1)},set(o){r("set:");const s=[...o];return this.array(s,e.unorderedSets!==!1)},file(o){return r("file:"),this.dispatch([o.name,o.size,o.type,o.lastModfied])},blob(){if(e.ignoreUnknown)return r("[blob]");throw new Error(`Hashing Blob objects is currently not supported + */const An=typeof window<"u";function M_(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const ve=Object.assign;function Rs(e,t){const n={};for(const r in t){const o=t[r];n[r]=dt(o)?o.map(e):e(o)}return n}const mr=()=>{},dt=Array.isArray,N_=/\/$/,D_=e=>e.replace(N_,"");function Is(e,t,n="/"){let r,o={},s="",i="";const a=t.indexOf("#");let c=t.indexOf("?");return a=0&&(c=-1),c>-1&&(r=t.slice(0,c),s=t.slice(c+1,a>-1?a:t.length),o=e(s)),a>-1&&(r=r||t.slice(0,a),i=t.slice(a,t.length)),r=V_(r??t,n),{fullPath:r+(s&&"?")+s+i,path:r,query:o,hash:i}}function H_(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Bc(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function j_(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&Un(t.matched[r],n.matched[o])&&Gf(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Un(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Gf(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!F_(e[n],t[n]))return!1;return!0}function F_(e,t){return dt(e)?zc(e,t):dt(t)?zc(t,e):e===t}function zc(e,t){return dt(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function V_(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];(o===".."||o===".")&&r.push("");let s=n.length-1,i,a;for(i=0;i1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(i-(i===r.length?1:0)).join("/")}var Lr;(function(e){e.pop="pop",e.push="push"})(Lr||(Lr={}));var gr;(function(e){e.back="back",e.forward="forward",e.unknown=""})(gr||(gr={}));function B_(e){if(!e)if(An){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),D_(e)}const z_=/^[^#]+#/;function U_(e,t){return e.replace(z_,"#")+t}function K_(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const rs=()=>({left:window.pageXOffset,top:window.pageYOffset});function W_(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=K_(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function Uc(e,t){return(history.state?history.state.position-t:-1)+e}const pi=new Map;function q_(e,t){pi.set(e,t)}function G_(e){const t=pi.get(e);return pi.delete(e),t}let Q_=()=>location.protocol+"//"+location.host;function Qf(e,t){const{pathname:n,search:r,hash:o}=t,s=e.indexOf("#");if(s>-1){let a=o.includes(e.slice(s))?e.slice(s).length:1,c=o.slice(a);return c[0]!=="/"&&(c="/"+c),Bc(c,"")}return Bc(n,e)+r+o}function J_(e,t,n,r){let o=[],s=[],i=null;const a=({state:d})=>{const h=Qf(e,location),m=n.value,p=t.value;let y=0;if(d){if(n.value=h,t.value=d,i&&i===m){i=null;return}y=p?d.position-p.position:0}else r(h);o.forEach(v=>{v(n.value,m,{delta:y,type:Lr.pop,direction:y?y>0?gr.forward:gr.back:gr.unknown})})};function c(){i=n.value}function l(d){o.push(d);const h=()=>{const m=o.indexOf(d);m>-1&&o.splice(m,1)};return s.push(h),h}function u(){const{history:d}=window;d.state&&d.replaceState(ve({},d.state,{scroll:rs()}),"")}function f(){for(const d of s)d();s=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:c,listen:l,destroy:f}}function Kc(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?rs():null}}function Y_(e){const{history:t,location:n}=window,r={value:Qf(e,n)},o={value:t.state};o.value||s(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function s(c,l,u){const f=e.indexOf("#"),d=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+c:Q_()+e+c;try{t[u?"replaceState":"pushState"](l,"",d),o.value=l}catch(h){console.error(h),n[u?"replace":"assign"](d)}}function i(c,l){const u=ve({},t.state,Kc(o.value.back,c,o.value.forward,!0),l,{position:o.value.position});s(c,u,!0),r.value=c}function a(c,l){const u=ve({},o.value,t.state,{forward:c,scroll:rs()});s(u.current,u,!0);const f=ve({},Kc(r.value,c,null),{position:u.position+1},l);s(c,f,!1),r.value=c}return{location:r,state:o,push:a,replace:i}}function Jf(e){e=B_(e);const t=Y_(e),n=J_(e,t.state,t.location,t.replace);function r(s,i=!0){i||n.pauseListeners(),history.go(s)}const o=ve({location:"",base:e,go:r,createHref:U_.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function Z_(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Jf(e)}function X_(e){return typeof e=="string"||e&&typeof e=="object"}function Yf(e){return typeof e=="string"||typeof e=="symbol"}const gt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},Zf=Symbol("");var Wc;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Wc||(Wc={}));function Kn(e,t){return ve(new Error,{type:e,[Zf]:!0},t)}function Et(e,t){return e instanceof Error&&Zf in e&&(t==null||!!(e.type&t))}const qc="[^/]+?",ev={sensitive:!1,strict:!1,start:!0,end:!0},tv=/[.+*?^${}()[\]/\\]/g;function nv(e,t){const n=ve({},ev,t),r=[];let o=n.start?"^":"";const s=[];for(const l of e){const u=l.length?[]:[90];n.strict&&!l.length&&(o+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function ov(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const sv={type:0,value:""},iv=/[a-zA-Z0-9_]/;function av(e){if(!e)return[[]];if(e==="/")return[[sv]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(h){throw new Error(`ERR (${n})/"${l}": ${h}`)}let n=0,r=n;const o=[];let s;function i(){s&&o.push(s),s=[]}let a=0,c,l="",u="";function f(){l&&(n===0?s.push({type:0,value:l}):n===1||n===2||n===3?(s.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:l,regexp:u,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),l="")}function d(){l+=c}for(;a{i(b)}:mr}function i(u){if(Yf(u)){const f=r.get(u);f&&(r.delete(u),n.splice(n.indexOf(f),1),f.children.forEach(i),f.alias.forEach(i))}else{const f=n.indexOf(u);f>-1&&(n.splice(f,1),u.record.name&&r.delete(u.record.name),u.children.forEach(i),u.alias.forEach(i))}}function a(){return n}function c(u){let f=0;for(;f=0&&(u.record.path!==n[f].record.path||!Xf(u,n[f]));)f++;n.splice(f,0,u),u.record.name&&!Jc(u)&&r.set(u.record.name,u)}function l(u,f){let d,h={},m,p;if("name"in u&&u.name){if(d=r.get(u.name),!d)throw Kn(1,{location:u});p=d.record.name,h=ve(Qc(f.params,d.keys.filter(b=>!b.optional).map(b=>b.name)),u.params&&Qc(u.params,d.keys.map(b=>b.name))),m=d.stringify(h)}else if("path"in u)m=u.path,d=n.find(b=>b.re.test(m)),d&&(h=d.parse(m),p=d.record.name);else{if(d=f.name?r.get(f.name):n.find(b=>b.re.test(f.path)),!d)throw Kn(1,{location:u,currentLocation:f});p=d.record.name,h=ve({},f.params,u.params),m=d.stringify(h)}const y=[];let v=d;for(;v;)y.unshift(v.record),v=v.parent;return{name:p,path:m,params:h,matched:y,meta:dv(y)}}return e.forEach(u=>s(u)),{addRoute:s,resolve:l,removeRoute:i,getRoutes:a,getRecordMatcher:o}}function Qc(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function uv(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:fv(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function fv(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function Jc(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function dv(e){return e.reduce((t,n)=>ve(t,n.meta),{})}function Yc(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Xf(e,t){return t.children.some(n=>n===e||Xf(e,n))}const ed=/#/g,hv=/&/g,pv=/\//g,mv=/=/g,gv=/\?/g,td=/\+/g,yv=/%5B/g,_v=/%5D/g,nd=/%5E/g,vv=/%60/g,rd=/%7B/g,bv=/%7C/g,od=/%7D/g,wv=/%20/g;function pa(e){return encodeURI(""+e).replace(bv,"|").replace(yv,"[").replace(_v,"]")}function Ev(e){return pa(e).replace(rd,"{").replace(od,"}").replace(nd,"^")}function mi(e){return pa(e).replace(td,"%2B").replace(wv,"+").replace(ed,"%23").replace(hv,"%26").replace(vv,"`").replace(rd,"{").replace(od,"}").replace(nd,"^")}function Cv(e){return mi(e).replace(mv,"%3D")}function Tv(e){return pa(e).replace(ed,"%23").replace(gv,"%3F")}function Sv(e){return e==null?"":Tv(e).replace(pv,"%2F")}function Lo(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function Pv(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;os&&mi(s)):[r&&mi(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function xv(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=dt(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const Av=Symbol(""),Xc=Symbol(""),ma=Symbol(""),ga=Symbol(""),gi=Symbol("");function nr(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Wt(e,t,n,r,o){const s=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((i,a)=>{const c=f=>{f===!1?a(Kn(4,{from:n,to:t})):f instanceof Error?a(f):X_(f)?a(Kn(2,{from:t,to:f})):(s&&r.enterCallbacks[o]===s&&typeof f=="function"&&s.push(f),i())},l=e.call(r&&r.instances[o],t,n,c);let u=Promise.resolve(l);e.length<3&&(u=u.then(c)),u.catch(f=>a(f))})}function Ls(e,t,n,r){const o=[];for(const s of e)for(const i in s.components){let a=s.components[i];if(!(t!=="beforeRouteEnter"&&!s.instances[i]))if(Rv(a)){const l=(a.__vccOpts||a)[t];l&&o.push(Wt(l,n,r,s,i))}else{let c=a();o.push(()=>c.then(l=>{if(!l)return Promise.reject(new Error(`Couldn't resolve component "${i}" at "${s.path}"`));const u=M_(l)?l.default:l;s.components[i]=u;const d=(u.__vccOpts||u)[t];return d&&Wt(d,n,r,s,i)()}))}}return o}function Rv(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function el(e){const t=De(ma),n=De(ga),r=ee(()=>t.resolve(M(e.to))),o=ee(()=>{const{matched:c}=r.value,{length:l}=c,u=c[l-1],f=n.matched;if(!u||!f.length)return-1;const d=f.findIndex(Un.bind(null,u));if(d>-1)return d;const h=tl(c[l-2]);return l>1&&tl(u)===h&&f[f.length-1].path!==h?f.findIndex(Un.bind(null,c[l-2])):d}),s=ee(()=>o.value>-1&&kv(n.params,r.value.params)),i=ee(()=>o.value>-1&&o.value===n.matched.length-1&&Gf(n.params,r.value.params));function a(c={}){return Ov(c)?t[M(e.replace)?"replace":"push"](M(e.to)).catch(mr):Promise.resolve()}return{route:r,href:ee(()=>r.value.href),isActive:s,isExactActive:i,navigate:a}}const Iv=xe({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:el,setup(e,{slots:t}){const n=nt(el(e)),{options:r}=De(ma),o=ee(()=>({[nl(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[nl(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const s=t.default&&t.default(n);return e.custom?s:tt("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},s)}}}),Lv=Iv;function Ov(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function kv(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!dt(o)||o.length!==r.length||r.some((s,i)=>s!==o[i]))return!1}return!0}function tl(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const nl=(e,t,n)=>e??t??n,$v=xe({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=De(gi),o=ee(()=>e.route||r.value),s=De(Xc,0),i=ee(()=>{let l=M(s);const{matched:u}=o.value;let f;for(;(f=u[l])&&!f.components;)l++;return l}),a=ee(()=>o.value.matched[i.value]);Dn(Xc,ee(()=>i.value+1)),Dn(Av,a),Dn(gi,o);const c=le();return ge(()=>[c.value,a.value,e.name],([l,u,f],[d,h,m])=>{u&&(u.instances[f]=l,h&&h!==u&&l&&l===d&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),l&&u&&(!h||!Un(u,h)||!d)&&(u.enterCallbacks[f]||[]).forEach(p=>p(l))},{flush:"post"}),()=>{const l=o.value,u=e.name,f=a.value,d=f&&f.components[u];if(!d)return rl(n.default,{Component:d,route:l});const h=f.props[u],m=h?h===!0?l.params:typeof h=="function"?h(l):h:null,y=tt(d,ve({},m,t,{onVnodeUnmounted:v=>{v.component.isUnmounted&&(f.instances[u]=null)},ref:c}));return rl(n.default,{Component:y,route:l})||y}}});function rl(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const sd=$v;function Mv(e){const t=lv(e.routes,e),n=e.parseQuery||Pv,r=e.stringifyQuery||Zc,o=e.history,s=nr(),i=nr(),a=nr(),c=It(gt);let l=gt;An&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=Rs.bind(null,$=>""+$),f=Rs.bind(null,Sv),d=Rs.bind(null,Lo);function h($,Z){let W,X;return Yf($)?(W=t.getRecordMatcher($),X=Z):X=$,t.addRoute(X,W)}function m($){const Z=t.getRecordMatcher($);Z&&t.removeRoute(Z)}function p(){return t.getRoutes().map($=>$.record)}function y($){return!!t.getRecordMatcher($)}function v($,Z){if(Z=ve({},Z||c.value),typeof $=="string"){const A=Is(n,$,Z.path),O=t.resolve({path:A.path},Z),D=o.createHref(A.fullPath);return ve(A,O,{params:d(O.params),hash:Lo(A.hash),redirectedFrom:void 0,href:D})}let W;if("path"in $)W=ve({},$,{path:Is(n,$.path,Z.path).path});else{const A=ve({},$.params);for(const O in A)A[O]==null&&delete A[O];W=ve({},$,{params:f(A)}),Z.params=f(Z.params)}const X=t.resolve(W,Z),_e=$.hash||"";X.params=u(d(X.params));const w=H_(r,ve({},$,{hash:Ev(_e),path:X.path})),E=o.createHref(w);return ve({fullPath:w,hash:_e,query:r===Zc?xv($.query):$.query||{}},X,{redirectedFrom:void 0,href:E})}function b($){return typeof $=="string"?Is(n,$,c.value.path):ve({},$)}function g($,Z){if(l!==$)return Kn(8,{from:Z,to:$})}function _($){return I($)}function P($){return _(ve(b($),{replace:!0}))}function S($){const Z=$.matched[$.matched.length-1];if(Z&&Z.redirect){const{redirect:W}=Z;let X=typeof W=="function"?W($):W;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=b(X):{path:X},X.params={}),ve({query:$.query,hash:$.hash,params:"path"in X?{}:$.params},X)}}function I($,Z){const W=l=v($),X=c.value,_e=$.state,w=$.force,E=$.replace===!0,A=S(W);if(A)return I(ve(b(A),{state:typeof A=="object"?ve({},_e,A.state):_e,force:w,replace:E}),Z||W);const O=W;O.redirectedFrom=Z;let D;return!w&&j_(r,X,W)&&(D=Kn(16,{to:O,from:X}),Ie(X,X,!0,!1)),(D?Promise.resolve(D):R(O,X)).catch(j=>Et(j)?Et(j,2)?j:Re(j):U(j,O,X)).then(j=>{if(j){if(Et(j,2))return I(ve({replace:E},b(j.to),{state:typeof j.to=="object"?ve({},_e,j.to.state):_e,force:w}),Z||O)}else j=C(O,X,!0,E,_e);return T(O,X,j),j})}function L($,Z){const W=g($,Z);return W?Promise.reject(W):Promise.resolve()}function H($){const Z=rt.values().next().value;return Z&&typeof Z.runWithContext=="function"?Z.runWithContext($):$()}function R($,Z){let W;const[X,_e,w]=Nv($,Z);W=Ls(X.reverse(),"beforeRouteLeave",$,Z);for(const A of X)A.leaveGuards.forEach(O=>{W.push(Wt(O,$,Z))});const E=L.bind(null,$,Z);return W.push(E),Ae(W).then(()=>{W=[];for(const A of s.list())W.push(Wt(A,$,Z));return W.push(E),Ae(W)}).then(()=>{W=Ls(_e,"beforeRouteUpdate",$,Z);for(const A of _e)A.updateGuards.forEach(O=>{W.push(Wt(O,$,Z))});return W.push(E),Ae(W)}).then(()=>{W=[];for(const A of w)if(A.beforeEnter)if(dt(A.beforeEnter))for(const O of A.beforeEnter)W.push(Wt(O,$,Z));else W.push(Wt(A.beforeEnter,$,Z));return W.push(E),Ae(W)}).then(()=>($.matched.forEach(A=>A.enterCallbacks={}),W=Ls(w,"beforeRouteEnter",$,Z),W.push(E),Ae(W))).then(()=>{W=[];for(const A of i.list())W.push(Wt(A,$,Z));return W.push(E),Ae(W)}).catch(A=>Et(A,8)?A:Promise.reject(A))}function T($,Z,W){a.list().forEach(X=>H(()=>X($,Z,W)))}function C($,Z,W,X,_e){const w=g($,Z);if(w)return w;const E=Z===gt,A=An?history.state:{};W&&(X||E?o.replace($.fullPath,ve({scroll:E&&A&&A.scroll},_e)):o.push($.fullPath,_e)),c.value=$,Ie($,Z,W,E),Re()}let x;function B(){x||(x=o.listen(($,Z,W)=>{if(!pt.listening)return;const X=v($),_e=S(X);if(_e){I(ve(_e,{replace:!0}),X).catch(mr);return}l=X;const w=c.value;An&&q_(Uc(w.fullPath,W.delta),rs()),R(X,w).catch(E=>Et(E,12)?E:Et(E,2)?(I(E.to,X).then(A=>{Et(A,20)&&!W.delta&&W.type===Lr.pop&&o.go(-1,!1)}).catch(mr),Promise.reject()):(W.delta&&o.go(-W.delta,!1),U(E,X,w))).then(E=>{E=E||C(X,w,!1),E&&(W.delta&&!Et(E,8)?o.go(-W.delta,!1):W.type===Lr.pop&&Et(E,20)&&o.go(-1,!1)),T(X,w,E)}).catch(mr)}))}let J=nr(),V=nr(),Q;function U($,Z,W){Re($);const X=V.list();return X.length?X.forEach(_e=>_e($,Z,W)):console.error($),Promise.reject($)}function he(){return Q&&c.value!==gt?Promise.resolve():new Promise(($,Z)=>{J.add([$,Z])})}function Re($){return Q||(Q=!$,B(),J.list().forEach(([Z,W])=>$?W($):Z()),J.reset()),$}function Ie($,Z,W,X){const{scrollBehavior:_e}=e;if(!An||!_e)return Promise.resolve();const w=!W&&G_(Uc($.fullPath,0))||(X||!W)&&history.state&&history.state.scroll||null;return wt().then(()=>_e($,Z,w)).then(E=>E&&W_(E)).catch(E=>U(E,$,Z))}const we=$=>o.go($);let ze;const rt=new Set,pt={currentRoute:c,listening:!0,addRoute:h,removeRoute:m,hasRoute:y,getRoutes:p,resolve:v,options:e,push:_,replace:P,go:we,back:()=>we(-1),forward:()=>we(1),beforeEach:s.add,beforeResolve:i.add,afterEach:a.add,onError:V.add,isReady:he,install($){const Z=this;$.component("RouterLink",Lv),$.component("RouterView",sd),$.config.globalProperties.$router=Z,Object.defineProperty($.config.globalProperties,"$route",{enumerable:!0,get:()=>M(c)}),An&&!ze&&c.value===gt&&(ze=!0,_(o.location).catch(_e=>{}));const W={};for(const _e in gt)Object.defineProperty(W,_e,{get:()=>c.value[_e],enumerable:!0});$.provide(ma,Z),$.provide(ga,Qt(W)),$.provide(gi,c);const X=$.unmount;rt.add($),$.unmount=function(){rt.delete($),rt.size<1&&(l=gt,x&&x(),x=null,c.value=gt,ze=!1,Q=!1),X()}}};function Ae($){return $.reduce((Z,W)=>Z.then(()=>H(W)),Promise.resolve())}return pt}function Nv(e,t){const n=[],r=[],o=[],s=Math.max(t.matched.length,e.matched.length);for(let i=0;iUn(l,a))?r.push(a):n.push(a));const c=e.matched[i];c&&(t.matched.find(l=>Un(l,c))||o.push(c))}return[n,r,o]}function wP(){return De(ga)}const Dv=(e,t)=>t.path.replace(/(:\w+)\([^)]+\)/g,"$1").replace(/(:\w+)[?+*]/g,"$1").replace(/:\w+/g,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""}),yi=(e,t)=>{const n=e.route.matched.find(o=>{var s;return((s=o.components)==null?void 0:s.default)===e.Component.type}),r=t??(n==null?void 0:n.meta.key)??(n&&Dv(e.route,n));return typeof r=="function"?r(e.route):r},Hv=(e,t)=>({default:()=>e?tt(Np,e===!0?{}:e,t):t});function ya(e){return Array.isArray(e)?e:[e]}const ol=[{name:"slug",path:"/:slug(.*)*",meta:{},alias:[],redirect:void 0,component:()=>k(()=>import("./document-driven.QQDA_Gni.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url).then(e=>e.default||e)}],jv={scrollBehavior(e,t,n){if(!history.state.stop){if(history.state.smooth)return{el:history.state.smooth,behavior:"smooth"};if(e.hash){const r=document.querySelector(e.hash);if(!r)return;const{marginTop:o}=getComputedStyle(r),s=parseInt(o);return{top:document.querySelector(e.hash).offsetTop-s,behavior:"smooth"}}return n||{top:0}}}},Fv=(e,t,n)=>(t=t===!0?{}:t,{default:()=>{var r;return t?tt(e,t,n):(r=n.default)==null?void 0:r.call(n)}});function sl(e){const t=(e==null?void 0:e.meta.key)??e.path.replace(/(:\w+)\([^)]+\)/g,"$1").replace(/(:\w+)[?+*]/g,"$1").replace(/:\w+/g,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""});return typeof t=="function"?t(e):t}function Vv(e,t){return e===t?!1:sl(e)!==sl(t)?!0:!e.matched.every((r,o)=>{var s,i;return r.components&&r.components.default===((i=(s=t.matched[o])==null?void 0:s.components)==null?void 0:i.default)})}const Bv={scrollBehavior(e,t,n){var l;const r=ye(),o=((l=lt().options)==null?void 0:l.scrollBehaviorType)??"auto";let s=n||void 0;const i=typeof e.meta.scrollToTop=="function"?e.meta.scrollToTop(e,t):e.meta.scrollToTop;if(!s&&t&&e&&i!==!1&&Vv(e,t)&&(s={left:0,top:0}),e.path===t.path){if(t.hash&&!e.hash)return{left:0,top:0};if(e.hash)return{el:e.hash,top:il(e.hash),behavior:o}}const a=u=>!!(u.meta.pageTransition??hi),c=a(t)&&a(e)?"page:transition:finish":"page:finish";return new Promise(u=>{r.hooks.hookOnce(c,async()=>{await wt(),e.hash&&(s={el:e.hash,top:il(e.hash),behavior:o}),u(s)})})}};function il(e){try{const t=document.querySelector(e);if(t)return parseFloat(getComputedStyle(t).scrollMarginTop)}catch{}return 0}const zv={hashMode:!1,scrollBehaviorType:"auto"},We={...zv,...Bv,...jv},Uv=async e=>{var c;let t,n;if(!((c=e.meta)!=null&&c.validate))return;const r=ye(),o=lt();if(([t,n]=Rr(()=>Promise.resolve(e.meta.validate(e))),t=await t,n(),t)===!0)return;const i=ts({statusCode:404,statusMessage:`Page Not Found: ${e.fullPath}`,data:{path:e.fullPath}}),a=o.beforeResolve(l=>{if(a(),l===e){const u=o.afterEach(async()=>{u(),await r.runWithContext(()=>In(i)),window.history.pushState({},"",e.fullPath)});return!1}})},Kv=async e=>{let t,n;const r=([t,n]=Rr(()=>Kf(e.path)),t=await t,n(),t);if(r.redirect)return r.redirect},Wv=[Uv,Kv],yr={};function qv(e,t,n){const{pathname:r,search:o,hash:s}=t,i=e.indexOf("#");if(i>-1){const l=s.includes(e.slice(i))?e.slice(i).length:1;let u=s.slice(l);return u[0]!=="/"&&(u="/"+u),Pc(u,"")}const a=Pc(r,e),c=!n||wg(a,n,{trailingSlash:!0})?a:n;return c+(c.includes("?")?"":o)+s}const Gv=Ve({name:"nuxt:router",enforce:"pre",async setup(e){var p,y;let t,n,r=Je().app.baseURL;We.hashMode&&!r.includes("#")&&(r+="#");const o=((p=We.history)==null?void 0:p.call(We,r))??(We.hashMode?Z_(r):Jf(r)),s=((y=We.routes)==null?void 0:y.call(We,ol))??ol;let i;const a=qv(r,window.location,e.payload.path),c=Mv({...We,scrollBehavior:(v,b,g)=>{var _;if(b===gt){i=g;return}return c.options.scrollBehavior=We.scrollBehavior,(_=We.scrollBehavior)==null?void 0:_.call(We,v,gt,i||g)},history:o,routes:s});e.vueApp.use(c);const l=It(c.currentRoute.value);c.afterEach((v,b)=>{l.value=b}),Object.defineProperty(e.vueApp.config.globalProperties,"previousRoute",{get:()=>l.value});const u=It(c.resolve(a)),f=()=>{u.value=c.currentRoute.value};e.hook("page:finish",f),c.afterEach((v,b)=>{var g,_,P,S;((_=(g=v.matched[0])==null?void 0:g.components)==null?void 0:_.default)===((S=(P=b.matched[0])==null?void 0:P.components)==null?void 0:S.default)&&f()});const d={};for(const v in u.value)Object.defineProperty(d,v,{get:()=>u.value[v]});e._route=Qt(d),e._middleware=e._middleware||{global:[],named:{}};const h=es();try{[t,n]=Rr(()=>c.isReady()),await t,n()}catch(v){[t,n]=Rr(()=>e.runWithContext(()=>In(v))),await t,n()}const m=e.payload.state._layout;return c.beforeEach(async(v,b)=>{var g;await e.callHook("page:loading:start"),v.meta=nt(v.meta),e.isHydrating&&m&&!yn(v.meta.layout)&&(v.meta.layout=m),e._processingMiddleware=!0;{const _=new Set([...Wv,...e._middleware.global]);for(const P of v.matched){const S=P.meta.middleware;if(S)for(const I of ya(S))_.add(I)}for(const P of _){const S=typeof P=="string"?e._middleware.named[P]||await((g=yr[P])==null?void 0:g.call(yr).then(L=>L.default||L)):P;if(!S)throw new Error(`Unknown route middleware: '${P}'.`);const I=await e.runWithContext(()=>S(v,b));if(!e.payload.serverRendered&&e.isHydrating&&(I===!1||I instanceof Error)){const L=I||fi({statusCode:404,statusMessage:`Page Not Found: ${a}`});return await e.runWithContext(()=>In(L)),!1}if(I!==!0&&(I||I===!1))return I}}}),c.onError(async()=>{delete e._processingMiddleware,await e.callHook("page:loading:end")}),c.afterEach(async(v,b,g)=>{delete e._processingMiddleware,!e.isHydrating&&h.value&&await e.runWithContext(h_),g&&await e.callHook("page:loading:end"),v.matched.length===0&&await e.runWithContext(()=>In(fi({statusCode:404,fatal:!1,statusMessage:`Page not found: ${v.fullPath}`,data:{path:v.fullPath}})))}),e.hooks.hookOnce("app:created",async()=>{try{await c.replace({...c.resolve(a),name:void 0,force:!0}),c.options.scrollBehavior=We.scrollBehavior}catch(v){await e.runWithContext(()=>In(v))}}),{provide:{router:c}}}}),_i=globalThis.requestIdleCallback||(e=>{const t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),Qv=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),os=e=>{const t=ye();t.isHydrating?t.hooks.hookOnce("app:suspense:resolve",()=>{_i(e)}):_i(e)},Jv=Ve({name:"nuxt:payload",setup(e){lt().beforeResolve(async(t,n)=>{if(t.path===n.path)return;const r=await jc(t.path);r&&Object.assign(e.static.data,r.data)}),os(()=>{var t;e.hooks.hook("link:prefetch",async n=>{jr(n).protocol||await jc(n)}),((t=navigator.connection)==null?void 0:t.effectiveType)!=="slow-2g"&&setTimeout(ns,1e3)})}}),Yv=Ve(e=>{let t;async function n(){const r=await ns();t&&clearTimeout(t),t=setTimeout(n,1e3*60*60);const o=await $fetch(ua("builds/latest.json"));o.id!==r.id&&e.hooks.callHook("app:manifest:update",o)}os(()=>{t=setTimeout(n,1e3*60*60)})}),Zv=N(()=>k(()=>import("./ChallengeV2Demo.gPrqhMW4.js"),__vite__mapDeps([8,9,10,11,12]),import.meta.url).then(e=>e.default)),Xv=N(()=>k(()=>import("./ChallengeV3Demo.nkgdJny3.js"),__vite__mapDeps([13,9,14,12]),import.meta.url).then(e=>e.default)),e0=N(()=>k(()=>import("./CheckboxDemo.iQsxuYOJ.js"),__vite__mapDeps([15,16,17,11,12]),import.meta.url).then(e=>e.default)),t0=N(()=>k(()=>import("./IndexDemo.D_WynMN1.js"),__vite__mapDeps([18,19,20]),import.meta.url).then(e=>e.default)),n0=N(()=>k(()=>import("./Mermaid.kZxDpbbn.js"),__vite__mapDeps([21,22,23]),import.meta.url).then(e=>e.default)),r0=N(()=>k(()=>import("./PrimaryButton.3_DqpC_5.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),o0=N(()=>k(()=>import("./ThemeButton.1RrkhdJY.js"),__vite__mapDeps([24,16]),import.meta.url).then(e=>e.default)),s0=N(()=>k(()=>import("./VeeValidateCheckbox.IqFUqOlv.js"),__vite__mapDeps([25,17,11,12,9,26,23]),import.meta.url).then(e=>e.default)),i0=N(()=>k(()=>import("./VeeValidateInvisible.5mThLuVF.js"),__vite__mapDeps([27,9,10,11,12,26,23]),import.meta.url).then(e=>e.default)),a0=N(()=>k(()=>Promise.resolve().then(()=>zC),void 0,import.meta.url).then(e=>e.default)),c0=N(()=>k(()=>Promise.resolve().then(()=>lP),void 0,import.meta.url).then(e=>e.default)),l0=N(()=>k(()=>Promise.resolve().then(()=>tP),void 0,import.meta.url).then(e=>e.default)),u0=N(()=>k(()=>Promise.resolve().then(()=>CC),void 0,import.meta.url).then(e=>e.default)),f0=N(()=>k(()=>Promise.resolve().then(()=>MC),void 0,import.meta.url).then(e=>e.default)),d0=N(()=>k(()=>Promise.resolve().then(()=>HC),void 0,import.meta.url).then(e=>e.default)),h0=N(()=>k(()=>Promise.resolve().then(()=>hP),void 0,import.meta.url).then(e=>e.default)),p0=N(()=>k(()=>Promise.resolve().then(()=>oE),void 0,import.meta.url).then(e=>e.default)),m0=N(()=>k(()=>Promise.resolve().then(()=>FS),void 0,import.meta.url).then(e=>e.default)),g0=N(()=>k(()=>Promise.resolve().then(()=>hC),void 0,import.meta.url).then(e=>e.default)),y0=N(()=>k(()=>import("./DocumentDrivenNotFound.EW4TuDtB.js"),__vite__mapDeps([4,5,6,7]),import.meta.url).then(e=>e.default)),_0=N(()=>k(()=>import("./Ellipsis.MWZY-yMY.js"),__vite__mapDeps([28,29]),import.meta.url).then(e=>e.default)),v0=N(()=>k(()=>Promise.resolve().then(()=>RC),void 0,import.meta.url).then(e=>e.default)),b0=N(()=>k(()=>Promise.resolve().then(()=>qS),void 0,import.meta.url).then(e=>e.default)),w0=N(()=>k(()=>import("./DocsAside.J1JT7aj-.js"),__vite__mapDeps([30,31]),import.meta.url).then(e=>e.default)),E0=N(()=>k(()=>Promise.resolve().then(()=>vC),void 0,import.meta.url).then(e=>e.default)),C0=N(()=>k(()=>import("./DocsPageBottom.xF3M7Xuf.js"),__vite__mapDeps([32,33,34,35,36]),import.meta.url).then(e=>e.default)),T0=N(()=>k(()=>import("./DocsPageLayout.soTR2NFE.js"),__vite__mapDeps([37,30,31,38,39,32,33,34,35,36,40,41,42,43,44,45,46]),import.meta.url).then(e=>e.default)),S0=N(()=>k(()=>import("./DocsPrevNext.NyR6m4jP.js"),__vite__mapDeps([40,41]),import.meta.url).then(e=>e.default)),P0=N(()=>k(()=>import("./DocsToc.ahcS4zzc.js"),__vite__mapDeps([42,43,44,45]),import.meta.url).then(e=>e.default)),x0=N(()=>k(()=>import("./DocsTocLinks.n_8BwfoV.js"),__vite__mapDeps([43,44]),import.meta.url).then(e=>e.default)),A0=N(()=>k(()=>import("./EditOnLink.c1MbaT8y.js"),__vite__mapDeps([47,35]),import.meta.url).then(e=>e.default)),R0=N(()=>k(()=>import("./SourceLink.vIxZlUnx.js"),__vite__mapDeps([48,49,50]),import.meta.url).then(e=>e.default)),I0=N(()=>k(()=>import("./ProseA.OLhUCis1.js"),__vite__mapDeps([33,34]),import.meta.url).then(e=>e.default)),L0=N(()=>k(()=>import("./ProseBlockquote.nZcc5AiU.js"),__vite__mapDeps([51,52]),import.meta.url).then(e=>e.default)),O0=N(()=>k(()=>import("./ProseCode.QKV6Fi3g.js"),__vite__mapDeps([53,54]),import.meta.url).then(e=>e.default)),k0=N(()=>k(()=>import("./ProseCodeInline.nA1Kl2E3.js"),__vite__mapDeps([38,39]),import.meta.url).then(e=>e.default)),$0=N(()=>k(()=>import("./ProseEm.XnUqj1mE.js"),__vite__mapDeps([55,56]),import.meta.url).then(e=>e.default)),M0=N(()=>k(()=>import("./ProseH1.NoOkX9zJ.js"),__vite__mapDeps([57,58]),import.meta.url).then(e=>e.default)),N0=N(()=>k(()=>import("./ProseH2.tWfneQ31.js"),__vite__mapDeps([59,60]),import.meta.url).then(e=>e.default)),D0=N(()=>k(()=>import("./ProseH3.OGmXOyf8.js"),__vite__mapDeps([61,62]),import.meta.url).then(e=>e.default)),H0=N(()=>k(()=>import("./ProseH4.-m8eDGJi.js"),__vite__mapDeps([63,64]),import.meta.url).then(e=>e.default)),j0=N(()=>k(()=>import("./ProseH5.V4b62H9u.js"),__vite__mapDeps([65,66]),import.meta.url).then(e=>e.default)),F0=N(()=>k(()=>import("./ProseH6.VstdmaUv.js"),__vite__mapDeps([67,68]),import.meta.url).then(e=>e.default)),V0=N(()=>k(()=>import("./ProseHr.H5PQSAnt.js"),__vite__mapDeps([69,70]),import.meta.url).then(e=>e.default)),B0=N(()=>k(()=>import("./ProseImg.FhApv7Iv.js"),__vite__mapDeps([71,72]),import.meta.url).then(e=>e.default)),z0=N(()=>k(()=>import("./ProseLi.OVgRJVLF.js"),__vite__mapDeps([73,74]),import.meta.url).then(e=>e.default)),U0=N(()=>k(()=>import("./ProseOl.vw7kQ1Lt.js"),__vite__mapDeps([75,76]),import.meta.url).then(e=>e.default)),K0=N(()=>k(()=>import("./ProseP.nG8WPuIi.js"),__vite__mapDeps([49,50]),import.meta.url).then(e=>e.default)),W0=N(()=>k(()=>import("./ProseStrong.0e10zWIZ.js"),__vite__mapDeps([77,78]),import.meta.url).then(e=>e.default)),q0=N(()=>k(()=>import("./ProseTable.vzNeH6Ay.js"),__vite__mapDeps([79,80]),import.meta.url).then(e=>e.default)),G0=N(()=>k(()=>import("./ProseTbody.NjmcGONp.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Q0=N(()=>k(()=>import("./ProseTd.5432dWNq.js"),__vite__mapDeps([81,82]),import.meta.url).then(e=>e.default)),J0=N(()=>k(()=>import("./ProseTh.Ip6941yd.js"),__vite__mapDeps([83,84]),import.meta.url).then(e=>e.default)),Y0=N(()=>k(()=>import("./ProseThead.EEzaUJfp.js"),__vite__mapDeps([85,86]),import.meta.url).then(e=>e.default)),Z0=N(()=>k(()=>import("./ProseTr._3o2EPc3.js"),__vite__mapDeps([87,88]),import.meta.url).then(e=>e.default)),X0=N(()=>k(()=>import("./ProseUl.XjDMb_cD.js"),__vite__mapDeps([89,90]),import.meta.url).then(e=>e.default)),eb=N(()=>k(()=>Promise.resolve().then(()=>Xw),void 0,import.meta.url).then(e=>e.default)),tb=N(()=>k(()=>import("./Badge.SouunExa.js"),__vite__mapDeps([91,92]),import.meta.url).then(e=>e.default)),nb=N(()=>k(()=>import("./ButtonLink.zZVq8ThH.js"),__vite__mapDeps([5,6]),import.meta.url).then(e=>e.default)),rb=N(()=>k(()=>import("./Callout.hSu6Wdkf.js"),__vite__mapDeps([93,94]),import.meta.url).then(e=>e.default)),ob=N(()=>k(()=>import("./CodeBlock.Lugc7cba.js"),__vite__mapDeps([95,96]),import.meta.url).then(e=>e.default)),sb=N(()=>k(()=>import("./CodeGroup.21lmZNJJ.js"),__vite__mapDeps([97,98,99,100]),import.meta.url).then(e=>e.default)),ib=N(()=>k(()=>Promise.resolve().then(()=>QS),void 0,import.meta.url).then(e=>e.default)),ab=N(()=>k(()=>import("./CopyButton.HioSLVCt.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),cb=N(()=>k(()=>import("./List.X_fwvQfv.js"),__vite__mapDeps([101,102,103]),import.meta.url).then(e=>e.default)),lb=N(()=>k(()=>import("./NuxtImg.U2vgguSn.js"),__vite__mapDeps([104,105]),import.meta.url).then(e=>e.default)),ub=N(()=>k(()=>import("./Props.Yj9DgxsP.js"),__vite__mapDeps([106,83,84,87,88,85,86,38,39,81,82,107,79,80]),import.meta.url).then(e=>e.default)),fb=N(()=>k(()=>import("./Sandbox.qG8woWRb.js"),__vite__mapDeps([108,98,99,109]),import.meta.url).then(e=>e.default)),db=N(()=>k(()=>import("./TabsHeader.p2gr41k7.js"),__vite__mapDeps([98,99]),import.meta.url).then(e=>e.default)),hb=N(()=>k(()=>import("./Terminal.ioBbO3yw.js"),__vite__mapDeps([110,111]),import.meta.url).then(e=>e.default)),pb=N(()=>k(()=>import("./VideoPlayer.f-8bQb4l.js"),__vite__mapDeps([112,105,113]),import.meta.url).then(e=>e.default)),mb=N(()=>k(()=>import("./IconCodeSandBox.JjBFbY0D.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),gb=N(()=>k(()=>import("./IconDocus.ZKicOodD.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),yb=N(()=>k(()=>import("./IconNuxt.zSFBKkBR.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),_b=N(()=>k(()=>import("./IconNuxtContent.zSFBKkBR.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),vb=N(()=>k(()=>import("./IconNuxtLabs.TbnZSbTI.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),bb=N(()=>k(()=>import("./IconNuxtStudio.US0XkEUX.js"),__vite__mapDeps([114,115]),import.meta.url).then(e=>e.default)),wb=N(()=>k(()=>import("./IconStackBlitz.Ti8Oiwdd.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Eb=N(()=>k(()=>import("./IconVueTelescope.hijrETea.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Cb=N(()=>k(()=>import("./BlockHero.iMe1gqpW.js"),__vite__mapDeps([116,5,6,110,111,112,105,113,117]),import.meta.url).then(e=>e.default)),Tb=N(()=>k(()=>import("./Card.BzG3yGUC.js"),__vite__mapDeps([19,20]),import.meta.url).then(e=>e.default)),Sb=N(()=>k(()=>import("./CardGrid.rxd_hY7g.js"),__vite__mapDeps([118,119]),import.meta.url).then(e=>e.default)),Pb=N(()=>k(()=>import("./VoltaBoard.eNwT8-SJ.js"),__vite__mapDeps([120,121]),import.meta.url).then(e=>e.default)),xb=N(()=>k(()=>import("./ComponentPlayground.G5gJQDAu.js"),__vite__mapDeps([122,123,98,99,124,63,64,38,39,91,92,49,50,125,126,127,128,129]),import.meta.url).then(e=>e.default)),Ab=N(()=>k(()=>import("./ComponentPlaygroundData.P9Det-rH.js"),__vite__mapDeps([123,98,99,124,63,64,38,39,91,92,49,50,125,126,127,128]),import.meta.url).then(e=>e.default)),Rb=N(()=>k(()=>import("./ComponentPlaygroundProps.eqJy9Iq7.js"),__vite__mapDeps([124,63,64,38,39,91,92,49,50,125]),import.meta.url).then(e=>e.default)),Ib=N(()=>k(()=>import("./ComponentPlaygroundSlots.r9v7_SJ5.js"),__vite__mapDeps([130,126]),import.meta.url).then(e=>e.default)),Lb=N(()=>k(()=>import("./ComponentPlaygroundTokens.hYqZwbxt.js"),__vite__mapDeps([131,127]),import.meta.url).then(e=>e.default)),Ob=N(()=>k(()=>import("./PreviewLayout.nAhreDSz.js"),__vite__mapDeps([132,133]),import.meta.url).then(e=>e.default)),kb=N(()=>k(()=>import("./TokensPlayground.haxm6ye7.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),$b=N(()=>k(()=>import("./ContentDoc.VH_Hky9p.js"),__vite__mapDeps([134,2,3,135]),import.meta.url).then(e=>e.default)),Mb=N(()=>k(()=>import("./ContentList.YCunzPlS.js"),__vite__mapDeps([136,135]),import.meta.url).then(e=>e.default)),Nb=N(()=>k(()=>import("./ContentNavigation.9YnVdsDD.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Db=N(()=>k(()=>import("./ContentQuery.QtvwtBx0.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Hb=N(()=>k(()=>import("./ContentRenderer.M--L_q55.js"),__vite__mapDeps([2,3]),import.meta.url).then(e=>e.default)),jb=N(()=>k(()=>import("./ContentRendererMarkdown.SeLRvQWx.js"),__vite__mapDeps([137,3]),import.meta.url).then(e=>e.default)),Fb=N(()=>k(()=>import("./ContentSlot.KD4hNNCp.js"),__vite__mapDeps([138,102]),import.meta.url).then(e=>e.default)),Vb=N(()=>k(()=>import("./DocumentDrivenEmpty.-WgfKx9h.js"),__vite__mapDeps([]),import.meta.url).then(e=>e.default)),Bb=N(()=>k(()=>import("./Markdown.yuQLeeRs.js"),__vite__mapDeps([139,138,102]),import.meta.url).then(e=>e.default)),zb=N(()=>k(()=>import("./ProsePre.vvEkmDus.js"),__vite__mapDeps([140,53,54,141]),import.meta.url).then(e=>e.default)),Ub=N(()=>k(()=>import("./Checkbox.MRQtbkdP.js"),__vite__mapDeps([142,17,11,12]),import.meta.url).then(e=>e.default)),Kb=N(()=>k(()=>import("./ChallengeV2.x2DxOGgI.js"),__vite__mapDeps([143,10,11,12]),import.meta.url).then(e=>e.default)),Wb=N(()=>k(()=>import("./ChallengeV3.-HLbHbHP.js"),__vite__mapDeps([144,14,12]),import.meta.url).then(e=>e.default)),qb=N(()=>k(()=>Promise.resolve().then(()=>fC),void 0,import.meta.url).then(e=>e.default)),Gb=N(()=>k(()=>import("./IconCSS.mxCjQHSh.js"),__vite__mapDeps([145,146]),import.meta.url).then(e=>e.default)),Qb=[["ChallengeV2Demo",Zv],["ChallengeV3Demo",Xv],["CheckboxDemo",e0],["IndexDemo",t0],["Mermaid",n0],["PrimaryButton",r0],["ThemeButton",o0],["VeeValidateCheckbox",s0],["VeeValidateInvisible",i0],["AppDocSearch",a0],["AppFooter",c0],["AppHeader",l0],["AppHeaderDialog",u0],["AppHeaderLogo",f0],["AppHeaderNavigation",d0],["AppLayout",h0],["AppLoadingBar",p0],["AppSearch",m0],["AppSocialIcons",g0],["DocumentDrivenNotFound",y0],["Ellipsis",_0],["Logo",v0],["ThemeSelect",b0],["DocsAside",w0],["DocsAsideTree",E0],["DocsPageBottom",C0],["DocsPageLayout",T0],["DocsPrevNext",S0],["DocsToc",P0],["DocsTocLinks",x0],["EditOnLink",A0],["SourceLink",R0],["ProseA",I0],["ProseBlockquote",L0],["ProseCode",O0],["ProseCodeInline",k0],["ProseEm",$0],["ProseH1",M0],["ProseH2",N0],["ProseH3",D0],["ProseH4",H0],["ProseH5",j0],["ProseH6",F0],["ProseHr",V0],["ProseImg",B0],["ProseLi",z0],["ProseOl",U0],["ProseP",K0],["ProseStrong",W0],["ProseTable",q0],["ProseTbody",G0],["ProseTd",Q0],["ProseTh",J0],["ProseThead",Y0],["ProseTr",Z0],["ProseUl",X0],["Alert",eb],["Badge",tb],["ButtonLink",nb],["Callout",rb],["CodeBlock",ob],["CodeGroup",sb],["Container",ib],["CopyButton",ab],["List",cb],["NuxtImg",lb],["Props",ub],["Sandbox",fb],["TabsHeader",db],["Terminal",hb],["VideoPlayer",pb],["IconCodeSandBox",mb],["IconDocus",gb],["IconNuxt",yb],["IconNuxtContent",_b],["IconNuxtLabs",vb],["IconNuxtStudio",bb],["IconStackBlitz",wb],["IconVueTelescope",Eb],["BlockHero",Cb],["Card",Tb],["CardGrid",Sb],["VoltaBoard",Pb],["ComponentPlayground",xb],["ComponentPlaygroundData",Ab],["ComponentPlaygroundProps",Rb],["ComponentPlaygroundSlots",Ib],["ComponentPlaygroundTokens",Lb],["PreviewLayout",Ob],["TokensPlayground",kb],["ContentDoc",$b],["ContentList",Mb],["ContentNavigation",Nb],["ContentQuery",Db],["ContentRenderer",Hb],["ContentRendererMarkdown",jb],["MDCSlot",Fb],["DocumentDrivenEmpty",Vb],["Markdown",Bb],["ProsePre",zb],["RecaptchaCheckbox",Ub],["RecaptchaChallengeV2",Kb],["RecaptchaChallengeV3",Wb],["Icon",qb],["IconCSS",Gb]],Jb=Ve({name:"nuxt:global-components",setup(e){for(const[t,n]of Qb)e.vueApp.component(t,n),e.vueApp.component("Lazy"+t,n)}}),cr={default:()=>k(()=>import("./default.1eR79Hk0.js"),__vite__mapDeps([147,37,30,31,38,39,32,33,34,35,36,40,41,42,43,44,45,46,22,23]),import.meta.url).then(e=>e.default||e),page:()=>k(()=>import("./page.6f8lq27m.js"),__vite__mapDeps([148,149]),import.meta.url).then(e=>e.default||e)},Yb=Ve({name:"nuxt:prefetch",setup(e){const t=lt();e.hooks.hook("app:mounted",()=>{t.beforeEach(async n=>{var o;const r=(o=n==null?void 0:n.meta)==null?void 0:o.layout;r&&typeof cr[r]=="function"&&await cr[r]()})}),e.hooks.hook("link:prefetch",n=>{if(kt(n))return;const r=t.resolve(n);if(!r)return;const o=r.meta.layout;let s=ya(r.meta.middleware);s=s.filter(i=>typeof i=="string");for(const i of s)typeof yr[i]=="function"&&yr[i]();o&&typeof cr[o]=="function"&&cr[o]()})}}),Zb=["ChallengeV2Demo","ChallengeV3Demo","CheckboxDemo","IndexDemo","Mermaid","PrimaryButton","ThemeButton","VeeValidateCheckbox","VeeValidateInvisible","AppDocSearch","AppFooter","AppHeader","AppHeaderDialog","AppHeaderLogo","AppHeaderNavigation","AppLayout","AppLoadingBar","AppSearch","AppSocialIcons","DocumentDrivenNotFound","Ellipsis","Logo","ThemeSelect","DocsAside","DocsAsideTree","DocsPageBottom","DocsPageLayout","DocsPrevNext","DocsToc","DocsTocLinks","EditOnLink","SourceLink","ProseA","ProseBlockquote","ProseCode","ProseCodeInline","ProseEm","ProseH1","ProseH2","ProseH3","ProseH4","ProseH5","ProseH6","ProseHr","ProseImg","ProseLi","ProseOl","ProseP","ProseStrong","ProseTable","ProseTbody","ProseTd","ProseTh","ProseThead","ProseTr","ProseUl","ProseCodeCopyButton","Alert","Badge","ButtonLink","Callout","CodeBlock","CodeGroup","Container","CopyButton","List","NuxtImg","Props","Sandbox","TabsHeader","Terminal","VideoPlayer","IconCodeSandBox","IconDocus","IconNuxt","IconNuxtContent","IconNuxtLabs","IconNuxtStudio","IconStackBlitz","IconVueTelescope","BlockHero","Card","CardGrid","VoltaBoard","ComponentPlayground","ComponentPlaygroundData","ComponentPlaygroundProps","ComponentPlaygroundSlots","ComponentPlaygroundTokens","PreviewLayout","TokensPlayground","UnoIcon","ContentPreviewMode","ContentDoc","ContentList","ContentNavigation","ContentQuery","ContentRenderer","ContentRendererMarkdown","MDCSlot","DocumentDrivenEmpty","Markdown","ProsePre","NuxtWelcome","NuxtLayout","NuxtErrorBoundary","ClientOnly","DevOnly","ServerPlaceholder","NuxtLink","NuxtLoadingIndicator","NuxtPicture","RecaptchaCheckbox","RecaptchaChallengeV2","RecaptchaChallengeV3","ColorScheme","MDC","MDCRenderer","MDCSlot","Icon","IconCSS","NuxtPage","NoScript","Link","Base","Title","Meta","Style","Head","Html","Body"],Xb=/\d/,e1=["-","_","/","."];function t1(e=""){if(!Xb.test(e))return e.toUpperCase()===e}function id(e,t){const n=t??e1,r=[];if(!e||typeof e!="string")return r;let o="",s,i;for(const a of e){const c=n.includes(a);if(c===!0){r.push(o),o="",s=void 0;continue}const l=t1(a);if(i===!1){if(s===!1&&l===!0){r.push(o),o=a,s=l;continue}if(s===!0&&l===!1&&o.length>1){const u=o.at(-1);r.push(o.slice(0,Math.max(0,o.length-1))),o=u+a,s=l;continue}}o+=a,s=l,i=c}return r.push(o),r}function n1(e){return e?e[0].toUpperCase()+e.slice(1):""}function r1(e,t){return e?(Array.isArray(e)?e:id(e)).map(n=>n1(t!=null&&t.normalize?n.toLowerCase():n)).join(""):""}function vi(e,t){return e?(Array.isArray(e)?e:id(e)).map(n=>n.toLowerCase()).join(t??"-"):""}function ad(e){return Array.isArray(e)?e:[e]}const o1=e=>e==="defer"||e===!1;function s1(...e){var h;const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);let[n,r,o={}]=e;if(typeof n!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof r!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");const s=ye(),i=()=>null,a=()=>s.isHydrating?s.payload.data[n]:s.static.data[n];o.server=o.server??!0,o.default=o.default??i,o.getCachedData=o.getCachedData??a,o.lazy=o.lazy??!1,o.immediate=o.immediate??!0,o.deep=o.deep??S_.deep,o.dedupe=o.dedupe??"cancel";const c=()=>![null,void 0].includes(o.getCachedData(n));if(!s._asyncData[n]||!o.immediate){(h=s.payload._errors)[n]??(h[n]=null);const m=o.deep?le:It;s._asyncData[n]={data:m(o.getCachedData(n)??o.default()),pending:le(!c()),error:Yi(s.payload._errors,n),status:le("idle")}}const l={...s._asyncData[n]};l.refresh=l.execute=(m={})=>{if(s._asyncDataPromises[n]){if(o1(m.dedupe??o.dedupe))return s._asyncDataPromises[n];s._asyncDataPromises[n].cancelled=!0}if((m._initial||s.isHydrating&&m._initial!==!1)&&c())return Promise.resolve(o.getCachedData(n));l.pending.value=!0,l.status.value="pending";const p=new Promise((y,v)=>{try{y(r(s))}catch(b){v(b)}}).then(y=>{if(p.cancelled)return s._asyncDataPromises[n];let v=y;o.transform&&(v=o.transform(y)),o.pick&&(v=a1(v,o.pick)),s.payload.data[n]=v,l.data.value=v,l.error.value=null,l.status.value="success"}).catch(y=>{if(p.cancelled)return s._asyncDataPromises[n];l.error.value=ts(y),l.data.value=M(o.default()),l.status.value="error"}).finally(()=>{p.cancelled||(l.pending.value=!1,delete s._asyncDataPromises[n])});return s._asyncDataPromises[n]=p,s._asyncDataPromises[n]};const u=()=>l.refresh({_initial:!0}),f=o.server!==!1&&s.payload.serverRendered;{const m=ht();if(m&&!m._nuxtOnBeforeMountCbs){m._nuxtOnBeforeMountCbs=[];const y=m._nuxtOnBeforeMountCbs;m&&(zu(()=>{y.forEach(v=>{v()}),y.splice(0,y.length)}),Tr(()=>y.splice(0,y.length)))}f&&s.isHydrating&&(l.error.value||c())?(l.pending.value=!1,l.status.value=l.error.value?"error":"success"):m&&(s.payload.serverRendered&&s.isHydrating||o.lazy)&&o.immediate?m._nuxtOnBeforeMountCbs.push(u):o.immediate&&u(),o.watch&&ge(o.watch,()=>l.refresh());const p=s.hook("app:data:refresh",async y=>{(!y||y.includes(n))&&await l.refresh()});m&&Tr(p)}const d=Promise.resolve(s._asyncDataPromises[n]).then(()=>l);return Object.assign(d,l),d}function i1(...e){const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);const[n,r,o]=e;return s1(n,r,{...o,lazy:!0},null)}async function EP(e){await new Promise(n=>os(n));const t=e?ad(e):void 0;await ye().hooks.callHookParallel("app:data:refresh",t)}function a1(e,t){const n={};for(const r of t)n[r]=e[r];return n}const c1="$s";function At(...e){const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);const[n,r]=e;if(!n||typeof n!="string")throw new TypeError("[nuxt] [useState] key must be a string: "+n);if(r!==void 0&&typeof r!="function")throw new Error("[nuxt] [useState] init must be a function: "+r);const o=c1+n,s=ye(),i=Yi(s.payload.state,o);if(i.value===void 0&&r){const a=r();if(ke(a))return s.payload.state[o]=a,a;i.value=a}return i}const al=Object.freeze({ignoreUnknown:!1,respectType:!1,respectFunctionNames:!1,respectFunctionProperties:!1,unorderedObjects:!0,unorderedArrays:!1,unorderedSets:!1,excludeKeys:void 0,excludeValues:void 0,replacer:void 0});function bi(e,t){t?t={...al,...t}:t=al;const n=cd(t);return n.dispatch(e),n.toString()}const l1=Object.freeze(["prototype","__proto__","constructor"]);function cd(e){let t="",n=new Map;const r=o=>{t+=o};return{toString(){return t},getContext(){return n},dispatch(o){return e.replacer&&(o=e.replacer(o)),this[o===null?"null":typeof o](o)},object(o){if(o&&typeof o.toJSON=="function")return this.object(o.toJSON());const s=Object.prototype.toString.call(o);let i="";const a=s.length;a<10?i="unknown:["+s+"]":i=s.slice(8,a-1),i=i.toLowerCase();let c=null;if((c=n.get(o))===void 0)n.set(o,n.size);else return this.dispatch("[CIRCULAR:"+c+"]");if(typeof Buffer<"u"&&Buffer.isBuffer&&Buffer.isBuffer(o))return r("buffer:"),r(o.toString("utf8"));if(i!=="object"&&i!=="function"&&i!=="asyncfunction")this[i]?this[i](o):e.ignoreUnknown||this.unkown(o,i);else{let l=Object.keys(o);e.unorderedObjects&&(l=l.sort());let u=[];e.respectType!==!1&&!cl(o)&&(u=l1),e.excludeKeys&&(l=l.filter(d=>!e.excludeKeys(d)),u=u.filter(d=>!e.excludeKeys(d))),r("object:"+(l.length+u.length)+":");const f=d=>{this.dispatch(d),r(":"),e.excludeValues||this.dispatch(o[d]),r(",")};for(const d of l)f(d);for(const d of u)f(d)}},array(o,s){if(s=s===void 0?e.unorderedArrays!==!1:s,r("array:"+o.length+":"),!s||o.length<=1){for(const c of o)this.dispatch(c);return}const i=new Map,a=o.map(c=>{const l=cd(e);l.dispatch(c);for(const[u,f]of l.getContext())i.set(u,f);return l.toString()});return n=i,a.sort(),this.array(a,!1)},date(o){return r("date:"+o.toJSON())},symbol(o){return r("symbol:"+o.toString())},unkown(o,s){if(r(s),!!o&&(r(":"),o&&typeof o.entries=="function"))return this.array(Array.from(o.entries()),!0)},error(o){return r("error:"+o.toString())},boolean(o){return r("bool:"+o)},string(o){r("string:"+o.length+":"),r(o)},function(o){r("fn:"),cl(o)?this.dispatch("[native]"):this.dispatch(o.toString()),e.respectFunctionNames!==!1&&this.dispatch("function-name:"+String(o.name)),e.respectFunctionProperties&&this.object(o)},number(o){return r("number:"+o)},xml(o){return r("xml:"+o.toString())},null(){return r("Null")},undefined(){return r("Undefined")},regexp(o){return r("regex:"+o.toString())},uint8array(o){return r("uint8array:"),this.dispatch(Array.prototype.slice.call(o))},uint8clampedarray(o){return r("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(o))},int8array(o){return r("int8array:"),this.dispatch(Array.prototype.slice.call(o))},uint16array(o){return r("uint16array:"),this.dispatch(Array.prototype.slice.call(o))},int16array(o){return r("int16array:"),this.dispatch(Array.prototype.slice.call(o))},uint32array(o){return r("uint32array:"),this.dispatch(Array.prototype.slice.call(o))},int32array(o){return r("int32array:"),this.dispatch(Array.prototype.slice.call(o))},float32array(o){return r("float32array:"),this.dispatch(Array.prototype.slice.call(o))},float64array(o){return r("float64array:"),this.dispatch(Array.prototype.slice.call(o))},arraybuffer(o){return r("arraybuffer:"),this.dispatch(new Uint8Array(o))},url(o){return r("url:"+o.toString())},map(o){r("map:");const s=[...o];return this.array(s,e.unorderedSets!==!1)},set(o){r("set:");const s=[...o];return this.array(s,e.unorderedSets!==!1)},file(o){return r("file:"),this.dispatch([o.name,o.size,o.type,o.lastModfied])},blob(){if(e.ignoreUnknown)return r("[blob]");throw new Error(`Hashing Blob objects is currently not supported Use "options.replacer" or "options.ignoreUnknown" -`)},domwindow(){return r("domwindow")},bigint(o){return r("bigint:"+o.toString())},process(){return r("process")},timer(){return r("timer")},pipe(){return r("pipe")},tcp(){return r("tcp")},udp(){return r("udp")},tty(){return r("tty")},statwatcher(){return r("statwatcher")},securecontext(){return r("securecontext")},connection(){return r("connection")},zlib(){return r("zlib")},context(){return r("context")},nodescript(){return r("nodescript")},httpparser(){return r("httpparser")},dataview(){return r("dataview")},signal(){return r("signal")},fsevent(){return r("fsevent")},tlswrap(){return r("tlswrap")}}}const ld="[native code] }",u1=ld.length;function cl(e){return typeof e!="function"?!1:Function.prototype.toString.call(e).slice(-u1)===ld}class Zt{constructor(t,n){t=this.words=t||[],this.sigBytes=n===void 0?t.length*4:n}toString(t){return(t||f1).stringify(this)}concat(t){if(this.clamp(),this.sigBytes%4)for(let n=0;n>>2]>>>24-n%4*8&255;this.words[this.sigBytes+n>>>2]|=r<<24-(this.sigBytes+n)%4*8}else for(let n=0;n>>2]=t.words[n>>>2];return this.sigBytes+=t.sigBytes,this}clamp(){this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4)}clone(){return new Zt([...this.words])}}const f1={stringify(e){const t=[];for(let n=0;n>>2]>>>24-n%4*8&255;t.push((r>>>4).toString(16),(r&15).toString(16))}return t.join("")}},d1={stringify(e){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=[];for(let r=0;r>>2]>>>24-r%4*8&255,s=e.words[r+1>>>2]>>>24-(r+1)%4*8&255,i=e.words[r+2>>>2]>>>24-(r+2)%4*8&255,a=o<<16|s<<8|i;for(let c=0;c<4&&r*8+c*6>>6*(3-c)&63))}return n.join("")}},h1={parse(e){const t=e.length,n=[];for(let r=0;r>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new Zt(n,t)}},p1={parse(e){return h1.parse(unescape(encodeURIComponent(e)))}};class m1{constructor(){this._data=new Zt,this._nDataBytes=0,this._minBufferSize=0,this.blockSize=512/32}reset(){this._data=new Zt,this._nDataBytes=0}_append(t){typeof t=="string"&&(t=p1.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes}_doProcessBlock(t,n){}_process(t){let n,r=this._data.sigBytes/(this.blockSize*4);t?r=Math.ceil(r):r=Math.max((r|0)-this._minBufferSize,0);const o=r*this.blockSize,s=Math.min(o*4,this._data.sigBytes);if(o){for(let i=0;i>>7)^(g<<14|g>>>18)^g>>>3,C=cn[d-2],A=(C<<15|C>>>17)^(C<<13|C>>>19)^C>>>10;cn[d]=_+cn[d-7]+A+cn[d-16]}const h=c&l^~c&u,m=o&s^o&i^s&i,p=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),y=(c<<26|c>>>6)^(c<<21|c>>>11)^(c<<7|c>>>25),v=f+y+h+y1[d]+cn[d],b=p+m;f=u,u=l,l=c,c=a+v|0,a=i,i=s,s=o,o=v+b|0}r[0]=r[0]+o|0,r[1]=r[1]+s|0,r[2]=r[2]+i|0,r[3]=r[3]+a|0,r[4]=r[4]+c|0,r[5]=r[5]+l|0,r[6]=r[6]+u|0,r[7]=r[7]+f|0}finalize(t){super.finalize(t);const n=this._nDataBytes*8,r=this._data.sigBytes*8;return this._data.words[r>>>5]|=128<<24-r%32,this._data.words[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),this._data.words[(r+64>>>9<<4)+15]=n,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}}function v1(e){return new _1().finalize(e).toString(d1)}function Lo(e,t={}){const n=typeof e=="string"?e:bi(e,t);return v1(n).slice(0,10)}function b1(e,t,n={}){return e===t||bi(e,n)===bi(t,n)}const w1={path:"/",watch:!0,decode:e=>Ar(decodeURIComponent(e)),encode:e=>encodeURIComponent(typeof e=="string"?e:JSON.stringify(e))};function co(e,t){var c;const n={...w1,...t},r=E1(n)||{};let o;n.maxAge!==void 0?o=n.maxAge*1e3:n.expires&&(o=n.expires.getTime()-Date.now());const s=o!==void 0&&o<=0,i=s?void 0:r[e]??((c=n.default)==null?void 0:c.call(n)),a=o&&!s?S1(i,o):le(i);{const l=typeof BroadcastChannel>"u"?null:new BroadcastChannel(`nuxt:cookies:${e}`),u=()=>{n.readonly||b1(a.value,r[e])||(T1(e,a.value,n),l==null||l.postMessage(n.encode(a.value)))};let f=!1;zo()&&wn(()=>{f=!0,u(),l==null||l.close()}),l&&(l.onmessage=d=>{f=!0,r[e]=a.value=n.decode(d.data),wt(()=>{f=!1})}),n.watch?ge(a,()=>{f||u()},{deep:n.watch!=="shallow"}):u()}return a}function E1(e={}){return Xy(document.cookie,e)}function C1(e,t,n={}){return t==null?Dc(e,t,{...n,maxAge:-1}):Dc(e,t,n)}function T1(e,t,n={}){document.cookie=C1(e,t,n)}const ul=2147483647;function S1(e,t){let n,r=0;return zo()&&wn(()=>{clearTimeout(n)}),cp((o,s)=>{function i(){clearTimeout(n);const a=t-r,c=a{if(r+=c,r{const t=ye();e=ad(e),await Promise.all(e.map(n=>A1(t.vueApp._context.components[n])))},x1=e=>P1(e);function A1(e){if(e!=null&&e.__asyncLoader&&!e.__asyncResolved)return e.__asyncLoader()}async function ud(e,t=lt()){const{path:n,matched:r}=t.resolve(e);if(!r.length||(t._routePreloaded||(t._routePreloaded=new Set),t._routePreloaded.has(n)))return;const o=t._preloadPromises=t._preloadPromises||[];if(o.length>4)return Promise.all(o).then(()=>ud(e,t));t._routePreloaded.add(n);const s=r.map(i=>{var a;return(a=i.components)==null?void 0:a.default}).filter(i=>typeof i=="function");for(const i of s){const a=Promise.resolve(i()).catch(()=>{}).finally(()=>o.splice(o.indexOf(a)));o.push(a)}await Promise.all(o)}function R1(e={}){const t=e.path||window.location.pathname;let n={};try{n=Ar(sessionStorage.getItem("nuxt:reload")||"{}")}catch{}if(e.force||(n==null?void 0:n.path)!==t||(n==null?void 0:n.expires)e.find(t=>t!==void 0),L1="noopener noreferrer";function O1(e){const t=e.componentName||"NuxtLink",n=(r,o)=>{if(!r||e.trailingSlash!=="append"&&e.trailingSlash!=="remove")return r;if(typeof r=="string")return fl(r,e.trailingSlash);const s="path"in r?r.path:o(r).path;return{...r,name:void 0,path:fl(s,e.trailingSlash)}};return xe({name:t,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},setup(r,{slots:o}){const s=lt(),i=Je(),a=ee(()=>{const h=r.to||r.href||"";return n(h,s.resolve)}),c=ee(()=>typeof a.value=="string"&&kt(a.value,{acceptRelative:!0})),l=ee(()=>r.external||r.target&&r.target!=="_self"?!0:typeof a.value=="object"?!1:a.value===""||c.value),u=le(!1),f=le(null),d=h=>{var m;f.value=r.custom?(m=h==null?void 0:h.$el)==null?void 0:m.nextElementSibling:h==null?void 0:h.$el};if(r.prefetch!==!1&&r.noPrefetch!==!0&&r.target!=="_blank"&&!$1()){const m=ye();let p,y=null;Nt(()=>{const v=k1();os(()=>{p=_i(()=>{var b;(b=f==null?void 0:f.value)!=null&&b.tagName&&(y=v.observe(f.value,async()=>{y==null||y(),y=null;const g=typeof a.value=="string"?a.value:s.resolve(a.value).fullPath;await Promise.all([m.hooks.callHook("link:prefetch",g).catch(()=>{}),!l.value&&ud(a.value,s).catch(()=>{})]),u.value=!0}))})})}),Jn(()=>{p&&Qv(p),y==null||y(),y=null})}return()=>{var v,b;if(!l.value){const g={ref:d,to:a.value,activeClass:r.activeClass||e.activeClass,exactActiveClass:r.exactActiveClass||e.exactActiveClass,replace:r.replace,ariaCurrentValue:r.ariaCurrentValue,custom:r.custom};return r.custom||(u.value&&(g.class=r.prefetchedClass||e.prefetchedClass),g.rel=r.rel),tt(bp("RouterLink"),g,o.default)}const h=typeof a.value=="object"?((v=s.resolve(a.value))==null?void 0:v.href)??null:a.value&&!r.external&&!c.value?n(Tn(i.app.baseURL,a.value),s.resolve):a.value||null,m=r.target||null,p=r.noRel?null:I1(r.rel,e.externalRelAttribute,h?L1:"")||null,y=()=>zf(h,{replace:r.replace});return r.custom?o.default?o.default({href:h,navigate:y,get route(){if(!h)return;const g=Hr(h);return{path:g.pathname,fullPath:g.pathname,get query(){return wf(g.search)},hash:g.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:h}},rel:p,target:m,isExternal:l.value,isActive:!1,isExactActive:!1}):null:tt("a",{ref:f,href:h,rel:p,target:m},(b=o.default)==null?void 0:b.call(o))}}})}const jr=O1(T_);function fl(e,t){const n=t==="append"?So:tn;return kt(e)&&!e.startsWith("http")?e:n(e,!0)}function k1(){const e=ye();if(e._observer)return e._observer;let t=null;const n=new Map,r=(s,i)=>(t||(t=new IntersectionObserver(a=>{for(const c of a){const l=n.get(c.target);(c.isIntersecting||c.intersectionRatio>0)&&l&&l()}})),n.set(s,i),t.observe(s),()=>{n.delete(s),t.unobserve(s),n.size===0&&(t.disconnect(),t=null)});return e._observer={observe:r}}function $1(){const e=navigator.connection;return!!(e&&(e.saveData||/2g/.test(e.effectiveType)))}const Rn=()=>{const e=At("dd-pages",()=>It(Qt({}))),t=At("dd-surrounds",()=>It(Qt({}))),n=At("dd-navigation"),r=At("dd-globals",()=>It(Qt({})));return{pages:e,surrounds:t,navigation:n,globals:r}},Fr=()=>{const{navigation:e,pages:t,surrounds:n,globals:r}=Rn(),o=ee(()=>tn(ct().path)),s=ee(()=>t.value[o.value]),i=ee(()=>n.value[o.value]),a=ee(()=>{var h,m;return(m=(h=s==null?void 0:s.value)==null?void 0:h.body)==null?void 0:m.toc}),c=ee(()=>{var h;return(h=s.value)==null?void 0:h._type}),l=ee(()=>{var h;return(h=s.value)==null?void 0:h.excerpt}),u=ee(()=>{var h;return(h=s.value)==null?void 0:h.layout}),f=ee(()=>{var h;return(h=i.value)==null?void 0:h[1]}),d=ee(()=>{var h;return(h=i.value)==null?void 0:h[0]});return{globals:r,navigation:e,surround:i,page:s,excerpt:l,toc:a,type:c,layout:u,next:f,prev:d}},fd=e=>{if(!e.children)return e._path;for(const t of(e==null?void 0:e.children)||[]){const n=fd(t);if(n)return n}},dd=(e,t)=>{for(const n of t){if(n._path===e&&!n._id)return n.children;if(n.children){const r=dd(e,n.children);if(r)return r}}},hd=(e,t)=>{for(const n of t){if(n._path===e)return n;if(n.children){const r=hd(e,n.children);if(r)return r}}},M1=(e,t,n)=>{let r;const o=(s,i)=>{for(const a of i)if(!(s!=="/"&&a._path==="/")){if(s!=null&&s.startsWith(a._path)&&a[t]&&(r=a[t]),a._path===s)return;a.children&&o(s,a.children)}};return o(e,n),r},_a=()=>({navBottomLink:fd,navDirFromPath:dd,navPageFromPath:hd,navKeyFromPath:M1});function va(e){return JSON.stringify(e,N1)}function N1(e,t){return t instanceof RegExp?`--REGEX ${t.toString()}`:t}const pd=e=>{let t=va(e);return t=typeof Buffer<"u"?Buffer.from(t).toString("base64"):btoa(t),t=t.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),(t.match(/.{1,100}/g)||[]).join("/")},ba=()=>({isEnabled:()=>{const r=ct().query;return Object.prototype.hasOwnProperty.call(r,"preview")&&!r.preview?!1:!!(r.preview||co("previewToken").value||sessionStorage.getItem("previewToken"))},getPreviewToken:()=>co("previewToken").value||sessionStorage.getItem("previewToken")||void 0,setPreviewToken:r=>{co("previewToken").value=r,ct().query.preview=r||"",r?sessionStorage.setItem("previewToken",r):sessionStorage.removeItem("previewToken"),window.location.reload()}}),Oo=e=>Ef(e,Je().public.content.api.baseURL),md=()=>{const{experimental:e}=Je().public.content;return e.clientDB?!0:ba().isEnabled()},dl=(e,t)=>t.split(".").reduce((n,r)=>n&&n[r],e),wa=(e,t)=>Object.keys(e).filter(t).reduce((n,r)=>Object.assign(n,{[r]:e[r]}),{}),CP=e=>t=>e&&e.length?wa(t,n=>!e.includes(n)):t,TP=e=>t=>Array.isArray(t)?t.map(n=>e(n)):e(t),gd=e=>{const t=[],n=[];for(const r of e)["$","_"].includes(r)?t.push(r):n.push(r);return{prefixes:t,properties:n}},SP=(e=[])=>t=>{if(e.length===0||!t)return t;const{prefixes:n,properties:r}=gd(e);return wa(t,o=>!r.includes(o)&&!n.includes(o[0]))},PP=(e=[])=>t=>{if(e.length===0||!t)return t;const{prefixes:n,properties:r}=gd(e);return wa(t,o=>r.includes(o)||n.includes(o[0]))},xP=(e,t)=>{const n=new Intl.Collator(t.$locale,{numeric:t.$numeric,caseFirst:t.$caseFirst,sensitivity:t.$sensitivity}),r=Object.keys(t).filter(o=>!o.startsWith("$"));for(const o of r)e=e.sort((s,i)=>{const a=[dl(s,o),dl(i,o)].map(c=>{if(c!==null)return c instanceof Date?c.toISOString():c});return t[o]===-1&&a.reverse(),n.compare(a[0],a[1])});return e},AP=(e,t="Expected an array")=>{if(!Array.isArray(e))throw new TypeError(t)},Ct=e=>Array.isArray(e)?e:[void 0,null].includes(e)?[]:[e],D1=["sort","where","only","without"];function H1(e,t={}){const n={};for(const i of Object.keys(t.initialParams||{}))n[i]=D1.includes(i)?Ct(t.initialParams[i]):t.initialParams[i];const r=(i,a=c=>c)=>(...c)=>(n[i]=a(...c),s),o=i=>{var a;return t.legacy?i!=null&&i.surround?i.surround:i&&(i!=null&&i.dirConfig&&(i.result={_path:(a=i.dirConfig)==null?void 0:a._path,...i.result,_dir:i.dirConfig}),i!=null&&i._path||Array.isArray(i)||!Object.prototype.hasOwnProperty.call(i,"result")?i:i==null?void 0:i.result):i},s={params:()=>({...n,...n.where?{where:[...Ct(n.where)]}:{},...n.sort?{sort:[...Ct(n.sort)]}:{}}),only:r("only",Ct),without:r("without",Ct),where:r("where",i=>[...Ct(n.where),...Ct(i)]),sort:r("sort",i=>[...Ct(n.sort),...Ct(i)]),limit:r("limit",i=>parseInt(String(i),10)),skip:r("skip",i=>parseInt(String(i),10)),find:()=>e(s).then(o),findOne:()=>e(r("first")(!0)).then(o),count:()=>e(r("count")(!0)).then(o),locale:i=>s.where({_locale:i}),withSurround:r("surround",(i,a)=>({query:i,...a})),withDirConfig:()=>r("dirConfig")(!0)};return t.legacy&&(s.findSurround=(i,a)=>s.withSurround(i,a).find().then(o)),s}const j1=()=>async e=>{const{content:t}=Je().public,n=e.params(),r=t.experimental.stripQueryParameters?Oo(`/query/${`${Lo(n)}.${t.integrity}`}/${pd(n)}.json`):Oo(`/query/${Lo(n)}.${t.integrity}.json`);if(md())return(await k(()=>import("./client-db.pr2ddds2.js"),__vite__mapDeps([150,23]),import.meta.url).then(i=>i.useContentDatabase())).fetch(e);const o=await $fetch(r,{method:"GET",responseType:"json",params:t.experimental.stripQueryParameters?void 0:{_params:va(n),previewToken:ba().getPreviewToken()}});if(typeof o=="string"&&o.startsWith(""))throw new Error("Not found");return o};function lo(e,...t){const{content:n}=Je().public,r=H1(j1(),{initialParams:typeof e!="string"?e:{},legacy:!0});let o;typeof e=="string"&&(o=oi(Tn(e,...t)));const s=r.params;return r.params=()=>{var a,c,l;const i=s();return o&&(i.where=i.where||[],i.first&&(i.where||[]).length===0?i.where.push({_path:tn(o)}):i.where.push({_path:new RegExp(`^${o.replace(/[-[\]{}()*+.,^$\s/]/g,"\\$&")}`)})),(a=i.sort)!=null&&a.length||(i.sort=[{_file:1,$numeric:!0}]),n.locales.length&&((l=(c=i.where)==null?void 0:c.find(f=>f._locale))!=null&&l._locale||(i.where=i.where||[],i.where.push({_locale:n.defaultLocale}))),i},r}const F1=async e=>{const{content:t}=Je().public;typeof(e==null?void 0:e.params)!="function"&&(e=lo(e));const n=e.params(),r=t.experimental.stripQueryParameters?Oo(`/navigation/${`${Lo(n)}.${t.integrity}`}/${pd(n)}.json`):Oo(`/navigation/${Lo(n)}.${t.integrity}.json`);if(md())return(await k(()=>import("./client-db.pr2ddds2.js"),__vite__mapDeps([150,23]),import.meta.url).then(i=>i.generateNavigation))(n);const o=await $fetch(r,{method:"GET",responseType:"json",params:t.experimental.stripQueryParameters?void 0:{_params:va(n),previewToken:ba().getPreviewToken()}});if(typeof o=="string"&&o.startsWith(""))throw new Error("Not found");return o},V1=Ve(e=>{var l,u,f,d;const t=(u=(l=Je())==null?void 0:l.public)==null?void 0:u.content.documentDriven,n=(d=(f=Je())==null?void 0:f.public)==null?void 0:d.content.experimental.clientDB,{navigation:r,pages:o,globals:s,surrounds:i}=Rn(),a=(h,m,p,y)=>{var v;if(m&&(m!=null&&m.layout))return m.layout;if(h.matched.length&&((v=h.matched[0].meta)!=null&&v.layout))return h.matched[0].meta.layout;if(p&&m){const{navKeyFromPath:b}=_a(),g=b(m._path,"layout",p);if(g)return g}if(t.layoutFallbacks&&y){let b;for(const g of t.layoutFallbacks)if(y[g]&&y[g].layout){b=y[g].layout;break}if(b)return b}return"default"},c=async(h,m=!1)=>{e.callHook("content:document-driven:start",{route:h,dedup:m});const p=h.meta.documentDriven||{};if(h.meta.documentDriven===!1)return;const y=tn(h.path),v=[];if(t.navigation&&p.navigation!==!1){const b=()=>{const{navigation:g}=Rn();return g.value&&!m?g.value:F1().then(_=>(g.value=_,_)).catch(()=>null)};v.push(b)}else v.push(()=>Promise.resolve(null));if(t.globals){const b=()=>{const{globals:g}=Rn();if(typeof t.globals=="object"&&Array.isArray(t.globals)){console.log("Globals must be a list of keys with QueryBuilderParams as a value.");return}return Promise.all(Object.entries(t.globals).map(([_,C])=>{if(!m&&g.value[_])return g.value[_];let A="findOne";return C!=null&&C.type&&(A=C.type),lo(C)[A]().catch(()=>null)})).then(_=>_.reduce((C,A,I)=>{const L=Object.keys(t.globals)[I];return C[L]=A,C},{}))};v.push(b)}else v.push(()=>Promise.resolve(null));if(t.page&&p.page!==!1){let b={_path:y};typeof p.page=="string"&&(b={_path:p.page}),typeof p.page=="object"&&(b=p.page);const g=()=>{const{pages:_}=Rn();return!m&&_.value[y]&&_.value[y]._path===y?_.value[y]:lo().where(b).findOne().catch(()=>null)};v.push(g)}else v.push(()=>Promise.resolve(null));if(t.surround&&p.surround!==!1){let b=y;["string","object"].includes(typeof p.page)&&(b=p.page),["string","object"].includes(typeof p.surround)&&(b=p.surround);const g=()=>{const{surrounds:_}=Rn();return!m&&_.value[y]?_.value[y]:lo().where({_partial:{$not:!0},navigation:{$not:!1}}).without(["body"]).findSurround(b).catch(()=>null)};v.push(g)}else v.push(()=>Promise.resolve(null));return await Promise.all(v.map(b=>b())).then(async([b,g,_,C])=>{var I,L;b&&(r.value=b),g&&(s.value=g),C&&(i.value[y]=C);const A=(_==null?void 0:_.redirect)||((L=(I=_==null?void 0:_._dir)==null?void 0:I.navigation)==null?void 0:L.redirect);if(A)return o.value[y]=_,A;if(_){const H=a(h,_,b,g),R=cr[H];R&&typeof R=="function"&&await R(),h.meta.layout=H,_.layout=H}o.value[y]=_,await e.callHook("content:document-driven:finish",{route:h,dedup:m,page:_,navigation:b,globals:g,surround:C})})};{const h=lt();e.hook("link:prefetch",m=>{if(!(m in o.value)&&!kt(m)){const p=h.resolve(m);p.matched.length>0&&c(p)}}),e.hooks.hook("content:document-driven:finish",({page:m})=>{var p;(p=m==null?void 0:m.body)!=null&&p.children&&yd(m.body.children)})}m_(async(h,m)=>{if(!n&&h.path===m.path){if(!h.meta.layout){const y=tn(h.path);o.value[y]&&(h.meta.layout=o.value[y].layout)}return}const p=await c(h,!1);if(p)return kt(p)?If(e,zf,[p,{external:!0}]):p}),e.hook("app:data:refresh",async()=>await c(ct(),!0))});function yd(e){for(const t of e)if(t.children&&yd(t.children),t.type==="element"&&t.tag){const n=r1(t.tag);for(const r of["Prose"+n,n])Zb.includes(r)&&x1(r)}}const B1=Ve(e=>{const t=Je().public.studio||{},n=ct(),r=co("previewToken",{sameSite:"none",secure:!0}),o=At("studio-client-db",()=>null);async function s(){const i=await k(()=>import("./useStudio.FJ3lfJLP.js"),__vite__mapDeps([151,152]),import.meta.url).then(l=>l.useStudio),{mountPreviewUI:a,initiateIframeCommunication:c}=i();a(),c()}if(t.apiURL){if(Object.prototype.hasOwnProperty.call(n.query,"preview")&&!n.query.preview||!n.query.preview&&!r.value)return;n.query.preview&&(r.value=String(n.query.preview)),window.sessionStorage.setItem("previewToken",String(r.value)),e.hook("content:storage",i=>{o.value=i}),e.hook("app:mounted",async()=>{await s()})}});let Ea=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,n)=>(n&=63,n<36?t+=n.toString(36):n<62?t+=(n-26).toString(36).toUpperCase():n>62?t+="-":t+="_",t),"");const _d=new RegExp("\\{([^}]+)\\}","g"),z1="@dark",U1="@light",K1="@initial";function hl(e,t,n,r="."){typeof t=="string"&&(t=t.split(r));const o=t.length-1;for(let i=0;it.includes(i))){r[o]={value:e[o]};continue}r[o]=bd(e[o],t,n)}}return r}function W1(e={},t={}){const n={key:"attributes.variable",onNotFound:!1,...t};function r(o=void 0,s){if(!o)return M(e);const i={...n,...s},{key:a,onNotFound:c}=i,l=ko(M(e),o);if(!l&&typeof c=="function"){c(o,i);return}return a?l&&(l[a]?l[a]:ko(l,a)):l}return r.bind(this)}function wd(e){return Array.isArray(e)&&(e=e.join("-")),e.charAt(0)==="{"&&e.charAt(e.length-1)==="}"&&(e=e.substr(1,e.length-2)),`--${e.split(".").join("-")}`}function q1(e,t,n,r,o=[],s,i){var c;const a=Q1(e,t,r,s,i);return a||((c=s==null?void 0:s.utils)!=null&&c[e]?typeof s.utils[e]=="function"?s.utils[e](t):t?s.utils[e]:{}:(t=G1(e,t,o,s,i),{[e]:t}))}function G1(e,t,n,r,o){return(Array.isArray(t)||typeof t=="string"||typeof t=="number")&&(Array.isArray(t)?t=t.map(s=>pl(e,s,n,r,o)).join(","):t=pl(e,t,n,r,o)),t}function pl(e,t,n,r,o){return typeof t=="number"?t:(t.match(_d)&&(t=Ed(e,t,n,r,o)),t==="{}"?"":t)}function Ed(e,t,n,r,o){return typeof t!="string"||(t=t.replace(_d,(s,i)=>{const a=wd(i),c=`var(${a})`;if(n.includes(a))return c;const l=r.$tokens(i,{key:void 0,loc:o}),u=typeof l=="string"?l:(l==null?void 0:l.variable)||(l==null?void 0:l.value);return u||c})),t}function Q1(e,t,n,r,o){if(e.startsWith("@")){const s=a=>{a=r.options.colorSchemeMode==="class"?`:root.${a}`:`@media (prefers-color-scheme: ${a})`;const c=a.startsWith("@media");return r!=null&&r.runtime?{"@media":{[a]:t}}:{[c?a:`${a} &`]:t}};if(e===z1)return s("dark");if(e===U1)return s("light");if(e===K1){const a=r.$tokens("media.initial",{key:"value",onNotFound:!1,loc:o});return{[`@media${a?` ${a}`:""}`]:t}}const i=r.$tokens("media",{key:void 0,loc:o});if(i){const a=e.replace("@","");if(i[a])return{[`@media ${i[a].value}`]:t}}return{[e]:t}}}function J1(e,t,n,r){var i;let o="";if(e==="dark"||e==="light")r==="class"?o=`:root.${e}`:o=`(prefers-color-scheme: ${e})`;else if(e!=="initial"&&n){const a=(i=n==null?void 0:n.media)==null?void 0:i[e];a&&(o=a.value)}let s;return o?o.startsWith(".")?s=`@media { :root${o} {`:o.startsWith(":root")?s=`@media { ${o} {`:s=`@media ${o} { :root {`:s="@media { :root {",`${`${`${s}--pinceau-mq: ${String(e)}; ${t}`} } }`} -`}const ml=/\s*,\s*(?![^()]*\))/,Y1=(e,t)=>e.reduce((n,r)=>(n.push(...t.map(o=>o.includes("&")?o.replace(/&/g,/[ +>|~]/.test(r)&&/&.*&/.test(o)?`:is(${r})`:r):`${r} ${o}`)),n),[]),{prototype:{toString:Z1}}=Object,X1=(e,t=void 0)=>{const n=new WeakSet,r=(s,i,a,c,l,u,f)=>{for(let d=0;d{let u="";for(const f in s){const d=f.charCodeAt(0)===64,h=f.charCodeAt(0)===45&&f.charCodeAt(1)===45;for(const m of d&&Array.isArray(s[f])?s[f]:[s[f]]){if(t&&(f!==c||m!==l)){const y=t(f,m,s,i);if(y!==null){u+=typeof y=="object"&&y?o(y,i,a,f,m):y??"";continue}}if(typeof m=="object"&&m&&m.toString===Z1){n.has(i)&&(n.delete(i),u+="}");const y=Object(f);let v;d?(v=i,u+=o(m,v,a.concat(y))):(v=i.length?Y1(i,f.split(ml)):f.split(ml),u+=o(m,v,a)),n.has(y)&&(n.delete(y),u+="}"),n.has(v)&&(n.delete(v),u+="}")}else u=r(u,i,a,f,m,d,h)}}return u};return o(e,[],[])},Cd=".phy[--]";function ew(e,t={},n,r){const o=le(),s=le(t),i={},a=(m,p)=>X1(m,(y,v,b,g)=>q1(y,v,b,g,[],{$tokens:e,utils:s.value,options:{colorSchemeMode:n,runtime:!0}},p));function c(){const m=globalThis||window;let p,y;if(m&&m.document){const v=`pinceau-runtime${r?`-${r}`:""}`,b=m.document;if(p=b.querySelector(`style#${v}`),!p){const g=b.createElement("style");g.id=v,g.type="text/css",p=b.head.appendChild(g)}y=b.querySelector(`style#pinceau-runtime-hydratable${r?`-${r}`:""}`)}return o.value=(p==null?void 0:p.sheet)||tw(),y?l(y):void 0}function l(m){var y,v;const p={};for(const b of Object.entries(((y=m==null?void 0:m.sheet)==null?void 0:y.cssRules)||((v=o.value)==null?void 0:v.cssRules)||{})){const[g,_]=b,C=nw(_);if(!C||!C.uid)continue;p[C.uid]||(p[C.uid]={});const A=o.value.insertRule(_.cssText,Number(g));p[C.uid][C.type]=o.value.cssRules.item(A)}return m&&m.remove(),p}function u(){return o.value?Object.entries(o.value.cssRules).reduce((m,[,p])=>(m+=`${p==null?void 0:p.cssText} `||"",m),""):""}function f(m,p,y,v,b){if(!Object.keys(y).length)return;const g=a({"@media":{[Cd]:{"--puid":`${m}-${p}`},...y}},b);if(!g)return;v&&d(v);const _=o.value.insertRule(g);return o.value.cssRules[_]}function d(m){const p=Object.values(o.value.cssRules).indexOf(m);if(!(typeof p>"u"||isNaN(p)))try{o.value.deleteRule(p)}catch{}}const h=c();return{stringify:a,cache:i,pushDeclaration:f,deleteRule:d,sheet:o,toString:u,hydratableRules:h}}function tw(){return{cssRules:[],insertRule(e,t=this.cssRules.length){return this.cssRules.splice(t,1,{cssText:e}),t},deleteRule(e){delete this.cssRules[e]}}}function nw(e){const t=e.cssRules&&e.cssRules.length?Object.entries(e==null?void 0:e.cssRules).find(([s,i])=>i.selectorText===Cd):void 0;if(!t)return;const n=/--puid:(.*)?-(c|v|p)?/m,[,r,o]=t[1].cssText.match(n);if(r)return{uid:r,type:o}}function rw(e,t,n){var a,c,l;let r;const o=(a=e==null?void 0:e.vnode)==null?void 0:a.el;o&&o.classList?o.classList.forEach(u=>{r||u.startsWith("pc-")&&(r=u.split("pc-")[1])}):r=Ea(6);const s=(l=(c=e==null?void 0:e.vnode)==null?void 0:c.type)==null?void 0:l.__scopeId,i={uid:r,componentId:s?`[${s}]`:"",uniqueClassName:`pc-${r}`};return t.value.c=i.uniqueClassName,ee(()=>i)}function ow(e,t={},n){const r=le(),o=le(e||{});t=Object.assign({key:"variable"},t||{});const s=W1(o,t);let i={};c();function a(p){var y;for(const v of p.styleSheets)if((y=v==null?void 0:v.ownerNode)!=null&&y.textContent.includes("--pinceau-mq"))return v.ownerNode}function c(){var y;const p=globalThis||window;if(p&&p.document){let v=document.querySelector("#pinceau-theme");v||(v=a(document)),r.value=v==null?void 0:v.sheet,r.value&&l((y=r.value)==null?void 0:y.cssRules)}}function l(p){i={},Object.entries(p||{}).forEach(([y,v])=>{var g,_;if((v==null?void 0:v.type)!==4&&!((g=v==null?void 0:v.cssText)!=null&&g.includes("--pinceau-mq")))return!1;let b="initial";(_=v.cssText.match(/--([\w-]+)\s*:\s*(.+?);/gm))==null||_.forEach(C=>{var H;const[A,I]=C.replace(";","").split(/:\s(.*)/s);if(A==="--pinceau-mq"){if(b=I,!i[I]){const R=(H=Object.entries((v==null?void 0:v.cssRules)||{}).find(([S,T])=>T==null?void 0:T.cssText.includes(`--pinceau-mq: ${I}`)))==null?void 0:H[1];R&&(i[I]=R)}return}const L=[...A.substring(2).split("-")];hl(o.value,L,h(L,I,A,b))})})}function u(p){var b;const y=Array.from(new Set(["dark","light",...Object.keys((p==null?void 0:p.media)||{}),...Object.keys(((b=o.value)==null?void 0:b.media)||{})])),v=bd(p||{},y,!0);vd(v,(g,_,C)=>f(C,g.value))}function f(p,y,v="initial"){var _;if(typeof y=="object"){Object.entries(y).forEach(([C,A])=>f(p,A,C));return}const b=wd(p);i!=null&&i[v]||m(v);const g=Ed(void 0,y,[],{$tokens:s});hl(o.value,p,h(p,g,b,v)),(_=i==null?void 0:i[v])==null||_.style.setProperty(b,g)}function d(p){return ee({get(){return ko(o.value,`${p}.value`)},set(y){f(p,y)}})}function h(p,y,v,b="initial"){const g={value:y,variable:`var(${v})`},_=ko(o.value,p);return _&&!v.startsWith("--media")&&(typeof(_==null?void 0:_.value)=="object"?g.value={..._.value,[b]:y}:g.value={initial:_.value,[b]:y}),g}function m(p){if(i!=null&&i[p])return i==null?void 0:i[p];const y=J1(p,"",o.value,n),v=r.value.insertRule(y,r.value.cssRules.length);return i[p]=r.value.cssRules.item(v).cssRules[0],i[p]}return{$tokens:s,updateToken:f,updateTheme:u,reactiveToken:d,resolveStylesheet:c,theme:o}}function sw(e,t,n,r){var s,i;let o=(i=(s=n.hydratableRules)==null?void 0:s[e.value.uid])==null?void 0:i.c;ge(()=>t,a=>{a=iw(e.value,a),o=n.pushDeclaration(e.value.uid,"c",a,o,{...r,type:"c"})},{immediate:!o,deep:!0}),wn(()=>o&&n.deleteRule(o))}function iw(e,t){const n={},r=`.${e.uniqueClassName}${e.componentId}`;if(t&&Object.keys(t).length){n[r]=n[r]||{};for(const[o,s]of Object.entries(t)){const i=M(s);if(o==="css"){n[r]=Object.assign(n[r],i);continue}if(typeof i=="object")for(const[a,c]of Object.entries(i)){const l=M(c);if(!l)continue;a==="initial"&&(n[r]||(n[r]={}),n[r]||(n[r]={}),n[r][`--${o}`]=l);const u=`@${a}`;n[u]||(n[u]={}),n[u][r]||(n[u][r]={}),n[u][r][`--${vi(o)}`]=l}else{const a=M(i);a&&(n[r][`--${vi(o)}`]=a)}}}return n}const aw=(e,t,n,r,o,s)=>{var l,u;let i=(u=(l=r.hydratableRules)==null?void 0:l[e.value.uid])==null?void 0:u.v;const a=ee(()=>t?lw(e.value,n,t):{}),c=le([]);return ge(a,({cacheId:f,variantsProps:d})=>{let h;if(r.cache[f]){const m=r.cache[f];i=m.rule,h=m.variantClass,m!=null&&m.classes&&(c.value=m.classes),m.count++}else{h=`pv-${Ea(6)}`;const{declaration:m,classes:p}=cw(h,e.value,t,d);c.value=p,i=r.pushDeclaration(e.value.uid,"v",m,void 0,{...s,type:"v"}),r.cache[f]={rule:i,variantClass:h,classes:p,count:1}}o.value.v=h},{immediate:!0}),wn(()=>{var h;const f=a==null?void 0:a.value,d=(h=r.cache)==null?void 0:h[f.cacheId];d&&(d.count--,d.count<=0&&(r.deleteRule(d.rule),delete r.cache[f.cacheId]))}),{variantsClasses:c}};function cw(e,t,n,r){var i,a;let o=[];const s={};if(r&&Object.keys(r).length){const c=`.${e}`;for(const[l,u]of Object.entries(r))if(typeof u=="object")for(const[f,d]of Object.entries(u)){const h=(d==null?void 0:d.toString())||d,m=n[l][h];if(!m)continue;if(s[c]||(s[c]={}),typeof m=="string"||Array.isArray(m)||m!=null&&m.$class){const y=typeof m=="string"||Array.isArray(m)?m:m.$class;o=[...o,...typeof y=="string"?y.split(" "):y],delete m.$class}f==="initial"&&(s[c]||(s[c]={}),s[c]=jn(s[c],m));const p=`@${f}`;s[p]||(s[p]={}),s[p][c]||(s[p][c]={}),s[p][c]=jn(s[p][c],m)}else{const f=((i=u==null?void 0:u.toString)==null?void 0:i.call(u))||u,d=(a=n==null?void 0:n[l])==null?void 0:a[f];if(!d)continue;s[c]||(s[c]={}),s[c]=jn(s[c],d)}}return{declaration:s,classes:o}}function lw(e,t,n){if(!t||!n)return{};let r=e.componentId;const o=Object.entries(t).reduce((s,[i,a])=>(n[i]&&(typeof a=="object"?Object.entries(a).forEach(([c,l])=>r+=`${i}:${c}:${l}|`):r+=`${i}:${a}|`,s[i]=a),s),{});return{cacheId:r,variantsProps:o}}function uw(e,t,n,r){var i,a;let o=(a=(i=n.hydratableRules)==null?void 0:i[e.value.uid])==null?void 0:a.p;const s=ee(()=>t==null?void 0:t.css);ge(s,c=>{c=fw(e.value,c),o&&n.deleteRule(o),o=n.pushDeclaration(e.value.uid,"p",c,o,{...r,type:"c"})},{immediate:!o}),wn(()=>o&&n.deleteRule(o))}function fw(e,t){const n={};if(t){const r=`.${e.uniqueClassName}${e.componentId}`;n[r]=Object.assign(n[r]||{},t)}return n}const dw={theme:{},utils:{},tokensHelperConfig:{},multiApp:!1,colorSchemeMode:"media",dev:!1},hw={install(e,t){t=Object.assign(dw,t);const{theme:n,tokensHelperConfig:r,dev:o,multiApp:s,colorSchemeMode:i,utils:a}=t,c=ow(n,r,i),l=s?Ea(6):void 0,u=ew(c.$tokens,a,i,l);function f(d={},h,m){const p=ht();let y;const v=le({v:"",c:""}),b=rw(p,v);m&&Object.keys(m).length>0&&sw(b,m,u,y);let g;if(h&&Object.keys(h).length>0){const{variantsClasses:_}=aw(b,h,d,u,v,y);g=_}return d!=null&&d.css&&Object.keys(d==null?void 0:d.css).length>0&&uw(b,d,u,y),{$pinceau:ee(()=>{var _;return[v.value.v,v.value.c,(_=g==null?void 0:g.value)==null?void 0:_.join(" ")].join(" ")})}}e.config.globalProperties.$pinceauRuntime=f,e.config.globalProperties.$pinceauTheme=c,e.config.globalProperties.$pinceauSsr={get:()=>u.toString()},e.provide("pinceauRuntime",f),e.provide("pinceauTheme",c)}};function pw(e,t,n){return De("pinceauRuntime")(e,t,n)}function RP(){return De("pinceauTheme")}function IP(e,t=!1){return{type:[String,Object],default:e,required:t}}const mw=e=>({marginTop:e,marginBottom:e}),gw=e=>({marginLeft:e,marginRight:e}),yw=e=>({paddingTop:e,paddingBottom:e}),_w=e=>({paddingLeft:e,paddingRight:e}),vw={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},bw=e=>({overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":e}),ww=e=>({fontSize:`{text.${e}.fontSize}`,lineHeight:`{text.${e}.lineHeight}`}),Ew=e=>({color:`{elements.state.${e}.color.primary} !important`,backgroundColor:`{elements.state.${e}.backgroundColor.primary} !important`,borderColor:`{elements.state.${e}.borderColor.primary} !important`,":deep(p code)":{color:`{elements.state.${e}.color.secondary} !important`,backgroundColor:`{elements.state.${e}.backgroundColor.secondary} !important`},":deep(code)":{color:`{elements.state.${e}.color.primary} !important`,backgroundColor:`{elements.state.${e}.backgroundColor.secondary} !important`},":deep(a code)":{borderColor:`{elements.state.${e}.borderColor.primary} !important`},":deep(a)":{borderColor:"currentColor",code:{backgroundColor:`{elements.state.${e}.backgroundColor.primary} !important`},"&:hover":{color:`{elements.state.${e}.color.secondary} !important`,borderColor:"currentColor !important",code:{backgroundColor:`{elements.state.${e}.backgroundColor.secondary} !important`,color:`{elements.state.${e}.color.secondary} !important`,borderColor:`{elements.state.${e}.borderColor.secondary} !important`}}}}),Cw={my:mw,mx:gw,py:yw,px:_w,truncate:vw,lineClamp:bw,text:ww,stateColors:Ew},Tw=Ve(async e=>e.vueApp.use(hw,{colorSchemeMode:"class",utils:Cw})),Sw="__NUXT_COLOR_MODE__",Pw="ColorScheme",xw="theme",Aw="nuxt-color-mode",Tt=window[Sw],Rw=Ve(e=>{const t=At("color-mode",()=>nt({preference:Tt.preference,value:Tt.value,unknown:!1,forced:!1})).value;Ir({htmlAttrs:{[`data-${xw}`]:ee(()=>t.value)}}),lt().afterEach(o=>{const s=o.meta.colorMode;s&&s!=="system"?(t.value=s,t.forced=!0):(s==="system"&&console.warn("You cannot force the colorMode to system at the page level."),t.forced=!1,t.value=t.preference==="system"?Tt.getColorScheme():t.preference)});let n;function r(){n||!window.matchMedia||(n=window.matchMedia("(prefers-color-scheme: dark)"),n.addEventListener("change",()=>{!t.forced&&t.preference==="system"&&(t.value=Tt.getColorScheme())}))}ge(()=>t.preference,o=>{var s;t.forced||(o==="system"?(t.value=Tt.getColorScheme(),r()):t.value=o,(s=window.localStorage)==null||s.setItem(Aw,o))},{immediate:!0}),ge(()=>t.value,(o,s)=>{Tt.removeColorScheme(s),Tt.addColorScheme(o)}),t.preference==="system"&&r(),e.hook("app:mounted",()=>{t.unknown&&(t.preference=Tt.preference,t.value=Tt.value,t.unknown=!1)}),e.provide("colorMode",t)});function Wn(e,...t){wm(`[vue-recaptcha]: ${e}`,...t)}function ss(e,t){if(!e)throw Wn(t),new Error(`Invariant violation: ${t}`)}const Td="vue-recaptcha-context";function is(){const e=De(Td);if(!e)throw Wn("You may forget to `use` vue-recaptcha plugin"),new Error("useRecaptcha() is called without provider.");return e}function LP(){return is().proxy}function OP(){const e=is();return ss(e.options.v2SiteKey,"Your config is not compatible with recaptcha v2, please provide v2SiteKey"),e.options.v2SiteKey}function kP(){const e=is();return ss(e.options.v3SiteKey,"Your config is not compatible with recaptcha v3, please provide v3SiteKey"),e.options.v3SiteKey}function Iw(e){var t;return ss(e.v2SiteKey||e.v3SiteKey,"You didn't pass v2SiteKey or v3SiteKey to plugin, which may be a mistake"),{...e,loaderOptions:{...e.loaderOptions,params:{...(t=e.loaderOptions)==null?void 0:t.params,render:e.v3SiteKey??"explicit"}}}}function Lw(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}function Ow(e){return t=>e(kw(t))}function kw(e){return{...e,recaptchaApiURL:e.recaptchaApiURL??(e.useRecaptchaNet?"https://www.recaptcha.net/recaptcha/api.js":"https://www.google.com/recaptcha/api.js")}}const as=Lw(),uo="__vueRecaptchaLoaded";typeof window<"u"&&(window[uo]=()=>{as.resolve()});function $w(e){return new URLSearchParams(Mw(e)).toString()}function Mw(e){const t=jn(e,{onload:uo,render:"explicit"});return t.render==="onload"&&(Wn("passing `onload` as `render` param is not allowed"),t.render="explicit"),t.onload!==uo&&(Wn("passing `onload` param with other value is not allowed"),t.onload=uo),Nw(t)}function Nw(e){return Object.entries(e).filter(t=>typeof t[1]=="string")}function Sd(){if(typeof window>"u")return!1;const e=Object.hasOwn(window,"grecaptcha")&&Object.hasOwn(window.grecaptcha,"execute");return e&&as.resolve(),e}function Dw(e,t){function n(){ss(e.value,"ReCAPTCHA is not loaded")}async function r(){await as.promise,e.value=!0}return{async render(o,s){return await r(),t().render(o,s)},reset(o){typeof o>"u"||(n(),t().reset(o))},async execute(o,s){if(!(typeof o>"u"))return await r(),t().execute(o,s)}}}function Hw(e,{getRecaptcha:t=()=>window.grecaptcha}={}){return{install(n,r){const o=le(!1);async function s(){await as.promise,o.value=!0}s().catch(a=>Wn("fail to load reCAPTCHA script",a)),Sd();const i=Iw(r);n.provide(Td,{isReady:o,scriptInjected:!1,proxy:Dw(o,t),useScriptProvider:e(i.loaderOptions),options:i})}}}const jw=Ow(e=>()=>{Ir({link:[{key:"vue-recaptcha-google",rel:"preconnect",href:e.useRecaptchaNet?"https://www.recaptcha.net":"https://www.google.com"},{key:"vue-recaptcha-gstatic",rel:"preconnect",href:"https://www.gstatic.com",crossorigin:""}],script:[{key:"vue-recaptcha",src:`${e.recaptchaApiURL}?${$w(e.params)}`,async:!0,defer:!0,nonce:e.nonce}]})});function Fw(){const e=is();e.scriptInjected?Wn("`useRecaptchaProvider` is used multiple time"):(e.scriptInjected=!0,e.useScriptProvider(),Nt(()=>{Sd()}))}const Vw=Hw(jw),Bw=Ve(({vueApp:e})=>{const{public:{recaptcha:t}}=Je();e.use(Vw,t)}),zw=Ve(()=>{}),Uw=Ve({name:"nuxt:chunk-reload",setup(e){const t=lt(),n=Je(),r=new Set;t.beforeEach(()=>{r.clear()}),e.hook("app:chunkError",({error:s})=>{r.add(s)});function o(s){const a="href"in s&&s.href.startsWith("#")?n.app.baseURL+s.href:Tn(n.app.baseURL,s.fullPath);R1({path:a,persistState:!0})}e.hook("app:manifest:update",()=>{t.beforeResolve(o)}),t.onError((s,i)=>{r.has(s)&&o(i)})}}),Kw=Ve(e=>{const t=le(!1),n=()=>t.value=!0,r=()=>t.value=!1,o=()=>t.value=!t.value;return e.$router.afterEach(()=>setTimeout(r,50)),ge(t,s=>{const i=document.documentElement;s?i.style.overflow="hidden":setTimeout(()=>{i.style.overflow=""},100)},{immediate:!0}),{provide:{menu:{visible:t,close:r,open:n,toggle:o}}}}),Ww=Ve(()=>{navigator&&navigator.userAgent&&navigator.userAgent.match(/Win[a-z0-9]*;/)&&document.documentElement.classList.add("docus-scrollbars")}),qw=[O_,$_,Gv,Jv,Yv,Jb,Yb,V1,B1,Tw,Rw,Bw,zw,Uw,Kw,Ww],Gw=["p","h1","h2","h3","h4","h5","h6","li"];function $o(e,t){return e.type===t||typeof e.type=="object"&&e.type.tag===t||e.tag===t}function Ca(e){return $o(e,"text")||$o(e,Symbol.for("v-txt"))}function Pd(e){var t;return Array.isArray(e.children)||typeof e.children=="string"?e.children:typeof((t=e.children)==null?void 0:t.default)=="function"?e.children.default():[]}function wi(e){if(!e)return"";if(Array.isArray(e))return e.map(wi).join("");if(Ca(e))return e.children||e.value||"";const t=Pd(e);return Array.isArray(t)?t.map(wi).filter(Boolean).join(""):""}function xd(e,t=[]){if(Array.isArray(e))return e.flatMap(r=>xd(r,t));let n=e;return t.some(r=>r==="*"||$o(e,r))&&(n=Pd(e)||e,!Array.isArray(n)&&Gw.some(r=>$o(e,r))&&(n=[n])),n}function Ad(e,t=[]){return e=Array.isArray(e)?e:[e],t.length?e.flatMap(n=>Ad(xd(n,[t[0]]),t.slice(1))).filter(n=>!(Ca(n)&&wi(n).trim()==="")):e}function Qw(e,t=[]){return typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),t.length?Ad(e,t).reduce((n,r)=>(Ca(r)?typeof n[n.length-1]=="string"?n[n.length-1]+=r.children:n.push(r.children):n.push(r),n),[]):e}const Jw=(e,t,n,...r)=>e[t]?Sr({...e,[t]:()=>Qw(e[t](),n==null?void 0:n.unwrap)},t,n,...r):Sr(e,t,n,...r),Yw={class:"alert-content"},Zw=xe({__name:"Alert",props:{type:{type:String,default:"info",validator(e){return["info","success","warning","danger","primary"].includes(e)}}},setup(e){return(t,n)=>(q(),ue("div",{class:je(["alert",[e.type]])},[ie("div",Yw,[Jw(t.$slots,"default",{unwrap:"p"},void 0,!0)])],2))}}),Be=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n},Rd=Be(Zw,[["__scopeId","data-v-ed5d92b1"]]),Xw=Object.freeze(Object.defineProperty({__proto__:null,default:Rd},Symbol.toStringTag,{value:"Module"})),eE=xe({props:{vnode:{type:Object,required:!0},route:{type:Object,required:!0},vnodeRef:Object,renderKey:String,trackRootNodes:Boolean},setup(e){const t=e.renderKey,n=e.route,r={};for(const o in e.route)Object.defineProperty(r,o,{get:()=>t===e.renderKey?e.route[o]:n[o]});return Dn(Xo,Qt(r)),()=>tt(e.vnode,{ref:e.vnodeRef})}}),tE=xe({name:"NuxtPage",inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(e,{attrs:t,expose:n}){const r=ye(),o=le(),s=De(Xo,null);n({pageRef:o});const i=De(d_,null);let a;const c=r.deferHydration();return e.pageKey&&ge(()=>e.pageKey,(l,u)=>{l!==u&&r.callHook("page:loading:start")}),()=>tt(sd,{name:e.name,route:e.route,...t},{default:l=>{const u=rE(s,l.route,l.Component),f=s&&s.matched.length===l.route.matched.length;if(!l.Component){if(a&&!f)return a;c();return}if(a&&i&&!i.isCurrent(l.route))return a;if(u&&s&&(!i||i!=null&&i.isCurrent(s)))return f?a:null;const d=yi(l,e.pageKey),h=!!(e.transition??l.route.meta.pageTransition??hi),m=h&&nE([e.transition,l.route.meta.pageTransition,hi,{onAfterLeave:()=>{r.callHook("page:transition:finish",l.Component)}}].filter(Boolean)),p=e.keepalive??l.route.meta.keepalive??C_;return a=Fv(aa,h&&m,Hv(p,tt(ku,{suspensible:!0,onPending:()=>r.callHook("page:start",l.Component),onResolve:()=>{wt(()=>r.callHook("page:finish",l.Component).then(()=>r.callHook("page:loading:end")).finally(c))}},{default:()=>{const y=tt(eE,{key:d||void 0,vnode:l.Component,route:l.route,renderKey:d||void 0,trackRootNodes:h,vnodeRef:o});return p&&(y.type.name=l.Component.type.name||l.Component.type.__name||"RouteProvider"),y}}))).default(),a}})}});function nE(e){const t=e.map(n=>({...n,onAfterLeave:n.onAfterLeave?ya(n.onAfterLeave):void 0}));return jn(...t)}function rE(e,t,n){if(!e)return!1;const r=t.matched.findIndex(o=>{var s;return((s=o.components)==null?void 0:s.default)===(n==null?void 0:n.type)});return!r||r===-1?!1:t.matched.slice(0,r).some((o,s)=>{var i,a,c;return((i=o.components)==null?void 0:i.default)!==((c=(a=e.matched[s])==null?void 0:a.components)==null?void 0:c.default)})||n&&yi({route:t,Component:n})!==yi({route:e,Component:n})}const Id={__name:"AppLoadingBar",props:{throttle:{type:Number,default:200},duration:{type:Number,default:2e3}},setup(e){const t=e,n=ye(),r=nt({percent:0,show:!1,canSucceed:!0});let o=null,s=null,i;function a(){o&&clearInterval(o),s&&clearTimeout(s),o=null}function c(){r.show||(a(),r.percent=0,r.canSucceed=!0,t.throttle?s=setTimeout(d,t.throttle):d())}function l(h){r.percent=Math.min(100,Math.floor(r.percent+h))}function u(){r.percent=100,f()}function f(){a(),setTimeout(()=>{r.show=!1,setTimeout(()=>{r.percent=0},400)},500)}function d(){r.show=!0,i=1e4/Math.floor(t.duration),o=setInterval(()=>{l(i)},100)}return n.hook("content:middleware:start",c),n.hook("page:start",c),n.hook("page:finish",u),Jn(()=>a),(h,m)=>(q(),ue("div",{class:je(["nuxt-progress",{"nuxt-progress-failed":!M(r).canSucceed}]),style:Gn({width:`${M(r).percent}%`,left:M(r).left,opacity:M(r).show?1:0,backgroundSize:`${100/M(r).percent*100}% auto`})},null,6))}},oE=Object.freeze(Object.defineProperty({__proto__:null,default:Id},Symbol.toStringTag,{value:"Module"})),Ld=Object.freeze({left:0,top:0,width:16,height:16}),Od=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Ta=Object.freeze({...Ld,...Od});Object.freeze({...Ta,body:"",hidden:!1});({...Ld});const kd=Object.freeze({width:null,height:null}),$d=Object.freeze({...kd,...Od});function sE(e,t){const n={...e};for(const r in t){const o=t[r],s=typeof o;r in kd?(o===null||o&&(s==="string"||s==="number"))&&(n[r]=o):s===typeof n[r]&&(n[r]=r==="rotate"?o%4:o)}return n}const iE=/[\s,]+/;function aE(e,t){t.split(iE).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function cE(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(o){for(;o<0;)o+=4;return o%4}if(n===""){const o=parseInt(e);return isNaN(o)?0:r(o)}else if(n!==e){let o=0;switch(n){case"%":o=25;break;case"deg":o=90}if(o){let s=parseFloat(e.slice(0,e.length-n.length));return isNaN(s)?0:(s=s/o,s%1===0?r(s):0)}}return t}const lE=/(-?[0-9.]*[0-9]+[0-9.]*)/g,uE=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function gl(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(lE);if(r===null||!r.length)return e;const o=[];let s=r.shift(),i=uE.test(s);for(;;){if(i){const a=parseFloat(s);isNaN(a)?o.push(s):o.push(Math.ceil(a*t*n)/n)}else o.push(s);if(s=r.shift(),s===void 0)return o.join("");i=!i}}const fE=e=>e==="unset"||e==="undefined"||e==="none";function dE(e,t){const n={...Ta,...e},r={...$d,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,r].forEach(m=>{const p=[],y=m.hFlip,v=m.vFlip;let b=m.rotate;y?v?b+=2:(p.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),p.push("scale(-1 1)"),o.top=o.left=0):v&&(p.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),p.push("scale(1 -1)"),o.top=o.left=0);let g;switch(b<0&&(b-=Math.floor(b/4)*4),b=b%4,b){case 1:g=o.height/2+o.top,p.unshift("rotate(90 "+g.toString()+" "+g.toString()+")");break;case 2:p.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:g=o.width/2+o.left,p.unshift("rotate(-90 "+g.toString()+" "+g.toString()+")");break}b%2===1&&(o.left!==o.top&&(g=o.left,o.left=o.top,o.top=g),o.width!==o.height&&(g=o.width,o.width=o.height,o.height=g)),p.length&&(s=''+s+"")});const i=r.width,a=r.height,c=o.width,l=o.height;let u,f;i===null?(f=a===null?"1em":a==="auto"?l:a,u=gl(f,c/l)):(u=i==="auto"?c:i,f=a===null?gl(u,l/c):a==="auto"?l:a);const d={},h=(m,p)=>{fE(p)||(d[m]=p.toString())};return h("width",u),h("height",f),d.viewBox=o.left.toString()+" "+o.top.toString()+" "+c.toString()+" "+l.toString(),{attributes:d,body:s}}const hE=/\sid="(\S+)"/g,pE="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let mE=0;function gE(e,t=pE){const n=[];let r;for(;r=hE.exec(e);)n.push(r[1]);if(!n.length)return e;const o="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(s=>{const i=typeof t=="function"?t(s):t+(mE++).toString(),a=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+a+')([")]|\\.[a-z])',"g"),"$1"+i+o+"$3")}),e=e.replace(new RegExp(o,"g"),""),e}function yE(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'"+e+""}function _E(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(//g,"%3E").replace(/\s+/g," ")}function vE(e){return'url("data:image/svg+xml,'+_E(e)+'")'}const yl={...$d,inline:!1},bE={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},wE={display:"inline-block"},Ei={backgroundColor:"currentColor"},Md={backgroundColor:"transparent"},_l={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},vl={webkitMask:Ei,mask:Ei,background:Md};for(const e in vl){const t=vl[e];for(const n in _l)t[e+n]=_l[n]}const fo={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";fo[e+"-flip"]=t,fo[e.slice(0,1)+"-flip"]=t,fo[e+"Flip"]=t});function bl(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const EE=(e,t)=>{const n=sE(yl,t),r={...bE},o=t.mode||"svg",s={},i=t.style,a=typeof i=="object"&&!(i instanceof Array)?i:{};for(let p in t){const y=t[p];if(y!==void 0)switch(p){case"icon":case"style":case"onLoad":case"mode":break;case"inline":case"hFlip":case"vFlip":n[p]=y===!0||y==="true"||y===1;break;case"flip":typeof y=="string"&&aE(n,y);break;case"color":s.color=y;break;case"rotate":typeof y=="string"?n[p]=cE(y):typeof y=="number"&&(n[p]=y);break;case"ariaHidden":case"aria-hidden":y!==!0&&y!=="true"&&delete r["aria-hidden"];break;default:{const v=fo[p];v?(y===!0||y==="true"||y===1)&&(n[v]=!0):yl[p]===void 0&&(r[p]=y)}}}const c=dE(e,n),l=c.attributes;if(n.inline&&(s.verticalAlign="-0.125em"),o==="svg"){r.style={...s,...a},Object.assign(r,l);let p=0,y=t.id;return typeof y=="string"&&(y=y.replace(/-/g,"_")),r.innerHTML=gE(c.body,y?()=>y+"ID"+p++:"iconifyVue"),tt("svg",r)}const{body:u,width:f,height:d}=e,h=o==="mask"||(o==="bg"?!1:u.indexOf("currentColor")!==-1),m=yE(u,{...l,width:f+"",height:d+""});return r.style={...s,"--svg":vE(m),width:bl(l.width),height:bl(l.height),...wE,...h?Ei:Md,...a},tt("span",r)},CE=Object.create(null),TE=xe({inheritAttrs:!1,render(){const e=this.$attrs,t=e.icon,n=typeof t=="string"?CE[t]:typeof t=="object"?t:null;return n===null||typeof n!="object"||typeof n.body!="string"?this.$slots.default?this.$slots.default():null:EE({...Ta,...n},e)}}),_r=/^[a-z0-9]+(-[a-z0-9]+)*$/,cs=(e,t,n,r="")=>{const o=e.split(":");if(e.slice(0,1)==="@"){if(o.length<2||o.length>3)return null;r=o.shift().slice(1)}if(o.length>3||!o.length)return null;if(o.length>1){const a=o.pop(),c=o.pop(),l={provider:o.length>0?o[0]:r,prefix:c,name:a};return t&&!ho(l)?null:l}const s=o[0],i=s.split("-");if(i.length>1){const a={provider:r,prefix:i.shift(),name:i.join("-")};return t&&!ho(a)?null:a}if(n&&r===""){const a={provider:r,prefix:"",name:s};return t&&!ho(a,n)?null:a}return null},ho=(e,t)=>e?!!((e.provider===""||e.provider.match(_r))&&(t&&e.prefix===""||e.prefix.match(_r))&&e.name.match(_r)):!1,Nd=Object.freeze({left:0,top:0,width:16,height:16}),Mo=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Sa=Object.freeze({...Nd,...Mo}),Ci=Object.freeze({...Sa,body:"",hidden:!1});function SE(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function wl(e,t){const n=SE(e,t);for(const r in Ci)r in Mo?r in e&&!(r in n)&&(n[r]=Mo[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function PE(e,t){const n=e.icons,r=e.aliases||Object.create(null),o=Object.create(null);function s(i){if(n[i])return o[i]=[];if(!(i in o)){o[i]=null;const a=r[i]&&r[i].parent,c=a&&s(a);c&&(o[i]=[a].concat(c))}return o[i]}return(t||Object.keys(n).concat(Object.keys(r))).forEach(s),o}function xE(e,t,n){const r=e.icons,o=e.aliases||Object.create(null);let s={};function i(a){s=wl(r[a]||o[a],s)}return i(t),n.forEach(i),wl(e,s)}function Dd(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(o=>{t(o,null),n.push(o)});const r=PE(e);for(const o in r){const s=r[o];s&&(t(o,xE(e,o,s)),n.push(o))}return n}const AE={provider:"",aliases:{},not_found:{},...Nd};function Os(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function Hd(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Os(e,AE))return null;const n=t.icons;for(const o in n){const s=n[o];if(!o.match(_r)||typeof s.body!="string"||!Os(s,Ci))return null}const r=t.aliases||Object.create(null);for(const o in r){const s=r[o],i=s.parent;if(!o.match(_r)||typeof i!="string"||!n[i]&&!r[i]||!Os(s,Ci))return null}return t}const El=Object.create(null);function RE(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function _n(e,t){const n=El[e]||(El[e]=Object.create(null));return n[t]||(n[t]=RE(e,t))}function Pa(e,t){return Hd(t)?Dd(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function IE(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}let Or=!1;function jd(e){return typeof e=="boolean"&&(Or=e),Or}function LE(e){const t=typeof e=="string"?cs(e,!0,Or):e;if(t){const n=_n(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function OE(e,t){const n=cs(e,!0,Or);if(!n)return!1;const r=_n(n.provider,n.prefix);return IE(r,n.name,t)}function kE(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),Or&&!t&&!e.prefix){let o=!1;return Hd(e)&&(e.prefix="",Dd(e,(s,i)=>{i&&OE(s,i)&&(o=!0)})),o}const n=e.prefix;if(!ho({provider:t,prefix:n,name:"a"}))return!1;const r=_n(t,n);return!!Pa(r,e)}const $E=Object.freeze({width:null,height:null}),ME=Object.freeze({...$E,...Mo});""+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);const Ti=Object.create(null);function NE(e,t){Ti[e]=t}function Si(e){return Ti[e]||Ti[""]}function xa(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Aa=Object.create(null),rr=["https://api.simplesvg.com","https://api.unisvg.com"],po=[];for(;rr.length>0;)rr.length===1||Math.random()>.5?po.push(rr.shift()):po.push(rr.pop());Aa[""]=xa({resources:["https://api.iconify.design"].concat(po)});function DE(e,t){const n=xa(t);return n===null?!1:(Aa[e]=n,!0)}function Ra(e){return Aa[e]}const HE=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Cl=HE();function jE(e,t){const n=Ra(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let o=0;n.resources.forEach(i=>{o=Math.max(o,i.length)});const s=t+".json?icons=";r=n.maxURL-o-n.path.length-s.length}return r}function FE(e){return e===404}const VE=(e,t,n)=>{const r=[],o=jE(e,t),s="icons";let i={type:s,provider:e,prefix:t,icons:[]},a=0;return n.forEach((c,l)=>{a+=c.length+1,a>=o&&l>0&&(r.push(i),i={type:s,provider:e,prefix:t,icons:[]},a=c.length),i.icons.push(c)}),r.push(i),r};function BE(e){if(typeof e=="string"){const t=Ra(e);if(t)return t.path}return"/"}const zE=(e,t,n)=>{if(!Cl){n("abort",424);return}let r=BE(t.provider);switch(t.type){case"icons":{const s=t.prefix,a=t.icons.join(","),c=new URLSearchParams({icons:a});r+=s+".json?"+c.toString();break}case"custom":{const s=t.uri;r+=s.slice(0,1)==="/"?s.slice(1):s;break}default:n("abort",400);return}let o=503;Cl(e+r).then(s=>{const i=s.status;if(i!==200){setTimeout(()=>{n(FE(i)?"abort":"next",i)});return}return o=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?n("abort",s):n("next",o)});return}setTimeout(()=>{n("success",s)})}).catch(()=>{n("next",o)})},UE={prepare:VE,send:zE};function KE(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((o,s)=>o.provider!==s.provider?o.provider.localeCompare(s.provider):o.prefix!==s.prefix?o.prefix.localeCompare(s.prefix):o.name.localeCompare(s.name));let r={provider:"",prefix:"",name:""};return e.forEach(o=>{if(r.name===o.name&&r.prefix===o.prefix&&r.provider===o.provider)return;r=o;const s=o.provider,i=o.prefix,a=o.name,c=n[s]||(n[s]=Object.create(null)),l=c[i]||(c[i]=_n(s,i));let u;a in l.icons?u=t.loaded:i===""||l.missing.has(a)?u=t.missing:u=t.pending;const f={provider:s,prefix:i,name:a};u.push(f)}),t}function Fd(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(o=>o.id!==t))})}function WE(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,o=e.prefix;t.forEach(s=>{const i=s.icons,a=i.pending.length;i.pending=i.pending.filter(c=>{if(c.prefix!==o)return!0;const l=c.name;if(e.icons[l])i.loaded.push({provider:r,prefix:o,name:l});else if(e.missing.has(l))i.missing.push({provider:r,prefix:o,name:l});else return n=!0,!0;return!1}),i.pending.length!==a&&(n||Fd([e],s.id),s.callback(i.loaded.slice(0),i.missing.slice(0),i.pending.slice(0),s.abort))})}))}let qE=0;function GE(e,t,n){const r=qE++,o=Fd.bind(null,n,r);if(!t.pending.length)return o;const s={id:r,icons:t,callback:e,abort:o};return n.forEach(i=>{(i.loaderCallbacks||(i.loaderCallbacks=[])).push(s)}),o}function QE(e,t=!0,n=!1){const r=[];return e.forEach(o=>{const s=typeof o=="string"?cs(o,t,n):o;s&&r.push(s)}),r}var JE={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function YE(e,t,n,r){const o=e.resources.length,s=e.random?Math.floor(Math.random()*o):e.index;let i;if(e.random){let A=e.resources.slice(0);for(i=[];A.length>1;){const I=Math.floor(Math.random()*A.length);i.push(A[I]),A=A.slice(0,I).concat(A.slice(I+1))}i=i.concat(A)}else i=e.resources.slice(s).concat(e.resources.slice(0,s));const a=Date.now();let c="pending",l=0,u,f=null,d=[],h=[];typeof r=="function"&&h.push(r);function m(){f&&(clearTimeout(f),f=null)}function p(){c==="pending"&&(c="aborted"),m(),d.forEach(A=>{A.status==="pending"&&(A.status="aborted")}),d=[]}function y(A,I){I&&(h=[]),typeof A=="function"&&h.push(A)}function v(){return{startTime:a,payload:t,status:c,queriesSent:l,queriesPending:d.length,subscribe:y,abort:p}}function b(){c="failed",h.forEach(A=>{A(void 0,u)})}function g(){d.forEach(A=>{A.status==="pending"&&(A.status="aborted")}),d=[]}function _(A,I,L){const H=I!=="success";switch(d=d.filter(R=>R!==A),c){case"pending":break;case"failed":if(H||!e.dataAfterTimeout)return;break;default:return}if(I==="abort"){u=L,b();return}if(H){u=L,d.length||(i.length?C():b());return}if(m(),g(),!e.random){const R=e.resources.indexOf(A.resource);R!==-1&&R!==e.index&&(e.index=R)}c="completed",h.forEach(R=>{R(L)})}function C(){if(c!=="pending")return;m();const A=i.shift();if(A===void 0){if(d.length){f=setTimeout(()=>{m(),c==="pending"&&(g(),b())},e.timeout);return}b();return}const I={status:"pending",resource:A,callback:(L,H)=>{_(I,L,H)}};d.push(I),l++,f=setTimeout(C,e.rotate),n(A,t,I.callback)}return setTimeout(C),v}function Vd(e){const t={...JE,...e};let n=[];function r(){n=n.filter(a=>a().status==="pending")}function o(a,c,l){const u=YE(t,a,c,(f,d)=>{r(),l&&l(f,d)});return n.push(u),u}function s(a){return n.find(c=>a(c))||null}return{query:o,find:s,setIndex:a=>{t.index=a},getIndex:()=>t.index,cleanup:r}}function Tl(){}const ks=Object.create(null);function ZE(e){if(!ks[e]){const t=Ra(e);if(!t)return;const n=Vd(t),r={config:t,redundancy:n};ks[e]=r}return ks[e]}function XE(e,t,n){let r,o;if(typeof e=="string"){const s=Si(e);if(!s)return n(void 0,424),Tl;o=s.send;const i=ZE(e);i&&(r=i.redundancy)}else{const s=xa(e);if(s){r=Vd(s);const i=e.resources?e.resources[0]:"",a=Si(i);a&&(o=a.send)}}return!r||!o?(n(void 0,424),Tl):r.query(t,o,n)().abort}const Sl="iconify2",kr="iconify",Bd=kr+"-count",Pl=kr+"-version",zd=36e5,eC=168;function Pi(e,t){try{return e.getItem(t)}catch{}}function Ia(e,t,n){try{return e.setItem(t,n),!0}catch{}}function xl(e,t){try{e.removeItem(t)}catch{}}function xi(e,t){return Ia(e,Bd,t.toString())}function Ai(e){return parseInt(Pi(e,Bd))||0}const ls={local:!0,session:!0},Ud={local:new Set,session:new Set};let La=!1;function tC(e){La=e}let to=typeof window>"u"?{}:window;function Kd(e){const t=e+"Storage";try{if(to&&to[t]&&typeof to[t].length=="number")return to[t]}catch{}ls[e]=!1}function Wd(e,t){const n=Kd(e);if(!n)return;const r=Pi(n,Pl);if(r!==Sl){if(r){const a=Ai(n);for(let c=0;c{const c=kr+a.toString(),l=Pi(n,c);if(typeof l=="string"){try{const u=JSON.parse(l);if(typeof u=="object"&&typeof u.cached=="number"&&u.cached>o&&typeof u.provider=="string"&&typeof u.data=="object"&&typeof u.data.prefix=="string"&&t(u,a))return!0}catch{}xl(n,c)}};let i=Ai(n);for(let a=i-1;a>=0;a--)s(a)||(a===i-1?(i--,xi(n,i)):Ud[e].add(a))}function qd(){if(!La){tC(!0);for(const e in ls)Wd(e,t=>{const n=t.data,r=t.provider,o=n.prefix,s=_n(r,o);if(!Pa(s,n).length)return!1;const i=n.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,i):i,!0})}}function nC(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const r in ls)Wd(r,o=>{const s=o.data;return o.provider!==e.provider||s.prefix!==e.prefix||s.lastModified===t});return!0}function rC(e,t){La||qd();function n(r){let o;if(!ls[r]||!(o=Kd(r)))return;const s=Ud[r];let i;if(s.size)s.delete(i=Array.from(s).shift());else if(i=Ai(o),!xi(o,i+1))return;const a={cached:Math.floor(Date.now()/zd),provider:e.provider,data:t};return Ia(o,kr+i.toString(),JSON.stringify(a))}t.lastModified&&!nC(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&(t=Object.assign({},t),delete t.not_found),n("local")||n("session"))}function Al(){}function oC(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,WE(e)}))}function sC(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,o=e.iconsToLoad;delete e.iconsToLoad;let s;if(!o||!(s=Si(n)))return;s.prepare(n,r,o).forEach(a=>{XE(n,a,c=>{if(typeof c!="object")a.icons.forEach(l=>{e.missing.add(l)});else try{const l=Pa(e,c);if(!l.length)return;const u=e.pendingIcons;u&&l.forEach(f=>{u.delete(f)}),rC(e,c)}catch(l){console.error(l)}oC(e)})})}))}const iC=(e,t)=>{const n=QE(e,!0,jd()),r=KE(n);if(!r.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(r.loaded,r.missing,r.pending,Al)}),()=>{c=!1}}const o=Object.create(null),s=[];let i,a;return r.pending.forEach(c=>{const{provider:l,prefix:u}=c;if(u===a&&l===i)return;i=l,a=u,s.push(_n(l,u));const f=o[l]||(o[l]=Object.create(null));f[u]||(f[u]=[])}),r.pending.forEach(c=>{const{provider:l,prefix:u,name:f}=c,d=_n(l,u),h=d.pendingIcons||(d.pendingIcons=new Set);h.has(f)||(h.add(f),o[l][u].push(f))}),s.forEach(c=>{const{provider:l,prefix:u}=c;o[l][u].length&&sC(c,o[l][u])}),t?GE(t,r,s):Al},aC=e=>new Promise((t,n)=>{const r=typeof e=="string"?cs(e,!0):e;if(!r){n(e);return}iC([r||e],o=>{if(o.length&&r){const s=LE(r);if(s){t({...Sa,...s});return}}n(e)})});({...ME});const Rl={backgroundColor:"currentColor"},cC={backgroundColor:"transparent"},Il={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},Ll={webkitMask:Rl,mask:Rl,background:cC};for(const e in Ll){const t=Ll[e];for(const n in Il)t[e+n]=Il[n]}const $s={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";$s[e+"-flip"]=t,$s[e.slice(0,1)+"-flip"]=t,$s[e+"Flip"]=t});jd(!0);NE("",UE);if(typeof document<"u"&&typeof window<"u"){qd();const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!kE(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const o=t[n];if(typeof o!="object"||!o||o.resources===void 0)continue;DE(n,o)||console.error(r)}catch{console.error(r)}}}}({...Sa});const lC=["width","height"],uC=xe({__name:"Icon",props:{name:{type:String,required:!0},size:{type:String,default:""}},async setup(e){var m;let t,n;const r=ye(),o=ha();(m=o==null?void 0:o.nuxtIcon)!=null&&m.aliases;const s=e,i=At("icons",()=>({})),a=le(!1),c=ee(()=>{var p;return(((p=o.nuxtIcon)==null?void 0:p.aliases)||{})[s.name]||s.name}),l=ee(()=>{var p;return(p=i.value)==null?void 0:p[c.value]}),u=ee(()=>r.vueApp.component(c.value)),f=ee(()=>{var y,v,b;if(!s.size&&typeof((y=o.nuxtIcon)==null?void 0:y.size)=="boolean"&&!((v=o.nuxtIcon)!=null&&v.size))return;const p=s.size||((b=o.nuxtIcon)==null?void 0:b.size)||"1em";return String(Number(p))===p?`${p}px`:p}),d=ee(()=>{var p;return((p=o==null?void 0:o.nuxtIcon)==null?void 0:p.class)??"icon"});async function h(){var p;u.value||(p=i.value)!=null&&p[c.value]||(a.value=!0,i.value[c.value]=await aC(c.value).catch(()=>{}),a.value=!1)}return ge(()=>c.value,h),!u.value&&([t,n]=qu(()=>h()),t=await t,n()),(p,y)=>M(a)?(q(),ue("span",{key:0,class:je(M(d)),width:M(f),height:M(f)},null,10,lC)):M(l)?(q(),de(M(TE),{key:1,icon:M(l),class:je(M(d)),width:M(f),height:M(f)},null,8,["icon","class","width","height"])):M(u)?(q(),de(Go(M(u)),{key:2,class:je(M(d)),width:M(f),height:M(f)},null,8,["class","width","height"])):(q(),ue("span",{key:3,class:je(M(d)),style:Gn({fontSize:M(f),lineHeight:M(f),width:M(f),height:M(f)})},Lt(e.name),7))}}),Dt=Be(uC,[["__scopeId","data-v-92518cc2"]]),fC=Object.freeze(Object.defineProperty({__proto__:null,default:Dt},Symbol.toStringTag,{value:"Module"})),nn=()=>{const e=ee(()=>{var l;return((l=ha())==null?void 0:l.docus)||{}}),{navPageFromPath:t,navDirFromPath:n,navKeyFromPath:r}=_a(),{navigation:o,page:s}=Fr(),i=ct(),a=ee(()=>{var m,p,y,v,b,g,_,C,A,I,L;const l=((m=e==null?void 0:e.value)==null?void 0:m.titleTemplate)||r((p=s==null?void 0:s.value)==null?void 0:p._path,"titleTemplate",o.value||[])||`%s · ${((y=e==null?void 0:e.value)==null?void 0:y.title)||"Docus"}`,u=((v=e==null?void 0:e.value)==null?void 0:v.main)||{},f=((b=e==null?void 0:e.value)==null?void 0:b.header)||{},d=((g=e==null?void 0:e.value)==null?void 0:g.aside)||{},h=((_=e==null?void 0:e.value)==null?void 0:_.footer)||{};return{...e.value,titleTemplate:l,main:{...u,...r(i.path,"main",o.value||[]),...(C=s.value)==null?void 0:C.main},header:{...f,...r(i.path,"header",o.value||[]),...(A=s.value)==null?void 0:A.header},aside:{...d,...r(i.path,"aside",o.value||[]),...(I=s.value)==null?void 0:I.aside},footer:{...h,...r(i.path,"footer",o.value||[]),...(L=s.value)==null?void 0:L.footer}}});return{tree:ee(()=>{var h,m,p,y,v;let l=o.value||[];const u=i.path,f=((m=(h=a==null?void 0:a.value)==null?void 0:h.aside)==null?void 0:m.level)||0,d=((y=(p=a==null?void 0:a.value)==null?void 0:p.aside)==null?void 0:y.exclude)||[];if(f){const g=u.split("/").splice(0,1+f).join("/");l=n(g,l)||[],Array.isArray(l)||(l=[l])}if(l.length===0){if(l=t(((v=s.value)==null?void 0:v._path)||"/",o.value||[]),!l)return[];Array.isArray(l)||(l=[l])}return l.filter(b=>!d.includes(b._path))}),config:a}},dC=xe({__name:"AppSocialIcons",setup(e){const t=["twitter","facebook","instagram","tiktok","youtube","github","medium"],{config:n}=nn(),r=ee(()=>Object.entries(n.value.socials||{}).map(([o,s])=>typeof s=="object"?s:typeof s=="string"&&s&&t.includes(o)?{href:/^https?:\/\//.test(s)?s:`https://${o}.com/${s}`,icon:`fa-brands:${o}`,label:s,rel:"noopener noreferrer"}:null).filter(Boolean));return(o,s)=>{const i=Dt,a=jr;return q(!0),ue(Se,null,Fn(M(r),c=>(q(),de(a,{key:c.label,rel:c.rel,title:c.label,"aria-label":c.label,href:c.href,target:"_blank"},{default:Qe(()=>[c.icon?(q(),de(i,{key:0,name:c.icon},null,8,["name"])):Fe("",!0)]),_:2},1032,["rel","title","aria-label","href"]))),128)}}}),us=Be(dC,[["__scopeId","data-v-14409a5c"]]),hC=Object.freeze(Object.defineProperty({__proto__:null,default:us},Symbol.toStringTag,{value:"Module"})),pC={class:"docs-aside-tree"},mC=["onClick"],gC={class:"content"},yC={class:"content"},_C=xe({__name:"DocsAsideTree",props:{links:{type:Array,default:()=>[]},level:{type:Number,default:0},max:{type:Number,default:null},parent:{type:Object,default:null}},setup(e){var l;const t=e,n=ct(),{config:r}=nn(),o=At(`docus-docs-aside-collapse-map-${((l=t.parent)==null?void 0:l._path)||"/"}`,()=>t.level===0?{}:t.links.filter(u=>!!u.children).reduce((u,f)=>(u[f._path]=!0,u),{})),s=u=>n.path===u._path,i=u=>{var f,d,h,m;if(u.children){if(typeof o.value[u._path]<"u")return o.value[u._path];if([!0,!1].includes((f=u==null?void 0:u.aside)==null?void 0:f.collapsed))return u.aside.collapsed;if(u!=null&&u.collapsed)return u==null?void 0:u.collapsed;if((h=(d=r==null?void 0:r.value)==null?void 0:d.aside)!=null&&h.collapsed)return(m=r.value.aside)==null?void 0:m.collapsed}return!1},a=u=>o.value[u._path]=!i(u),c=ee(()=>t.links.some(u=>u.children));return(u,f)=>{const d=Dt,h=jr,m=Oa;return q(),ue("ul",pC,[(q(!0),ue(Se,null,Fn(e.links,p=>{var y,v,b,g,_;return q(),ue("li",{key:p._path,class:je({"has-parent-icon":(y=e.parent)==null?void 0:y.icon,"has-children":e.level>0&&p.children,bordered:e.level>0||!M(c),active:s(p)})},[p.children?(q(),ue("button",{key:0,class:"title-collapsible-button",onClick:C=>a(p)},[ie("span",gC,[(v=p==null?void 0:p.navigation)!=null&&v.icon||p.icon?(q(),de(d,{key:0,name:((b=p==null?void 0:p.navigation)==null?void 0:b.icon)||p.icon,class:"icon"},null,8,["name"])):Fe("",!0),ie("span",null,Lt(((g=p==null?void 0:p.navigation)==null?void 0:g.title)||p.title||p._path),1)]),ie("span",null,[se(d,{name:i(p)?"lucide:chevrons-up-down":"lucide:chevrons-down-up",class:"collapsible-icon"},null,8,["name"])])],8,mC)):(q(),de(h,{key:1,to:p.redirect?p.redirect:p._path,class:je(["link",{padded:e.level>0||!M(c),active:s(p)}]),exact:p.exact},{default:Qe(()=>{var C,A,I;return[ie("span",yC,[(C=p==null?void 0:p.navigation)!=null&&C.icon||p.icon?(q(),de(d,{key:0,name:((A=p==null?void 0:p.navigation)==null?void 0:A.icon)||p.icon,class:"icon"},null,8,["name"])):Fe("",!0),ie("span",null,Lt(((I=p==null?void 0:p.navigation)==null?void 0:I.title)||p.title||p._path),1)])]}),_:2},1032,["to","exact","class"])),(_=p.children)!=null&&_.length&&(e.max===null||e.level+1{const{$menu:e}=ye();return e},bC={class:"wrapper"},wC={class:"icons"},EC=xe({__name:"AppHeaderDialog",setup(e){const{navigation:t}=Fr(),{config:n}=nn(),r=le(!1),o=ee(()=>{var c;return((c=n.value.aside)==null?void 0:c.exclude)||[]}),s=ee(()=>(t.value||[]).filter(c=>!o.value.includes(c._path))),{close:i,open:a}=Gd();return ge(r,c=>c?a():i()),(c,l)=>{const u=Dt,f=us,d=Oa;return q(),ue(Se,null,[ie("button",{"aria-label":"Menu",onClick:l[0]||(l[0]=h=>r.value=!0)},[se(u,{name:"heroicons-outline:menu","aria-hidden":"”true”"})]),(q(),de(sf,{to:"body"},[M(r)?(q(),ue("nav",{key:0,class:"dialog",onClick:l[3]||(l[3]=h=>r.value=!1)},[ie("div",{onClick:l[2]||(l[2]=ar(()=>{},["stop"]))},[ie("div",bC,[ie("button",{"aria-label":"Menu",onClick:l[1]||(l[1]=h=>r.value=!1)},[se(u,{name:"heroicons-outline:x","aria-hidden":"”true”"})]),ie("div",wC,[se(f)])]),se(d,{links:M(s)},null,8,["links"])])])):Fe("",!0)]))],64)}}}),Qd=Be(EC,[["__scopeId","data-v-701eabae"]]),CC=Object.freeze(Object.defineProperty({__proto__:null,default:Qd},Symbol.toStringTag,{value:"Module"})),TC={},SC={viewBox:"0 0 167 44",fill:"none",xmlns:"http://www.w3.org/2000/svg"},PC=dm('',7),xC=[PC];function AC(e,t){return q(),ue("svg",SC,xC)}const Jd=Be(TC,[["render",AC],["__scopeId","data-v-37ee13f0"]]),RC=Object.freeze(Object.defineProperty({__proto__:null,default:Jd},Symbol.toStringTag,{value:"Module"})),IC={key:0,class:"logo"},LC=["src"],OC=["src"],kC={key:1,class:"title"},$C=xe({__name:"AppHeaderLogo",setup(e){const{config:t}=nn(),n=ee(()=>{var o;return((o=t.value.header)==null?void 0:o.logo)||!1}),r=ee(()=>{var o;return((o=t.value.header)==null?void 0:o.title)||t.value.title});return(o,s)=>{const i=Jd,a=jr;return q(),de(a,{class:"navbar-logo",to:"/","aria-label":M(r)},{default:Qe(()=>[M(n)?(q(),ue("span",IC,[typeof M(n)=="string"?(q(),de(Go(M(n)),{key:0})):M(n).light&&M(n).dark?(q(),ue(Se,{key:1},[ie("img",{src:M(n).light,alt:"",class:"light-img"},null,8,LC),ie("img",{src:M(n).dark,alt:"",class:"dark-img"},null,8,OC)],64)):M(n)?(q(),de(i,{key:2})):Fe("",!0)])):(q(),ue("span",kC,Lt(M(r)),1))]),_:1},8,["aria-label"])}}}),Yd=Be($C,[["__scopeId","data-v-93f413e9"]]),MC=Object.freeze(Object.defineProperty({__proto__:null,default:Yd},Symbol.toStringTag,{value:"Module"})),NC={key:0},DC=xe({__name:"AppHeaderNavigation",setup(e){const t=ct(),{navBottomLink:n}=_a(),{navigation:r}=Fr(),{config:o}=nn(),s=ee(()=>{var l;return!!((l=o.value.aside)!=null&&l.level)}),i=ee(()=>{var l;return((l=o.value.header)==null?void 0:l.exclude)||[]}),a=ee(()=>(r.value||[]).filter(l=>!i.value.includes(l._path))),c=l=>l.exact?t.fullPath===l._path:t.fullPath.startsWith(l._path);return(l,u)=>{const f=Dt,d=jr;return M(s)?(q(),ue("nav",NC,[ie("ul",null,[(q(!0),ue(Se,null,Fn(M(a),h=>(q(),ue("li",{key:h._path},[se(d,{class:je(["link",{active:c(h)}]),to:h.redirect?h.redirect:M(n)(h)},{default:Qe(()=>{var m,p;return[h.icon&&((p=(m=M(o))==null?void 0:m.header)!=null&&p.showLinkIcon)?(q(),de(f,{key:0,name:h.icon},null,8,["name"])):Fe("",!0),Yn(" "+Lt(h.title),1)]}),_:2},1032,["to","class"])]))),128))])])):Fe("",!0)}}}),Zd=Be(DC,[["__scopeId","data-v-132dbb47"]]),HC=Object.freeze(Object.defineProperty({__proto__:null,default:Zd},Symbol.toStringTag,{value:"Module"})),Xd=()=>{const{$docSearch:e}=ye();return e||{hasDocSearch:le(!1)}},eh=e=>(Au("data-v-a87a80ab"),e=e(),Ru(),e),jC={class:"content"},FC=eh(()=>ie("span",null,"Search",-1)),VC=eh(()=>ie("span",null,[ie("kbd",null,"⌘"),ie("kbd",null,"K")],-1)),BC=xe({__name:"AppDocSearch",setup(e){const{element:t}=Xd(),n=()=>t.value.querySelector("button").click();return(r,o)=>{const s=Dt;return q(),ue("button",{type:"button","aria-label":"Search",onClick:n},[ie("span",jC,[se(s,{name:"heroicons-outline:search"}),FC,VC])])}}}),th=Be(BC,[["__scopeId","data-v-a87a80ab"]]),zC=Object.freeze(Object.defineProperty({__proto__:null,default:th},Symbol.toStringTag,{value:"Module"}));function $t(e){return Array.isArray?Array.isArray(e):oh(e)==="[object Array]"}const UC=1/0;function KC(e){if(typeof e=="string")return e;let t=e+"";return t=="0"&&1/e==-UC?"-0":t}function WC(e){return e==null?"":KC(e)}function vt(e){return typeof e=="string"}function nh(e){return typeof e=="number"}function qC(e){return e===!0||e===!1||GC(e)&&oh(e)=="[object Boolean]"}function rh(e){return typeof e=="object"}function GC(e){return rh(e)&&e!==null}function Xe(e){return e!=null}function Ms(e){return!e.trim().length}function oh(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const QC="Incorrect 'index' type",JC=e=>`Invalid value for key ${e}`,YC=e=>`Pattern length exceeds max of ${e}.`,ZC=e=>`Missing ${e} property in key`,XC=e=>`Property 'weight' in key '${e}' must be a positive integer`,Ol=Object.prototype.hasOwnProperty;class eT{constructor(t){this._keys=[],this._keyMap={};let n=0;t.forEach(r=>{let o=sh(r);n+=o.weight,this._keys.push(o),this._keyMap[o.id]=o,n+=o.weight}),this._keys.forEach(r=>{r.weight/=n})}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function sh(e){let t=null,n=null,r=null,o=1,s=null;if(vt(e)||$t(e))r=e,t=kl(e),n=Ri(e);else{if(!Ol.call(e,"name"))throw new Error(ZC("name"));const i=e.name;if(r=i,Ol.call(e,"weight")&&(o=e.weight,o<=0))throw new Error(XC(i));t=kl(i),n=Ri(i),s=e.getFn}return{path:t,id:n,weight:o,src:r,getFn:s}}function kl(e){return $t(e)?e:e.split(".")}function Ri(e){return $t(e)?e.join("."):e}function tT(e,t){let n=[],r=!1;const o=(s,i,a)=>{if(Xe(s))if(!i[a])n.push(s);else{let c=i[a];const l=s[c];if(!Xe(l))return;if(a===i.length-1&&(vt(l)||nh(l)||qC(l)))n.push(WC(l));else if($t(l)){r=!0;for(let u=0,f=l.length;ue.score===t.score?e.idx{this._keysMap[n.id]=r})}create(){this.isCreated||!this.docs.length||(this.isCreated=!0,vt(this.docs[0])?this.docs.forEach((t,n)=>{this._addString(t,n)}):this.docs.forEach((t,n)=>{this._addObject(t,n)}),this.norm.clear())}add(t){const n=this.size();vt(t)?this._addString(t,n):this._addObject(t,n)}removeAt(t){this.records.splice(t,1);for(let n=t,r=this.size();n{let i=o.getFn?o.getFn(t):this.getFn(t,o.path);if(Xe(i)){if($t(i)){let a=[];const c=[{nestedArrIndex:-1,value:i}];for(;c.length;){const{nestedArrIndex:l,value:u}=c.pop();if(Xe(u))if(vt(u)&&!Ms(u)){let f={v:u,i:l,n:this.norm.get(u)};a.push(f)}else $t(u)&&u.forEach((f,d)=>{c.push({nestedArrIndex:d,value:f})})}r.$[s]=a}else if(vt(i)&&!Ms(i)){let a={v:i,n:this.norm.get(i)};r.$[s]=a}}}),this.records.push(r)}toJSON(){return{keys:this.keys,records:this.records}}}function ih(e,t,{getFn:n=ae.getFn,fieldNormWeight:r=ae.fieldNormWeight}={}){const o=new ka({getFn:n,fieldNormWeight:r});return o.setKeys(e.map(sh)),o.setSources(t),o.create(),o}function cT(e,{getFn:t=ae.getFn,fieldNormWeight:n=ae.fieldNormWeight}={}){const{keys:r,records:o}=e,s=new ka({getFn:t,fieldNormWeight:n});return s.setKeys(r),s.setIndexRecords(o),s}function no(e,{errors:t=0,currentLocation:n=0,expectedLocation:r=0,distance:o=ae.distance,ignoreLocation:s=ae.ignoreLocation}={}){const i=t/e.length;if(s)return i;const a=Math.abs(r-n);return o?i+a/o:a?1:i}function lT(e=[],t=ae.minMatchCharLength){let n=[],r=-1,o=-1,s=0;for(let i=e.length;s=t&&n.push([r,o]),r=-1)}return e[s-1]&&s-r>=t&&n.push([r,s-1]),n}const fn=32;function uT(e,t,n,{location:r=ae.location,distance:o=ae.distance,threshold:s=ae.threshold,findAllMatches:i=ae.findAllMatches,minMatchCharLength:a=ae.minMatchCharLength,includeMatches:c=ae.includeMatches,ignoreLocation:l=ae.ignoreLocation}={}){if(t.length>fn)throw new Error(YC(fn));const u=t.length,f=e.length,d=Math.max(0,Math.min(r,f));let h=s,m=d;const p=a>1||c,y=p?Array(f):[];let v;for(;(v=e.indexOf(t,m))>-1;){let I=no(t,{currentLocation:v,expectedLocation:d,distance:o,ignoreLocation:l});if(h=Math.min(I,h),m=v+u,p){let L=0;for(;L=R;B-=1){let J=B-1,V=n[e.charAt(J)];if(p&&(y[J]=+!!V),T[B]=(T[B+1]<<1|1)&V,I&&(T[B]|=(b[B+1]|b[B])<<1|1|b[B+1]),T[B]&C&&(g=no(t,{errors:I,currentLocation:J,expectedLocation:d,distance:o,ignoreLocation:l}),g<=h)){if(h=g,m=J,m<=d)break;R=Math.max(1,2*d-m)}}if(no(t,{errors:I+1,currentLocation:d,expectedLocation:d,distance:o,ignoreLocation:l})>h)break;b=T}const A={isMatch:m>=0,score:Math.max(.001,g)};if(p){const I=lT(y,a);I.length?c&&(A.indices=I):A.isMatch=!1}return A}function fT(e){let t={};for(let n=0,r=e.length;n{this.chunks.push({pattern:d,alphabet:fT(d),startIndex:h})},f=this.pattern.length;if(f>fn){let d=0;const h=f%fn,m=f-h;for(;d{const{isMatch:v,score:b,indices:g}=uT(t,m,p,{location:o+y,distance:s,threshold:i,findAllMatches:a,minMatchCharLength:c,includeMatches:r,ignoreLocation:l});v&&(d=!0),f+=b,v&&g&&(u=[...u,...g])});let h={isMatch:d,score:d?f/this.chunks.length:1};return d&&r&&(h.indices=u),h}}class rn{constructor(t){this.pattern=t}static isMultiMatch(t){return $l(t,this.multiRegex)}static isSingleMatch(t){return $l(t,this.singleRegex)}search(){}}function $l(e,t){const n=e.match(t);return n?n[1]:null}class dT extends rn{constructor(t){super(t)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(t){const n=t===this.pattern;return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class hT extends rn{constructor(t){super(t)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(t){const r=t.indexOf(this.pattern)===-1;return{isMatch:r,score:r?0:1,indices:[0,t.length-1]}}}class pT extends rn{constructor(t){super(t)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(t){const n=t.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class mT extends rn{constructor(t){super(t)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(t){const n=!t.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}}class gT extends rn{constructor(t){super(t)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(t){const n=t.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[t.length-this.pattern.length,t.length-1]}}}class yT extends rn{constructor(t){super(t)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(t){const n=!t.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}}class ch extends rn{constructor(t,{location:n=ae.location,threshold:r=ae.threshold,distance:o=ae.distance,includeMatches:s=ae.includeMatches,findAllMatches:i=ae.findAllMatches,minMatchCharLength:a=ae.minMatchCharLength,isCaseSensitive:c=ae.isCaseSensitive,ignoreLocation:l=ae.ignoreLocation}={}){super(t),this._bitapSearch=new ah(t,{location:n,threshold:r,distance:o,includeMatches:s,findAllMatches:i,minMatchCharLength:a,isCaseSensitive:c,ignoreLocation:l})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(t){return this._bitapSearch.searchIn(t)}}class lh extends rn{constructor(t){super(t)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(t){let n=0,r;const o=[],s=this.pattern.length;for(;(r=t.indexOf(this.pattern,n))>-1;)n=r+s,o.push([r,n-1]);const i=!!o.length;return{isMatch:i,score:i?0:1,indices:o}}}const Ii=[dT,lh,pT,mT,yT,gT,hT,ch],Ml=Ii.length,_T=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,vT="|";function bT(e,t={}){return e.split(vT).map(n=>{let r=n.trim().split(_T).filter(s=>s&&!!s.trim()),o=[];for(let s=0,i=r.length;s!!(e[No.AND]||e[No.OR]),TT=e=>!!e[ki.PATH],ST=e=>!$t(e)&&rh(e)&&!$i(e),Nl=e=>({[No.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function uh(e,t,{auto:n=!0}={}){const r=o=>{let s=Object.keys(o);const i=TT(o);if(!i&&s.length>1&&!$i(o))return r(Nl(o));if(ST(o)){const c=i?o[ki.PATH]:s[0],l=i?o[ki.PATTERN]:o[c];if(!vt(l))throw new Error(JC(c));const u={keyId:Ri(c),pattern:l};return n&&(u.searcher=Oi(l,t)),u}let a={children:[],operator:s[0]};return s.forEach(c=>{const l=o[c];$t(l)&&l.forEach(u=>{a.children.push(r(u))})}),a};return $i(e)||(e=Nl(e)),r(e)}function PT(e,{ignoreFieldNorm:t=ae.ignoreFieldNorm}){e.forEach(n=>{let r=1;n.matches.forEach(({key:o,norm:s,score:i})=>{const a=o?o.weight:null;r*=Math.pow(i===0&&a?Number.EPSILON:i,(a||1)*(t?1:s))}),n.score=r})}function xT(e,t){const n=e.matches;t.matches=[],Xe(n)&&n.forEach(r=>{if(!Xe(r.indices)||!r.indices.length)return;const{indices:o,value:s}=r;let i={indices:o,value:s};r.key&&(i.key=r.key.src),r.idx>-1&&(i.refIndex=r.idx),t.matches.push(i)})}function AT(e,t){t.score=e.score}function RT(e,t,{includeMatches:n=ae.includeMatches,includeScore:r=ae.includeScore}={}){const o=[];return n&&o.push(xT),r&&o.push(AT),e.map(s=>{const{idx:i}=s,a={item:t[i],refIndex:i};return o.length&&o.forEach(c=>{c(s,a)}),a})}class Zn{constructor(t,n={},r){this.options={...ae,...n},this.options.useExtendedSearch,this._keyStore=new eT(this.options.keys),this.setCollection(t,r)}setCollection(t,n){if(this._docs=t,n&&!(n instanceof ka))throw new Error(QC);this._myIndex=n||ih(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(t){Xe(t)&&(this._docs.push(t),this._myIndex.add(t))}remove(t=()=>!1){const n=[];for(let r=0,o=this._docs.length;r-1&&(c=c.slice(0,n)),RT(c,this._docs,{includeMatches:r,includeScore:o})}_searchStringList(t){const n=Oi(t,this.options),{records:r}=this._myIndex,o=[];return r.forEach(({v:s,i,n:a})=>{if(!Xe(s))return;const{isMatch:c,score:l,indices:u}=n.searchIn(s);c&&o.push({item:s,idx:i,matches:[{score:l,value:s,norm:a,indices:u}]})}),o}_searchLogical(t){const n=uh(t,this.options),r=(a,c,l)=>{if(!a.children){const{keyId:f,searcher:d}=a,h=this._findMatches({key:this._keyStore.get(f),value:this._myIndex.getValueForItemAtKeyId(c,f),searcher:d});return h&&h.length?[{idx:l,item:c,matches:h}]:[]}const u=[];for(let f=0,d=a.children.length;f{if(Xe(a)){let l=r(n,a,c);l.length&&(s[c]||(s[c]={idx:c,item:a,matches:[]},i.push(s[c])),l.forEach(({matches:u})=>{s[c].matches.push(...u)}))}}),i}_searchObjectList(t){const n=Oi(t,this.options),{keys:r,records:o}=this._myIndex,s=[];return o.forEach(({$:i,i:a})=>{if(!Xe(i))return;let c=[];r.forEach((l,u)=>{c.push(...this._findMatches({key:l,value:i[u],searcher:n}))}),c.length&&s.push({idx:a,item:i,matches:c})}),s}_findMatches({key:t,value:n,searcher:r}){if(!Xe(n))return[];let o=[];if($t(n))n.forEach(({v:s,i,n:a})=>{if(!Xe(s))return;const{isMatch:c,score:l,indices:u}=r.searchIn(s);c&&o.push({score:l,key:t,value:s,idx:i,norm:a,indices:u})});else{const{v:s,n:i}=n,{isMatch:a,score:c,indices:l}=r.searchIn(s);a&&o.push({score:c,key:t,value:s,norm:i,indices:l})}return o}}Zn.version="6.6.2";Zn.createIndex=ih;Zn.parseIndex=cT;Zn.config=ae;Zn.parseQuery=uh;CT(ET);function IT(e){return zo()?(wn(e),!0):!1}function St(e){return typeof e=="function"?e():M(e)}function LT(e,t,n){const r=()=>{var i,a;return new Zn((i=St(t))!=null?i:[],(a=St(n))==null?void 0:a.fuseOptions)},o=le(r());ge(()=>{var i;return(i=St(n))==null?void 0:i.fuseOptions},()=>{o.value=r()},{deep:!0}),ge(()=>St(t),i=>{o.value.setCollection(i)},{deep:!0});const s=ee(()=>{const i=St(n);if(i!=null&&i.matchAllWhenSearchEmpty&&!St(e))return St(t).map((c,l)=>({item:c,refIndex:l}));const a=i==null?void 0:i.resultLimit;return o.value.search(St(e),a?{limit:a}:void 0)});return{fuse:o,results:s}}function OT(e){var t;const n=St(e);return(t=n==null?void 0:n.$el)!=null?t:n}/*! +`)},domwindow(){return r("domwindow")},bigint(o){return r("bigint:"+o.toString())},process(){return r("process")},timer(){return r("timer")},pipe(){return r("pipe")},tcp(){return r("tcp")},udp(){return r("udp")},tty(){return r("tty")},statwatcher(){return r("statwatcher")},securecontext(){return r("securecontext")},connection(){return r("connection")},zlib(){return r("zlib")},context(){return r("context")},nodescript(){return r("nodescript")},httpparser(){return r("httpparser")},dataview(){return r("dataview")},signal(){return r("signal")},fsevent(){return r("fsevent")},tlswrap(){return r("tlswrap")}}}const ld="[native code] }",u1=ld.length;function cl(e){return typeof e!="function"?!1:Function.prototype.toString.call(e).slice(-u1)===ld}class Zt{constructor(t,n){t=this.words=t||[],this.sigBytes=n===void 0?t.length*4:n}toString(t){return(t||f1).stringify(this)}concat(t){if(this.clamp(),this.sigBytes%4)for(let n=0;n>>2]>>>24-n%4*8&255;this.words[this.sigBytes+n>>>2]|=r<<24-(this.sigBytes+n)%4*8}else for(let n=0;n>>2]=t.words[n>>>2];return this.sigBytes+=t.sigBytes,this}clamp(){this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4)}clone(){return new Zt([...this.words])}}const f1={stringify(e){const t=[];for(let n=0;n>>2]>>>24-n%4*8&255;t.push((r>>>4).toString(16),(r&15).toString(16))}return t.join("")}},d1={stringify(e){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=[];for(let r=0;r>>2]>>>24-r%4*8&255,s=e.words[r+1>>>2]>>>24-(r+1)%4*8&255,i=e.words[r+2>>>2]>>>24-(r+2)%4*8&255,a=o<<16|s<<8|i;for(let c=0;c<4&&r*8+c*6>>6*(3-c)&63))}return n.join("")}},h1={parse(e){const t=e.length,n=[];for(let r=0;r>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new Zt(n,t)}},p1={parse(e){return h1.parse(unescape(encodeURIComponent(e)))}};class m1{constructor(){this._data=new Zt,this._nDataBytes=0,this._minBufferSize=0,this.blockSize=512/32}reset(){this._data=new Zt,this._nDataBytes=0}_append(t){typeof t=="string"&&(t=p1.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes}_doProcessBlock(t,n){}_process(t){let n,r=this._data.sigBytes/(this.blockSize*4);t?r=Math.ceil(r):r=Math.max((r|0)-this._minBufferSize,0);const o=r*this.blockSize,s=Math.min(o*4,this._data.sigBytes);if(o){for(let i=0;i>>7)^(g<<14|g>>>18)^g>>>3,P=cn[d-2],S=(P<<15|P>>>17)^(P<<13|P>>>19)^P>>>10;cn[d]=_+cn[d-7]+S+cn[d-16]}const h=c&l^~c&u,m=o&s^o&i^s&i,p=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),y=(c<<26|c>>>6)^(c<<21|c>>>11)^(c<<7|c>>>25),v=f+y+h+y1[d]+cn[d],b=p+m;f=u,u=l,l=c,c=a+v|0,a=i,i=s,s=o,o=v+b|0}r[0]=r[0]+o|0,r[1]=r[1]+s|0,r[2]=r[2]+i|0,r[3]=r[3]+a|0,r[4]=r[4]+c|0,r[5]=r[5]+l|0,r[6]=r[6]+u|0,r[7]=r[7]+f|0}finalize(t){super.finalize(t);const n=this._nDataBytes*8,r=this._data.sigBytes*8;return this._data.words[r>>>5]|=128<<24-r%32,this._data.words[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),this._data.words[(r+64>>>9<<4)+15]=n,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}}function v1(e){return new _1().finalize(e).toString(d1)}function Oo(e,t={}){const n=typeof e=="string"?e:bi(e,t);return v1(n).slice(0,10)}function b1(e,t,n={}){return e===t||bi(e,n)===bi(t,n)}const w1={path:"/",watch:!0,decode:e=>Ar(decodeURIComponent(e)),encode:e=>encodeURIComponent(typeof e=="string"?e:JSON.stringify(e))};function lo(e,t){var c;const n={...w1,...t},r=E1(n)||{};let o;n.maxAge!==void 0?o=n.maxAge*1e3:n.expires&&(o=n.expires.getTime()-Date.now());const s=o!==void 0&&o<=0,i=s?void 0:r[e]??((c=n.default)==null?void 0:c.call(n)),a=o&&!s?S1(i,o):le(i);{const l=typeof BroadcastChannel>"u"?null:new BroadcastChannel(`nuxt:cookies:${e}`),u=()=>{n.readonly||b1(a.value,r[e])||(T1(e,a.value,n),l==null||l.postMessage(n.encode(a.value)))};let f=!1;Nr()&&wn(()=>{f=!0,u(),l==null||l.close()}),l&&(l.onmessage=d=>{f=!0,r[e]=a.value=n.decode(d.data),wt(()=>{f=!1})}),n.watch?ge(a,()=>{f||u()},{deep:n.watch!=="shallow"}):u()}return a}function E1(e={}){return Xy(document.cookie,e)}function C1(e,t,n={}){return t==null?Dc(e,t,{...n,maxAge:-1}):Dc(e,t,n)}function T1(e,t,n={}){document.cookie=C1(e,t,n)}const ul=2147483647;function S1(e,t){let n,r=0;return Nr()&&wn(()=>{clearTimeout(n)}),cp((o,s)=>{function i(){clearTimeout(n);const a=t-r,c=a{if(r+=c,r{const t=ye();e=ad(e),await Promise.all(e.map(n=>A1(t.vueApp._context.components[n])))},x1=e=>P1(e);function A1(e){if(e!=null&&e.__asyncLoader&&!e.__asyncResolved)return e.__asyncLoader()}async function ud(e,t=lt()){const{path:n,matched:r}=t.resolve(e);if(!r.length||(t._routePreloaded||(t._routePreloaded=new Set),t._routePreloaded.has(n)))return;const o=t._preloadPromises=t._preloadPromises||[];if(o.length>4)return Promise.all(o).then(()=>ud(e,t));t._routePreloaded.add(n);const s=r.map(i=>{var a;return(a=i.components)==null?void 0:a.default}).filter(i=>typeof i=="function");for(const i of s){const a=Promise.resolve(i()).catch(()=>{}).finally(()=>o.splice(o.indexOf(a)));o.push(a)}await Promise.all(o)}function R1(e={}){const t=e.path||window.location.pathname;let n={};try{n=Ar(sessionStorage.getItem("nuxt:reload")||"{}")}catch{}if(e.force||(n==null?void 0:n.path)!==t||(n==null?void 0:n.expires)e.find(t=>t!==void 0),L1="noopener noreferrer";function O1(e){const t=e.componentName||"NuxtLink",n=(r,o)=>{if(!r||e.trailingSlash!=="append"&&e.trailingSlash!=="remove")return r;if(typeof r=="string")return fl(r,e.trailingSlash);const s="path"in r?r.path:o(r).path;return{...r,name:void 0,path:fl(s,e.trailingSlash)}};return xe({name:t,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},setup(r,{slots:o}){const s=lt(),i=Je(),a=ee(()=>{const h=r.to||r.href||"";return n(h,s.resolve)}),c=ee(()=>typeof a.value=="string"&&kt(a.value,{acceptRelative:!0})),l=ee(()=>r.external||r.target&&r.target!=="_self"?!0:typeof a.value=="object"?!1:a.value===""||c.value),u=le(!1),f=le(null),d=h=>{var m;f.value=r.custom?(m=h==null?void 0:h.$el)==null?void 0:m.nextElementSibling:h==null?void 0:h.$el};if(r.prefetch!==!1&&r.noPrefetch!==!0&&r.target!=="_blank"&&!$1()){const m=ye();let p,y=null;Nt(()=>{const v=k1();os(()=>{p=_i(()=>{var b;(b=f==null?void 0:f.value)!=null&&b.tagName&&(y=v.observe(f.value,async()=>{y==null||y(),y=null;const g=typeof a.value=="string"?a.value:s.resolve(a.value).fullPath;await Promise.all([m.hooks.callHook("link:prefetch",g).catch(()=>{}),!l.value&&ud(a.value,s).catch(()=>{})]),u.value=!0}))})})}),Jn(()=>{p&&Qv(p),y==null||y(),y=null})}return()=>{var v,b;if(!l.value){const g={ref:d,to:a.value,activeClass:r.activeClass||e.activeClass,exactActiveClass:r.exactActiveClass||e.exactActiveClass,replace:r.replace,ariaCurrentValue:r.ariaCurrentValue,custom:r.custom};return r.custom||(u.value&&(g.class=r.prefetchedClass||e.prefetchedClass),g.rel=r.rel),tt(bp("RouterLink"),g,o.default)}const h=typeof a.value=="object"?((v=s.resolve(a.value))==null?void 0:v.href)??null:a.value&&!r.external&&!c.value?n(Tn(i.app.baseURL,a.value),s.resolve):a.value||null,m=r.target||null,p=r.noRel?null:I1(r.rel,e.externalRelAttribute,h?L1:"")||null,y=()=>zf(h,{replace:r.replace});return r.custom?o.default?o.default({href:h,navigate:y,get route(){if(!h)return;const g=jr(h);return{path:g.pathname,fullPath:g.pathname,get query(){return wf(g.search)},hash:g.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:h}},rel:p,target:m,isExternal:l.value,isActive:!1,isExactActive:!1}):null:tt("a",{ref:f,href:h,rel:p,target:m},(b=o.default)==null?void 0:b.call(o))}}})}const Fr=O1(T_);function fl(e,t){const n=t==="append"?Po:tn;return kt(e)&&!e.startsWith("http")?e:n(e,!0)}function k1(){const e=ye();if(e._observer)return e._observer;let t=null;const n=new Map,r=(s,i)=>(t||(t=new IntersectionObserver(a=>{for(const c of a){const l=n.get(c.target);(c.isIntersecting||c.intersectionRatio>0)&&l&&l()}})),n.set(s,i),t.observe(s),()=>{n.delete(s),t.unobserve(s),n.size===0&&(t.disconnect(),t=null)});return e._observer={observe:r}}function $1(){const e=navigator.connection;return!!(e&&(e.saveData||/2g/.test(e.effectiveType)))}const Rn=()=>{const e=At("dd-pages",()=>It(Qt({}))),t=At("dd-surrounds",()=>It(Qt({}))),n=At("dd-navigation"),r=At("dd-globals",()=>It(Qt({})));return{pages:e,surrounds:t,navigation:n,globals:r}},Vr=()=>{const{navigation:e,pages:t,surrounds:n,globals:r}=Rn(),o=ee(()=>tn(ct().path)),s=ee(()=>t.value[o.value]),i=ee(()=>n.value[o.value]),a=ee(()=>{var h,m;return(m=(h=s==null?void 0:s.value)==null?void 0:h.body)==null?void 0:m.toc}),c=ee(()=>{var h;return(h=s.value)==null?void 0:h._type}),l=ee(()=>{var h;return(h=s.value)==null?void 0:h.excerpt}),u=ee(()=>{var h;return(h=s.value)==null?void 0:h.layout}),f=ee(()=>{var h;return(h=i.value)==null?void 0:h[1]}),d=ee(()=>{var h;return(h=i.value)==null?void 0:h[0]});return{globals:r,navigation:e,surround:i,page:s,excerpt:l,toc:a,type:c,layout:u,next:f,prev:d}},fd=e=>{if(!e.children)return e._path;for(const t of(e==null?void 0:e.children)||[]){const n=fd(t);if(n)return n}},dd=(e,t)=>{for(const n of t){if(n._path===e&&!n._id)return n.children;if(n.children){const r=dd(e,n.children);if(r)return r}}},hd=(e,t)=>{for(const n of t){if(n._path===e)return n;if(n.children){const r=hd(e,n.children);if(r)return r}}},M1=(e,t,n)=>{let r;const o=(s,i)=>{for(const a of i)if(!(s!=="/"&&a._path==="/")){if(s!=null&&s.startsWith(a._path)&&a[t]&&(r=a[t]),a._path===s)return;a.children&&o(s,a.children)}};return o(e,n),r},_a=()=>({navBottomLink:fd,navDirFromPath:dd,navPageFromPath:hd,navKeyFromPath:M1});function va(e){return JSON.stringify(e,N1)}function N1(e,t){return t instanceof RegExp?`--REGEX ${t.toString()}`:t}const pd=e=>{let t=va(e);return t=typeof Buffer<"u"?Buffer.from(t).toString("base64"):btoa(t),t=t.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),(t.match(/.{1,100}/g)||[]).join("/")},ba=()=>({isEnabled:()=>{const r=ct().query;return Object.prototype.hasOwnProperty.call(r,"preview")&&!r.preview?!1:!!(r.preview||lo("previewToken").value||sessionStorage.getItem("previewToken"))},getPreviewToken:()=>lo("previewToken").value||sessionStorage.getItem("previewToken")||void 0,setPreviewToken:r=>{lo("previewToken").value=r,ct().query.preview=r||"",r?sessionStorage.setItem("previewToken",r):sessionStorage.removeItem("previewToken"),window.location.reload()}}),ko=e=>Ef(e,Je().public.content.api.baseURL),md=()=>{const{experimental:e}=Je().public.content;return e.clientDB?!0:ba().isEnabled()},dl=(e,t)=>t.split(".").reduce((n,r)=>n&&n[r],e),wa=(e,t)=>Object.keys(e).filter(t).reduce((n,r)=>Object.assign(n,{[r]:e[r]}),{}),CP=e=>t=>e&&e.length?wa(t,n=>!e.includes(n)):t,TP=e=>t=>Array.isArray(t)?t.map(n=>e(n)):e(t),gd=e=>{const t=[],n=[];for(const r of e)["$","_"].includes(r)?t.push(r):n.push(r);return{prefixes:t,properties:n}},SP=(e=[])=>t=>{if(e.length===0||!t)return t;const{prefixes:n,properties:r}=gd(e);return wa(t,o=>!r.includes(o)&&!n.includes(o[0]))},PP=(e=[])=>t=>{if(e.length===0||!t)return t;const{prefixes:n,properties:r}=gd(e);return wa(t,o=>r.includes(o)||n.includes(o[0]))},xP=(e,t)=>{const n=new Intl.Collator(t.$locale,{numeric:t.$numeric,caseFirst:t.$caseFirst,sensitivity:t.$sensitivity}),r=Object.keys(t).filter(o=>!o.startsWith("$"));for(const o of r)e=e.sort((s,i)=>{const a=[dl(s,o),dl(i,o)].map(c=>{if(c!==null)return c instanceof Date?c.toISOString():c});return t[o]===-1&&a.reverse(),n.compare(a[0],a[1])});return e},AP=(e,t="Expected an array")=>{if(!Array.isArray(e))throw new TypeError(t)},Ct=e=>Array.isArray(e)?e:[void 0,null].includes(e)?[]:[e],D1=["sort","where","only","without"];function H1(e,t={}){const n={};for(const i of Object.keys(t.initialParams||{}))n[i]=D1.includes(i)?Ct(t.initialParams[i]):t.initialParams[i];const r=(i,a=c=>c)=>(...c)=>(n[i]=a(...c),s),o=i=>{var a;return t.legacy?i!=null&&i.surround?i.surround:i&&(i!=null&&i.dirConfig&&(i.result={_path:(a=i.dirConfig)==null?void 0:a._path,...i.result,_dir:i.dirConfig}),i!=null&&i._path||Array.isArray(i)||!Object.prototype.hasOwnProperty.call(i,"result")?i:i==null?void 0:i.result):i},s={params:()=>({...n,...n.where?{where:[...Ct(n.where)]}:{},...n.sort?{sort:[...Ct(n.sort)]}:{}}),only:r("only",Ct),without:r("without",Ct),where:r("where",i=>[...Ct(n.where),...Ct(i)]),sort:r("sort",i=>[...Ct(n.sort),...Ct(i)]),limit:r("limit",i=>parseInt(String(i),10)),skip:r("skip",i=>parseInt(String(i),10)),find:()=>e(s).then(o),findOne:()=>e(r("first")(!0)).then(o),count:()=>e(r("count")(!0)).then(o),locale:i=>s.where({_locale:i}),withSurround:r("surround",(i,a)=>({query:i,...a})),withDirConfig:()=>r("dirConfig")(!0)};return t.legacy&&(s.findSurround=(i,a)=>s.withSurround(i,a).find().then(o)),s}const j1=()=>async e=>{const{content:t}=Je().public,n=e.params(),r=t.experimental.stripQueryParameters?ko(`/query/${`${Oo(n)}.${t.integrity}`}/${pd(n)}.json`):ko(`/query/${Oo(n)}.${t.integrity}.json`);if(md())return(await k(()=>import("./client-db.4GqS-Rxy.js"),__vite__mapDeps([150,23]),import.meta.url).then(i=>i.useContentDatabase())).fetch(e);const o=await $fetch(r,{method:"GET",responseType:"json",params:t.experimental.stripQueryParameters?void 0:{_params:va(n),previewToken:ba().getPreviewToken()}});if(typeof o=="string"&&o.startsWith(""))throw new Error("Not found");return o};function uo(e,...t){const{content:n}=Je().public,r=H1(j1(),{initialParams:typeof e!="string"?e:{},legacy:!0});let o;typeof e=="string"&&(o=oi(Tn(e,...t)));const s=r.params;return r.params=()=>{var a,c,l;const i=s();return o&&(i.where=i.where||[],i.first&&(i.where||[]).length===0?i.where.push({_path:tn(o)}):i.where.push({_path:new RegExp(`^${o.replace(/[-[\]{}()*+.,^$\s/]/g,"\\$&")}`)})),(a=i.sort)!=null&&a.length||(i.sort=[{_file:1,$numeric:!0}]),n.locales.length&&((l=(c=i.where)==null?void 0:c.find(f=>f._locale))!=null&&l._locale||(i.where=i.where||[],i.where.push({_locale:n.defaultLocale}))),i},r}const F1=async e=>{const{content:t}=Je().public;typeof(e==null?void 0:e.params)!="function"&&(e=uo(e));const n=e.params(),r=t.experimental.stripQueryParameters?ko(`/navigation/${`${Oo(n)}.${t.integrity}`}/${pd(n)}.json`):ko(`/navigation/${Oo(n)}.${t.integrity}.json`);if(md())return(await k(()=>import("./client-db.4GqS-Rxy.js"),__vite__mapDeps([150,23]),import.meta.url).then(i=>i.generateNavigation))(n);const o=await $fetch(r,{method:"GET",responseType:"json",params:t.experimental.stripQueryParameters?void 0:{_params:va(n),previewToken:ba().getPreviewToken()}});if(typeof o=="string"&&o.startsWith(""))throw new Error("Not found");return o},V1=Ve(e=>{var l,u,f,d;const t=(u=(l=Je())==null?void 0:l.public)==null?void 0:u.content.documentDriven,n=(d=(f=Je())==null?void 0:f.public)==null?void 0:d.content.experimental.clientDB,{navigation:r,pages:o,globals:s,surrounds:i}=Rn(),a=(h,m,p,y)=>{var v;if(m&&(m!=null&&m.layout))return m.layout;if(h.matched.length&&((v=h.matched[0].meta)!=null&&v.layout))return h.matched[0].meta.layout;if(p&&m){const{navKeyFromPath:b}=_a(),g=b(m._path,"layout",p);if(g)return g}if(t.layoutFallbacks&&y){let b;for(const g of t.layoutFallbacks)if(y[g]&&y[g].layout){b=y[g].layout;break}if(b)return b}return"default"},c=async(h,m=!1)=>{e.callHook("content:document-driven:start",{route:h,dedup:m});const p=h.meta.documentDriven||{};if(h.meta.documentDriven===!1)return;const y=tn(h.path),v=[];if(t.navigation&&p.navigation!==!1){const b=()=>{const{navigation:g}=Rn();return g.value&&!m?g.value:F1().then(_=>(g.value=_,_)).catch(()=>null)};v.push(b)}else v.push(()=>Promise.resolve(null));if(t.globals){const b=()=>{const{globals:g}=Rn();if(typeof t.globals=="object"&&Array.isArray(t.globals)){console.log("Globals must be a list of keys with QueryBuilderParams as a value.");return}return Promise.all(Object.entries(t.globals).map(([_,P])=>{if(!m&&g.value[_])return g.value[_];let S="findOne";return P!=null&&P.type&&(S=P.type),uo(P)[S]().catch(()=>null)})).then(_=>_.reduce((P,S,I)=>{const L=Object.keys(t.globals)[I];return P[L]=S,P},{}))};v.push(b)}else v.push(()=>Promise.resolve(null));if(t.page&&p.page!==!1){let b={_path:y};typeof p.page=="string"&&(b={_path:p.page}),typeof p.page=="object"&&(b=p.page);const g=()=>{const{pages:_}=Rn();return!m&&_.value[y]&&_.value[y]._path===y?_.value[y]:uo().where(b).findOne().catch(()=>null)};v.push(g)}else v.push(()=>Promise.resolve(null));if(t.surround&&p.surround!==!1){let b=y;["string","object"].includes(typeof p.page)&&(b=p.page),["string","object"].includes(typeof p.surround)&&(b=p.surround);const g=()=>{const{surrounds:_}=Rn();return!m&&_.value[y]?_.value[y]:uo().where({_partial:{$not:!0},navigation:{$not:!1}}).without(["body"]).findSurround(b).catch(()=>null)};v.push(g)}else v.push(()=>Promise.resolve(null));return await Promise.all(v.map(b=>b())).then(async([b,g,_,P])=>{var I,L;b&&(r.value=b),g&&(s.value=g),P&&(i.value[y]=P);const S=(_==null?void 0:_.redirect)||((L=(I=_==null?void 0:_._dir)==null?void 0:I.navigation)==null?void 0:L.redirect);if(S)return o.value[y]=_,S;if(_){const H=a(h,_,b,g),R=cr[H];R&&typeof R=="function"&&await R(),h.meta.layout=H,_.layout=H}o.value[y]=_,await e.callHook("content:document-driven:finish",{route:h,dedup:m,page:_,navigation:b,globals:g,surround:P})})};{const h=lt();e.hook("link:prefetch",m=>{if(!(m in o.value)&&!kt(m)){const p=h.resolve(m);p.matched.length>0&&c(p)}}),e.hooks.hook("content:document-driven:finish",({page:m})=>{var p;(p=m==null?void 0:m.body)!=null&&p.children&&yd(m.body.children)})}m_(async(h,m)=>{if(!n&&h.path===m.path){if(!h.meta.layout){const y=tn(h.path);o.value[y]&&(h.meta.layout=o.value[y].layout)}return}const p=await c(h,!1);if(p)return kt(p)?If(e,zf,[p,{external:!0}]):p}),e.hook("app:data:refresh",async()=>await c(ct(),!0))});function yd(e){for(const t of e)if(t.children&&yd(t.children),t.type==="element"&&t.tag){const n=r1(t.tag);for(const r of["Prose"+n,n])Zb.includes(r)&&x1(r)}}const B1=Ve(e=>{const t=Je().public.studio||{},n=ct(),r=lo("previewToken",{sameSite:"none",secure:!0}),o=At("studio-client-db",()=>null);async function s(){const i=await k(()=>import("./useStudio.x8TXSxM4.js"),__vite__mapDeps([151,152]),import.meta.url).then(l=>l.useStudio),{mountPreviewUI:a,initiateIframeCommunication:c}=i();a(),c()}if(t.apiURL){if(Object.prototype.hasOwnProperty.call(n.query,"preview")&&!n.query.preview||!n.query.preview&&!r.value)return;n.query.preview&&(r.value=String(n.query.preview)),window.sessionStorage.setItem("previewToken",String(r.value)),e.hook("content:storage",i=>{o.value=i}),e.hook("app:mounted",async()=>{await s()})}});let Ea=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,n)=>(n&=63,n<36?t+=n.toString(36):n<62?t+=(n-26).toString(36).toUpperCase():n>62?t+="-":t+="_",t),"");const _d=new RegExp("\\{([^}]+)\\}","g"),z1="@dark",U1="@light",K1="@initial";function hl(e,t,n,r="."){typeof t=="string"&&(t=t.split(r));const o=t.length-1;for(let i=0;it.includes(i))){r[o]={value:e[o]};continue}r[o]=bd(e[o],t,n)}}return r}function W1(e={},t={}){const n={key:"attributes.variable",onNotFound:!1,...t};function r(o=void 0,s){if(!o)return M(e);const i={...n,...s},{key:a,onNotFound:c}=i,l=$o(M(e),o);if(!l&&typeof c=="function"){c(o,i);return}return a?l&&(l[a]?l[a]:$o(l,a)):l}return r.bind(this)}function wd(e){return Array.isArray(e)&&(e=e.join("-")),e.charAt(0)==="{"&&e.charAt(e.length-1)==="}"&&(e=e.substr(1,e.length-2)),`--${e.split(".").join("-")}`}function q1(e,t,n,r,o=[],s,i){var c;const a=Q1(e,t,r,s,i);return a||((c=s==null?void 0:s.utils)!=null&&c[e]?typeof s.utils[e]=="function"?s.utils[e](t):t?s.utils[e]:{}:(t=G1(e,t,o,s,i),{[e]:t}))}function G1(e,t,n,r,o){return(Array.isArray(t)||typeof t=="string"||typeof t=="number")&&(Array.isArray(t)?t=t.map(s=>pl(e,s,n,r,o)).join(","):t=pl(e,t,n,r,o)),t}function pl(e,t,n,r,o){return typeof t=="number"?t:(t.match(_d)&&(t=Ed(e,t,n,r,o)),t==="{}"?"":t)}function Ed(e,t,n,r,o){return typeof t!="string"||(t=t.replace(_d,(s,i)=>{const a=wd(i),c=`var(${a})`;if(n.includes(a))return c;const l=r.$tokens(i,{key:void 0,loc:o}),u=typeof l=="string"?l:(l==null?void 0:l.variable)||(l==null?void 0:l.value);return u||c})),t}function Q1(e,t,n,r,o){if(e.startsWith("@")){const s=a=>{a=r.options.colorSchemeMode==="class"?`:root.${a}`:`@media (prefers-color-scheme: ${a})`;const c=a.startsWith("@media");return r!=null&&r.runtime?{"@media":{[a]:t}}:{[c?a:`${a} &`]:t}};if(e===z1)return s("dark");if(e===U1)return s("light");if(e===K1){const a=r.$tokens("media.initial",{key:"value",onNotFound:!1,loc:o});return{[`@media${a?` ${a}`:""}`]:t}}const i=r.$tokens("media",{key:void 0,loc:o});if(i){const a=e.replace("@","");if(i[a])return{[`@media ${i[a].value}`]:t}}return{[e]:t}}}function J1(e,t,n,r){var i;let o="";if(e==="dark"||e==="light")r==="class"?o=`:root.${e}`:o=`(prefers-color-scheme: ${e})`;else if(e!=="initial"&&n){const a=(i=n==null?void 0:n.media)==null?void 0:i[e];a&&(o=a.value)}let s;return o?o.startsWith(".")?s=`@media { :root${o} {`:o.startsWith(":root")?s=`@media { ${o} {`:s=`@media ${o} { :root {`:s="@media { :root {",`${`${`${s}--pinceau-mq: ${String(e)}; ${t}`} } }`} +`}const ml=/\s*,\s*(?![^()]*\))/,Y1=(e,t)=>e.reduce((n,r)=>(n.push(...t.map(o=>o.includes("&")?o.replace(/&/g,/[ +>|~]/.test(r)&&/&.*&/.test(o)?`:is(${r})`:r):`${r} ${o}`)),n),[]),{prototype:{toString:Z1}}=Object,X1=(e,t=void 0)=>{const n=new WeakSet,r=(s,i,a,c,l,u,f)=>{for(let d=0;d{let u="";for(const f in s){const d=f.charCodeAt(0)===64,h=f.charCodeAt(0)===45&&f.charCodeAt(1)===45;for(const m of d&&Array.isArray(s[f])?s[f]:[s[f]]){if(t&&(f!==c||m!==l)){const y=t(f,m,s,i);if(y!==null){u+=typeof y=="object"&&y?o(y,i,a,f,m):y??"";continue}}if(typeof m=="object"&&m&&m.toString===Z1){n.has(i)&&(n.delete(i),u+="}");const y=Object(f);let v;d?(v=i,u+=o(m,v,a.concat(y))):(v=i.length?Y1(i,f.split(ml)):f.split(ml),u+=o(m,v,a)),n.has(y)&&(n.delete(y),u+="}"),n.has(v)&&(n.delete(v),u+="}")}else u=r(u,i,a,f,m,d,h)}}return u};return o(e,[],[])},Cd=".phy[--]";function ew(e,t={},n,r){const o=le(),s=le(t),i={},a=(m,p)=>X1(m,(y,v,b,g)=>q1(y,v,b,g,[],{$tokens:e,utils:s.value,options:{colorSchemeMode:n,runtime:!0}},p));function c(){const m=globalThis||window;let p,y;if(m&&m.document){const v=`pinceau-runtime${r?`-${r}`:""}`,b=m.document;if(p=b.querySelector(`style#${v}`),!p){const g=b.createElement("style");g.id=v,g.type="text/css",p=b.head.appendChild(g)}y=b.querySelector(`style#pinceau-runtime-hydratable${r?`-${r}`:""}`)}return o.value=(p==null?void 0:p.sheet)||tw(),y?l(y):void 0}function l(m){var y,v;const p={};for(const b of Object.entries(((y=m==null?void 0:m.sheet)==null?void 0:y.cssRules)||((v=o.value)==null?void 0:v.cssRules)||{})){const[g,_]=b,P=nw(_);if(!P||!P.uid)continue;p[P.uid]||(p[P.uid]={});const S=o.value.insertRule(_.cssText,Number(g));p[P.uid][P.type]=o.value.cssRules.item(S)}return m&&m.remove(),p}function u(){return o.value?Object.entries(o.value.cssRules).reduce((m,[,p])=>(m+=`${p==null?void 0:p.cssText} `||"",m),""):""}function f(m,p,y,v,b){if(!Object.keys(y).length)return;const g=a({"@media":{[Cd]:{"--puid":`${m}-${p}`},...y}},b);if(!g)return;v&&d(v);const _=o.value.insertRule(g);return o.value.cssRules[_]}function d(m){const p=Object.values(o.value.cssRules).indexOf(m);if(!(typeof p>"u"||isNaN(p)))try{o.value.deleteRule(p)}catch{}}const h=c();return{stringify:a,cache:i,pushDeclaration:f,deleteRule:d,sheet:o,toString:u,hydratableRules:h}}function tw(){return{cssRules:[],insertRule(e,t=this.cssRules.length){return this.cssRules.splice(t,1,{cssText:e}),t},deleteRule(e){delete this.cssRules[e]}}}function nw(e){const t=e.cssRules&&e.cssRules.length?Object.entries(e==null?void 0:e.cssRules).find(([s,i])=>i.selectorText===Cd):void 0;if(!t)return;const n=/--puid:(.*)?-(c|v|p)?/m,[,r,o]=t[1].cssText.match(n);if(r)return{uid:r,type:o}}function rw(e,t,n){var a,c,l;let r;const o=(a=e==null?void 0:e.vnode)==null?void 0:a.el;o&&o.classList?o.classList.forEach(u=>{r||u.startsWith("pc-")&&(r=u.split("pc-")[1])}):r=Ea(6);const s=(l=(c=e==null?void 0:e.vnode)==null?void 0:c.type)==null?void 0:l.__scopeId,i={uid:r,componentId:s?`[${s}]`:"",uniqueClassName:`pc-${r}`};return t.value.c=i.uniqueClassName,ee(()=>i)}function ow(e,t={},n){const r=le(),o=le(e||{});t=Object.assign({key:"variable"},t||{});const s=W1(o,t);let i={};c();function a(p){var y;for(const v of p.styleSheets)if((y=v==null?void 0:v.ownerNode)!=null&&y.textContent.includes("--pinceau-mq"))return v.ownerNode}function c(){var y;const p=globalThis||window;if(p&&p.document){let v=document.querySelector("#pinceau-theme");v||(v=a(document)),r.value=v==null?void 0:v.sheet,r.value&&l((y=r.value)==null?void 0:y.cssRules)}}function l(p){i={},Object.entries(p||{}).forEach(([y,v])=>{var g,_;if((v==null?void 0:v.type)!==4&&!((g=v==null?void 0:v.cssText)!=null&&g.includes("--pinceau-mq")))return!1;let b="initial";(_=v.cssText.match(/--([\w-]+)\s*:\s*(.+?);/gm))==null||_.forEach(P=>{var H;const[S,I]=P.replace(";","").split(/:\s(.*)/s);if(S==="--pinceau-mq"){if(b=I,!i[I]){const R=(H=Object.entries((v==null?void 0:v.cssRules)||{}).find(([T,C])=>C==null?void 0:C.cssText.includes(`--pinceau-mq: ${I}`)))==null?void 0:H[1];R&&(i[I]=R)}return}const L=[...S.substring(2).split("-")];hl(o.value,L,h(L,I,S,b))})})}function u(p){var b;const y=Array.from(new Set(["dark","light",...Object.keys((p==null?void 0:p.media)||{}),...Object.keys(((b=o.value)==null?void 0:b.media)||{})])),v=bd(p||{},y,!0);vd(v,(g,_,P)=>f(P,g.value))}function f(p,y,v="initial"){var _;if(typeof y=="object"){Object.entries(y).forEach(([P,S])=>f(p,S,P));return}const b=wd(p);i!=null&&i[v]||m(v);const g=Ed(void 0,y,[],{$tokens:s});hl(o.value,p,h(p,g,b,v)),(_=i==null?void 0:i[v])==null||_.style.setProperty(b,g)}function d(p){return ee({get(){return $o(o.value,`${p}.value`)},set(y){f(p,y)}})}function h(p,y,v,b="initial"){const g={value:y,variable:`var(${v})`},_=$o(o.value,p);return _&&!v.startsWith("--media")&&(typeof(_==null?void 0:_.value)=="object"?g.value={..._.value,[b]:y}:g.value={initial:_.value,[b]:y}),g}function m(p){if(i!=null&&i[p])return i==null?void 0:i[p];const y=J1(p,"",o.value,n),v=r.value.insertRule(y,r.value.cssRules.length);return i[p]=r.value.cssRules.item(v).cssRules[0],i[p]}return{$tokens:s,updateToken:f,updateTheme:u,reactiveToken:d,resolveStylesheet:c,theme:o}}function sw(e,t,n,r){var s,i;let o=(i=(s=n.hydratableRules)==null?void 0:s[e.value.uid])==null?void 0:i.c;ge(()=>t,a=>{a=iw(e.value,a),o=n.pushDeclaration(e.value.uid,"c",a,o,{...r,type:"c"})},{immediate:!o,deep:!0}),wn(()=>o&&n.deleteRule(o))}function iw(e,t){const n={},r=`.${e.uniqueClassName}${e.componentId}`;if(t&&Object.keys(t).length){n[r]=n[r]||{};for(const[o,s]of Object.entries(t)){const i=M(s);if(o==="css"){n[r]=Object.assign(n[r],i);continue}if(typeof i=="object")for(const[a,c]of Object.entries(i)){const l=M(c);if(!l)continue;a==="initial"&&(n[r]||(n[r]={}),n[r]||(n[r]={}),n[r][`--${o}`]=l);const u=`@${a}`;n[u]||(n[u]={}),n[u][r]||(n[u][r]={}),n[u][r][`--${vi(o)}`]=l}else{const a=M(i);a&&(n[r][`--${vi(o)}`]=a)}}}return n}const aw=(e,t,n,r,o,s)=>{var l,u;let i=(u=(l=r.hydratableRules)==null?void 0:l[e.value.uid])==null?void 0:u.v;const a=ee(()=>t?lw(e.value,n,t):{}),c=le([]);return ge(a,({cacheId:f,variantsProps:d})=>{let h;if(r.cache[f]){const m=r.cache[f];i=m.rule,h=m.variantClass,m!=null&&m.classes&&(c.value=m.classes),m.count++}else{h=`pv-${Ea(6)}`;const{declaration:m,classes:p}=cw(h,e.value,t,d);c.value=p,i=r.pushDeclaration(e.value.uid,"v",m,void 0,{...s,type:"v"}),r.cache[f]={rule:i,variantClass:h,classes:p,count:1}}o.value.v=h},{immediate:!0}),wn(()=>{var h;const f=a==null?void 0:a.value,d=(h=r.cache)==null?void 0:h[f.cacheId];d&&(d.count--,d.count<=0&&(r.deleteRule(d.rule),delete r.cache[f.cacheId]))}),{variantsClasses:c}};function cw(e,t,n,r){var i,a;let o=[];const s={};if(r&&Object.keys(r).length){const c=`.${e}`;for(const[l,u]of Object.entries(r))if(typeof u=="object")for(const[f,d]of Object.entries(u)){const h=(d==null?void 0:d.toString())||d,m=n[l][h];if(!m)continue;if(s[c]||(s[c]={}),typeof m=="string"||Array.isArray(m)||m!=null&&m.$class){const y=typeof m=="string"||Array.isArray(m)?m:m.$class;o=[...o,...typeof y=="string"?y.split(" "):y],delete m.$class}f==="initial"&&(s[c]||(s[c]={}),s[c]=jn(s[c],m));const p=`@${f}`;s[p]||(s[p]={}),s[p][c]||(s[p][c]={}),s[p][c]=jn(s[p][c],m)}else{const f=((i=u==null?void 0:u.toString)==null?void 0:i.call(u))||u,d=(a=n==null?void 0:n[l])==null?void 0:a[f];if(!d)continue;s[c]||(s[c]={}),s[c]=jn(s[c],d)}}return{declaration:s,classes:o}}function lw(e,t,n){if(!t||!n)return{};let r=e.componentId;const o=Object.entries(t).reduce((s,[i,a])=>(n[i]&&(typeof a=="object"?Object.entries(a).forEach(([c,l])=>r+=`${i}:${c}:${l}|`):r+=`${i}:${a}|`,s[i]=a),s),{});return{cacheId:r,variantsProps:o}}function uw(e,t,n,r){var i,a;let o=(a=(i=n.hydratableRules)==null?void 0:i[e.value.uid])==null?void 0:a.p;const s=ee(()=>t==null?void 0:t.css);ge(s,c=>{c=fw(e.value,c),o&&n.deleteRule(o),o=n.pushDeclaration(e.value.uid,"p",c,o,{...r,type:"c"})},{immediate:!o}),wn(()=>o&&n.deleteRule(o))}function fw(e,t){const n={};if(t){const r=`.${e.uniqueClassName}${e.componentId}`;n[r]=Object.assign(n[r]||{},t)}return n}const dw={theme:{},utils:{},tokensHelperConfig:{},multiApp:!1,colorSchemeMode:"media",dev:!1},hw={install(e,t){t=Object.assign(dw,t);const{theme:n,tokensHelperConfig:r,dev:o,multiApp:s,colorSchemeMode:i,utils:a}=t,c=ow(n,r,i),l=s?Ea(6):void 0,u=ew(c.$tokens,a,i,l);function f(d={},h,m){const p=ht();let y;const v=le({v:"",c:""}),b=rw(p,v);m&&Object.keys(m).length>0&&sw(b,m,u,y);let g;if(h&&Object.keys(h).length>0){const{variantsClasses:_}=aw(b,h,d,u,v,y);g=_}return d!=null&&d.css&&Object.keys(d==null?void 0:d.css).length>0&&uw(b,d,u,y),{$pinceau:ee(()=>{var _;return[v.value.v,v.value.c,(_=g==null?void 0:g.value)==null?void 0:_.join(" ")].join(" ")})}}e.config.globalProperties.$pinceauRuntime=f,e.config.globalProperties.$pinceauTheme=c,e.config.globalProperties.$pinceauSsr={get:()=>u.toString()},e.provide("pinceauRuntime",f),e.provide("pinceauTheme",c)}};function pw(e,t,n){return De("pinceauRuntime")(e,t,n)}function RP(){return De("pinceauTheme")}function IP(e,t=!1){return{type:[String,Object],default:e,required:t}}const mw=e=>({marginTop:e,marginBottom:e}),gw=e=>({marginLeft:e,marginRight:e}),yw=e=>({paddingTop:e,paddingBottom:e}),_w=e=>({paddingLeft:e,paddingRight:e}),vw={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},bw=e=>({overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":e}),ww=e=>({fontSize:`{text.${e}.fontSize}`,lineHeight:`{text.${e}.lineHeight}`}),Ew=e=>({color:`{elements.state.${e}.color.primary} !important`,backgroundColor:`{elements.state.${e}.backgroundColor.primary} !important`,borderColor:`{elements.state.${e}.borderColor.primary} !important`,":deep(p code)":{color:`{elements.state.${e}.color.secondary} !important`,backgroundColor:`{elements.state.${e}.backgroundColor.secondary} !important`},":deep(code)":{color:`{elements.state.${e}.color.primary} !important`,backgroundColor:`{elements.state.${e}.backgroundColor.secondary} !important`},":deep(a code)":{borderColor:`{elements.state.${e}.borderColor.primary} !important`},":deep(a)":{borderColor:"currentColor",code:{backgroundColor:`{elements.state.${e}.backgroundColor.primary} !important`},"&:hover":{color:`{elements.state.${e}.color.secondary} !important`,borderColor:"currentColor !important",code:{backgroundColor:`{elements.state.${e}.backgroundColor.secondary} !important`,color:`{elements.state.${e}.color.secondary} !important`,borderColor:`{elements.state.${e}.borderColor.secondary} !important`}}}}),Cw={my:mw,mx:gw,py:yw,px:_w,truncate:vw,lineClamp:bw,text:ww,stateColors:Ew},Tw=Ve(async e=>e.vueApp.use(hw,{colorSchemeMode:"class",utils:Cw})),Sw="__NUXT_COLOR_MODE__",Pw="ColorScheme",xw="theme",Aw="nuxt-color-mode",Tt=window[Sw],Rw=Ve(e=>{const t=At("color-mode",()=>nt({preference:Tt.preference,value:Tt.value,unknown:!1,forced:!1})).value;Ir({htmlAttrs:{[`data-${xw}`]:ee(()=>t.value)}}),lt().afterEach(o=>{const s=o.meta.colorMode;s&&s!=="system"?(t.value=s,t.forced=!0):(s==="system"&&console.warn("You cannot force the colorMode to system at the page level."),t.forced=!1,t.value=t.preference==="system"?Tt.getColorScheme():t.preference)});let n;function r(){n||!window.matchMedia||(n=window.matchMedia("(prefers-color-scheme: dark)"),n.addEventListener("change",()=>{!t.forced&&t.preference==="system"&&(t.value=Tt.getColorScheme())}))}ge(()=>t.preference,o=>{var s;t.forced||(o==="system"?(t.value=Tt.getColorScheme(),r()):t.value=o,(s=window.localStorage)==null||s.setItem(Aw,o))},{immediate:!0}),ge(()=>t.value,(o,s)=>{Tt.removeColorScheme(s),Tt.addColorScheme(o)}),t.preference==="system"&&r(),e.hook("app:mounted",()=>{t.unknown&&(t.preference=Tt.preference,t.value=Tt.value,t.unknown=!1)}),e.provide("colorMode",t)});function Wn(e,...t){wm(`[vue-recaptcha]: ${e}`,...t)}function ss(e,t){if(!e)throw Wn(t),new Error(`Invariant violation: ${t}`)}const Td="vue-recaptcha-context";function is(){const e=De(Td);if(!e)throw Wn("You may forget to `use` vue-recaptcha plugin"),new Error("useRecaptcha() is called without provider.");return e}function LP(){return is().proxy}function OP(){const e=is();return ss(e.options.v2SiteKey,"Your config is not compatible with recaptcha v2, please provide v2SiteKey"),e.options.v2SiteKey}function kP(){const e=is();return ss(e.options.v3SiteKey,"Your config is not compatible with recaptcha v3, please provide v3SiteKey"),e.options.v3SiteKey}function Iw(e){var t;return ss(e.v2SiteKey||e.v3SiteKey,"You didn't pass v2SiteKey or v3SiteKey to plugin, which may be a mistake"),{...e,loaderOptions:{...e.loaderOptions,params:{...(t=e.loaderOptions)==null?void 0:t.params,render:e.v3SiteKey??"explicit"}}}}function Lw(){const e={};return e.promise=new Promise((t,n)=>{e.resolve=t,e.reject=n}),e}function Ow(e){return t=>e(kw(t))}function kw(e){return{...e,recaptchaApiURL:e.recaptchaApiURL??(e.useRecaptchaNet?"https://www.recaptcha.net/recaptcha/api.js":"https://www.google.com/recaptcha/api.js")}}const as=Lw(),fo="__vueRecaptchaLoaded";typeof window<"u"&&(window[fo]=()=>{as.resolve()});function $w(e){return new URLSearchParams(Mw(e)).toString()}function Mw(e){const t=jn(e,{onload:fo,render:"explicit"});return t.render==="onload"&&(Wn("passing `onload` as `render` param is not allowed"),t.render="explicit"),t.onload!==fo&&(Wn("passing `onload` param with other value is not allowed"),t.onload=fo),Nw(t)}function Nw(e){return Object.entries(e).filter(t=>typeof t[1]=="string")}function Sd(){if(typeof window>"u")return!1;const e=Object.hasOwn(window,"grecaptcha")&&Object.hasOwn(window.grecaptcha,"execute");return e&&as.resolve(),e}function Dw(e,t){function n(){ss(e.value,"ReCAPTCHA is not loaded")}async function r(){await as.promise,e.value=!0}return{async render(o,s){return await r(),t().render(o,s)},reset(o){typeof o>"u"||(n(),t().reset(o))},async execute(o,s){if(!(typeof o>"u"))return await r(),t().execute(o,s)}}}function Hw(e,{getRecaptcha:t=()=>window.grecaptcha}={}){return{install(n,r){const o=le(!1);async function s(){await as.promise,o.value=!0}s().catch(a=>Wn("fail to load reCAPTCHA script",a)),Sd();const i=Iw(r);n.provide(Td,{isReady:o,scriptInjected:!1,proxy:Dw(o,t),useScriptProvider:e(i.loaderOptions),options:i})}}}const jw=Ow(e=>()=>{Ir({link:[{key:"vue-recaptcha-google",rel:"preconnect",href:e.useRecaptchaNet?"https://www.recaptcha.net":"https://www.google.com"},{key:"vue-recaptcha-gstatic",rel:"preconnect",href:"https://www.gstatic.com",crossorigin:""}],script:[{key:"vue-recaptcha",src:`${e.recaptchaApiURL}?${$w(e.params)}`,async:!0,defer:!0,nonce:e.nonce}]})});function Fw(){const e=is();e.scriptInjected?Wn("`useRecaptchaProvider` is used multiple time"):(e.scriptInjected=!0,e.useScriptProvider(),Nt(()=>{Sd()}))}const Vw=Hw(jw),Bw=Ve(({vueApp:e})=>{const{public:{recaptcha:t}}=Je();e.use(Vw,t)}),zw=Ve(()=>{}),Uw=Ve({name:"nuxt:chunk-reload",setup(e){const t=lt(),n=Je(),r=new Set;t.beforeEach(()=>{r.clear()}),e.hook("app:chunkError",({error:s})=>{r.add(s)});function o(s){const a="href"in s&&s.href.startsWith("#")?n.app.baseURL+s.href:Tn(n.app.baseURL,s.fullPath);R1({path:a,persistState:!0})}e.hook("app:manifest:update",()=>{t.beforeResolve(o)}),t.onError((s,i)=>{r.has(s)&&o(i)})}}),Kw=Ve(e=>{const t=le(!1),n=()=>t.value=!0,r=()=>t.value=!1,o=()=>t.value=!t.value;return e.$router.afterEach(()=>setTimeout(r,50)),ge(t,s=>{const i=document.documentElement;s?i.style.overflow="hidden":setTimeout(()=>{i.style.overflow=""},100)},{immediate:!0}),{provide:{menu:{visible:t,close:r,open:n,toggle:o}}}}),Ww=Ve(()=>{navigator&&navigator.userAgent&&navigator.userAgent.match(/Win[a-z0-9]*;/)&&document.documentElement.classList.add("docus-scrollbars")}),qw=[O_,$_,Gv,Jv,Yv,Jb,Yb,V1,B1,Tw,Rw,Bw,zw,Uw,Kw,Ww],Gw=["p","h1","h2","h3","h4","h5","h6","li"];function Mo(e,t){return e.type===t||typeof e.type=="object"&&e.type.tag===t||e.tag===t}function Ca(e){return Mo(e,"text")||Mo(e,Symbol.for("v-txt"))}function Pd(e){var t;return Array.isArray(e.children)||typeof e.children=="string"?e.children:typeof((t=e.children)==null?void 0:t.default)=="function"?e.children.default():[]}function wi(e){if(!e)return"";if(Array.isArray(e))return e.map(wi).join("");if(Ca(e))return e.children||e.value||"";const t=Pd(e);return Array.isArray(t)?t.map(wi).filter(Boolean).join(""):""}function xd(e,t=[]){if(Array.isArray(e))return e.flatMap(r=>xd(r,t));let n=e;return t.some(r=>r==="*"||Mo(e,r))&&(n=Pd(e)||e,!Array.isArray(n)&&Gw.some(r=>Mo(e,r))&&(n=[n])),n}function Ad(e,t=[]){return e=Array.isArray(e)?e:[e],t.length?e.flatMap(n=>Ad(xd(n,[t[0]]),t.slice(1))).filter(n=>!(Ca(n)&&wi(n).trim()==="")):e}function Qw(e,t=[]){return typeof t=="string"&&(t=t.split(",").map(n=>n.trim()).filter(Boolean)),t.length?Ad(e,t).reduce((n,r)=>(Ca(r)?typeof n[n.length-1]=="string"?n[n.length-1]+=r.children:n.push(r.children):n.push(r),n),[]):e}const Jw=(e,t,n,...r)=>e[t]?Sr({...e,[t]:()=>Qw(e[t](),n==null?void 0:n.unwrap)},t,n,...r):Sr(e,t,n,...r),Yw={class:"alert-content"},Zw=xe({__name:"Alert",props:{type:{type:String,default:"info",validator(e){return["info","success","warning","danger","primary"].includes(e)}}},setup(e){return(t,n)=>(q(),ue("div",{class:je(["alert",[e.type]])},[ie("div",Yw,[Jw(t.$slots,"default",{unwrap:"p"},void 0,!0)])],2))}}),Be=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n},Rd=Be(Zw,[["__scopeId","data-v-ed5d92b1"]]),Xw=Object.freeze(Object.defineProperty({__proto__:null,default:Rd},Symbol.toStringTag,{value:"Module"})),eE=xe({props:{vnode:{type:Object,required:!0},route:{type:Object,required:!0},vnodeRef:Object,renderKey:String,trackRootNodes:Boolean},setup(e){const t=e.renderKey,n=e.route,r={};for(const o in e.route)Object.defineProperty(r,o,{get:()=>t===e.renderKey?e.route[o]:n[o]});return Dn(Xo,Qt(r)),()=>tt(e.vnode,{ref:e.vnodeRef})}}),tE=xe({name:"NuxtPage",inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(e,{attrs:t,expose:n}){const r=ye(),o=le(),s=De(Xo,null);n({pageRef:o});const i=De(d_,null);let a;const c=r.deferHydration();return e.pageKey&&ge(()=>e.pageKey,(l,u)=>{l!==u&&r.callHook("page:loading:start")}),()=>tt(sd,{name:e.name,route:e.route,...t},{default:l=>{const u=rE(s,l.route,l.Component),f=s&&s.matched.length===l.route.matched.length;if(!l.Component){if(a&&!f)return a;c();return}if(a&&i&&!i.isCurrent(l.route))return a;if(u&&s&&(!i||i!=null&&i.isCurrent(s)))return f?a:null;const d=yi(l,e.pageKey),h=!!(e.transition??l.route.meta.pageTransition??hi),m=h&&nE([e.transition,l.route.meta.pageTransition,hi,{onAfterLeave:()=>{r.callHook("page:transition:finish",l.Component)}}].filter(Boolean)),p=e.keepalive??l.route.meta.keepalive??C_;return a=Fv(aa,h&&m,Hv(p,tt(ku,{suspensible:!0,onPending:()=>r.callHook("page:start",l.Component),onResolve:()=>{wt(()=>r.callHook("page:finish",l.Component).then(()=>r.callHook("page:loading:end")).finally(c))}},{default:()=>{const y=tt(eE,{key:d||void 0,vnode:l.Component,route:l.route,renderKey:d||void 0,trackRootNodes:h,vnodeRef:o});return p&&(y.type.name=l.Component.type.name||l.Component.type.__name||"RouteProvider"),y}}))).default(),a}})}});function nE(e){const t=e.map(n=>({...n,onAfterLeave:n.onAfterLeave?ya(n.onAfterLeave):void 0}));return jn(...t)}function rE(e,t,n){if(!e)return!1;const r=t.matched.findIndex(o=>{var s;return((s=o.components)==null?void 0:s.default)===(n==null?void 0:n.type)});return!r||r===-1?!1:t.matched.slice(0,r).some((o,s)=>{var i,a,c;return((i=o.components)==null?void 0:i.default)!==((c=(a=e.matched[s])==null?void 0:a.components)==null?void 0:c.default)})||n&&yi({route:t,Component:n})!==yi({route:e,Component:n})}const Id={__name:"AppLoadingBar",props:{throttle:{type:Number,default:200},duration:{type:Number,default:2e3}},setup(e){const t=e,n=ye(),r=nt({percent:0,show:!1,canSucceed:!0});let o=null,s=null,i;function a(){o&&clearInterval(o),s&&clearTimeout(s),o=null}function c(){r.show||(a(),r.percent=0,r.canSucceed=!0,t.throttle?s=setTimeout(d,t.throttle):d())}function l(h){r.percent=Math.min(100,Math.floor(r.percent+h))}function u(){r.percent=100,f()}function f(){a(),setTimeout(()=>{r.show=!1,setTimeout(()=>{r.percent=0},400)},500)}function d(){r.show=!0,i=1e4/Math.floor(t.duration),o=setInterval(()=>{l(i)},100)}return n.hook("content:middleware:start",c),n.hook("page:start",c),n.hook("page:finish",u),Jn(()=>a),(h,m)=>(q(),ue("div",{class:je(["nuxt-progress",{"nuxt-progress-failed":!M(r).canSucceed}]),style:Gn({width:`${M(r).percent}%`,left:M(r).left,opacity:M(r).show?1:0,backgroundSize:`${100/M(r).percent*100}% auto`})},null,6))}},oE=Object.freeze(Object.defineProperty({__proto__:null,default:Id},Symbol.toStringTag,{value:"Module"})),Ld=Object.freeze({left:0,top:0,width:16,height:16}),Od=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Ta=Object.freeze({...Ld,...Od});Object.freeze({...Ta,body:"",hidden:!1});({...Ld});const kd=Object.freeze({width:null,height:null}),$d=Object.freeze({...kd,...Od});function sE(e,t){const n={...e};for(const r in t){const o=t[r],s=typeof o;r in kd?(o===null||o&&(s==="string"||s==="number"))&&(n[r]=o):s===typeof n[r]&&(n[r]=r==="rotate"?o%4:o)}return n}const iE=/[\s,]+/;function aE(e,t){t.split(iE).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function cE(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(o){for(;o<0;)o+=4;return o%4}if(n===""){const o=parseInt(e);return isNaN(o)?0:r(o)}else if(n!==e){let o=0;switch(n){case"%":o=25;break;case"deg":o=90}if(o){let s=parseFloat(e.slice(0,e.length-n.length));return isNaN(s)?0:(s=s/o,s%1===0?r(s):0)}}return t}const lE=/(-?[0-9.]*[0-9]+[0-9.]*)/g,uE=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function gl(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(lE);if(r===null||!r.length)return e;const o=[];let s=r.shift(),i=uE.test(s);for(;;){if(i){const a=parseFloat(s);isNaN(a)?o.push(s):o.push(Math.ceil(a*t*n)/n)}else o.push(s);if(s=r.shift(),s===void 0)return o.join("");i=!i}}const fE=e=>e==="unset"||e==="undefined"||e==="none";function dE(e,t){const n={...Ta,...e},r={...$d,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,r].forEach(m=>{const p=[],y=m.hFlip,v=m.vFlip;let b=m.rotate;y?v?b+=2:(p.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),p.push("scale(-1 1)"),o.top=o.left=0):v&&(p.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),p.push("scale(1 -1)"),o.top=o.left=0);let g;switch(b<0&&(b-=Math.floor(b/4)*4),b=b%4,b){case 1:g=o.height/2+o.top,p.unshift("rotate(90 "+g.toString()+" "+g.toString()+")");break;case 2:p.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:g=o.width/2+o.left,p.unshift("rotate(-90 "+g.toString()+" "+g.toString()+")");break}b%2===1&&(o.left!==o.top&&(g=o.left,o.left=o.top,o.top=g),o.width!==o.height&&(g=o.width,o.width=o.height,o.height=g)),p.length&&(s=''+s+"")});const i=r.width,a=r.height,c=o.width,l=o.height;let u,f;i===null?(f=a===null?"1em":a==="auto"?l:a,u=gl(f,c/l)):(u=i==="auto"?c:i,f=a===null?gl(u,l/c):a==="auto"?l:a);const d={},h=(m,p)=>{fE(p)||(d[m]=p.toString())};return h("width",u),h("height",f),d.viewBox=o.left.toString()+" "+o.top.toString()+" "+c.toString()+" "+l.toString(),{attributes:d,body:s}}const hE=/\sid="(\S+)"/g,pE="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let mE=0;function gE(e,t=pE){const n=[];let r;for(;r=hE.exec(e);)n.push(r[1]);if(!n.length)return e;const o="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(s=>{const i=typeof t=="function"?t(s):t+(mE++).toString(),a=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+a+')([")]|\\.[a-z])',"g"),"$1"+i+o+"$3")}),e=e.replace(new RegExp(o,"g"),""),e}function yE(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'"+e+""}function _E(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(//g,"%3E").replace(/\s+/g," ")}function vE(e){return'url("data:image/svg+xml,'+_E(e)+'")'}const yl={...$d,inline:!1},bE={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},wE={display:"inline-block"},Ei={backgroundColor:"currentColor"},Md={backgroundColor:"transparent"},_l={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},vl={webkitMask:Ei,mask:Ei,background:Md};for(const e in vl){const t=vl[e];for(const n in _l)t[e+n]=_l[n]}const ho={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";ho[e+"-flip"]=t,ho[e.slice(0,1)+"-flip"]=t,ho[e+"Flip"]=t});function bl(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const EE=(e,t)=>{const n=sE(yl,t),r={...bE},o=t.mode||"svg",s={},i=t.style,a=typeof i=="object"&&!(i instanceof Array)?i:{};for(let p in t){const y=t[p];if(y!==void 0)switch(p){case"icon":case"style":case"onLoad":case"mode":break;case"inline":case"hFlip":case"vFlip":n[p]=y===!0||y==="true"||y===1;break;case"flip":typeof y=="string"&&aE(n,y);break;case"color":s.color=y;break;case"rotate":typeof y=="string"?n[p]=cE(y):typeof y=="number"&&(n[p]=y);break;case"ariaHidden":case"aria-hidden":y!==!0&&y!=="true"&&delete r["aria-hidden"];break;default:{const v=ho[p];v?(y===!0||y==="true"||y===1)&&(n[v]=!0):yl[p]===void 0&&(r[p]=y)}}}const c=dE(e,n),l=c.attributes;if(n.inline&&(s.verticalAlign="-0.125em"),o==="svg"){r.style={...s,...a},Object.assign(r,l);let p=0,y=t.id;return typeof y=="string"&&(y=y.replace(/-/g,"_")),r.innerHTML=gE(c.body,y?()=>y+"ID"+p++:"iconifyVue"),tt("svg",r)}const{body:u,width:f,height:d}=e,h=o==="mask"||(o==="bg"?!1:u.indexOf("currentColor")!==-1),m=yE(u,{...l,width:f+"",height:d+""});return r.style={...s,"--svg":vE(m),width:bl(l.width),height:bl(l.height),...wE,...h?Ei:Md,...a},tt("span",r)},CE=Object.create(null),TE=xe({inheritAttrs:!1,render(){const e=this.$attrs,t=e.icon,n=typeof t=="string"?CE[t]:typeof t=="object"?t:null;return n===null||typeof n!="object"||typeof n.body!="string"?this.$slots.default?this.$slots.default():null:EE({...Ta,...n},e)}}),_r=/^[a-z0-9]+(-[a-z0-9]+)*$/,cs=(e,t,n,r="")=>{const o=e.split(":");if(e.slice(0,1)==="@"){if(o.length<2||o.length>3)return null;r=o.shift().slice(1)}if(o.length>3||!o.length)return null;if(o.length>1){const a=o.pop(),c=o.pop(),l={provider:o.length>0?o[0]:r,prefix:c,name:a};return t&&!po(l)?null:l}const s=o[0],i=s.split("-");if(i.length>1){const a={provider:r,prefix:i.shift(),name:i.join("-")};return t&&!po(a)?null:a}if(n&&r===""){const a={provider:r,prefix:"",name:s};return t&&!po(a,n)?null:a}return null},po=(e,t)=>e?!!((e.provider===""||e.provider.match(_r))&&(t&&e.prefix===""||e.prefix.match(_r))&&e.name.match(_r)):!1,Nd=Object.freeze({left:0,top:0,width:16,height:16}),No=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Sa=Object.freeze({...Nd,...No}),Ci=Object.freeze({...Sa,body:"",hidden:!1});function SE(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function wl(e,t){const n=SE(e,t);for(const r in Ci)r in No?r in e&&!(r in n)&&(n[r]=No[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function PE(e,t){const n=e.icons,r=e.aliases||Object.create(null),o=Object.create(null);function s(i){if(n[i])return o[i]=[];if(!(i in o)){o[i]=null;const a=r[i]&&r[i].parent,c=a&&s(a);c&&(o[i]=[a].concat(c))}return o[i]}return(t||Object.keys(n).concat(Object.keys(r))).forEach(s),o}function xE(e,t,n){const r=e.icons,o=e.aliases||Object.create(null);let s={};function i(a){s=wl(r[a]||o[a],s)}return i(t),n.forEach(i),wl(e,s)}function Dd(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(o=>{t(o,null),n.push(o)});const r=PE(e);for(const o in r){const s=r[o];s&&(t(o,xE(e,o,s)),n.push(o))}return n}const AE={provider:"",aliases:{},not_found:{},...Nd};function Os(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function Hd(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Os(e,AE))return null;const n=t.icons;for(const o in n){const s=n[o];if(!o.match(_r)||typeof s.body!="string"||!Os(s,Ci))return null}const r=t.aliases||Object.create(null);for(const o in r){const s=r[o],i=s.parent;if(!o.match(_r)||typeof i!="string"||!n[i]&&!r[i]||!Os(s,Ci))return null}return t}const El=Object.create(null);function RE(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function _n(e,t){const n=El[e]||(El[e]=Object.create(null));return n[t]||(n[t]=RE(e,t))}function Pa(e,t){return Hd(t)?Dd(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function IE(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}let Or=!1;function jd(e){return typeof e=="boolean"&&(Or=e),Or}function LE(e){const t=typeof e=="string"?cs(e,!0,Or):e;if(t){const n=_n(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function OE(e,t){const n=cs(e,!0,Or);if(!n)return!1;const r=_n(n.provider,n.prefix);return IE(r,n.name,t)}function kE(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),Or&&!t&&!e.prefix){let o=!1;return Hd(e)&&(e.prefix="",Dd(e,(s,i)=>{i&&OE(s,i)&&(o=!0)})),o}const n=e.prefix;if(!po({provider:t,prefix:n,name:"a"}))return!1;const r=_n(t,n);return!!Pa(r,e)}const $E=Object.freeze({width:null,height:null}),ME=Object.freeze({...$E,...No});""+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);const Ti=Object.create(null);function NE(e,t){Ti[e]=t}function Si(e){return Ti[e]||Ti[""]}function xa(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Aa=Object.create(null),rr=["https://api.simplesvg.com","https://api.unisvg.com"],mo=[];for(;rr.length>0;)rr.length===1||Math.random()>.5?mo.push(rr.shift()):mo.push(rr.pop());Aa[""]=xa({resources:["https://api.iconify.design"].concat(mo)});function DE(e,t){const n=xa(t);return n===null?!1:(Aa[e]=n,!0)}function Ra(e){return Aa[e]}const HE=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Cl=HE();function jE(e,t){const n=Ra(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let o=0;n.resources.forEach(i=>{o=Math.max(o,i.length)});const s=t+".json?icons=";r=n.maxURL-o-n.path.length-s.length}return r}function FE(e){return e===404}const VE=(e,t,n)=>{const r=[],o=jE(e,t),s="icons";let i={type:s,provider:e,prefix:t,icons:[]},a=0;return n.forEach((c,l)=>{a+=c.length+1,a>=o&&l>0&&(r.push(i),i={type:s,provider:e,prefix:t,icons:[]},a=c.length),i.icons.push(c)}),r.push(i),r};function BE(e){if(typeof e=="string"){const t=Ra(e);if(t)return t.path}return"/"}const zE=(e,t,n)=>{if(!Cl){n("abort",424);return}let r=BE(t.provider);switch(t.type){case"icons":{const s=t.prefix,a=t.icons.join(","),c=new URLSearchParams({icons:a});r+=s+".json?"+c.toString();break}case"custom":{const s=t.uri;r+=s.slice(0,1)==="/"?s.slice(1):s;break}default:n("abort",400);return}let o=503;Cl(e+r).then(s=>{const i=s.status;if(i!==200){setTimeout(()=>{n(FE(i)?"abort":"next",i)});return}return o=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?n("abort",s):n("next",o)});return}setTimeout(()=>{n("success",s)})}).catch(()=>{n("next",o)})},UE={prepare:VE,send:zE};function KE(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((o,s)=>o.provider!==s.provider?o.provider.localeCompare(s.provider):o.prefix!==s.prefix?o.prefix.localeCompare(s.prefix):o.name.localeCompare(s.name));let r={provider:"",prefix:"",name:""};return e.forEach(o=>{if(r.name===o.name&&r.prefix===o.prefix&&r.provider===o.provider)return;r=o;const s=o.provider,i=o.prefix,a=o.name,c=n[s]||(n[s]=Object.create(null)),l=c[i]||(c[i]=_n(s,i));let u;a in l.icons?u=t.loaded:i===""||l.missing.has(a)?u=t.missing:u=t.pending;const f={provider:s,prefix:i,name:a};u.push(f)}),t}function Fd(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(o=>o.id!==t))})}function WE(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,o=e.prefix;t.forEach(s=>{const i=s.icons,a=i.pending.length;i.pending=i.pending.filter(c=>{if(c.prefix!==o)return!0;const l=c.name;if(e.icons[l])i.loaded.push({provider:r,prefix:o,name:l});else if(e.missing.has(l))i.missing.push({provider:r,prefix:o,name:l});else return n=!0,!0;return!1}),i.pending.length!==a&&(n||Fd([e],s.id),s.callback(i.loaded.slice(0),i.missing.slice(0),i.pending.slice(0),s.abort))})}))}let qE=0;function GE(e,t,n){const r=qE++,o=Fd.bind(null,n,r);if(!t.pending.length)return o;const s={id:r,icons:t,callback:e,abort:o};return n.forEach(i=>{(i.loaderCallbacks||(i.loaderCallbacks=[])).push(s)}),o}function QE(e,t=!0,n=!1){const r=[];return e.forEach(o=>{const s=typeof o=="string"?cs(o,t,n):o;s&&r.push(s)}),r}var JE={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function YE(e,t,n,r){const o=e.resources.length,s=e.random?Math.floor(Math.random()*o):e.index;let i;if(e.random){let S=e.resources.slice(0);for(i=[];S.length>1;){const I=Math.floor(Math.random()*S.length);i.push(S[I]),S=S.slice(0,I).concat(S.slice(I+1))}i=i.concat(S)}else i=e.resources.slice(s).concat(e.resources.slice(0,s));const a=Date.now();let c="pending",l=0,u,f=null,d=[],h=[];typeof r=="function"&&h.push(r);function m(){f&&(clearTimeout(f),f=null)}function p(){c==="pending"&&(c="aborted"),m(),d.forEach(S=>{S.status==="pending"&&(S.status="aborted")}),d=[]}function y(S,I){I&&(h=[]),typeof S=="function"&&h.push(S)}function v(){return{startTime:a,payload:t,status:c,queriesSent:l,queriesPending:d.length,subscribe:y,abort:p}}function b(){c="failed",h.forEach(S=>{S(void 0,u)})}function g(){d.forEach(S=>{S.status==="pending"&&(S.status="aborted")}),d=[]}function _(S,I,L){const H=I!=="success";switch(d=d.filter(R=>R!==S),c){case"pending":break;case"failed":if(H||!e.dataAfterTimeout)return;break;default:return}if(I==="abort"){u=L,b();return}if(H){u=L,d.length||(i.length?P():b());return}if(m(),g(),!e.random){const R=e.resources.indexOf(S.resource);R!==-1&&R!==e.index&&(e.index=R)}c="completed",h.forEach(R=>{R(L)})}function P(){if(c!=="pending")return;m();const S=i.shift();if(S===void 0){if(d.length){f=setTimeout(()=>{m(),c==="pending"&&(g(),b())},e.timeout);return}b();return}const I={status:"pending",resource:S,callback:(L,H)=>{_(I,L,H)}};d.push(I),l++,f=setTimeout(P,e.rotate),n(S,t,I.callback)}return setTimeout(P),v}function Vd(e){const t={...JE,...e};let n=[];function r(){n=n.filter(a=>a().status==="pending")}function o(a,c,l){const u=YE(t,a,c,(f,d)=>{r(),l&&l(f,d)});return n.push(u),u}function s(a){return n.find(c=>a(c))||null}return{query:o,find:s,setIndex:a=>{t.index=a},getIndex:()=>t.index,cleanup:r}}function Tl(){}const ks=Object.create(null);function ZE(e){if(!ks[e]){const t=Ra(e);if(!t)return;const n=Vd(t),r={config:t,redundancy:n};ks[e]=r}return ks[e]}function XE(e,t,n){let r,o;if(typeof e=="string"){const s=Si(e);if(!s)return n(void 0,424),Tl;o=s.send;const i=ZE(e);i&&(r=i.redundancy)}else{const s=xa(e);if(s){r=Vd(s);const i=e.resources?e.resources[0]:"",a=Si(i);a&&(o=a.send)}}return!r||!o?(n(void 0,424),Tl):r.query(t,o,n)().abort}const Sl="iconify2",kr="iconify",Bd=kr+"-count",Pl=kr+"-version",zd=36e5,eC=168;function Pi(e,t){try{return e.getItem(t)}catch{}}function Ia(e,t,n){try{return e.setItem(t,n),!0}catch{}}function xl(e,t){try{e.removeItem(t)}catch{}}function xi(e,t){return Ia(e,Bd,t.toString())}function Ai(e){return parseInt(Pi(e,Bd))||0}const ls={local:!0,session:!0},Ud={local:new Set,session:new Set};let La=!1;function tC(e){La=e}let no=typeof window>"u"?{}:window;function Kd(e){const t=e+"Storage";try{if(no&&no[t]&&typeof no[t].length=="number")return no[t]}catch{}ls[e]=!1}function Wd(e,t){const n=Kd(e);if(!n)return;const r=Pi(n,Pl);if(r!==Sl){if(r){const a=Ai(n);for(let c=0;c{const c=kr+a.toString(),l=Pi(n,c);if(typeof l=="string"){try{const u=JSON.parse(l);if(typeof u=="object"&&typeof u.cached=="number"&&u.cached>o&&typeof u.provider=="string"&&typeof u.data=="object"&&typeof u.data.prefix=="string"&&t(u,a))return!0}catch{}xl(n,c)}};let i=Ai(n);for(let a=i-1;a>=0;a--)s(a)||(a===i-1?(i--,xi(n,i)):Ud[e].add(a))}function qd(){if(!La){tC(!0);for(const e in ls)Wd(e,t=>{const n=t.data,r=t.provider,o=n.prefix,s=_n(r,o);if(!Pa(s,n).length)return!1;const i=n.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,i):i,!0})}}function nC(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const r in ls)Wd(r,o=>{const s=o.data;return o.provider!==e.provider||s.prefix!==e.prefix||s.lastModified===t});return!0}function rC(e,t){La||qd();function n(r){let o;if(!ls[r]||!(o=Kd(r)))return;const s=Ud[r];let i;if(s.size)s.delete(i=Array.from(s).shift());else if(i=Ai(o),!xi(o,i+1))return;const a={cached:Math.floor(Date.now()/zd),provider:e.provider,data:t};return Ia(o,kr+i.toString(),JSON.stringify(a))}t.lastModified&&!nC(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&(t=Object.assign({},t),delete t.not_found),n("local")||n("session"))}function Al(){}function oC(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,WE(e)}))}function sC(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,o=e.iconsToLoad;delete e.iconsToLoad;let s;if(!o||!(s=Si(n)))return;s.prepare(n,r,o).forEach(a=>{XE(n,a,c=>{if(typeof c!="object")a.icons.forEach(l=>{e.missing.add(l)});else try{const l=Pa(e,c);if(!l.length)return;const u=e.pendingIcons;u&&l.forEach(f=>{u.delete(f)}),rC(e,c)}catch(l){console.error(l)}oC(e)})})}))}const iC=(e,t)=>{const n=QE(e,!0,jd()),r=KE(n);if(!r.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(r.loaded,r.missing,r.pending,Al)}),()=>{c=!1}}const o=Object.create(null),s=[];let i,a;return r.pending.forEach(c=>{const{provider:l,prefix:u}=c;if(u===a&&l===i)return;i=l,a=u,s.push(_n(l,u));const f=o[l]||(o[l]=Object.create(null));f[u]||(f[u]=[])}),r.pending.forEach(c=>{const{provider:l,prefix:u,name:f}=c,d=_n(l,u),h=d.pendingIcons||(d.pendingIcons=new Set);h.has(f)||(h.add(f),o[l][u].push(f))}),s.forEach(c=>{const{provider:l,prefix:u}=c;o[l][u].length&&sC(c,o[l][u])}),t?GE(t,r,s):Al},aC=e=>new Promise((t,n)=>{const r=typeof e=="string"?cs(e,!0):e;if(!r){n(e);return}iC([r||e],o=>{if(o.length&&r){const s=LE(r);if(s){t({...Sa,...s});return}}n(e)})});({...ME});const Rl={backgroundColor:"currentColor"},cC={backgroundColor:"transparent"},Il={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},Ll={webkitMask:Rl,mask:Rl,background:cC};for(const e in Ll){const t=Ll[e];for(const n in Il)t[e+n]=Il[n]}const $s={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";$s[e+"-flip"]=t,$s[e.slice(0,1)+"-flip"]=t,$s[e+"Flip"]=t});jd(!0);NE("",UE);if(typeof document<"u"&&typeof window<"u"){qd();const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!kE(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const o=t[n];if(typeof o!="object"||!o||o.resources===void 0)continue;DE(n,o)||console.error(r)}catch{console.error(r)}}}}({...Sa});const lC=["width","height"],uC=xe({__name:"Icon",props:{name:{type:String,required:!0},size:{type:String,default:""}},async setup(e){var m;let t,n;const r=ye(),o=ha();(m=o==null?void 0:o.nuxtIcon)!=null&&m.aliases;const s=e,i=At("icons",()=>({})),a=le(!1),c=ee(()=>{var p;return(((p=o.nuxtIcon)==null?void 0:p.aliases)||{})[s.name]||s.name}),l=ee(()=>{var p;return(p=i.value)==null?void 0:p[c.value]}),u=ee(()=>r.vueApp.component(c.value)),f=ee(()=>{var y,v,b;if(!s.size&&typeof((y=o.nuxtIcon)==null?void 0:y.size)=="boolean"&&!((v=o.nuxtIcon)!=null&&v.size))return;const p=s.size||((b=o.nuxtIcon)==null?void 0:b.size)||"1em";return String(Number(p))===p?`${p}px`:p}),d=ee(()=>{var p;return((p=o==null?void 0:o.nuxtIcon)==null?void 0:p.class)??"icon"});async function h(){var p;u.value||(p=i.value)!=null&&p[c.value]||(a.value=!0,i.value[c.value]=await aC(c.value).catch(()=>{}),a.value=!1)}return ge(()=>c.value,h),!u.value&&([t,n]=qu(()=>h()),t=await t,n()),(p,y)=>M(a)?(q(),ue("span",{key:0,class:je(M(d)),width:M(f),height:M(f)},null,10,lC)):M(l)?(q(),de(M(TE),{key:1,icon:M(l),class:je(M(d)),width:M(f),height:M(f)},null,8,["icon","class","width","height"])):M(u)?(q(),de(Go(M(u)),{key:2,class:je(M(d)),width:M(f),height:M(f)},null,8,["class","width","height"])):(q(),ue("span",{key:3,class:je(M(d)),style:Gn({fontSize:M(f),lineHeight:M(f),width:M(f),height:M(f)})},Lt(e.name),7))}}),Dt=Be(uC,[["__scopeId","data-v-92518cc2"]]),fC=Object.freeze(Object.defineProperty({__proto__:null,default:Dt},Symbol.toStringTag,{value:"Module"})),nn=()=>{const e=ee(()=>{var l;return((l=ha())==null?void 0:l.docus)||{}}),{navPageFromPath:t,navDirFromPath:n,navKeyFromPath:r}=_a(),{navigation:o,page:s}=Vr(),i=ct(),a=ee(()=>{var m,p,y,v,b,g,_,P,S,I,L;const l=((m=e==null?void 0:e.value)==null?void 0:m.titleTemplate)||r((p=s==null?void 0:s.value)==null?void 0:p._path,"titleTemplate",o.value||[])||`%s · ${((y=e==null?void 0:e.value)==null?void 0:y.title)||"Docus"}`,u=((v=e==null?void 0:e.value)==null?void 0:v.main)||{},f=((b=e==null?void 0:e.value)==null?void 0:b.header)||{},d=((g=e==null?void 0:e.value)==null?void 0:g.aside)||{},h=((_=e==null?void 0:e.value)==null?void 0:_.footer)||{};return{...e.value,titleTemplate:l,main:{...u,...r(i.path,"main",o.value||[]),...(P=s.value)==null?void 0:P.main},header:{...f,...r(i.path,"header",o.value||[]),...(S=s.value)==null?void 0:S.header},aside:{...d,...r(i.path,"aside",o.value||[]),...(I=s.value)==null?void 0:I.aside},footer:{...h,...r(i.path,"footer",o.value||[]),...(L=s.value)==null?void 0:L.footer}}});return{tree:ee(()=>{var h,m,p,y,v;let l=o.value||[];const u=i.path,f=((m=(h=a==null?void 0:a.value)==null?void 0:h.aside)==null?void 0:m.level)||0,d=((y=(p=a==null?void 0:a.value)==null?void 0:p.aside)==null?void 0:y.exclude)||[];if(f){const g=u.split("/").splice(0,1+f).join("/");l=n(g,l)||[],Array.isArray(l)||(l=[l])}if(l.length===0){if(l=t(((v=s.value)==null?void 0:v._path)||"/",o.value||[]),!l)return[];Array.isArray(l)||(l=[l])}return l.filter(b=>!d.includes(b._path))}),config:a}},dC=xe({__name:"AppSocialIcons",setup(e){const t=["twitter","facebook","instagram","tiktok","youtube","github","medium"],{config:n}=nn(),r=ee(()=>Object.entries(n.value.socials||{}).map(([o,s])=>typeof s=="object"?s:typeof s=="string"&&s&&t.includes(o)?{href:/^https?:\/\//.test(s)?s:`https://${o}.com/${s}`,icon:`fa-brands:${o}`,label:s,rel:"noopener noreferrer"}:null).filter(Boolean));return(o,s)=>{const i=Dt,a=Fr;return q(!0),ue(Se,null,Fn(M(r),c=>(q(),de(a,{key:c.label,rel:c.rel,title:c.label,"aria-label":c.label,href:c.href,target:"_blank"},{default:Qe(()=>[c.icon?(q(),de(i,{key:0,name:c.icon},null,8,["name"])):Fe("",!0)]),_:2},1032,["rel","title","aria-label","href"]))),128)}}}),us=Be(dC,[["__scopeId","data-v-14409a5c"]]),hC=Object.freeze(Object.defineProperty({__proto__:null,default:us},Symbol.toStringTag,{value:"Module"})),pC={class:"docs-aside-tree"},mC=["onClick"],gC={class:"content"},yC={class:"content"},_C=xe({__name:"DocsAsideTree",props:{links:{type:Array,default:()=>[]},level:{type:Number,default:0},max:{type:Number,default:null},parent:{type:Object,default:null}},setup(e){var l;const t=e,n=ct(),{config:r}=nn(),o=At(`docus-docs-aside-collapse-map-${((l=t.parent)==null?void 0:l._path)||"/"}`,()=>t.level===0?{}:t.links.filter(u=>!!u.children).reduce((u,f)=>(u[f._path]=!0,u),{})),s=u=>n.path===u._path,i=u=>{var f,d,h,m;if(u.children){if(typeof o.value[u._path]<"u")return o.value[u._path];if([!0,!1].includes((f=u==null?void 0:u.aside)==null?void 0:f.collapsed))return u.aside.collapsed;if(u!=null&&u.collapsed)return u==null?void 0:u.collapsed;if((h=(d=r==null?void 0:r.value)==null?void 0:d.aside)!=null&&h.collapsed)return(m=r.value.aside)==null?void 0:m.collapsed}return!1},a=u=>o.value[u._path]=!i(u),c=ee(()=>t.links.some(u=>u.children));return(u,f)=>{const d=Dt,h=Fr,m=Oa;return q(),ue("ul",pC,[(q(!0),ue(Se,null,Fn(e.links,p=>{var y,v,b,g,_;return q(),ue("li",{key:p._path,class:je({"has-parent-icon":(y=e.parent)==null?void 0:y.icon,"has-children":e.level>0&&p.children,bordered:e.level>0||!M(c),active:s(p)})},[p.children?(q(),ue("button",{key:0,class:"title-collapsible-button",onClick:P=>a(p)},[ie("span",gC,[(v=p==null?void 0:p.navigation)!=null&&v.icon||p.icon?(q(),de(d,{key:0,name:((b=p==null?void 0:p.navigation)==null?void 0:b.icon)||p.icon,class:"icon"},null,8,["name"])):Fe("",!0),ie("span",null,Lt(((g=p==null?void 0:p.navigation)==null?void 0:g.title)||p.title||p._path),1)]),ie("span",null,[se(d,{name:i(p)?"lucide:chevrons-up-down":"lucide:chevrons-down-up",class:"collapsible-icon"},null,8,["name"])])],8,mC)):(q(),de(h,{key:1,to:p.redirect?p.redirect:p._path,class:je(["link",{padded:e.level>0||!M(c),active:s(p)}]),exact:p.exact},{default:Qe(()=>{var P,S,I;return[ie("span",yC,[(P=p==null?void 0:p.navigation)!=null&&P.icon||p.icon?(q(),de(d,{key:0,name:((S=p==null?void 0:p.navigation)==null?void 0:S.icon)||p.icon,class:"icon"},null,8,["name"])):Fe("",!0),ie("span",null,Lt(((I=p==null?void 0:p.navigation)==null?void 0:I.title)||p.title||p._path),1)])]}),_:2},1032,["to","exact","class"])),(_=p.children)!=null&&_.length&&(e.max===null||e.level+1{const{$menu:e}=ye();return e},bC={class:"wrapper"},wC={class:"icons"},EC=xe({__name:"AppHeaderDialog",setup(e){const{navigation:t}=Vr(),{config:n}=nn(),r=le(!1),o=ee(()=>{var c;return((c=n.value.aside)==null?void 0:c.exclude)||[]}),s=ee(()=>(t.value||[]).filter(c=>!o.value.includes(c._path))),{close:i,open:a}=Gd();return ge(r,c=>c?a():i()),(c,l)=>{const u=Dt,f=us,d=Oa;return q(),ue(Se,null,[ie("button",{"aria-label":"Menu",onClick:l[0]||(l[0]=h=>r.value=!0)},[se(u,{name:"heroicons-outline:menu","aria-hidden":"”true”"})]),(q(),de(sf,{to:"body"},[M(r)?(q(),ue("nav",{key:0,class:"dialog",onClick:l[3]||(l[3]=h=>r.value=!1)},[ie("div",{onClick:l[2]||(l[2]=ar(()=>{},["stop"]))},[ie("div",bC,[ie("button",{"aria-label":"Menu",onClick:l[1]||(l[1]=h=>r.value=!1)},[se(u,{name:"heroicons-outline:x","aria-hidden":"”true”"})]),ie("div",wC,[se(f)])]),se(d,{links:M(s)},null,8,["links"])])])):Fe("",!0)]))],64)}}}),Qd=Be(EC,[["__scopeId","data-v-701eabae"]]),CC=Object.freeze(Object.defineProperty({__proto__:null,default:Qd},Symbol.toStringTag,{value:"Module"})),TC={},SC={viewBox:"0 0 167 44",fill:"none",xmlns:"http://www.w3.org/2000/svg"},PC=dm('',7),xC=[PC];function AC(e,t){return q(),ue("svg",SC,xC)}const Jd=Be(TC,[["render",AC],["__scopeId","data-v-37ee13f0"]]),RC=Object.freeze(Object.defineProperty({__proto__:null,default:Jd},Symbol.toStringTag,{value:"Module"})),IC={key:0,class:"logo"},LC=["src"],OC=["src"],kC={key:1,class:"title"},$C=xe({__name:"AppHeaderLogo",setup(e){const{config:t}=nn(),n=ee(()=>{var o;return((o=t.value.header)==null?void 0:o.logo)||!1}),r=ee(()=>{var o;return((o=t.value.header)==null?void 0:o.title)||t.value.title});return(o,s)=>{const i=Jd,a=Fr;return q(),de(a,{class:"navbar-logo",to:"/","aria-label":M(r)},{default:Qe(()=>[M(n)?(q(),ue("span",IC,[typeof M(n)=="string"?(q(),de(Go(M(n)),{key:0})):M(n).light&&M(n).dark?(q(),ue(Se,{key:1},[ie("img",{src:M(n).light,alt:"",class:"light-img"},null,8,LC),ie("img",{src:M(n).dark,alt:"",class:"dark-img"},null,8,OC)],64)):M(n)?(q(),de(i,{key:2})):Fe("",!0)])):(q(),ue("span",kC,Lt(M(r)),1))]),_:1},8,["aria-label"])}}}),Yd=Be($C,[["__scopeId","data-v-93f413e9"]]),MC=Object.freeze(Object.defineProperty({__proto__:null,default:Yd},Symbol.toStringTag,{value:"Module"})),NC={key:0},DC=xe({__name:"AppHeaderNavigation",setup(e){const t=ct(),{navBottomLink:n}=_a(),{navigation:r}=Vr(),{config:o}=nn(),s=ee(()=>{var l;return!!((l=o.value.aside)!=null&&l.level)}),i=ee(()=>{var l;return((l=o.value.header)==null?void 0:l.exclude)||[]}),a=ee(()=>(r.value||[]).filter(l=>!i.value.includes(l._path))),c=l=>l.exact?t.fullPath===l._path:t.fullPath.startsWith(l._path);return(l,u)=>{const f=Dt,d=Fr;return M(s)?(q(),ue("nav",NC,[ie("ul",null,[(q(!0),ue(Se,null,Fn(M(a),h=>(q(),ue("li",{key:h._path},[se(d,{class:je(["link",{active:c(h)}]),to:h.redirect?h.redirect:M(n)(h)},{default:Qe(()=>{var m,p;return[h.icon&&((p=(m=M(o))==null?void 0:m.header)!=null&&p.showLinkIcon)?(q(),de(f,{key:0,name:h.icon},null,8,["name"])):Fe("",!0),Yn(" "+Lt(h.title),1)]}),_:2},1032,["to","class"])]))),128))])])):Fe("",!0)}}}),Zd=Be(DC,[["__scopeId","data-v-132dbb47"]]),HC=Object.freeze(Object.defineProperty({__proto__:null,default:Zd},Symbol.toStringTag,{value:"Module"})),Xd=()=>{const{$docSearch:e}=ye();return e||{hasDocSearch:le(!1)}},eh=e=>(Au("data-v-a87a80ab"),e=e(),Ru(),e),jC={class:"content"},FC=eh(()=>ie("span",null,"Search",-1)),VC=eh(()=>ie("span",null,[ie("kbd",null,"⌘"),ie("kbd",null,"K")],-1)),BC=xe({__name:"AppDocSearch",setup(e){const{element:t}=Xd(),n=()=>t.value.querySelector("button").click();return(r,o)=>{const s=Dt;return q(),ue("button",{type:"button","aria-label":"Search",onClick:n},[ie("span",jC,[se(s,{name:"heroicons-outline:search"}),FC,VC])])}}}),th=Be(BC,[["__scopeId","data-v-a87a80ab"]]),zC=Object.freeze(Object.defineProperty({__proto__:null,default:th},Symbol.toStringTag,{value:"Module"}));function $t(e){return Array.isArray?Array.isArray(e):oh(e)==="[object Array]"}const UC=1/0;function KC(e){if(typeof e=="string")return e;let t=e+"";return t=="0"&&1/e==-UC?"-0":t}function WC(e){return e==null?"":KC(e)}function vt(e){return typeof e=="string"}function nh(e){return typeof e=="number"}function qC(e){return e===!0||e===!1||GC(e)&&oh(e)=="[object Boolean]"}function rh(e){return typeof e=="object"}function GC(e){return rh(e)&&e!==null}function Xe(e){return e!=null}function Ms(e){return!e.trim().length}function oh(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const QC="Incorrect 'index' type",JC=e=>`Invalid value for key ${e}`,YC=e=>`Pattern length exceeds max of ${e}.`,ZC=e=>`Missing ${e} property in key`,XC=e=>`Property 'weight' in key '${e}' must be a positive integer`,Ol=Object.prototype.hasOwnProperty;class eT{constructor(t){this._keys=[],this._keyMap={};let n=0;t.forEach(r=>{let o=sh(r);n+=o.weight,this._keys.push(o),this._keyMap[o.id]=o,n+=o.weight}),this._keys.forEach(r=>{r.weight/=n})}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function sh(e){let t=null,n=null,r=null,o=1,s=null;if(vt(e)||$t(e))r=e,t=kl(e),n=Ri(e);else{if(!Ol.call(e,"name"))throw new Error(ZC("name"));const i=e.name;if(r=i,Ol.call(e,"weight")&&(o=e.weight,o<=0))throw new Error(XC(i));t=kl(i),n=Ri(i),s=e.getFn}return{path:t,id:n,weight:o,src:r,getFn:s}}function kl(e){return $t(e)?e:e.split(".")}function Ri(e){return $t(e)?e.join("."):e}function tT(e,t){let n=[],r=!1;const o=(s,i,a)=>{if(Xe(s))if(!i[a])n.push(s);else{let c=i[a];const l=s[c];if(!Xe(l))return;if(a===i.length-1&&(vt(l)||nh(l)||qC(l)))n.push(WC(l));else if($t(l)){r=!0;for(let u=0,f=l.length;ue.score===t.score?e.idx{this._keysMap[n.id]=r})}create(){this.isCreated||!this.docs.length||(this.isCreated=!0,vt(this.docs[0])?this.docs.forEach((t,n)=>{this._addString(t,n)}):this.docs.forEach((t,n)=>{this._addObject(t,n)}),this.norm.clear())}add(t){const n=this.size();vt(t)?this._addString(t,n):this._addObject(t,n)}removeAt(t){this.records.splice(t,1);for(let n=t,r=this.size();n{let i=o.getFn?o.getFn(t):this.getFn(t,o.path);if(Xe(i)){if($t(i)){let a=[];const c=[{nestedArrIndex:-1,value:i}];for(;c.length;){const{nestedArrIndex:l,value:u}=c.pop();if(Xe(u))if(vt(u)&&!Ms(u)){let f={v:u,i:l,n:this.norm.get(u)};a.push(f)}else $t(u)&&u.forEach((f,d)=>{c.push({nestedArrIndex:d,value:f})})}r.$[s]=a}else if(vt(i)&&!Ms(i)){let a={v:i,n:this.norm.get(i)};r.$[s]=a}}}),this.records.push(r)}toJSON(){return{keys:this.keys,records:this.records}}}function ih(e,t,{getFn:n=ae.getFn,fieldNormWeight:r=ae.fieldNormWeight}={}){const o=new ka({getFn:n,fieldNormWeight:r});return o.setKeys(e.map(sh)),o.setSources(t),o.create(),o}function cT(e,{getFn:t=ae.getFn,fieldNormWeight:n=ae.fieldNormWeight}={}){const{keys:r,records:o}=e,s=new ka({getFn:t,fieldNormWeight:n});return s.setKeys(r),s.setIndexRecords(o),s}function ro(e,{errors:t=0,currentLocation:n=0,expectedLocation:r=0,distance:o=ae.distance,ignoreLocation:s=ae.ignoreLocation}={}){const i=t/e.length;if(s)return i;const a=Math.abs(r-n);return o?i+a/o:a?1:i}function lT(e=[],t=ae.minMatchCharLength){let n=[],r=-1,o=-1,s=0;for(let i=e.length;s=t&&n.push([r,o]),r=-1)}return e[s-1]&&s-r>=t&&n.push([r,s-1]),n}const fn=32;function uT(e,t,n,{location:r=ae.location,distance:o=ae.distance,threshold:s=ae.threshold,findAllMatches:i=ae.findAllMatches,minMatchCharLength:a=ae.minMatchCharLength,includeMatches:c=ae.includeMatches,ignoreLocation:l=ae.ignoreLocation}={}){if(t.length>fn)throw new Error(YC(fn));const u=t.length,f=e.length,d=Math.max(0,Math.min(r,f));let h=s,m=d;const p=a>1||c,y=p?Array(f):[];let v;for(;(v=e.indexOf(t,m))>-1;){let I=ro(t,{currentLocation:v,expectedLocation:d,distance:o,ignoreLocation:l});if(h=Math.min(I,h),m=v+u,p){let L=0;for(;L=R;B-=1){let J=B-1,V=n[e.charAt(J)];if(p&&(y[J]=+!!V),C[B]=(C[B+1]<<1|1)&V,I&&(C[B]|=(b[B+1]|b[B])<<1|1|b[B+1]),C[B]&P&&(g=ro(t,{errors:I,currentLocation:J,expectedLocation:d,distance:o,ignoreLocation:l}),g<=h)){if(h=g,m=J,m<=d)break;R=Math.max(1,2*d-m)}}if(ro(t,{errors:I+1,currentLocation:d,expectedLocation:d,distance:o,ignoreLocation:l})>h)break;b=C}const S={isMatch:m>=0,score:Math.max(.001,g)};if(p){const I=lT(y,a);I.length?c&&(S.indices=I):S.isMatch=!1}return S}function fT(e){let t={};for(let n=0,r=e.length;n{this.chunks.push({pattern:d,alphabet:fT(d),startIndex:h})},f=this.pattern.length;if(f>fn){let d=0;const h=f%fn,m=f-h;for(;d{const{isMatch:v,score:b,indices:g}=uT(t,m,p,{location:o+y,distance:s,threshold:i,findAllMatches:a,minMatchCharLength:c,includeMatches:r,ignoreLocation:l});v&&(d=!0),f+=b,v&&g&&(u=[...u,...g])});let h={isMatch:d,score:d?f/this.chunks.length:1};return d&&r&&(h.indices=u),h}}class rn{constructor(t){this.pattern=t}static isMultiMatch(t){return $l(t,this.multiRegex)}static isSingleMatch(t){return $l(t,this.singleRegex)}search(){}}function $l(e,t){const n=e.match(t);return n?n[1]:null}class dT extends rn{constructor(t){super(t)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(t){const n=t===this.pattern;return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class hT extends rn{constructor(t){super(t)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(t){const r=t.indexOf(this.pattern)===-1;return{isMatch:r,score:r?0:1,indices:[0,t.length-1]}}}class pT extends rn{constructor(t){super(t)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(t){const n=t.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class mT extends rn{constructor(t){super(t)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(t){const n=!t.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}}class gT extends rn{constructor(t){super(t)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(t){const n=t.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[t.length-this.pattern.length,t.length-1]}}}class yT extends rn{constructor(t){super(t)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(t){const n=!t.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}}class ch extends rn{constructor(t,{location:n=ae.location,threshold:r=ae.threshold,distance:o=ae.distance,includeMatches:s=ae.includeMatches,findAllMatches:i=ae.findAllMatches,minMatchCharLength:a=ae.minMatchCharLength,isCaseSensitive:c=ae.isCaseSensitive,ignoreLocation:l=ae.ignoreLocation}={}){super(t),this._bitapSearch=new ah(t,{location:n,threshold:r,distance:o,includeMatches:s,findAllMatches:i,minMatchCharLength:a,isCaseSensitive:c,ignoreLocation:l})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(t){return this._bitapSearch.searchIn(t)}}class lh extends rn{constructor(t){super(t)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(t){let n=0,r;const o=[],s=this.pattern.length;for(;(r=t.indexOf(this.pattern,n))>-1;)n=r+s,o.push([r,n-1]);const i=!!o.length;return{isMatch:i,score:i?0:1,indices:o}}}const Ii=[dT,lh,pT,mT,yT,gT,hT,ch],Ml=Ii.length,_T=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,vT="|";function bT(e,t={}){return e.split(vT).map(n=>{let r=n.trim().split(_T).filter(s=>s&&!!s.trim()),o=[];for(let s=0,i=r.length;s!!(e[Do.AND]||e[Do.OR]),TT=e=>!!e[ki.PATH],ST=e=>!$t(e)&&rh(e)&&!$i(e),Nl=e=>({[Do.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function uh(e,t,{auto:n=!0}={}){const r=o=>{let s=Object.keys(o);const i=TT(o);if(!i&&s.length>1&&!$i(o))return r(Nl(o));if(ST(o)){const c=i?o[ki.PATH]:s[0],l=i?o[ki.PATTERN]:o[c];if(!vt(l))throw new Error(JC(c));const u={keyId:Ri(c),pattern:l};return n&&(u.searcher=Oi(l,t)),u}let a={children:[],operator:s[0]};return s.forEach(c=>{const l=o[c];$t(l)&&l.forEach(u=>{a.children.push(r(u))})}),a};return $i(e)||(e=Nl(e)),r(e)}function PT(e,{ignoreFieldNorm:t=ae.ignoreFieldNorm}){e.forEach(n=>{let r=1;n.matches.forEach(({key:o,norm:s,score:i})=>{const a=o?o.weight:null;r*=Math.pow(i===0&&a?Number.EPSILON:i,(a||1)*(t?1:s))}),n.score=r})}function xT(e,t){const n=e.matches;t.matches=[],Xe(n)&&n.forEach(r=>{if(!Xe(r.indices)||!r.indices.length)return;const{indices:o,value:s}=r;let i={indices:o,value:s};r.key&&(i.key=r.key.src),r.idx>-1&&(i.refIndex=r.idx),t.matches.push(i)})}function AT(e,t){t.score=e.score}function RT(e,t,{includeMatches:n=ae.includeMatches,includeScore:r=ae.includeScore}={}){const o=[];return n&&o.push(xT),r&&o.push(AT),e.map(s=>{const{idx:i}=s,a={item:t[i],refIndex:i};return o.length&&o.forEach(c=>{c(s,a)}),a})}class Zn{constructor(t,n={},r){this.options={...ae,...n},this.options.useExtendedSearch,this._keyStore=new eT(this.options.keys),this.setCollection(t,r)}setCollection(t,n){if(this._docs=t,n&&!(n instanceof ka))throw new Error(QC);this._myIndex=n||ih(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(t){Xe(t)&&(this._docs.push(t),this._myIndex.add(t))}remove(t=()=>!1){const n=[];for(let r=0,o=this._docs.length;r-1&&(c=c.slice(0,n)),RT(c,this._docs,{includeMatches:r,includeScore:o})}_searchStringList(t){const n=Oi(t,this.options),{records:r}=this._myIndex,o=[];return r.forEach(({v:s,i,n:a})=>{if(!Xe(s))return;const{isMatch:c,score:l,indices:u}=n.searchIn(s);c&&o.push({item:s,idx:i,matches:[{score:l,value:s,norm:a,indices:u}]})}),o}_searchLogical(t){const n=uh(t,this.options),r=(a,c,l)=>{if(!a.children){const{keyId:f,searcher:d}=a,h=this._findMatches({key:this._keyStore.get(f),value:this._myIndex.getValueForItemAtKeyId(c,f),searcher:d});return h&&h.length?[{idx:l,item:c,matches:h}]:[]}const u=[];for(let f=0,d=a.children.length;f{if(Xe(a)){let l=r(n,a,c);l.length&&(s[c]||(s[c]={idx:c,item:a,matches:[]},i.push(s[c])),l.forEach(({matches:u})=>{s[c].matches.push(...u)}))}}),i}_searchObjectList(t){const n=Oi(t,this.options),{keys:r,records:o}=this._myIndex,s=[];return o.forEach(({$:i,i:a})=>{if(!Xe(i))return;let c=[];r.forEach((l,u)=>{c.push(...this._findMatches({key:l,value:i[u],searcher:n}))}),c.length&&s.push({idx:a,item:i,matches:c})}),s}_findMatches({key:t,value:n,searcher:r}){if(!Xe(n))return[];let o=[];if($t(n))n.forEach(({v:s,i,n:a})=>{if(!Xe(s))return;const{isMatch:c,score:l,indices:u}=r.searchIn(s);c&&o.push({score:l,key:t,value:s,idx:i,norm:a,indices:u})});else{const{v:s,n:i}=n,{isMatch:a,score:c,indices:l}=r.searchIn(s);a&&o.push({score:c,key:t,value:s,norm:i,indices:l})}return o}}Zn.version="6.6.2";Zn.createIndex=ih;Zn.parseIndex=cT;Zn.config=ae;Zn.parseQuery=uh;CT(ET);function IT(e){return Nr()?(wn(e),!0):!1}function St(e){return typeof e=="function"?e():M(e)}function LT(e,t,n){const r=()=>{var i,a;return new Zn((i=St(t))!=null?i:[],(a=St(n))==null?void 0:a.fuseOptions)},o=le(r());ge(()=>{var i;return(i=St(n))==null?void 0:i.fuseOptions},()=>{o.value=r()},{deep:!0}),ge(()=>St(t),i=>{o.value.setCollection(i)},{deep:!0});const s=ee(()=>{const i=St(n);if(i!=null&&i.matchAllWhenSearchEmpty&&!St(e))return St(t).map((c,l)=>({item:c,refIndex:l}));const a=i==null?void 0:i.resultLimit;return o.value.search(St(e),a?{limit:a}:void 0)});return{fuse:o,results:s}}function OT(e){var t;const n=St(e);return(t=n==null?void 0:n.$el)!=null?t:n}/*! * tabbable 6.2.0 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE -*/var fh=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Do=fh.join(","),dh=typeof Element>"u",vn=dh?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Ho=!dh&&Element.prototype.getRootNode?function(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}:function(e){return e==null?void 0:e.ownerDocument},jo=function e(t,n){var r;n===void 0&&(n=!0);var o=t==null||(r=t.getAttribute)===null||r===void 0?void 0:r.call(t,"inert"),s=o===""||o==="true",i=s||n&&t&&e(t.parentNode);return i},kT=function(t){var n,r=t==null||(n=t.getAttribute)===null||n===void 0?void 0:n.call(t,"contenteditable");return r===""||r==="true"},hh=function(t,n,r){if(jo(t))return[];var o=Array.prototype.slice.apply(t.querySelectorAll(Do));return n&&vn.call(t,Do)&&o.unshift(t),o=o.filter(r),o},ph=function e(t,n,r){for(var o=[],s=Array.from(t);s.length;){var i=s.shift();if(!jo(i,!1))if(i.tagName==="SLOT"){var a=i.assignedElements(),c=a.length?a:i.children,l=e(c,!0,r);r.flatten?o.push.apply(o,l):o.push({scopeParent:i,candidates:l})}else{var u=vn.call(i,Do);u&&r.filter(i)&&(n||!t.includes(i))&&o.push(i);var f=i.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(i),d=!jo(f,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(i));if(f&&d){var h=e(f===!0?i.children:f.children,!0,r);r.flatten?o.push.apply(o,h):o.push({scopeParent:i,candidates:h})}else s.unshift.apply(s,i.children)}}return o},mh=function(t){return!isNaN(parseInt(t.getAttribute("tabindex"),10))},dn=function(t){if(!t)throw new Error("No node provided");return t.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(t.tagName)||kT(t))&&!mh(t)?0:t.tabIndex},$T=function(t,n){var r=dn(t);return r<0&&n&&!mh(t)?0:r},MT=function(t,n){return t.tabIndex===n.tabIndex?t.documentOrder-n.documentOrder:t.tabIndex-n.tabIndex},gh=function(t){return t.tagName==="INPUT"},NT=function(t){return gh(t)&&t.type==="hidden"},DT=function(t){var n=t.tagName==="DETAILS"&&Array.prototype.slice.apply(t.children).some(function(r){return r.tagName==="SUMMARY"});return n},HT=function(t,n){for(var r=0;rsummary:first-of-type"),i=s?t.parentElement:t;if(vn.call(i,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="legacy-full"){if(typeof o=="function"){for(var a=t;t;){var c=t.parentElement,l=Ho(t);if(c&&!c.shadowRoot&&o(c)===!0)return Dl(t);t.assignedSlot?t=t.assignedSlot:!c&&l!==t.ownerDocument?t=l.host:t=c}t=a}if(BT(t))return!t.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return Dl(t);return!1},UT=function(t){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(t.tagName))for(var n=t.parentElement;n;){if(n.tagName==="FIELDSET"&&n.disabled){for(var r=0;r=0)},WT=function e(t){var n=[],r=[];return t.forEach(function(o,s){var i=!!o.scopeParent,a=i?o.scopeParent:o,c=$T(a,i),l=i?e(o.candidates):a;c===0?i?n.push.apply(n,l):n.push(a):r.push({documentOrder:s,tabIndex:c,item:o,isScope:i,content:l})}),r.sort(MT).reduce(function(o,s){return s.isScope?o.push.apply(o,s.content):o.push(s.content),o},[]).concat(n)},qT=function(t,n){n=n||{};var r;return n.getShadowRoot?r=ph([t],n.includeContainer,{filter:Mi.bind(null,n),flatten:!1,getShadowRoot:n.getShadowRoot,shadowRootFilter:KT}):r=hh(t,n.includeContainer,Mi.bind(null,n)),WT(r)},GT=function(t,n){n=n||{};var r;return n.getShadowRoot?r=ph([t],n.includeContainer,{filter:Fo.bind(null,n),flatten:!0,getShadowRoot:n.getShadowRoot}):r=hh(t,n.includeContainer,Fo.bind(null,n)),r},Pn=function(t,n){if(n=n||{},!t)throw new Error("No node provided");return vn.call(t,Do)===!1?!1:Mi(n,t)},QT=fh.concat("iframe").join(","),Ns=function(t,n){if(n=n||{},!t)throw new Error("No node provided");return vn.call(t,QT)===!1?!1:Fo(n,t)};/*! +*/var fh=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Ho=fh.join(","),dh=typeof Element>"u",vn=dh?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,jo=!dh&&Element.prototype.getRootNode?function(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}:function(e){return e==null?void 0:e.ownerDocument},Fo=function e(t,n){var r;n===void 0&&(n=!0);var o=t==null||(r=t.getAttribute)===null||r===void 0?void 0:r.call(t,"inert"),s=o===""||o==="true",i=s||n&&t&&e(t.parentNode);return i},kT=function(t){var n,r=t==null||(n=t.getAttribute)===null||n===void 0?void 0:n.call(t,"contenteditable");return r===""||r==="true"},hh=function(t,n,r){if(Fo(t))return[];var o=Array.prototype.slice.apply(t.querySelectorAll(Ho));return n&&vn.call(t,Ho)&&o.unshift(t),o=o.filter(r),o},ph=function e(t,n,r){for(var o=[],s=Array.from(t);s.length;){var i=s.shift();if(!Fo(i,!1))if(i.tagName==="SLOT"){var a=i.assignedElements(),c=a.length?a:i.children,l=e(c,!0,r);r.flatten?o.push.apply(o,l):o.push({scopeParent:i,candidates:l})}else{var u=vn.call(i,Ho);u&&r.filter(i)&&(n||!t.includes(i))&&o.push(i);var f=i.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(i),d=!Fo(f,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(i));if(f&&d){var h=e(f===!0?i.children:f.children,!0,r);r.flatten?o.push.apply(o,h):o.push({scopeParent:i,candidates:h})}else s.unshift.apply(s,i.children)}}return o},mh=function(t){return!isNaN(parseInt(t.getAttribute("tabindex"),10))},dn=function(t){if(!t)throw new Error("No node provided");return t.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(t.tagName)||kT(t))&&!mh(t)?0:t.tabIndex},$T=function(t,n){var r=dn(t);return r<0&&n&&!mh(t)?0:r},MT=function(t,n){return t.tabIndex===n.tabIndex?t.documentOrder-n.documentOrder:t.tabIndex-n.tabIndex},gh=function(t){return t.tagName==="INPUT"},NT=function(t){return gh(t)&&t.type==="hidden"},DT=function(t){var n=t.tagName==="DETAILS"&&Array.prototype.slice.apply(t.children).some(function(r){return r.tagName==="SUMMARY"});return n},HT=function(t,n){for(var r=0;rsummary:first-of-type"),i=s?t.parentElement:t;if(vn.call(i,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="legacy-full"){if(typeof o=="function"){for(var a=t;t;){var c=t.parentElement,l=jo(t);if(c&&!c.shadowRoot&&o(c)===!0)return Dl(t);t.assignedSlot?t=t.assignedSlot:!c&&l!==t.ownerDocument?t=l.host:t=c}t=a}if(BT(t))return!t.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return Dl(t);return!1},UT=function(t){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(t.tagName))for(var n=t.parentElement;n;){if(n.tagName==="FIELDSET"&&n.disabled){for(var r=0;r=0)},WT=function e(t){var n=[],r=[];return t.forEach(function(o,s){var i=!!o.scopeParent,a=i?o.scopeParent:o,c=$T(a,i),l=i?e(o.candidates):a;c===0?i?n.push.apply(n,l):n.push(a):r.push({documentOrder:s,tabIndex:c,item:o,isScope:i,content:l})}),r.sort(MT).reduce(function(o,s){return s.isScope?o.push.apply(o,s.content):o.push(s.content),o},[]).concat(n)},qT=function(t,n){n=n||{};var r;return n.getShadowRoot?r=ph([t],n.includeContainer,{filter:Mi.bind(null,n),flatten:!1,getShadowRoot:n.getShadowRoot,shadowRootFilter:KT}):r=hh(t,n.includeContainer,Mi.bind(null,n)),WT(r)},GT=function(t,n){n=n||{};var r;return n.getShadowRoot?r=ph([t],n.includeContainer,{filter:Vo.bind(null,n),flatten:!0,getShadowRoot:n.getShadowRoot}):r=hh(t,n.includeContainer,Vo.bind(null,n)),r},Pn=function(t,n){if(n=n||{},!t)throw new Error("No node provided");return vn.call(t,Ho)===!1?!1:Mi(n,t)},QT=fh.concat("iframe").join(","),Ns=function(t,n){if(n=n||{},!t)throw new Error("No node provided");return vn.call(t,QT)===!1?!1:Vo(n,t)};/*! * focus-trap 7.5.3 * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE -*/function Hl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function jl(e){for(var t=1;t0){var r=t[t.length-1];r!==n&&r.pause()}var o=t.indexOf(n);o===-1||t.splice(o,1),t.push(n)},deactivateTrap:function(t,n){var r=t.indexOf(n);r!==-1&&t.splice(r,1),t.length>0&&t[t.length-1].unpause()}},XT=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},eS=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},vr=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},tS=function(t){return vr(t)&&!t.shiftKey},nS=function(t){return vr(t)&&t.shiftKey},Vl=function(t){return setTimeout(t,0)},Bl=function(t,n){var r=-1;return t.every(function(o,s){return n(o)?(r=s,!1):!0}),r},or=function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o1?P-1:0),J=1;J=0)S=r.activeElement;else{var T=i.tabbableGroups[0],P=T&&T.firstTabbableNode;S=P||u("fallbackFocus")}if(!S)throw new Error("Your focus-trap needs to have at least one focusable element");return S},d=function(){if(i.containerGroups=i.containers.map(function(S){var T=qT(S,s.tabbableOptions),P=GT(S,s.tabbableOptions),B=T.length>0?T[0]:void 0,J=T.length>0?T[T.length-1]:void 0,V=P.find(function(he){return Pn(he)}),Q=P.slice().reverse().find(function(he){return Pn(he)}),U=!!T.find(function(he){return dn(he)>0});return{container:S,tabbableNodes:T,focusableNodes:P,posTabIndexesFound:U,firstTabbableNode:B,lastTabbableNode:J,firstDomTabbableNode:V,lastDomTabbableNode:Q,nextTabbableNode:function(Re){var Ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,we=T.indexOf(Re);return we<0?Ie?P.slice(P.indexOf(Re)+1).find(function(ze){return Pn(ze)}):P.slice(0,P.indexOf(Re)).reverse().find(function(ze){return Pn(ze)}):T[we+(Ie?1:-1)]}}}),i.tabbableGroups=i.containerGroups.filter(function(S){return S.tabbableNodes.length>0}),i.tabbableGroups.length<=0&&!u("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(i.containerGroups.find(function(S){return S.posTabIndexesFound})&&i.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},h=function R(S){if(S!==!1&&S!==r.activeElement){if(!S||!S.focus){R(f());return}S.focus({preventScroll:!!s.preventScroll}),i.mostRecentlyFocusedNode=S,XT(S)&&S.select()}},m=function(S){var T=u("setReturnFocus",S);return T||(T===!1?!1:S)},p=function(S){var T=S.target,P=S.event,B=S.isBackward,J=B===void 0?!1:B;T=T||ro(P),d();var V=null;if(i.tabbableGroups.length>0){var Q=l(T,P),U=Q>=0?i.containerGroups[Q]:void 0;if(Q<0)J?V=i.tabbableGroups[i.tabbableGroups.length-1].lastTabbableNode:V=i.tabbableGroups[0].firstTabbableNode;else if(J){var he=Bl(i.tabbableGroups,function(pt){var Ae=pt.firstTabbableNode;return T===Ae});if(he<0&&(U.container===T||Ns(T,s.tabbableOptions)&&!Pn(T,s.tabbableOptions)&&!U.nextTabbableNode(T,!1))&&(he=Q),he>=0){var Re=he===0?i.tabbableGroups.length-1:he-1,Ie=i.tabbableGroups[Re];V=dn(T)>=0?Ie.lastTabbableNode:Ie.lastDomTabbableNode}else vr(P)||(V=U.nextTabbableNode(T,!1))}else{var we=Bl(i.tabbableGroups,function(pt){var Ae=pt.lastTabbableNode;return T===Ae});if(we<0&&(U.container===T||Ns(T,s.tabbableOptions)&&!Pn(T,s.tabbableOptions)&&!U.nextTabbableNode(T))&&(we=Q),we>=0){var ze=we===i.tabbableGroups.length-1?0:we+1,rt=i.tabbableGroups[ze];V=dn(T)>=0?rt.firstTabbableNode:rt.firstDomTabbableNode}else vr(P)||(V=U.nextTabbableNode(T))}}else V=u("fallbackFocus");return V},y=function(S){var T=ro(S);if(!(l(T,S)>=0)){if(or(s.clickOutsideDeactivates,S)){a.deactivate({returnFocus:s.returnFocusOnDeactivate});return}or(s.allowOutsideClick,S)||S.preventDefault()}},v=function(S){var T=ro(S),P=l(T,S)>=0;if(P||T instanceof Document)P&&(i.mostRecentlyFocusedNode=T);else{S.stopImmediatePropagation();var B,J=!0;if(i.mostRecentlyFocusedNode)if(dn(i.mostRecentlyFocusedNode)>0){var V=l(i.mostRecentlyFocusedNode),Q=i.containerGroups[V].tabbableNodes;if(Q.length>0){var U=Q.findIndex(function(he){return he===i.mostRecentlyFocusedNode});U>=0&&(s.isKeyForward(i.recentNavEvent)?U+1=0&&(B=Q[U-1],J=!1))}}else i.containerGroups.some(function(he){return he.tabbableNodes.some(function(Re){return dn(Re)>0})})||(J=!1);else J=!1;J&&(B=p({target:i.mostRecentlyFocusedNode,isBackward:s.isKeyBackward(i.recentNavEvent)})),h(B||i.mostRecentlyFocusedNode||f())}i.recentNavEvent=void 0},b=function(S){var T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;i.recentNavEvent=S;var P=p({event:S,isBackward:T});P&&(vr(S)&&S.preventDefault(),h(P))},g=function(S){if(eS(S)&&or(s.escapeDeactivates,S)!==!1){S.preventDefault(),a.deactivate();return}(s.isKeyForward(S)||s.isKeyBackward(S))&&b(S,s.isKeyBackward(S))},_=function(S){var T=ro(S);l(T,S)>=0||or(s.clickOutsideDeactivates,S)||or(s.allowOutsideClick,S)||(S.preventDefault(),S.stopImmediatePropagation())},C=function(){if(i.active)return Fl.activateTrap(o,a),i.delayInitialFocusTimer=s.delayInitialFocus?Vl(function(){h(f())}):h(f()),r.addEventListener("focusin",v,!0),r.addEventListener("mousedown",y,{capture:!0,passive:!1}),r.addEventListener("touchstart",y,{capture:!0,passive:!1}),r.addEventListener("click",_,{capture:!0,passive:!1}),r.addEventListener("keydown",g,{capture:!0,passive:!1}),a},A=function(){if(i.active)return r.removeEventListener("focusin",v,!0),r.removeEventListener("mousedown",y,!0),r.removeEventListener("touchstart",y,!0),r.removeEventListener("click",_,!0),r.removeEventListener("keydown",g,!0),a},I=function(S){var T=S.some(function(P){var B=Array.from(P.removedNodes);return B.some(function(J){return J===i.mostRecentlyFocusedNode})});T&&h(f())},L=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(I):void 0,H=function(){L&&(L.disconnect(),i.active&&!i.paused&&i.containers.map(function(S){L.observe(S,{subtree:!0,childList:!0})}))};return a={get active(){return i.active},get paused(){return i.paused},activate:function(S){if(i.active)return this;var T=c(S,"onActivate"),P=c(S,"onPostActivate"),B=c(S,"checkCanFocusTrap");B||d(),i.active=!0,i.paused=!1,i.nodeFocusedBeforeActivation=r.activeElement,T==null||T();var J=function(){B&&d(),C(),H(),P==null||P()};return B?(B(i.containers.concat()).then(J,J),this):(J(),this)},deactivate:function(S){if(!i.active)return this;var T=jl({onDeactivate:s.onDeactivate,onPostDeactivate:s.onPostDeactivate,checkCanReturnFocus:s.checkCanReturnFocus},S);clearTimeout(i.delayInitialFocusTimer),i.delayInitialFocusTimer=void 0,A(),i.active=!1,i.paused=!1,H(),Fl.deactivateTrap(o,a);var P=c(T,"onDeactivate"),B=c(T,"onPostDeactivate"),J=c(T,"checkCanReturnFocus"),V=c(T,"returnFocus","returnFocusOnDeactivate");P==null||P();var Q=function(){Vl(function(){V&&h(m(i.nodeFocusedBeforeActivation)),B==null||B()})};return V&&J?(J(m(i.nodeFocusedBeforeActivation)).then(Q,Q),this):(Q(),this)},pause:function(S){if(i.paused||!i.active)return this;var T=c(S,"onPause"),P=c(S,"onPostPause");return i.paused=!0,T==null||T(),A(),H(),P==null||P(),this},unpause:function(S){if(!i.paused||!i.active)return this;var T=c(S,"onUnpause"),P=c(S,"onPostUnpause");return i.paused=!1,T==null||T(),d(),C(),H(),P==null||P(),this},updateContainerElements:function(S){var T=[].concat(S).filter(Boolean);return i.containers=T.map(function(P){return typeof P=="string"?r.querySelector(P):P}),i.active&&d(),H(),this}},a.updateContainerElements(t),a};function sS(e,t={}){let n;const{immediate:r,...o}=t,s=le(!1),i=le(!1),a=f=>n&&n.activate(f),c=f=>n&&n.deactivate(f),l=()=>{n&&(n.pause(),i.value=!0)},u=()=>{n&&(n.unpause(),i.value=!1)};return ge(()=>OT(e),f=>{f&&(n=oS(f,{...o,onActivate(){s.value=!0,t.onActivate&&t.onActivate()},onDeactivate(){s.value=!1,t.onDeactivate&&t.onDeactivate()}}),r&&a())},{flush:"post"}),IT(()=>c()),{hasFocus:s,isPaused:i,activate:a,deactivate:c,pause:l,unpause:u}}var zl;const fs=typeof window<"u",iS=e=>typeof e<"u",aS=e=>typeof e=="function",cS=e=>typeof e=="string",$a=()=>{},lS=fs&&((zl=window==null?void 0:window.navigator)==null?void 0:zl.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function xt(e){return typeof e=="function"?e():M(e)}function Ul(e,t=!1,n="Timeout"){return new Promise((r,o)=>{setTimeout(t?()=>o(n):r,e)})}function uS(e){return e}function yh(e){return zo()?(wn(e),!0):!1}function fS(e,t=!0){ht()?Nt(e):t?e():wt(e)}function Ni(e,t=!1){function n(f,{flush:d="sync",deep:h=!1,timeout:m,throwOnTimeout:p}={}){let y=null;const b=[new Promise(g=>{y=ge(e,_=>{f(_)!==t&&(y==null||y(),g(_))},{flush:d,deep:h,immediate:!0})})];return m!=null&&b.push(Ul(m,p).then(()=>xt(e)).finally(()=>y==null?void 0:y())),Promise.race(b)}function r(f,d){if(!ke(f))return n(_=>_===f,d);const{flush:h="sync",deep:m=!1,timeout:p,throwOnTimeout:y}=d??{};let v=null;const g=[new Promise(_=>{v=ge([e,f],([C,A])=>{t!==(C===A)&&(v==null||v(),_(C))},{flush:h,deep:m,immediate:!0})})];return p!=null&&g.push(Ul(p,y).then(()=>xt(e)).finally(()=>(v==null||v(),xt(e)))),Promise.race(g)}function o(f){return n(d=>!!d,f)}function s(f){return r(null,f)}function i(f){return r(void 0,f)}function a(f){return n(Number.isNaN,f)}function c(f,d){return n(h=>{const m=Array.from(h);return m.includes(f)||m.includes(xt(f))},d)}function l(f){return u(1,f)}function u(f=1,d){let h=-1;return n(()=>(h+=1,h>=f),d)}return Array.isArray(xt(e))?{toMatch:n,toContains:c,changed:l,changedTimes:u,get not(){return Ni(e,!t)}}:{toMatch:n,toBe:r,toBeTruthy:o,toBeNull:s,toBeNaN:a,toBeUndefined:i,changed:l,changedTimes:u,get not(){return Ni(e,!t)}}}function $P(e){return Ni(e)}function dS(e,t,n={}){const{immediate:r=!0}=n,o=le(!1);let s=null;function i(){s&&(clearTimeout(s),s=null)}function a(){o.value=!1,i()}function c(...l){i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...l)},xt(t))}return r&&(o.value=!0,fs&&c()),yh(a),{isPending:qi(o),start:c,stop:a}}function lr(e){var t;const n=xt(e);return(t=n==null?void 0:n.$el)!=null?t:n}const Ma=fs?window:void 0,hS=fs?window.navigator:void 0;function qt(...e){let t,n,r,o;if(cS(e[0])||Array.isArray(e[0])?([n,r,o]=e,t=Ma):[t,n,r,o]=e,!t)return $a;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const s=[],i=()=>{s.forEach(u=>u()),s.length=0},a=(u,f,d,h)=>(u.addEventListener(f,d,h),()=>u.removeEventListener(f,d,h)),c=ge(()=>[lr(t),xt(o)],([u,f])=>{i(),u&&s.push(...n.flatMap(d=>r.map(h=>a(u,d,h,f))))},{immediate:!0,flush:"post"}),l=()=>{c(),i()};return yh(l),l}let Kl=!1;function MP(e,t,n={}){const{window:r=Ma,ignore:o=[],capture:s=!0,detectIframe:i=!1}=n;if(!r)return;lS&&!Kl&&(Kl=!0,Array.from(r.document.body.children).forEach(d=>d.addEventListener("click",$a)));let a=!0;const c=d=>o.some(h=>{if(typeof h=="string")return Array.from(r.document.querySelectorAll(h)).some(m=>m===d.target||d.composedPath().includes(m));{const m=lr(h);return m&&(d.target===m||d.composedPath().includes(m))}}),u=[qt(r,"click",d=>{const h=lr(e);if(!(!h||h===d.target||d.composedPath().includes(h))){if(d.detail===0&&(a=!c(d)),!a){a=!0;return}t(d)}},{passive:!0,capture:s}),qt(r,"pointerdown",d=>{const h=lr(e);h&&(a=!d.composedPath().includes(h)&&!c(d))},{passive:!0}),i&&qt(r,"blur",d=>{var h;const m=lr(e);((h=r.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(m!=null&&m.contains(r.document.activeElement))&&t(d)})].filter(Boolean);return()=>u.forEach(d=>d())}function pS(e,t=!1){const n=le(),r=()=>n.value=!!e();return r(),fS(r,t),n}function NP(e={}){const{navigator:t=hS,read:n=!1,source:r,copiedDuring:o=1500,legacy:s=!1}=e,i=["copy","cut"],a=pS(()=>t&&"clipboard"in t),c=ee(()=>a.value||s),l=le(""),u=le(!1),f=dS(()=>u.value=!1,o);function d(){a.value?t.clipboard.readText().then(y=>{l.value=y}):l.value=p()}if(c.value&&n)for(const y of i)qt(y,d);async function h(y=xt(r)){c.value&&y!=null&&(a.value?await t.clipboard.writeText(y):m(y),l.value=y,u.value=!0,f.start())}function m(y){const v=document.createElement("textarea");v.value=y??"",v.style.position="absolute",v.style.opacity="0",document.body.appendChild(v),v.select(),document.execCommand("copy"),v.remove()}function p(){var y,v,b;return(b=(v=(y=document==null?void 0:document.getSelection)==null?void 0:y.call(document))==null?void 0:v.toString())!=null?b:""}return{isSupported:c,text:l,copied:u,copy:h}}function mS(e){return JSON.parse(JSON.stringify(e))}const Wl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ql="__vueuse_ssr_handlers__";Wl[ql]=Wl[ql]||{};const gS={ctrl:"control",command:"meta",cmd:"meta",option:"alt",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright"};function yS(e={}){const{reactive:t=!1,target:n=Ma,aliasMap:r=gS,passive:o=!0,onEventFired:s=$a}=e,i=nt(new Set),a={toJSON(){return{}},current:i},c=t?nt(a):a,l=new Set,u=new Set;function f(p,y){p in c&&(t?c[p]=y:c[p].value=y)}function d(){i.clear();for(const p of u)f(p,!1)}function h(p,y){var v,b;const g=(v=p.key)==null?void 0:v.toLowerCase(),C=[(b=p.code)==null?void 0:b.toLowerCase(),g].filter(Boolean);g&&(y?i.add(g):i.delete(g));for(const A of C)u.add(A),f(A,y);g==="meta"&&!y?(l.forEach(A=>{i.delete(A),f(A,!1)}),l.clear()):typeof p.getModifierState=="function"&&p.getModifierState("Meta")&&y&&[...i,...C].forEach(A=>l.add(A))}qt(n,"keydown",p=>(h(p,!0),s(p)),{passive:o}),qt(n,"keyup",p=>(h(p,!1),s(p)),{passive:o}),qt("blur",d,{passive:!0}),qt("focus",d,{passive:!0});const m=new Proxy(c,{get(p,y,v){if(typeof y!="string")return Reflect.get(p,y,v);if(y=y.toLowerCase(),y in r&&(y=r[y]),!(y in c))if(/[+_-]/.test(y)){const g=y.split(/[+_-]/g).map(_=>_.trim());c[y]=ee(()=>g.every(_=>M(m[_])))}else c[y]=le(!1);const b=Reflect.get(p,y,v);return t?M(b):b}});return m}var Gl;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(Gl||(Gl={}));var _S=Object.defineProperty,Ql=Object.getOwnPropertySymbols,vS=Object.prototype.hasOwnProperty,bS=Object.prototype.propertyIsEnumerable,Jl=(e,t,n)=>t in e?_S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,wS=(e,t)=>{for(var n in t||(t={}))vS.call(t,n)&&Jl(e,n,t[n]);if(Ql)for(var n of Ql(t))bS.call(t,n)&&Jl(e,n,t[n]);return e};const ES={easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]};wS({linear:uS},ES);function DP(e,t,n,r={}){var o,s,i;const{clone:a=!1,passive:c=!1,eventName:l,deep:u=!1,defaultValue:f}=r,d=ht(),h=n||(d==null?void 0:d.emit)||((o=d==null?void 0:d.$emit)==null?void 0:o.bind(d))||((i=(s=d==null?void 0:d.proxy)==null?void 0:s.$emit)==null?void 0:i.bind(d==null?void 0:d.proxy));let m=l;t||(t="modelValue"),m=l||m||`update:${t.toString()}`;const p=v=>a?aS(a)?a(v):mS(v):v,y=()=>iS(e[t])?p(e[t]):f;if(c){const v=y(),b=le(v);return ge(()=>e[t],g=>b.value=p(g)),ge(b,g=>{(g!==e[t]||u)&&h(m,g)},{deep:u}),b}else return ee({get(){return y()},set(v){h(m,v)}})}const Vr=e=>(Au("data-v-0c43b394"),e=e(),Ru(),e),CS={class:"content"},TS=Vr(()=>ie("span",null,"Search",-1)),SS=Vr(()=>ie("span",null,[ie("kbd",null,"⌘"),ie("kbd",null,"K")],-1)),PS={class:"search-input"},xS=["onKeydown"],AS=["id","onMouseenter"],RS={class:"search-result-content-wrapper"},IS={class:"search-result-content-head"},LS={key:2},OS=Vr(()=>ie("span",{class:"arrow",innerHTML:"→"},null,-1)),kS={key:0,class:"search-result-content-preview"},$S=Vr(()=>ie("span",null,"“",-1)),MS=["innerHTML"],NS=Vr(()=>ie("span",null,"“",-1)),DS={key:1,class:"search-results empty"},HS={key:2,class:"search-results empty"},jS=xe({__name:"AppSearch",props:{fuse:{type:Object,default:()=>({fuseOptions:{keys:["title","description","keywords","body"],ignoreLocation:!0,threshold:0,includeMatches:!0,includeScore:!0},matchAllWhenSearchEmpty:!0})}},async setup(e){let t,n;const r=e,o=le(""),s=le(),i=le(),a=le(),c=le(-1),l=le(!1),{close:u,open:f}=Gd(),{activate:d,deactivate:h}=sS(s),{navigation:m}=Fr(),{meta_K:p,Escape:y}=yS(),{data:v}=([t,n]=qu(()=>i1("search-api",()=>$fetch("/api/search",{parseResponse:JSON.parse}))),t=await t,n(),t),{results:b}=LT(o,v,r.fuse);function g(R,S,T){for(const P of R){if(P._path===S)return{directoryTitle:T.title,directoryIcon:T.icon};if(P.children){const B=g(P.children,S,P);if(B)return B}}}function _(R){let S;for(const T of m.value)if(T.children){const P=g(T.children,R,T);P&&(S=P)}return S}function C(R,S){const{indices:T,value:P}=S||{indices:[],value:""};if(R===P)return"";let B="",J=0;T.forEach(Q=>{const U=Q[1]+1,he=U-Q[0]>=o.value.length;B+=[P.substring(J,Q[0]),he&&"",P.substring(Q[0],U),he&&""].filter(Boolean).join(""),J=U}),B+=P.substring(J);const V=B.indexOf("");return V>60&&(B=`${B.substring(V-60)}`),`${B}”`}function A(){c.value===-1?c.value=0:c.value===b.value.length-1||(c.value=c.value+1)}function I(){c.value===-1?c.value=b.value.length-1:c.value===0||(c.value=c.value-1)}function L(R){var P,B;const S=(B=(P=b==null?void 0:b.value)==null?void 0:P[R])==null?void 0:B.item,T=S==null?void 0:S.path;T&&(l.value=!1,lt().push(T))}function H(){var R,S;o.value?(o.value="",c.value=-1,(S=(R=i.value)==null?void 0:R.focus)==null||S.call(R)):l.value=!1}return Nt(()=>{const R=ct();R.query.q&&(l.value=!0,o.value=R.query.q)}),ge(c,R=>{var T,P,B,J;const S=(B=(P=(T=b==null?void 0:b.value)==null?void 0:T[R])==null?void 0:P.item)==null?void 0:B.id;S&&((J=document.querySelector(`[id="${S}"]`))==null||J.scrollIntoView({block:"nearest"}))}),ge(o,R=>{c.value=0}),ge(l,R=>{R?(f(),wt(()=>{d()})):(o.value="",c.value=-1,h(),u())}),ge(p,R=>{R&&(l.value=!l.value)}),ge(y,()=>{l.value&&(l.value=!1)}),(R,S)=>{const T=Dt;return q(),ue(Se,null,[ie("button",{type:"button","aria-label":"Search",onClick:S[0]||(S[0]=P=>l.value=!0)},[ie("span",CS,[se(T,{name:"heroicons-outline:search"}),TS,SS])]),(q(),de(sf,{to:"body"},[M(l)?(q(),ue("div",{key:0,ref_key:"searchContentRef",ref:s,class:"search-content",onClick:S[5]||(S[5]=P=>l.value=!1)},[ie("div",{class:"search-window",onClick:S[4]||(S[4]=ar(()=>{},["stop"]))},[ie("div",PS,[se(T,{name:"heroicons-outline:search",class:"search-icon"}),Nu(ie("input",{ref_key:"searchInputRef",ref:i,"onUpdate:modelValue":S[1]||(S[1]=P=>ke(o)?o.value=P:null),type:"text",placeholder:"Search documentation",onKeydown:[Ss(ar(I,["prevent"]),["up"]),Ss(ar(A,["prevent"]),["down"]),S[2]||(S[2]=Ss(P=>L(M(c)),["enter"]))]},null,40,xS),[[Wm,M(o)]]),ie("button",{class:"close-button",onClick:H},[se(T,{name:"heroicons:x-mark",class:"close-icon"})])]),M(b).length>0?(q(),ue("div",{key:0,ref_key:"resultsAreaRef",ref:a,class:"search-results"},[(q(!0),ue(Se,null,Fn(M(b),(P,B)=>{var J,V,Q,U,he,Re,Ie,we,ze,rt;return q(),ue("div",{id:P.item.id,key:P.item.id,class:je(["search-result",{selected:M(c)===B}]),onClick:S[3]||(S[3]=pt=>L(M(c))),onMouseenter:ar(pt=>c.value=B,["prevent"])},[ie("div",RS,[ie("div",IS,[(V=_((J=P==null?void 0:P.item)==null?void 0:J.path))!=null&&V.directoryIcon?(q(),de(T,{key:0,name:(U=_((Q=P==null?void 0:P.item)==null?void 0:Q.path))==null?void 0:U.directoryIcon},null,8,["name"])):(q(),de(T,{key:1,name:"solar:documents-bold-duotone"})),(Re=_((he=P==null?void 0:P.item)==null?void 0:he.path))!=null&&Re.directoryTitle?(q(),ue("span",LS,[Yn(Lt((we=_((Ie=P==null?void 0:P.item)==null?void 0:Ie.path))==null?void 0:we.directoryTitle)+" ",1),OS])):Fe("",!0),ie("span",null,Lt(P.item.title),1)]),(ze=P==null?void 0:P.matches)!=null&&ze[0]?(q(),ue("p",kS,[$S,ie("span",{innerHTML:`${C(M(o),(rt=P==null?void 0:P.matches)==null?void 0:rt[0])}`},null,8,MS),NS])):Fe("",!0)])],42,AS)}),128))],512)):M(o)?(q(),ue("div",HS," No results found. Try another query ")):(q(),ue("div",DS," Type your query to search docs "))])],512)):Fe("",!0)]))],64)}}}),_h=Be(jS,[["__scopeId","data-v-0c43b394"]]),FS=Object.freeze(Object.defineProperty({__proto__:null,default:_h},Symbol.toStringTag,{value:"Module"})),VS=xe({name:"ClientOnly",inheritAttrs:!1,props:["fallback","placeholder","placeholderTag","fallbackTag"],setup(e,{slots:t,attrs:n}){const r=le(!1);return Nt(()=>{r.value=!0}),o=>{var c;if(r.value)return(c=t.default)==null?void 0:c.call(t);const s=t.fallback||t.placeholder;if(s)return s();const i=o.fallback||o.placeholder||"",a=o.fallbackTag||o.placeholderTag||"span";return ue(a,n,i)}}}),BS={name:Pw,props:{placeholder:String,tag:{type:String,default:"span"}}};function zS(e,t,n,r,o,s){const i=VS;return q(),de(i,{placeholder:n.placeholder,"placeholder-tag":n.tag},{default:Qe(()=>[Sr(e.$slots,"default")]),_:3},8,["placeholder","placeholder-tag"])}const US=Be(BS,[["render",zS]]),KS=()=>At("color-mode").value,WS=xe({__name:"ThemeSelect",setup(e){const t=KS(),n=()=>{const r=["system","light","dark"],s=(r.indexOf(t.preference)+1)%r.length;t.preference=r[s]};return(r,o)=>{const s=Dt,i=US;return q(),ue("button",{"aria-label":"Color Mode",onClick:n},[se(i,{placeholder:"..."},{default:Qe(()=>[M(t).preference==="dark"?(q(),de(s,{key:0,name:"uil:moon"})):M(t).preference==="light"?(q(),de(s,{key:1,name:"uil:sun"})):(q(),de(s,{key:2,name:"uil:desktop"}))]),_:1})])}}}),vh=Be(WS,[["__scopeId","data-v-8c5f6b44"]]),qS=Object.freeze(Object.defineProperty({__proto__:null,default:vh},Symbol.toStringTag,{value:"Module"})),GS=xe({__name:"Container",props:{as:{type:String,required:!1,default:"div"},padded:{required:!1,type:[Boolean,Object],default:!0},fluid:{required:!1,type:[Boolean,Object],default:!1}},setup(e){const t=e,n={padded:{true:{px:"{elements.container.padding.mobile}","@xs":{px:"{elements.container.padding.xs}"},"@sm":{px:"{elements.container.padding.sm}"},"@md":{px:"{elements.container.padding.md}"}}},fluid:{true:{},false:{maxWidth:"{elements.container.maxWidth}"}}},{$pinceau:r}=pw(t,n,void 0);return(o,s)=>(q(),de(Go(e.as),{class:je(["container",[M(r)]])},{default:Qe(()=>[Sr(o.$slots,"default",{},void 0,!0)]),_:3},8,["class"]))}}),Na=Be(GS,[["__scopeId","data-v-6fad1fba"]]),QS=Object.freeze(Object.defineProperty({__proto__:null,default:Na},Symbol.toStringTag,{value:"Module"})),JS={class:"section left"},YS={class:"section center"},ZS={class:"section right"},XS={class:"social-icons"},eP=xe({__name:"AppHeader",props:{},setup(e){const{config:t}=nn(),{navigation:n}=Fr(),{hasDocSearch:r}=Xd(),o=ee(()=>{var s,i,a,c;return((s=n.value)==null?void 0:s.length)>1||((c=(a=(i=n.value)==null?void 0:i[0])==null?void 0:a.children)==null?void 0:c.length)});return(s,i)=>{var p,y;const a=Qd,c=Yd,l=Zd,u=th,f=_h,d=vh,h=us,m=Na;return q(),ue("header",{class:je({"has-dialog":M(o)})},[se(m,{fluid:(y=(p=M(t))==null?void 0:p.header)==null?void 0:y.fluid},{default:Qe(()=>[ie("div",JS,[M(o)?(q(),de(a,{key:0})):Fe("",!0),se(c)]),ie("div",YS,[M(o)?(q(),de(c,{key:0})):Fe("",!0),se(l)]),ie("div",ZS,[M(r)?(q(),de(u,{key:0})):(q(),de(f,{key:1,fuse:M(t).fuse},null,8,["fuse"])),se(d),ie("div",XS,[se(h)])])]),_:1},8,["fluid"])],2)}}}),bh=Be(eP,[["__scopeId","data-v-9e920cd4"]]),tP=Object.freeze(Object.defineProperty({__proto__:null,default:bh},Symbol.toStringTag,{value:"Module"})),nP={class:"left"},rP=["href"],oP={key:1},sP={class:"center"},iP={class:"right"},aP=["aria-label","href","rel"],cP=xe({__name:"AppFooter",setup(e){const{config:t}=nn(),n=le(null),r=ee(()=>{var a,c;return((c=(a=t.value)==null?void 0:a.footer)==null?void 0:c.iconLinks)||[]}),o=ee(()=>{var a,c;return((c=(a=t.value)==null?void 0:a.footer)==null?void 0:c.textLinks)||[]}),s=ee(()=>{var a;return Object.entries(((a=t.value)==null?void 0:a.socials)||{}).filter(([,c])=>c).length}),i=ee(()=>n.value?s.value:0);return(a,c)=>{var h,m;const l=Dt,u=jr,f=us,d=Na;return q(),ue("footer",null,[se(d,{fluid:(m=(h=M(t))==null?void 0:h.footer)==null?void 0:m.fluid,padded:"",class:"footer-container"},{default:Qe(()=>{var p,y,v,b,g,_,C,A,I,L,H,R,S,T;return[ie("div",nP,[(y=(p=M(t))==null?void 0:p.footer)!=null&&y.credits?(q(),ue("a",{key:0,href:((g=(b=(v=M(t))==null?void 0:v.footer)==null?void 0:b.credits)==null?void 0:g.href)||"#",rel:"noopener",target:"_blank"},[(A=(C=(_=M(t))==null?void 0:_.footer)==null?void 0:C.credits)!=null&&A.icon?(q(),de(l,{key:0,name:(H=(L=(I=M(t))==null?void 0:I.footer)==null?void 0:L.credits)==null?void 0:H.icon,class:"left-icon"},null,8,["name"])):Fe("",!0),(T=(S=(R=M(t))==null?void 0:R.footer)==null?void 0:S.credits)!=null&&T.text?(q(),ue("p",oP,Lt(M(t).footer.credits.text),1)):Fe("",!0)],8,rP)):Fe("",!0)]),ie("div",sP,[(q(!0),ue(Se,null,Fn(M(o),P=>(q(),de(u,{key:P.href,class:"text-link","aria-label":P.text,href:P.href,target:(P==null?void 0:P.target)||"_self",rel:(P==null?void 0:P.rel)||"noopener noreferrer"},{default:Qe(()=>[Yn(Lt(P.text),1)]),_:2},1032,["aria-label","href","target","rel"]))),128))]),ie("div",iP,[(q(!0),ue(Se,null,Fn(M(r).slice(0,6-M(i)),P=>(q(),ue("a",{key:P.label,class:"icon-link","aria-label":P.label,href:P.href,target:"_blank",rel:(P==null?void 0:P.rel)||"noopener noreferrer"},[se(l,{name:P.icon},null,8,["name"])],8,aP))),128)),se(f,{ref_key:"socialIcons",ref:n},null,512)])]}),_:1},8,["fluid"])])}}}),wh=Be(cP,[["__scopeId","data-v-351b46b1"]]),lP=Object.freeze(Object.defineProperty({__proto__:null,default:wh},Symbol.toStringTag,{value:"Module"})),uP=(e,t=ct())=>{const n=M(e),r=Je();ge(()=>M(e),(s=n)=>{if(!t.path||!s)return;const i=Object.assign({},(s==null?void 0:s.head)||{});i.meta=[...i.meta||[]],i.link=[...i.link||[]];const a=i.title||(s==null?void 0:s.title);a&&(i.title=a),r.public.content.host;const c=(i==null?void 0:i.description)||(s==null?void 0:s.description);c&&i.meta.filter(l=>l.name==="description").length===0&&i.meta.push({name:"description",content:c}),i!=null&&i.image||(s==null||s.image),wt(()=>Ir(i))},{immediate:!0})},fP={class:"app-layout"},dP=xe({__name:"AppLayout",setup(e){const{config:t}=nn();return Ir({titleTemplate:t.value.titleTemplate,meta:[{name:"twitter:card",content:"summary_large_image"}]}),ge(()=>t.value.titleTemplate,()=>Ir({titleTemplate:t.value.titleTemplate})),uP(t.value),(n,r)=>{const o=Id,s=bh,i=wh;return q(),ue("div",fP,[se(o),se(s),ie("main",null,[Sr(n.$slots,"default",{},void 0,!0)]),se(i)])}}}),Eh=Be(dP,[["__scopeId","data-v-47c944a3"]]),hP=Object.freeze(Object.defineProperty({__proto__:null,default:Eh},Symbol.toStringTag,{value:"Module"})),pP=xe({__name:"app",setup(e){return Fw(),(t,n)=>{const r=Rd,o=tE,s=Eh;return q(),ue("div",null,[se(r,{type:"warning"},{default:Qe(()=>[Yn(" Currently you are viewing v3 document of vue-recaptcha which is still in development ")]),_:1}),se(s,null,{default:Qe(()=>[se(o)]),_:1})])}}}),mP={__name:"nuxt-error-page",props:{error:Object},setup(e){const n=e.error;(n.stack||"").split(` +*/function Hl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function jl(e){for(var t=1;t0){var r=t[t.length-1];r!==n&&r.pause()}var o=t.indexOf(n);o===-1||t.splice(o,1),t.push(n)},deactivateTrap:function(t,n){var r=t.indexOf(n);r!==-1&&t.splice(r,1),t.length>0&&t[t.length-1].unpause()}},XT=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},eS=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},vr=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},tS=function(t){return vr(t)&&!t.shiftKey},nS=function(t){return vr(t)&&t.shiftKey},Vl=function(t){return setTimeout(t,0)},Bl=function(t,n){var r=-1;return t.every(function(o,s){return n(o)?(r=s,!1):!0}),r},or=function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o1?x-1:0),J=1;J=0)T=r.activeElement;else{var C=i.tabbableGroups[0],x=C&&C.firstTabbableNode;T=x||u("fallbackFocus")}if(!T)throw new Error("Your focus-trap needs to have at least one focusable element");return T},d=function(){if(i.containerGroups=i.containers.map(function(T){var C=qT(T,s.tabbableOptions),x=GT(T,s.tabbableOptions),B=C.length>0?C[0]:void 0,J=C.length>0?C[C.length-1]:void 0,V=x.find(function(he){return Pn(he)}),Q=x.slice().reverse().find(function(he){return Pn(he)}),U=!!C.find(function(he){return dn(he)>0});return{container:T,tabbableNodes:C,focusableNodes:x,posTabIndexesFound:U,firstTabbableNode:B,lastTabbableNode:J,firstDomTabbableNode:V,lastDomTabbableNode:Q,nextTabbableNode:function(Re){var Ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,we=C.indexOf(Re);return we<0?Ie?x.slice(x.indexOf(Re)+1).find(function(ze){return Pn(ze)}):x.slice(0,x.indexOf(Re)).reverse().find(function(ze){return Pn(ze)}):C[we+(Ie?1:-1)]}}}),i.tabbableGroups=i.containerGroups.filter(function(T){return T.tabbableNodes.length>0}),i.tabbableGroups.length<=0&&!u("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(i.containerGroups.find(function(T){return T.posTabIndexesFound})&&i.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},h=function R(T){if(T!==!1&&T!==r.activeElement){if(!T||!T.focus){R(f());return}T.focus({preventScroll:!!s.preventScroll}),i.mostRecentlyFocusedNode=T,XT(T)&&T.select()}},m=function(T){var C=u("setReturnFocus",T);return C||(C===!1?!1:T)},p=function(T){var C=T.target,x=T.event,B=T.isBackward,J=B===void 0?!1:B;C=C||oo(x),d();var V=null;if(i.tabbableGroups.length>0){var Q=l(C,x),U=Q>=0?i.containerGroups[Q]:void 0;if(Q<0)J?V=i.tabbableGroups[i.tabbableGroups.length-1].lastTabbableNode:V=i.tabbableGroups[0].firstTabbableNode;else if(J){var he=Bl(i.tabbableGroups,function(pt){var Ae=pt.firstTabbableNode;return C===Ae});if(he<0&&(U.container===C||Ns(C,s.tabbableOptions)&&!Pn(C,s.tabbableOptions)&&!U.nextTabbableNode(C,!1))&&(he=Q),he>=0){var Re=he===0?i.tabbableGroups.length-1:he-1,Ie=i.tabbableGroups[Re];V=dn(C)>=0?Ie.lastTabbableNode:Ie.lastDomTabbableNode}else vr(x)||(V=U.nextTabbableNode(C,!1))}else{var we=Bl(i.tabbableGroups,function(pt){var Ae=pt.lastTabbableNode;return C===Ae});if(we<0&&(U.container===C||Ns(C,s.tabbableOptions)&&!Pn(C,s.tabbableOptions)&&!U.nextTabbableNode(C))&&(we=Q),we>=0){var ze=we===i.tabbableGroups.length-1?0:we+1,rt=i.tabbableGroups[ze];V=dn(C)>=0?rt.firstTabbableNode:rt.firstDomTabbableNode}else vr(x)||(V=U.nextTabbableNode(C))}}else V=u("fallbackFocus");return V},y=function(T){var C=oo(T);if(!(l(C,T)>=0)){if(or(s.clickOutsideDeactivates,T)){a.deactivate({returnFocus:s.returnFocusOnDeactivate});return}or(s.allowOutsideClick,T)||T.preventDefault()}},v=function(T){var C=oo(T),x=l(C,T)>=0;if(x||C instanceof Document)x&&(i.mostRecentlyFocusedNode=C);else{T.stopImmediatePropagation();var B,J=!0;if(i.mostRecentlyFocusedNode)if(dn(i.mostRecentlyFocusedNode)>0){var V=l(i.mostRecentlyFocusedNode),Q=i.containerGroups[V].tabbableNodes;if(Q.length>0){var U=Q.findIndex(function(he){return he===i.mostRecentlyFocusedNode});U>=0&&(s.isKeyForward(i.recentNavEvent)?U+1=0&&(B=Q[U-1],J=!1))}}else i.containerGroups.some(function(he){return he.tabbableNodes.some(function(Re){return dn(Re)>0})})||(J=!1);else J=!1;J&&(B=p({target:i.mostRecentlyFocusedNode,isBackward:s.isKeyBackward(i.recentNavEvent)})),h(B||i.mostRecentlyFocusedNode||f())}i.recentNavEvent=void 0},b=function(T){var C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;i.recentNavEvent=T;var x=p({event:T,isBackward:C});x&&(vr(T)&&T.preventDefault(),h(x))},g=function(T){if(eS(T)&&or(s.escapeDeactivates,T)!==!1){T.preventDefault(),a.deactivate();return}(s.isKeyForward(T)||s.isKeyBackward(T))&&b(T,s.isKeyBackward(T))},_=function(T){var C=oo(T);l(C,T)>=0||or(s.clickOutsideDeactivates,T)||or(s.allowOutsideClick,T)||(T.preventDefault(),T.stopImmediatePropagation())},P=function(){if(i.active)return Fl.activateTrap(o,a),i.delayInitialFocusTimer=s.delayInitialFocus?Vl(function(){h(f())}):h(f()),r.addEventListener("focusin",v,!0),r.addEventListener("mousedown",y,{capture:!0,passive:!1}),r.addEventListener("touchstart",y,{capture:!0,passive:!1}),r.addEventListener("click",_,{capture:!0,passive:!1}),r.addEventListener("keydown",g,{capture:!0,passive:!1}),a},S=function(){if(i.active)return r.removeEventListener("focusin",v,!0),r.removeEventListener("mousedown",y,!0),r.removeEventListener("touchstart",y,!0),r.removeEventListener("click",_,!0),r.removeEventListener("keydown",g,!0),a},I=function(T){var C=T.some(function(x){var B=Array.from(x.removedNodes);return B.some(function(J){return J===i.mostRecentlyFocusedNode})});C&&h(f())},L=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(I):void 0,H=function(){L&&(L.disconnect(),i.active&&!i.paused&&i.containers.map(function(T){L.observe(T,{subtree:!0,childList:!0})}))};return a={get active(){return i.active},get paused(){return i.paused},activate:function(T){if(i.active)return this;var C=c(T,"onActivate"),x=c(T,"onPostActivate"),B=c(T,"checkCanFocusTrap");B||d(),i.active=!0,i.paused=!1,i.nodeFocusedBeforeActivation=r.activeElement,C==null||C();var J=function(){B&&d(),P(),H(),x==null||x()};return B?(B(i.containers.concat()).then(J,J),this):(J(),this)},deactivate:function(T){if(!i.active)return this;var C=jl({onDeactivate:s.onDeactivate,onPostDeactivate:s.onPostDeactivate,checkCanReturnFocus:s.checkCanReturnFocus},T);clearTimeout(i.delayInitialFocusTimer),i.delayInitialFocusTimer=void 0,S(),i.active=!1,i.paused=!1,H(),Fl.deactivateTrap(o,a);var x=c(C,"onDeactivate"),B=c(C,"onPostDeactivate"),J=c(C,"checkCanReturnFocus"),V=c(C,"returnFocus","returnFocusOnDeactivate");x==null||x();var Q=function(){Vl(function(){V&&h(m(i.nodeFocusedBeforeActivation)),B==null||B()})};return V&&J?(J(m(i.nodeFocusedBeforeActivation)).then(Q,Q),this):(Q(),this)},pause:function(T){if(i.paused||!i.active)return this;var C=c(T,"onPause"),x=c(T,"onPostPause");return i.paused=!0,C==null||C(),S(),H(),x==null||x(),this},unpause:function(T){if(!i.paused||!i.active)return this;var C=c(T,"onUnpause"),x=c(T,"onPostUnpause");return i.paused=!1,C==null||C(),d(),P(),H(),x==null||x(),this},updateContainerElements:function(T){var C=[].concat(T).filter(Boolean);return i.containers=C.map(function(x){return typeof x=="string"?r.querySelector(x):x}),i.active&&d(),H(),this}},a.updateContainerElements(t),a};function sS(e,t={}){let n;const{immediate:r,...o}=t,s=le(!1),i=le(!1),a=f=>n&&n.activate(f),c=f=>n&&n.deactivate(f),l=()=>{n&&(n.pause(),i.value=!0)},u=()=>{n&&(n.unpause(),i.value=!1)};return ge(()=>OT(e),f=>{f&&(n=oS(f,{...o,onActivate(){s.value=!0,t.onActivate&&t.onActivate()},onDeactivate(){s.value=!1,t.onDeactivate&&t.onDeactivate()}}),r&&a())},{flush:"post"}),IT(()=>c()),{hasFocus:s,isPaused:i,activate:a,deactivate:c,pause:l,unpause:u}}var zl;const fs=typeof window<"u",iS=e=>typeof e<"u",aS=e=>typeof e=="function",cS=e=>typeof e=="string",$a=()=>{},lS=fs&&((zl=window==null?void 0:window.navigator)==null?void 0:zl.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function xt(e){return typeof e=="function"?e():M(e)}function Ul(e,t=!1,n="Timeout"){return new Promise((r,o)=>{setTimeout(t?()=>o(n):r,e)})}function uS(e){return e}function yh(e){return Nr()?(wn(e),!0):!1}function fS(e,t=!0){ht()?Nt(e):t?e():wt(e)}function Ni(e,t=!1){function n(f,{flush:d="sync",deep:h=!1,timeout:m,throwOnTimeout:p}={}){let y=null;const b=[new Promise(g=>{y=ge(e,_=>{f(_)!==t&&(y==null||y(),g(_))},{flush:d,deep:h,immediate:!0})})];return m!=null&&b.push(Ul(m,p).then(()=>xt(e)).finally(()=>y==null?void 0:y())),Promise.race(b)}function r(f,d){if(!ke(f))return n(_=>_===f,d);const{flush:h="sync",deep:m=!1,timeout:p,throwOnTimeout:y}=d??{};let v=null;const g=[new Promise(_=>{v=ge([e,f],([P,S])=>{t!==(P===S)&&(v==null||v(),_(P))},{flush:h,deep:m,immediate:!0})})];return p!=null&&g.push(Ul(p,y).then(()=>xt(e)).finally(()=>(v==null||v(),xt(e)))),Promise.race(g)}function o(f){return n(d=>!!d,f)}function s(f){return r(null,f)}function i(f){return r(void 0,f)}function a(f){return n(Number.isNaN,f)}function c(f,d){return n(h=>{const m=Array.from(h);return m.includes(f)||m.includes(xt(f))},d)}function l(f){return u(1,f)}function u(f=1,d){let h=-1;return n(()=>(h+=1,h>=f),d)}return Array.isArray(xt(e))?{toMatch:n,toContains:c,changed:l,changedTimes:u,get not(){return Ni(e,!t)}}:{toMatch:n,toBe:r,toBeTruthy:o,toBeNull:s,toBeNaN:a,toBeUndefined:i,changed:l,changedTimes:u,get not(){return Ni(e,!t)}}}function $P(e){return Ni(e)}function dS(e,t,n={}){const{immediate:r=!0}=n,o=le(!1);let s=null;function i(){s&&(clearTimeout(s),s=null)}function a(){o.value=!1,i()}function c(...l){i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...l)},xt(t))}return r&&(o.value=!0,fs&&c()),yh(a),{isPending:qi(o),start:c,stop:a}}function lr(e){var t;const n=xt(e);return(t=n==null?void 0:n.$el)!=null?t:n}const Ma=fs?window:void 0,hS=fs?window.navigator:void 0;function qt(...e){let t,n,r,o;if(cS(e[0])||Array.isArray(e[0])?([n,r,o]=e,t=Ma):[t,n,r,o]=e,!t)return $a;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const s=[],i=()=>{s.forEach(u=>u()),s.length=0},a=(u,f,d,h)=>(u.addEventListener(f,d,h),()=>u.removeEventListener(f,d,h)),c=ge(()=>[lr(t),xt(o)],([u,f])=>{i(),u&&s.push(...n.flatMap(d=>r.map(h=>a(u,d,h,f))))},{immediate:!0,flush:"post"}),l=()=>{c(),i()};return yh(l),l}let Kl=!1;function MP(e,t,n={}){const{window:r=Ma,ignore:o=[],capture:s=!0,detectIframe:i=!1}=n;if(!r)return;lS&&!Kl&&(Kl=!0,Array.from(r.document.body.children).forEach(d=>d.addEventListener("click",$a)));let a=!0;const c=d=>o.some(h=>{if(typeof h=="string")return Array.from(r.document.querySelectorAll(h)).some(m=>m===d.target||d.composedPath().includes(m));{const m=lr(h);return m&&(d.target===m||d.composedPath().includes(m))}}),u=[qt(r,"click",d=>{const h=lr(e);if(!(!h||h===d.target||d.composedPath().includes(h))){if(d.detail===0&&(a=!c(d)),!a){a=!0;return}t(d)}},{passive:!0,capture:s}),qt(r,"pointerdown",d=>{const h=lr(e);h&&(a=!d.composedPath().includes(h)&&!c(d))},{passive:!0}),i&&qt(r,"blur",d=>{var h;const m=lr(e);((h=r.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(m!=null&&m.contains(r.document.activeElement))&&t(d)})].filter(Boolean);return()=>u.forEach(d=>d())}function pS(e,t=!1){const n=le(),r=()=>n.value=!!e();return r(),fS(r,t),n}function NP(e={}){const{navigator:t=hS,read:n=!1,source:r,copiedDuring:o=1500,legacy:s=!1}=e,i=["copy","cut"],a=pS(()=>t&&"clipboard"in t),c=ee(()=>a.value||s),l=le(""),u=le(!1),f=dS(()=>u.value=!1,o);function d(){a.value?t.clipboard.readText().then(y=>{l.value=y}):l.value=p()}if(c.value&&n)for(const y of i)qt(y,d);async function h(y=xt(r)){c.value&&y!=null&&(a.value?await t.clipboard.writeText(y):m(y),l.value=y,u.value=!0,f.start())}function m(y){const v=document.createElement("textarea");v.value=y??"",v.style.position="absolute",v.style.opacity="0",document.body.appendChild(v),v.select(),document.execCommand("copy"),v.remove()}function p(){var y,v,b;return(b=(v=(y=document==null?void 0:document.getSelection)==null?void 0:y.call(document))==null?void 0:v.toString())!=null?b:""}return{isSupported:c,text:l,copied:u,copy:h}}function mS(e){return JSON.parse(JSON.stringify(e))}const Wl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ql="__vueuse_ssr_handlers__";Wl[ql]=Wl[ql]||{};const gS={ctrl:"control",command:"meta",cmd:"meta",option:"alt",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright"};function yS(e={}){const{reactive:t=!1,target:n=Ma,aliasMap:r=gS,passive:o=!0,onEventFired:s=$a}=e,i=nt(new Set),a={toJSON(){return{}},current:i},c=t?nt(a):a,l=new Set,u=new Set;function f(p,y){p in c&&(t?c[p]=y:c[p].value=y)}function d(){i.clear();for(const p of u)f(p,!1)}function h(p,y){var v,b;const g=(v=p.key)==null?void 0:v.toLowerCase(),P=[(b=p.code)==null?void 0:b.toLowerCase(),g].filter(Boolean);g&&(y?i.add(g):i.delete(g));for(const S of P)u.add(S),f(S,y);g==="meta"&&!y?(l.forEach(S=>{i.delete(S),f(S,!1)}),l.clear()):typeof p.getModifierState=="function"&&p.getModifierState("Meta")&&y&&[...i,...P].forEach(S=>l.add(S))}qt(n,"keydown",p=>(h(p,!0),s(p)),{passive:o}),qt(n,"keyup",p=>(h(p,!1),s(p)),{passive:o}),qt("blur",d,{passive:!0}),qt("focus",d,{passive:!0});const m=new Proxy(c,{get(p,y,v){if(typeof y!="string")return Reflect.get(p,y,v);if(y=y.toLowerCase(),y in r&&(y=r[y]),!(y in c))if(/[+_-]/.test(y)){const g=y.split(/[+_-]/g).map(_=>_.trim());c[y]=ee(()=>g.every(_=>M(m[_])))}else c[y]=le(!1);const b=Reflect.get(p,y,v);return t?M(b):b}});return m}var Gl;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(Gl||(Gl={}));var _S=Object.defineProperty,Ql=Object.getOwnPropertySymbols,vS=Object.prototype.hasOwnProperty,bS=Object.prototype.propertyIsEnumerable,Jl=(e,t,n)=>t in e?_S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,wS=(e,t)=>{for(var n in t||(t={}))vS.call(t,n)&&Jl(e,n,t[n]);if(Ql)for(var n of Ql(t))bS.call(t,n)&&Jl(e,n,t[n]);return e};const ES={easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]};wS({linear:uS},ES);function DP(e,t,n,r={}){var o,s,i;const{clone:a=!1,passive:c=!1,eventName:l,deep:u=!1,defaultValue:f}=r,d=ht(),h=n||(d==null?void 0:d.emit)||((o=d==null?void 0:d.$emit)==null?void 0:o.bind(d))||((i=(s=d==null?void 0:d.proxy)==null?void 0:s.$emit)==null?void 0:i.bind(d==null?void 0:d.proxy));let m=l;t||(t="modelValue"),m=l||m||`update:${t.toString()}`;const p=v=>a?aS(a)?a(v):mS(v):v,y=()=>iS(e[t])?p(e[t]):f;if(c){const v=y(),b=le(v);return ge(()=>e[t],g=>b.value=p(g)),ge(b,g=>{(g!==e[t]||u)&&h(m,g)},{deep:u}),b}else return ee({get(){return y()},set(v){h(m,v)}})}const Br=e=>(Au("data-v-0c43b394"),e=e(),Ru(),e),CS={class:"content"},TS=Br(()=>ie("span",null,"Search",-1)),SS=Br(()=>ie("span",null,[ie("kbd",null,"⌘"),ie("kbd",null,"K")],-1)),PS={class:"search-input"},xS=["onKeydown"],AS=["id","onMouseenter"],RS={class:"search-result-content-wrapper"},IS={class:"search-result-content-head"},LS={key:2},OS=Br(()=>ie("span",{class:"arrow",innerHTML:"→"},null,-1)),kS={key:0,class:"search-result-content-preview"},$S=Br(()=>ie("span",null,"“",-1)),MS=["innerHTML"],NS=Br(()=>ie("span",null,"“",-1)),DS={key:1,class:"search-results empty"},HS={key:2,class:"search-results empty"},jS=xe({__name:"AppSearch",props:{fuse:{type:Object,default:()=>({fuseOptions:{keys:["title","description","keywords","body"],ignoreLocation:!0,threshold:0,includeMatches:!0,includeScore:!0},matchAllWhenSearchEmpty:!0})}},async setup(e){let t,n;const r=e,o=le(""),s=le(),i=le(),a=le(),c=le(-1),l=le(!1),{close:u,open:f}=Gd(),{activate:d,deactivate:h}=sS(s),{navigation:m}=Vr(),{meta_K:p,Escape:y}=yS(),{data:v}=([t,n]=qu(()=>i1("search-api",()=>$fetch("/api/search",{parseResponse:JSON.parse}))),t=await t,n(),t),{results:b}=LT(o,v,r.fuse);function g(R,T,C){for(const x of R){if(x._path===T)return{directoryTitle:C.title,directoryIcon:C.icon};if(x.children){const B=g(x.children,T,x);if(B)return B}}}function _(R){let T;for(const C of m.value)if(C.children){const x=g(C.children,R,C);x&&(T=x)}return T}function P(R,T){const{indices:C,value:x}=T||{indices:[],value:""};if(R===x)return"";let B="",J=0;C.forEach(Q=>{const U=Q[1]+1,he=U-Q[0]>=o.value.length;B+=[x.substring(J,Q[0]),he&&"",x.substring(Q[0],U),he&&""].filter(Boolean).join(""),J=U}),B+=x.substring(J);const V=B.indexOf("");return V>60&&(B=`${B.substring(V-60)}`),`${B}”`}function S(){c.value===-1?c.value=0:c.value===b.value.length-1||(c.value=c.value+1)}function I(){c.value===-1?c.value=b.value.length-1:c.value===0||(c.value=c.value-1)}function L(R){var x,B;const T=(B=(x=b==null?void 0:b.value)==null?void 0:x[R])==null?void 0:B.item,C=T==null?void 0:T.path;C&&(l.value=!1,lt().push(C))}function H(){var R,T;o.value?(o.value="",c.value=-1,(T=(R=i.value)==null?void 0:R.focus)==null||T.call(R)):l.value=!1}return Nt(()=>{const R=ct();R.query.q&&(l.value=!0,o.value=R.query.q)}),ge(c,R=>{var C,x,B,J;const T=(B=(x=(C=b==null?void 0:b.value)==null?void 0:C[R])==null?void 0:x.item)==null?void 0:B.id;T&&((J=document.querySelector(`[id="${T}"]`))==null||J.scrollIntoView({block:"nearest"}))}),ge(o,R=>{c.value=0}),ge(l,R=>{R?(f(),wt(()=>{d()})):(o.value="",c.value=-1,h(),u())}),ge(p,R=>{R&&(l.value=!l.value)}),ge(y,()=>{l.value&&(l.value=!1)}),(R,T)=>{const C=Dt;return q(),ue(Se,null,[ie("button",{type:"button","aria-label":"Search",onClick:T[0]||(T[0]=x=>l.value=!0)},[ie("span",CS,[se(C,{name:"heroicons-outline:search"}),TS,SS])]),(q(),de(sf,{to:"body"},[M(l)?(q(),ue("div",{key:0,ref_key:"searchContentRef",ref:s,class:"search-content",onClick:T[5]||(T[5]=x=>l.value=!1)},[ie("div",{class:"search-window",onClick:T[4]||(T[4]=ar(()=>{},["stop"]))},[ie("div",PS,[se(C,{name:"heroicons-outline:search",class:"search-icon"}),Nu(ie("input",{ref_key:"searchInputRef",ref:i,"onUpdate:modelValue":T[1]||(T[1]=x=>ke(o)?o.value=x:null),type:"text",placeholder:"Search documentation",onKeydown:[Ss(ar(I,["prevent"]),["up"]),Ss(ar(S,["prevent"]),["down"]),T[2]||(T[2]=Ss(x=>L(M(c)),["enter"]))]},null,40,xS),[[Wm,M(o)]]),ie("button",{class:"close-button",onClick:H},[se(C,{name:"heroicons:x-mark",class:"close-icon"})])]),M(b).length>0?(q(),ue("div",{key:0,ref_key:"resultsAreaRef",ref:a,class:"search-results"},[(q(!0),ue(Se,null,Fn(M(b),(x,B)=>{var J,V,Q,U,he,Re,Ie,we,ze,rt;return q(),ue("div",{id:x.item.id,key:x.item.id,class:je(["search-result",{selected:M(c)===B}]),onClick:T[3]||(T[3]=pt=>L(M(c))),onMouseenter:ar(pt=>c.value=B,["prevent"])},[ie("div",RS,[ie("div",IS,[(V=_((J=x==null?void 0:x.item)==null?void 0:J.path))!=null&&V.directoryIcon?(q(),de(C,{key:0,name:(U=_((Q=x==null?void 0:x.item)==null?void 0:Q.path))==null?void 0:U.directoryIcon},null,8,["name"])):(q(),de(C,{key:1,name:"solar:documents-bold-duotone"})),(Re=_((he=x==null?void 0:x.item)==null?void 0:he.path))!=null&&Re.directoryTitle?(q(),ue("span",LS,[Yn(Lt((we=_((Ie=x==null?void 0:x.item)==null?void 0:Ie.path))==null?void 0:we.directoryTitle)+" ",1),OS])):Fe("",!0),ie("span",null,Lt(x.item.title),1)]),(ze=x==null?void 0:x.matches)!=null&&ze[0]?(q(),ue("p",kS,[$S,ie("span",{innerHTML:`${P(M(o),(rt=x==null?void 0:x.matches)==null?void 0:rt[0])}`},null,8,MS),NS])):Fe("",!0)])],42,AS)}),128))],512)):M(o)?(q(),ue("div",HS," No results found. Try another query ")):(q(),ue("div",DS," Type your query to search docs "))])],512)):Fe("",!0)]))],64)}}}),_h=Be(jS,[["__scopeId","data-v-0c43b394"]]),FS=Object.freeze(Object.defineProperty({__proto__:null,default:_h},Symbol.toStringTag,{value:"Module"})),VS=xe({name:"ClientOnly",inheritAttrs:!1,props:["fallback","placeholder","placeholderTag","fallbackTag"],setup(e,{slots:t,attrs:n}){const r=le(!1);return Nt(()=>{r.value=!0}),o=>{var c;if(r.value)return(c=t.default)==null?void 0:c.call(t);const s=t.fallback||t.placeholder;if(s)return s();const i=o.fallback||o.placeholder||"",a=o.fallbackTag||o.placeholderTag||"span";return ue(a,n,i)}}}),BS={name:Pw,props:{placeholder:String,tag:{type:String,default:"span"}}};function zS(e,t,n,r,o,s){const i=VS;return q(),de(i,{placeholder:n.placeholder,"placeholder-tag":n.tag},{default:Qe(()=>[Sr(e.$slots,"default")]),_:3},8,["placeholder","placeholder-tag"])}const US=Be(BS,[["render",zS]]),KS=()=>At("color-mode").value,WS=xe({__name:"ThemeSelect",setup(e){const t=KS(),n=()=>{const r=["system","light","dark"],s=(r.indexOf(t.preference)+1)%r.length;t.preference=r[s]};return(r,o)=>{const s=Dt,i=US;return q(),ue("button",{"aria-label":"Color Mode",onClick:n},[se(i,{placeholder:"..."},{default:Qe(()=>[M(t).preference==="dark"?(q(),de(s,{key:0,name:"uil:moon"})):M(t).preference==="light"?(q(),de(s,{key:1,name:"uil:sun"})):(q(),de(s,{key:2,name:"uil:desktop"}))]),_:1})])}}}),vh=Be(WS,[["__scopeId","data-v-8c5f6b44"]]),qS=Object.freeze(Object.defineProperty({__proto__:null,default:vh},Symbol.toStringTag,{value:"Module"})),GS=xe({__name:"Container",props:{as:{type:String,required:!1,default:"div"},padded:{required:!1,type:[Boolean,Object],default:!0},fluid:{required:!1,type:[Boolean,Object],default:!1}},setup(e){const t=e,n={padded:{true:{px:"{elements.container.padding.mobile}","@xs":{px:"{elements.container.padding.xs}"},"@sm":{px:"{elements.container.padding.sm}"},"@md":{px:"{elements.container.padding.md}"}}},fluid:{true:{},false:{maxWidth:"{elements.container.maxWidth}"}}},{$pinceau:r}=pw(t,n,void 0);return(o,s)=>(q(),de(Go(e.as),{class:je(["container",[M(r)]])},{default:Qe(()=>[Sr(o.$slots,"default",{},void 0,!0)]),_:3},8,["class"]))}}),Na=Be(GS,[["__scopeId","data-v-6fad1fba"]]),QS=Object.freeze(Object.defineProperty({__proto__:null,default:Na},Symbol.toStringTag,{value:"Module"})),JS={class:"section left"},YS={class:"section center"},ZS={class:"section right"},XS={class:"social-icons"},eP=xe({__name:"AppHeader",props:{},setup(e){const{config:t}=nn(),{navigation:n}=Vr(),{hasDocSearch:r}=Xd(),o=ee(()=>{var s,i,a,c;return((s=n.value)==null?void 0:s.length)>1||((c=(a=(i=n.value)==null?void 0:i[0])==null?void 0:a.children)==null?void 0:c.length)});return(s,i)=>{var p,y;const a=Qd,c=Yd,l=Zd,u=th,f=_h,d=vh,h=us,m=Na;return q(),ue("header",{class:je({"has-dialog":M(o)})},[se(m,{fluid:(y=(p=M(t))==null?void 0:p.header)==null?void 0:y.fluid},{default:Qe(()=>[ie("div",JS,[M(o)?(q(),de(a,{key:0})):Fe("",!0),se(c)]),ie("div",YS,[M(o)?(q(),de(c,{key:0})):Fe("",!0),se(l)]),ie("div",ZS,[M(r)?(q(),de(u,{key:0})):(q(),de(f,{key:1,fuse:M(t).fuse},null,8,["fuse"])),se(d),ie("div",XS,[se(h)])])]),_:1},8,["fluid"])],2)}}}),bh=Be(eP,[["__scopeId","data-v-9e920cd4"]]),tP=Object.freeze(Object.defineProperty({__proto__:null,default:bh},Symbol.toStringTag,{value:"Module"})),nP={class:"left"},rP=["href"],oP={key:1},sP={class:"center"},iP={class:"right"},aP=["aria-label","href","rel"],cP=xe({__name:"AppFooter",setup(e){const{config:t}=nn(),n=le(null),r=ee(()=>{var a,c;return((c=(a=t.value)==null?void 0:a.footer)==null?void 0:c.iconLinks)||[]}),o=ee(()=>{var a,c;return((c=(a=t.value)==null?void 0:a.footer)==null?void 0:c.textLinks)||[]}),s=ee(()=>{var a;return Object.entries(((a=t.value)==null?void 0:a.socials)||{}).filter(([,c])=>c).length}),i=ee(()=>n.value?s.value:0);return(a,c)=>{var h,m;const l=Dt,u=Fr,f=us,d=Na;return q(),ue("footer",null,[se(d,{fluid:(m=(h=M(t))==null?void 0:h.footer)==null?void 0:m.fluid,padded:"",class:"footer-container"},{default:Qe(()=>{var p,y,v,b,g,_,P,S,I,L,H,R,T,C;return[ie("div",nP,[(y=(p=M(t))==null?void 0:p.footer)!=null&&y.credits?(q(),ue("a",{key:0,href:((g=(b=(v=M(t))==null?void 0:v.footer)==null?void 0:b.credits)==null?void 0:g.href)||"#",rel:"noopener",target:"_blank"},[(S=(P=(_=M(t))==null?void 0:_.footer)==null?void 0:P.credits)!=null&&S.icon?(q(),de(l,{key:0,name:(H=(L=(I=M(t))==null?void 0:I.footer)==null?void 0:L.credits)==null?void 0:H.icon,class:"left-icon"},null,8,["name"])):Fe("",!0),(C=(T=(R=M(t))==null?void 0:R.footer)==null?void 0:T.credits)!=null&&C.text?(q(),ue("p",oP,Lt(M(t).footer.credits.text),1)):Fe("",!0)],8,rP)):Fe("",!0)]),ie("div",sP,[(q(!0),ue(Se,null,Fn(M(o),x=>(q(),de(u,{key:x.href,class:"text-link","aria-label":x.text,href:x.href,target:(x==null?void 0:x.target)||"_self",rel:(x==null?void 0:x.rel)||"noopener noreferrer"},{default:Qe(()=>[Yn(Lt(x.text),1)]),_:2},1032,["aria-label","href","target","rel"]))),128))]),ie("div",iP,[(q(!0),ue(Se,null,Fn(M(r).slice(0,6-M(i)),x=>(q(),ue("a",{key:x.label,class:"icon-link","aria-label":x.label,href:x.href,target:"_blank",rel:(x==null?void 0:x.rel)||"noopener noreferrer"},[se(l,{name:x.icon},null,8,["name"])],8,aP))),128)),se(f,{ref_key:"socialIcons",ref:n},null,512)])]}),_:1},8,["fluid"])])}}}),wh=Be(cP,[["__scopeId","data-v-351b46b1"]]),lP=Object.freeze(Object.defineProperty({__proto__:null,default:wh},Symbol.toStringTag,{value:"Module"})),uP=(e,t=ct())=>{const n=M(e),r=Je();ge(()=>M(e),(s=n)=>{if(!t.path||!s)return;const i=Object.assign({},(s==null?void 0:s.head)||{});i.meta=[...i.meta||[]],i.link=[...i.link||[]];const a=i.title||(s==null?void 0:s.title);a&&(i.title=a),r.public.content.host;const c=(i==null?void 0:i.description)||(s==null?void 0:s.description);c&&i.meta.filter(l=>l.name==="description").length===0&&i.meta.push({name:"description",content:c}),i!=null&&i.image||(s==null||s.image),wt(()=>Ir(i))},{immediate:!0})},fP={class:"app-layout"},dP=xe({__name:"AppLayout",setup(e){const{config:t}=nn();return Ir({titleTemplate:t.value.titleTemplate,meta:[{name:"twitter:card",content:"summary_large_image"}]}),ge(()=>t.value.titleTemplate,()=>Ir({titleTemplate:t.value.titleTemplate})),uP(t.value),(n,r)=>{const o=Id,s=bh,i=wh;return q(),ue("div",fP,[se(o),se(s),ie("main",null,[Sr(n.$slots,"default",{},void 0,!0)]),se(i)])}}}),Eh=Be(dP,[["__scopeId","data-v-47c944a3"]]),hP=Object.freeze(Object.defineProperty({__proto__:null,default:Eh},Symbol.toStringTag,{value:"Module"})),pP=xe({__name:"app",setup(e){return Fw(),(t,n)=>{const r=Rd,o=tE,s=Eh;return q(),ue("div",null,[se(r,{type:"warning"},{default:Qe(()=>[Yn(" Currently you are viewing v3 document of vue-recaptcha which is still in development ")]),_:1}),se(s,null,{default:Qe(()=>[se(o)]),_:1})])}}}),mP={__name:"nuxt-error-page",props:{error:Object},setup(e){const n=e.error;(n.stack||"").split(` `).splice(1).map(f=>({text:f.replace("webpack:/","").replace(".vue",".js").trim(),internal:f.includes("node_modules")&&!f.includes(".cache")||f.includes("internal")||f.includes("new Promise")})).map(f=>`${f.text}`).join(` -`);const r=Number(n.statusCode||500),o=r===404,s=n.statusMessage??(o?"Page Not Found":"Internal Server Error"),i=n.message||n.toString(),a=void 0,u=o?N(()=>k(()=>import("./error-404.Pmhd83su.js"),__vite__mapDeps([153,154]),import.meta.url).then(f=>f.default||f)):N(()=>k(()=>import("./error-500.B-BWyDcD.js"),__vite__mapDeps([155,156]),import.meta.url).then(f=>f.default||f));return(f,d)=>(q(),de(M(u),kh(ff({statusCode:M(r),statusMessage:M(s),description:M(i),stack:M(a)})),null,16))}},Yl={__name:"nuxt-root",setup(e){const t=()=>null,n=ye(),r=n.deferHydration(),o=!1;Dn(Xo,ct()),n.hooks.callHookWith(a=>a.map(c=>c()),"vue:setup");const s=es();Ku((a,c,l)=>{if(n.hooks.callHook("vue:error",a,c,l).catch(u=>console.error("[nuxt] Error in `vue:error` hook",u)),p_(a)&&(a.fatal||a.unhandled))return n.runWithContext(()=>In(a)),!1});const i=!1;return(a,c)=>(q(),de(ku,{onResolve:M(r)},{default:Qe(()=>[M(s)?(q(),de(M(mP),{key:0,error:M(s)},null,8,["error"])):M(i)?(q(),de(M(t),{key:1,context:M(i)},null,8,["context"])):M(o)?(q(),de(Go(M(o)),{key:2})):(q(),de(M(pP),{key:3}))]),_:1},8,["onResolve"]))}};let Zl;{let e;Zl=async function(){var i,a;if(e)return e;const r=!!((i=window.__NUXT__)!=null&&i.serverRendered||((a=document.getElementById("__NUXT_DATA__"))==null?void 0:a.dataset.ssr)==="true")?Xm(Yl):Zm(Yl),o=ny({vueApp:r});async function s(c){await o.callHook("app:error",c),o.payload.error=o.payload.error||c}r.config.errorHandler=s;try{await oy(o,qw)}catch(c){s(c)}try{await o.hooks.callHook("app:created",r),await o.hooks.callHook("app:beforeMount",r),r.mount(P_),await o.hooks.callHook("app:mounted",r),await wt()}catch(c){s(c)}return r.config.errorHandler===s&&(r.config.errorHandler=void 0),r},e=Zl().catch(t=>{throw console.error("Error while mounting app:",t),t})}export{Jw as $,Rn as A,wt as B,EP as C,me as D,Ir as E,Se as F,Yn as G,jr as H,De as I,wP as J,ee as K,M as L,cr as M,bP as N,Fv as O,Xo as P,tt as Q,hm as R,ku as S,aa as T,Dn as U,d_ as V,Fr as W,uP as X,de as Y,ke as Z,k as _,Tr as a,TP as a$,DP as a0,Dt as a1,Nu as a2,Wm as a3,$P as a4,gP as a5,ge as a6,Jn as a7,nt as a8,qi as a9,Na as aA,n1 as aB,_a as aC,zu as aD,Fn as aE,ar as aF,NP as aG,MP as aH,Ef as aI,Lm as aJ,xd as aK,Qw as aL,vi as aM,s1 as aN,KS as aO,RP as aP,So as aQ,yP as aR,Lo as aS,F1 as aT,Gn as aU,vP as aV,dl as aW,AP as aX,Ct as aY,CP as aZ,xP as a_,Rp as aa,ht as ab,It as ac,Sr as ad,pw as ae,_P as af,bp as ag,r1 as ah,Vn as ai,Ar as aj,ba as ak,IP as al,Yi as am,ff as an,kh as ao,Go as ap,OP as aq,LP as ar,cp as as,zo as at,wn as au,kP as av,nn as aw,Oa as ax,Tn as ay,Rd as az,q as b,SP as b0,PP as b1,H1 as b2,ue as c,xe as d,ie as e,Fe as f,se as g,co as h,Ru as i,ye as j,Be as k,Je as l,At as m,je as n,Nt as o,Au as p,lo as q,le as r,ct as s,Lt as t,lt as u,If as v,Qe as w,ha as x,jn as y,Zm as z}; +`);const r=Number(n.statusCode||500),o=r===404,s=n.statusMessage??(o?"Page Not Found":"Internal Server Error"),i=n.message||n.toString(),a=void 0,u=o?N(()=>k(()=>import("./error-404.M1fPf1Ez.js"),__vite__mapDeps([153,154]),import.meta.url).then(f=>f.default||f)):N(()=>k(()=>import("./error-500.o61tCZ3Q.js"),__vite__mapDeps([155,156]),import.meta.url).then(f=>f.default||f));return(f,d)=>(q(),de(M(u),kh(ff({statusCode:M(r),statusMessage:M(s),description:M(i),stack:M(a)})),null,16))}},Yl={__name:"nuxt-root",setup(e){const t=()=>null,n=ye(),r=n.deferHydration(),o=!1;Dn(Xo,ct()),n.hooks.callHookWith(a=>a.map(c=>c()),"vue:setup");const s=es();Ku((a,c,l)=>{if(n.hooks.callHook("vue:error",a,c,l).catch(u=>console.error("[nuxt] Error in `vue:error` hook",u)),p_(a)&&(a.fatal||a.unhandled))return n.runWithContext(()=>In(a)),!1});const i=!1;return(a,c)=>(q(),de(ku,{onResolve:M(r)},{default:Qe(()=>[M(s)?(q(),de(M(mP),{key:0,error:M(s)},null,8,["error"])):M(i)?(q(),de(M(t),{key:1,context:M(i)},null,8,["context"])):M(o)?(q(),de(Go(M(o)),{key:2})):(q(),de(M(pP),{key:3}))]),_:1},8,["onResolve"]))}};let Zl;{let e;Zl=async function(){var i,a;if(e)return e;const r=!!((i=window.__NUXT__)!=null&&i.serverRendered||((a=document.getElementById("__NUXT_DATA__"))==null?void 0:a.dataset.ssr)==="true")?Xm(Yl):Zm(Yl),o=ny({vueApp:r});async function s(c){await o.callHook("app:error",c),o.payload.error=o.payload.error||c}r.config.errorHandler=s;try{await oy(o,qw)}catch(c){s(c)}try{await o.hooks.callHook("app:created",r),await o.hooks.callHook("app:beforeMount",r),r.mount(P_),await o.hooks.callHook("app:mounted",r),await wt()}catch(c){s(c)}return r.config.errorHandler===s&&(r.config.errorHandler=void 0),r},e=Zl().catch(t=>{throw console.error("Error while mounting app:",t),t})}export{Jw as $,Rn as A,wt as B,EP as C,me as D,Ir as E,Se as F,Yn as G,Fr as H,De as I,wP as J,ee as K,M as L,cr as M,bP as N,Fv as O,Xo as P,tt as Q,hm as R,ku as S,aa as T,Dn as U,d_ as V,Vr as W,uP as X,de as Y,ke as Z,k as _,Tr as a,TP as a$,DP as a0,Dt as a1,Nu as a2,Wm as a3,$P as a4,gP as a5,ge as a6,Jn as a7,nt as a8,qi as a9,Na as aA,n1 as aB,_a as aC,zu as aD,Fn as aE,ar as aF,NP as aG,MP as aH,Ef as aI,Lm as aJ,xd as aK,Qw as aL,vi as aM,s1 as aN,KS as aO,RP as aP,Po as aQ,yP as aR,Oo as aS,F1 as aT,Gn as aU,vP as aV,dl as aW,AP as aX,Ct as aY,CP as aZ,xP as a_,Rp as aa,ht as ab,It as ac,Sr as ad,pw as ae,_P as af,bp as ag,r1 as ah,Vn as ai,Ar as aj,ba as ak,IP as al,Yi as am,ff as an,kh as ao,Go as ap,OP as aq,LP as ar,cp as as,Nr as at,wn as au,kP as av,nn as aw,Oa as ax,Tn as ay,Rd as az,q as b,SP as b0,PP as b1,H1 as b2,ue as c,xe as d,ie as e,Fe as f,se as g,lo as h,Ru as i,ye as j,Be as k,Je as l,At as m,je as n,Nt as o,Au as p,uo as q,le as r,ct as s,Lt as t,lt as u,If as v,Qe as w,ha as x,jn as y,Zm as z}; function __vite__mapDeps(indexes) { if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["./document-driven.ww2jjxcZ.js","./DocumentDrivenEmpty.uAjfpuCj.js","./ContentRenderer.hmnD5r_q.js","./ContentRendererMarkdown.vue.JkbsKsif.js","./DocumentDrivenNotFound.xfb8EcE2.js","./ButtonLink.KvhTbcIS.js","./ButtonLink._Dz6TKeF.css","./DocumentDrivenNotFound.lNb8GDy4.css","./ChallengeV2Demo.MOrg3CNM.js","./PrimaryButton.FCsViibh.js","./ChallengeV2.vue.VhWqa73j.js","./component-v2.a5wbyfd6.js","./index.devlPsl3.js","./ChallengeV3Demo.11DElVUe.js","./ChallengeV3.vue.jUQOIvrh.js","./CheckboxDemo.wwPeTTHd.js","./ThemeButton.vue.QVGC5WYd.js","./Checkbox.vue.zE85wFil.js","./IndexDemo.T7S8AmOE.js","./Card.L9sNeYTi.js","./Card.Baxovx-V.css","./Mermaid.gkHdzvQG.js","./mermaid-934d9bea.GjCu814R.js","./_commonjsHelpers.5-cIlDoe.js","./ThemeButton.eXbhwXzf.js","./VeeValidateCheckbox.yTMsd4p8.js","./index.esm.Trgrr3QY.js","./VeeValidateInvisible.ctyKsI9P.js","./Ellipsis.flpaOiFy.js","./Ellipsis.e5vM4j5F.css","./DocsAside.J9UiIJmE.js","./DocsAside.FQIj6SCE.css","./DocsPageBottom.GLnnhrEg.js","./ProseA.SwYyso4K.js","./ProseA.NBFf42xP.css","./EditOnLink.vue.ygqPpcZl.js","./DocsPageBottom.1GsvLORj.css","./DocsPageLayout.uxgc1_kz.js","./ProseCodeInline.sc8XXj9h.js","./ProseCodeInline.2J2IRq0B.css","./DocsPrevNext.4e5rRBAE.js","./DocsPrevNext.FVCxVd23.css","./DocsToc.PfHxU9at.js","./DocsTocLinks.9MUhhUzY.js","./DocsTocLinks.Ut7D3moV.css","./DocsToc.hqOeBXUk.css","./DocsPageLayout.7wMhT42H.css","./EditOnLink.Am6BZK5o.js","./SourceLink.jxi0GOSi.js","./ProseP.fE1xZC7w.js","./ProseP.AouN9GFc.css","./ProseBlockquote.TjuFzBWN.js","./ProseBlockquote.M4-91edO.css","./ProseCode.I5U9uYQg.js","./ProseCode.ErBEqXU3.css","./ProseEm.HSjpDM1n.js","./ProseEm.CNNd9gtm.css","./ProseH1.HLcc66Rk.js","./ProseH1.Gmrvd84-.css","./ProseH2.uTSq3jPw.js","./ProseH2.uMxfH9mB.css","./ProseH3.b9Z2n1jz.js","./ProseH3.J30XqlNm.css","./ProseH4.vQBbqPgA.js","./ProseH4.u4TvULee.css","./ProseH5.1HvbYaY9.js","./ProseH5.FSPGlo8m.css","./ProseH6.GpC4Gjjm.js","./ProseH6.b3V-ScQY.css","./ProseHr.yKV-ZC33.js","./ProseHr.hZjGRJVl.css","./ProseImg.y-BO5YTd.js","./ProseImg.O_FIa2TD.css","./ProseLi.Vche_mwx.js","./ProseLi.tN-CA_68.css","./ProseOl.4SPj-qY8.js","./ProseOl.iDXewtYt.css","./ProseStrong.tNX6QKcF.js","./ProseStrong.NU8dWSB2.css","./ProseTable.ye_FMdG5.js","./ProseTable.MghxCL3T.css","./ProseTd.tYMvDBoc.js","./ProseTd.DlgsJ88I.css","./ProseTh.Gp788PyL.js","./ProseTh.P1riwnjc.css","./ProseThead.M6kiSErj.js","./ProseThead.Dlh7qJ05.css","./ProseTr.MziQFWhf.js","./ProseTr.fMt7yWFs.css","./ProseUl.GQ-g_JfG.js","./ProseUl.ITCin3In.css","./Badge.SrXj_iIy.js","./Badge.qlwm6GnF.css","./Callout.j9rHm2NJ.js","./Callout.bikHhVrr.css","./CodeBlock.H5YRz7mE.js","./CodeBlock.qh-9ZmWS.css","./CodeGroup.kKhKszRR.js","./TabsHeader.aoUmep7C.js","./TabsHeader.ImEOPcJq.css","./CodeGroup.mwqZZEeB.css","./List.S2mTRTab.js","./MDCSlot.AOMUK9gf.js","./List.OPdACUNd.css","./NuxtImg.hV9pQHiq.js","./NuxtImg.vue.XitBA6AI.js","./Props.nUFwBsHm.js","./ProseTbody.hZ4KuiN9.js","./Sandbox.kzho3R6E.js","./Sandbox.heOb0CLB.css","./Terminal.qDAZlX-Q.js","./Terminal.dwKvwduI.css","./VideoPlayer.nlPS_y-m.js","./VideoPlayer.hU-i7Ajr.css","./IconNuxtStudio.idr9sHr4.js","./IconNuxtStudio.btjnKxC_.css","./BlockHero.poWu1pY1.js","./BlockHero.-93gDvrN.css","./CardGrid.0MuI_gyy.js","./CardGrid.xPStU-r0.css","./VoltaBoard.zjodTpgW.js","./VoltaBoard._Ti1fhn8.css","./ComponentPlayground.GvB8FG5c.js","./ComponentPlaygroundData.x5WYuf11.js","./ComponentPlaygroundProps.eS1hVNDa.js","./ComponentPlaygroundProps.TaXJnAU7.css","./ComponentPlaygroundSlots.vue.hwYCvpaN.js","./ComponentPlaygroundTokens.vue.x-4LJTSf.js","./ComponentPlaygroundData.izDdDWR8.css","./ComponentPlayground.m2NAEKok.css","./ComponentPlaygroundSlots.8zrZ057N.js","./ComponentPlaygroundTokens.sTl3HQTK.js","./PreviewLayout.Z_o72kN9.js","./PreviewLayout.HLKYb6sd.css","./ContentDoc.XNEVUcvJ.js","./ContentQuery.poDPsyGM.js","./ContentList.iLZmbKSm.js","./ContentRendererMarkdown.WM_fk24R.js","./ContentSlot.hAjWUk8S.js","./Markdown.2dGs1H5r.js","./ProsePre.m8am0nAB.js","./ProsePre.nIRUQbb-.css","./Checkbox.rmToST7V.js","./ChallengeV2.kmo3670I.js","./ChallengeV3.BHTEn9Jm.js","./IconCSS.FVhw5sC8.js","./IconCSS.bjv1sj0D.css","./default.-lrvMl34.js","./page.SQcsTZUr.js","./page.b4D7KWd_.css","./client-db.pr2ddds2.js","./useStudio.FJ3lfJLP.js","./useStudio.NpV3iDiH.css","./error-404.Pmhd83su.js","./error-404.co_EEoHd.css","./error-500.B-BWyDcD.js","./error-500.uFA--wGf.css"] + __vite__mapDeps.viteFileDeps = ["./document-driven.QQDA_Gni.js","./DocumentDrivenEmpty.-WgfKx9h.js","./ContentRenderer.M--L_q55.js","./ContentRendererMarkdown.vue.ILa9pIED.js","./DocumentDrivenNotFound.EW4TuDtB.js","./ButtonLink.zZVq8ThH.js","./ButtonLink._Dz6TKeF.css","./DocumentDrivenNotFound.lNb8GDy4.css","./ChallengeV2Demo.gPrqhMW4.js","./PrimaryButton.3_DqpC_5.js","./ChallengeV2.vue.MiUOdAxt.js","./component-v2.AWWRLQbf.js","./index.OaNwcZ7q.js","./ChallengeV3Demo.nkgdJny3.js","./ChallengeV3.vue.NIw8SbQz.js","./CheckboxDemo.iQsxuYOJ.js","./ThemeButton.vue.h40yM2hQ.js","./Checkbox.vue.7dAWGJOj.js","./IndexDemo.D_WynMN1.js","./Card.BzG3yGUC.js","./Card.Baxovx-V.css","./Mermaid.kZxDpbbn.js","./mermaid-934d9bea.JP-6_YN_.js","./_commonjsHelpers.5-cIlDoe.js","./ThemeButton.1RrkhdJY.js","./VeeValidateCheckbox.IqFUqOlv.js","./index.esm.VSbdGIoo.js","./VeeValidateInvisible.5mThLuVF.js","./Ellipsis.MWZY-yMY.js","./Ellipsis.e5vM4j5F.css","./DocsAside.J1JT7aj-.js","./DocsAside.FQIj6SCE.css","./DocsPageBottom.xF3M7Xuf.js","./ProseA.OLhUCis1.js","./ProseA.NBFf42xP.css","./EditOnLink.vue.aDm18t_T.js","./DocsPageBottom.1GsvLORj.css","./DocsPageLayout.soTR2NFE.js","./ProseCodeInline.nA1Kl2E3.js","./ProseCodeInline.2J2IRq0B.css","./DocsPrevNext.NyR6m4jP.js","./DocsPrevNext.FVCxVd23.css","./DocsToc.ahcS4zzc.js","./DocsTocLinks.n_8BwfoV.js","./DocsTocLinks.Ut7D3moV.css","./DocsToc.hqOeBXUk.css","./DocsPageLayout.7wMhT42H.css","./EditOnLink.c1MbaT8y.js","./SourceLink.vIxZlUnx.js","./ProseP.nG8WPuIi.js","./ProseP.AouN9GFc.css","./ProseBlockquote.nZcc5AiU.js","./ProseBlockquote.M4-91edO.css","./ProseCode.QKV6Fi3g.js","./ProseCode.ErBEqXU3.css","./ProseEm.XnUqj1mE.js","./ProseEm.CNNd9gtm.css","./ProseH1.NoOkX9zJ.js","./ProseH1.Gmrvd84-.css","./ProseH2.tWfneQ31.js","./ProseH2.uMxfH9mB.css","./ProseH3.OGmXOyf8.js","./ProseH3.J30XqlNm.css","./ProseH4.-m8eDGJi.js","./ProseH4.u4TvULee.css","./ProseH5.V4b62H9u.js","./ProseH5.FSPGlo8m.css","./ProseH6.VstdmaUv.js","./ProseH6.b3V-ScQY.css","./ProseHr.H5PQSAnt.js","./ProseHr.hZjGRJVl.css","./ProseImg.FhApv7Iv.js","./ProseImg.O_FIa2TD.css","./ProseLi.OVgRJVLF.js","./ProseLi.tN-CA_68.css","./ProseOl.vw7kQ1Lt.js","./ProseOl.iDXewtYt.css","./ProseStrong.0e10zWIZ.js","./ProseStrong.NU8dWSB2.css","./ProseTable.vzNeH6Ay.js","./ProseTable.MghxCL3T.css","./ProseTd.5432dWNq.js","./ProseTd.DlgsJ88I.css","./ProseTh.Ip6941yd.js","./ProseTh.P1riwnjc.css","./ProseThead.EEzaUJfp.js","./ProseThead.Dlh7qJ05.css","./ProseTr._3o2EPc3.js","./ProseTr.fMt7yWFs.css","./ProseUl.XjDMb_cD.js","./ProseUl.ITCin3In.css","./Badge.SouunExa.js","./Badge.qlwm6GnF.css","./Callout.hSu6Wdkf.js","./Callout.bikHhVrr.css","./CodeBlock.Lugc7cba.js","./CodeBlock.qh-9ZmWS.css","./CodeGroup.21lmZNJJ.js","./TabsHeader.p2gr41k7.js","./TabsHeader.ImEOPcJq.css","./CodeGroup.mwqZZEeB.css","./List.X_fwvQfv.js","./MDCSlot.GLK9dOCB.js","./List.OPdACUNd.css","./NuxtImg.U2vgguSn.js","./NuxtImg.vue.5zIl8PSO.js","./Props.Yj9DgxsP.js","./ProseTbody.NjmcGONp.js","./Sandbox.qG8woWRb.js","./Sandbox.heOb0CLB.css","./Terminal.ioBbO3yw.js","./Terminal.dwKvwduI.css","./VideoPlayer.f-8bQb4l.js","./VideoPlayer.hU-i7Ajr.css","./IconNuxtStudio.US0XkEUX.js","./IconNuxtStudio.btjnKxC_.css","./BlockHero.iMe1gqpW.js","./BlockHero.-93gDvrN.css","./CardGrid.rxd_hY7g.js","./CardGrid.xPStU-r0.css","./VoltaBoard.eNwT8-SJ.js","./VoltaBoard._Ti1fhn8.css","./ComponentPlayground.G5gJQDAu.js","./ComponentPlaygroundData.P9Det-rH.js","./ComponentPlaygroundProps.eqJy9Iq7.js","./ComponentPlaygroundProps.TaXJnAU7.css","./ComponentPlaygroundSlots.vue.-pfk4FaA.js","./ComponentPlaygroundTokens.vue.IQ2_8fNI.js","./ComponentPlaygroundData.izDdDWR8.css","./ComponentPlayground.m2NAEKok.css","./ComponentPlaygroundSlots.r9v7_SJ5.js","./ComponentPlaygroundTokens.hYqZwbxt.js","./PreviewLayout.nAhreDSz.js","./PreviewLayout.HLKYb6sd.css","./ContentDoc.VH_Hky9p.js","./ContentQuery.QtvwtBx0.js","./ContentList.YCunzPlS.js","./ContentRendererMarkdown.SeLRvQWx.js","./ContentSlot.KD4hNNCp.js","./Markdown.yuQLeeRs.js","./ProsePre.vvEkmDus.js","./ProsePre.nIRUQbb-.css","./Checkbox.MRQtbkdP.js","./ChallengeV2.x2DxOGgI.js","./ChallengeV3.-HLbHbHP.js","./IconCSS.mxCjQHSh.js","./IconCSS.bjv1sj0D.css","./default.1eR79Hk0.js","./page.6f8lq27m.js","./page.b4D7KWd_.css","./client-db.4GqS-Rxy.js","./useStudio.x8TXSxM4.js","./useStudio.NpV3iDiH.css","./error-404.M1fPf1Ez.js","./error-404.co_EEoHd.css","./error-500.o61tCZ3Q.js","./error-500.uFA--wGf.css"] } return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) } \ No newline at end of file diff --git a/_nuxt/erDiagram-9cfc3649.ybN3qirZ.js b/_nuxt/erDiagram-9cfc3649.yGBXaBAo.js similarity index 99% rename from _nuxt/erDiagram-9cfc3649.ybN3qirZ.js rename to _nuxt/erDiagram-9cfc3649.yGBXaBAo.js index 50b7b150f6..a28e8d81a0 100644 --- a/_nuxt/erDiagram-9cfc3649.ybN3qirZ.js +++ b/_nuxt/erDiagram-9cfc3649.yGBXaBAo.js @@ -1,4 +1,4 @@ -import{c as Z,s as Et,g as mt,b as gt,a as kt,x as xt,y as Rt,l as V,A as Ot,h as rt,z as bt,i as Nt,ap as Tt,as as At}from"./mermaid-934d9bea.GjCu814R.js";import{G as Mt,l as wt}from"./layout.cBG5TzxH.js";import{l as St}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const It=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Dt(t){return typeof t=="string"&&It.test(t)}const A=[];for(let t=0;t<256;++t)A.push((t+256).toString(16).slice(1));function vt(t,e=0){return(A[t[e+0]]+A[t[e+1]]+A[t[e+2]]+A[t[e+3]]+"-"+A[t[e+4]]+A[t[e+5]]+"-"+A[t[e+6]]+A[t[e+7]]+"-"+A[t[e+8]]+A[t[e+9]]+"-"+A[t[e+10]]+A[t[e+11]]+A[t[e+12]]+A[t[e+13]]+A[t[e+14]]+A[t[e+15]]).toLowerCase()}function Lt(t){if(!Dt(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}function Bt(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r>>32-e}function Ft(t){const e=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o>>0;x=g,g=m,m=it(_,30)>>>0,_=h,h=I}r[0]=r[0]+h>>>0,r[1]=r[1]+_>>>0,r[2]=r[2]+m>>>0,r[3]=r[3]+g>>>0,r[4]=r[4]+x>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}const Wt=Yt("v5",80,Ft);var at=function(){var t=function(w,a,n,c){for(n=n||{},c=w.length;c--;n[w[c]]=a);return n},e=[6,8,10,20,22,24,26,27,28],r=[1,10],u=[1,11],l=[1,12],p=[1,13],f=[1,14],o=[1,15],h=[1,21],_=[1,22],m=[1,23],g=[1,24],x=[1,25],y=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],N=[1,34],I=[27,28,46,47],F=[41,42,43,44,45],W=[17,34],C=[1,54],T=[1,53],M=[17,34,36,38],R={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(a,n,c,d,E,i,K){var s=i.length-1;switch(E){case 1:break;case 2:this.$=[];break;case 3:i[s-1].push(i[s]),this.$=i[s-1];break;case 4:case 5:this.$=i[s];break;case 6:case 7:this.$=[];break;case 8:d.addEntity(i[s-4]),d.addEntity(i[s-2]),d.addRelationship(i[s-4],i[s],i[s-2],i[s-3]);break;case 9:d.addEntity(i[s-3]),d.addAttributes(i[s-3],i[s-1]);break;case 10:d.addEntity(i[s-2]);break;case 11:d.addEntity(i[s]);break;case 12:d.addEntity(i[s-6],i[s-4]),d.addAttributes(i[s-6],i[s-1]);break;case 13:d.addEntity(i[s-5],i[s-3]);break;case 14:d.addEntity(i[s-3],i[s-1]);break;case 15:case 16:this.$=i[s].trim(),d.setAccTitle(this.$);break;case 17:case 18:this.$=i[s].trim(),d.setAccDescription(this.$);break;case 19:case 43:this.$=i[s];break;case 20:case 41:case 42:this.$=i[s].replace(/"/g,"");break;case 21:case 29:this.$=[i[s]];break;case 22:i[s].push(i[s-1]),this.$=i[s];break;case 23:this.$={attributeType:i[s-1],attributeName:i[s]};break;case 24:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeKeyTypeList:i[s]};break;case 25:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeComment:i[s]};break;case 26:this.$={attributeType:i[s-3],attributeName:i[s-2],attributeKeyTypeList:i[s-1],attributeComment:i[s]};break;case 27:case 28:case 31:this.$=i[s];break;case 30:i[s-2].push(i[s]),this.$=i[s-2];break;case 32:this.$=i[s].replace(/"/g,"");break;case 33:this.$={cardA:i[s],relType:i[s-1],cardB:i[s-2]};break;case 34:this.$=d.Cardinality.ZERO_OR_ONE;break;case 35:this.$=d.Cardinality.ZERO_OR_MORE;break;case 36:this.$=d.Cardinality.ONE_OR_MORE;break;case 37:this.$=d.Cardinality.ONLY_ONE;break;case 38:this.$=d.Cardinality.MD_PARENT;break;case 39:this.$=d.Identification.NON_IDENTIFYING;break;case 40:this.$=d.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:h,42:_,43:m,44:g,45:x}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(y,[2,19]),t(y,[2,20]),t(e,[2,4]),{11:29,27:f,28:o},{16:30,17:[1,31],29:32,30:33,34:N},{11:35,27:f,28:o},{40:36,46:[1,37],47:[1,38]},t(I,[2,34]),t(I,[2,35]),t(I,[2,36]),t(I,[2,37]),t(I,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:N},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:h,42:_,43:m,44:g,45:x},t(F,[2,39]),t(F,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(W,[2,23],{32:50,33:51,35:52,37:C,38:T}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(W,[2,24],{33:56,36:[1,57],38:T}),t(W,[2,25]),t(M,[2,29]),t(W,[2,32]),t(M,[2,31]),{16:58,17:[1,59],29:32,30:33,34:N},t(W,[2,26]),{35:60,37:C},{17:[1,61]},t(e,[2,13]),t(M,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(a,n){if(n.recoverable)this.trace(a);else{var c=new Error(a);throw c.hash=n,c}},parse:function(a){var n=this,c=[0],d=[],E=[null],i=[],K=this.table,s="",Q=0,st=0,ft=2,ot=1,yt=i.slice.call(arguments,1),b=Object.create(this.lexer),z={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(z.yy[J]=this.yy[J]);b.setInput(a,z.yy),z.yy.lexer=b,z.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var $=b.yylloc;i.push($);var pt=b.options&&b.options.ranges;typeof z.yy.parseError=="function"?this.parseError=z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var Y;return Y=d.pop()||b.lex()||ot,typeof Y!="number"&&(Y instanceof Array&&(d=Y,Y=d.pop()),Y=n.symbols_[Y]||Y),Y}for(var S,H,D,tt,G={},j,P,lt,q;;){if(H=c[c.length-1],this.defaultActions[H]?D=this.defaultActions[H]:((S===null||typeof S>"u")&&(S=_t()),D=K[H]&&K[H][S]),typeof D>"u"||!D.length||!D[0]){var et="";q=[];for(j in K[H])this.terminals_[j]&&j>ft&&q.push("'"+this.terminals_[j]+"'");b.showPosition?et="Parse error on line "+(Q+1)+`: +import{c as Z,s as Et,g as mt,b as gt,a as kt,x as xt,y as Rt,l as V,A as Ot,h as rt,z as bt,i as Nt,ap as Tt,as as At}from"./mermaid-934d9bea.JP-6_YN_.js";import{G as Mt,l as wt}from"./layout.v3y_H6P2.js";import{l as St}from"./line.uArpYtMu.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const It=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Dt(t){return typeof t=="string"&&It.test(t)}const A=[];for(let t=0;t<256;++t)A.push((t+256).toString(16).slice(1));function vt(t,e=0){return(A[t[e+0]]+A[t[e+1]]+A[t[e+2]]+A[t[e+3]]+"-"+A[t[e+4]]+A[t[e+5]]+"-"+A[t[e+6]]+A[t[e+7]]+"-"+A[t[e+8]]+A[t[e+9]]+"-"+A[t[e+10]]+A[t[e+11]]+A[t[e+12]]+A[t[e+13]]+A[t[e+14]]+A[t[e+15]]).toLowerCase()}function Lt(t){if(!Dt(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}function Bt(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r>>32-e}function Ft(t){const e=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){const f=unescape(encodeURIComponent(t));t=[];for(let o=0;o>>0;x=g,g=m,m=it(_,30)>>>0,_=h,h=I}r[0]=r[0]+h>>>0,r[1]=r[1]+_>>>0,r[2]=r[2]+m>>>0,r[3]=r[3]+g>>>0,r[4]=r[4]+x>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}const Wt=Yt("v5",80,Ft);var at=function(){var t=function(w,a,n,c){for(n=n||{},c=w.length;c--;n[w[c]]=a);return n},e=[6,8,10,20,22,24,26,27,28],r=[1,10],u=[1,11],l=[1,12],p=[1,13],f=[1,14],o=[1,15],h=[1,21],_=[1,22],m=[1,23],g=[1,24],x=[1,25],y=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],N=[1,34],I=[27,28,46,47],F=[41,42,43,44,45],W=[17,34],C=[1,54],T=[1,53],M=[17,34,36,38],R={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(a,n,c,d,E,i,K){var s=i.length-1;switch(E){case 1:break;case 2:this.$=[];break;case 3:i[s-1].push(i[s]),this.$=i[s-1];break;case 4:case 5:this.$=i[s];break;case 6:case 7:this.$=[];break;case 8:d.addEntity(i[s-4]),d.addEntity(i[s-2]),d.addRelationship(i[s-4],i[s],i[s-2],i[s-3]);break;case 9:d.addEntity(i[s-3]),d.addAttributes(i[s-3],i[s-1]);break;case 10:d.addEntity(i[s-2]);break;case 11:d.addEntity(i[s]);break;case 12:d.addEntity(i[s-6],i[s-4]),d.addAttributes(i[s-6],i[s-1]);break;case 13:d.addEntity(i[s-5],i[s-3]);break;case 14:d.addEntity(i[s-3],i[s-1]);break;case 15:case 16:this.$=i[s].trim(),d.setAccTitle(this.$);break;case 17:case 18:this.$=i[s].trim(),d.setAccDescription(this.$);break;case 19:case 43:this.$=i[s];break;case 20:case 41:case 42:this.$=i[s].replace(/"/g,"");break;case 21:case 29:this.$=[i[s]];break;case 22:i[s].push(i[s-1]),this.$=i[s];break;case 23:this.$={attributeType:i[s-1],attributeName:i[s]};break;case 24:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeKeyTypeList:i[s]};break;case 25:this.$={attributeType:i[s-2],attributeName:i[s-1],attributeComment:i[s]};break;case 26:this.$={attributeType:i[s-3],attributeName:i[s-2],attributeKeyTypeList:i[s-1],attributeComment:i[s]};break;case 27:case 28:case 31:this.$=i[s];break;case 30:i[s-2].push(i[s]),this.$=i[s-2];break;case 32:this.$=i[s].replace(/"/g,"");break;case 33:this.$={cardA:i[s],relType:i[s-1],cardB:i[s-2]};break;case 34:this.$=d.Cardinality.ZERO_OR_ONE;break;case 35:this.$=d.Cardinality.ZERO_OR_MORE;break;case 36:this.$=d.Cardinality.ONE_OR_MORE;break;case 37:this.$=d.Cardinality.ONLY_ONE;break;case 38:this.$=d.Cardinality.MD_PARENT;break;case 39:this.$=d.Identification.NON_IDENTIFYING;break;case 40:this.$=d.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:u,24:l,26:p,27:f,28:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:h,42:_,43:m,44:g,45:x}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(y,[2,19]),t(y,[2,20]),t(e,[2,4]),{11:29,27:f,28:o},{16:30,17:[1,31],29:32,30:33,34:N},{11:35,27:f,28:o},{40:36,46:[1,37],47:[1,38]},t(I,[2,34]),t(I,[2,35]),t(I,[2,36]),t(I,[2,37]),t(I,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:N},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:h,42:_,43:m,44:g,45:x},t(F,[2,39]),t(F,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(W,[2,23],{32:50,33:51,35:52,37:C,38:T}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(W,[2,24],{33:56,36:[1,57],38:T}),t(W,[2,25]),t(M,[2,29]),t(W,[2,32]),t(M,[2,31]),{16:58,17:[1,59],29:32,30:33,34:N},t(W,[2,26]),{35:60,37:C},{17:[1,61]},t(e,[2,13]),t(M,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(a,n){if(n.recoverable)this.trace(a);else{var c=new Error(a);throw c.hash=n,c}},parse:function(a){var n=this,c=[0],d=[],E=[null],i=[],K=this.table,s="",Q=0,st=0,ft=2,ot=1,yt=i.slice.call(arguments,1),b=Object.create(this.lexer),z={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(z.yy[J]=this.yy[J]);b.setInput(a,z.yy),z.yy.lexer=b,z.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var $=b.yylloc;i.push($);var pt=b.options&&b.options.ranges;typeof z.yy.parseError=="function"?this.parseError=z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var Y;return Y=d.pop()||b.lex()||ot,typeof Y!="number"&&(Y instanceof Array&&(d=Y,Y=d.pop()),Y=n.symbols_[Y]||Y),Y}for(var S,H,D,tt,G={},j,P,lt,q;;){if(H=c[c.length-1],this.defaultActions[H]?D=this.defaultActions[H]:((S===null||typeof S>"u")&&(S=_t()),D=K[H]&&K[H][S]),typeof D>"u"||!D.length||!D[0]){var et="";q=[];for(j in K[H])this.terminals_[j]&&j>ft&&q.push("'"+this.terminals_[j]+"'");b.showPosition?et="Parse error on line "+(Q+1)+`: `+b.showPosition()+` Expecting `+q.join(", ")+", got '"+(this.terminals_[S]||S)+"'":et="Parse error on line "+(Q+1)+": Unexpected "+(S==ot?"end of input":"'"+(this.terminals_[S]||S)+"'"),this.parseError(et,{text:b.match,token:this.terminals_[S]||S,line:b.yylineno,loc:$,expected:q})}if(D[0]instanceof Array&&D.length>1)throw new Error("Parse Error: multiple actions possible at state: "+H+", token: "+S);switch(D[0]){case 1:c.push(S),E.push(b.yytext),i.push(b.yylloc),c.push(D[1]),S=null,st=b.yyleng,s=b.yytext,Q=b.yylineno,$=b.yylloc;break;case 2:if(P=this.productions_[D[1]][1],G.$=E[E.length-P],G._$={first_line:i[i.length-(P||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(P||1)].first_column,last_column:i[i.length-1].last_column},pt&&(G._$.range=[i[i.length-(P||1)].range[0],i[i.length-1].range[1]]),tt=this.performAction.apply(G,[s,st,Q,z.yy,D[1],E,i].concat(yt)),typeof tt<"u")return tt;P&&(c=c.slice(0,-1*P*2),E=E.slice(0,-1*P),i=i.slice(0,-1*P)),c.push(this.productions_[D[1]][0]),E.push(G.$),i.push(G._$),lt=K[c[c.length-2]][c[c.length-1]],c.push(lt);break;case 3:return!0}}return!0}},O=function(){var w={EOF:1,parseError:function(n,c){if(this.yy.parser)this.yy.parser.parseError(n,c);else throw new Error(n)},setInput:function(a,n){return this.yy=n||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var n=a.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var n=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),n=new Array(a.length+1).join("-");return a+this.upcomingInput()+` diff --git a/_nuxt/error-404.Pmhd83su.js b/_nuxt/error-404.M1fPf1Ez.js similarity index 97% rename from _nuxt/error-404.Pmhd83su.js rename to _nuxt/error-404.M1fPf1Ez.js index 33fa3eeef6..2c784d35ae 100644 --- a/_nuxt/error-404.Pmhd83su.js +++ b/_nuxt/error-404.M1fPf1Ez.js @@ -1 +1 @@ -import{k as a,E as n,b as r,c as l,e,t as s,g as d,w as c,G as p,H as f,p as h,i as m}from"./entry.TEDHt2QA.js";const x=t=>(h("data-v-8e38b8ef"),t=t(),m(),t),g={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},u=x(()=>e("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),b={class:"max-w-520px text-center z-20"},w=["textContent"],_=["textContent"],y={class:"w-full flex items-center justify-center"},S={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const o=t;return n({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(k,N)=>{const i=f;return r(),l("div",g,[u,e("div",b,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,w),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,_),e("div",y,[d(i,{to:"/",class:"gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"},{default:c(()=>[p(s(t.backHome),1)]),_:1})])])])}}},z=a(S,[["__scopeId","data-v-8e38b8ef"]]);export{z as default}; +import{k as a,E as n,b as r,c as l,e,t as s,g as d,w as c,G as p,H as f,p as h,i as m}from"./entry.2w2g1VWZ.js";const x=t=>(h("data-v-8e38b8ef"),t=t(),m(),t),g={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},u=x(()=>e("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),b={class:"max-w-520px text-center z-20"},w=["textContent"],_=["textContent"],y={class:"w-full flex items-center justify-center"},S={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const o=t;return n({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(k,N)=>{const i=f;return r(),l("div",g,[u,e("div",b,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,w),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,_),e("div",y,[d(i,{to:"/",class:"gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"},{default:c(()=>[p(s(t.backHome),1)]),_:1})])])])}}},z=a(S,[["__scopeId","data-v-8e38b8ef"]]);export{z as default}; diff --git a/_nuxt/error-500.B-BWyDcD.js b/_nuxt/error-500.o61tCZ3Q.js similarity index 96% rename from _nuxt/error-500.B-BWyDcD.js rename to _nuxt/error-500.o61tCZ3Q.js index b7450092aa..72933518c7 100644 --- a/_nuxt/error-500.B-BWyDcD.js +++ b/_nuxt/error-500.o61tCZ3Q.js @@ -1 +1 @@ -import{k as i,E as a,b as r,c as n,e,t as s,p as l,i as d}from"./entry.TEDHt2QA.js";const c=t=>(l("data-v-5741bfc2"),t=t(),d(),t),p={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},h=c(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),f={class:"max-w-520px text-center"},g=["textContent"],m=["textContent"],b={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const o=t;return a({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(x,u)=>(r(),n("div",p,[h,e("div",f,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,m)])]))}},y=i(b,[["__scopeId","data-v-5741bfc2"]]);export{y as default}; +import{k as i,E as a,b as r,c as n,e,t as s,p as l,i as d}from"./entry.2w2g1VWZ.js";const c=t=>(l("data-v-5741bfc2"),t=t(),d(),t),p={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},h=c(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),f={class:"max-w-520px text-center"},g=["textContent"],m=["textContent"],b={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const o=t;return a({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(x,u)=>(r(),n("div",p,[h,e("div",f,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,m)])]))}},y=i(b,[["__scopeId","data-v-5741bfc2"]]);export{y as default}; diff --git a/_nuxt/flowDb-170db09d.Pq8ih4By.js b/_nuxt/flowDb-170db09d.zcb_9fvH.js similarity index 99% rename from _nuxt/flowDb-170db09d.Pq8ih4By.js rename to _nuxt/flowDb-170db09d.zcb_9fvH.js index 04bf75c96e..12748e542d 100644 --- a/_nuxt/flowDb-170db09d.Pq8ih4By.js +++ b/_nuxt/flowDb-170db09d.zcb_9fvH.js @@ -1,4 +1,4 @@ -import{c as ft,v as ye,s as me,g as ve,a as Ve,b as Le,x as Ie,y as Re,l as Z1,z as At,A as Ne,j as Oe,h as N1}from"./mermaid-934d9bea.GjCu814R.js";var ht=function(){var e=function(h1,a,o,p){for(o=o||{},p=h1.length;p--;o[h1[p]]=a);return o},u=[1,4],i=[1,3],n=[1,5],c=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],l=[2,2],h=[1,13],U=[1,14],F=[1,15],O=[1,16],z=[1,23],c1=[1,25],f1=[1,26],A1=[1,27],S=[1,49],k=[1,48],o1=[1,29],w1=[1,30],U1=[1,31],G1=[1,32],M1=[1,33],B=[1,44],x=[1,46],y=[1,42],m=[1,47],v=[1,43],V=[1,50],L=[1,45],I=[1,51],R=[1,52],K1=[1,34],j1=[1,35],Y1=[1,36],X1=[1,37],L1=[1,57],b=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],W=[1,61],q=[1,60],Q=[1,62],z1=[8,9,11,73,75],k1=[1,88],b1=[1,93],g1=[1,92],D1=[1,89],F1=[1,85],T1=[1,91],C1=[1,87],S1=[1,94],_1=[1,90],B1=[1,95],x1=[1,86],H1=[8,9,10,11,73,75],N=[8,9,10,11,44,73,75],M=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Et=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],I1=[42,58,86,99,102,103,106,108,111,112,113],kt=[1,121],bt=[1,120],gt=[1,128],Dt=[1,142],Ft=[1,143],Tt=[1,144],Ct=[1,145],St=[1,130],_t=[1,132],Bt=[1,136],xt=[1,137],yt=[1,138],mt=[1,139],vt=[1,140],Vt=[1,141],Lt=[1,146],It=[1,147],Rt=[1,126],Nt=[1,127],Ot=[1,134],Pt=[1,129],wt=[1,133],Ut=[1,131],it=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],Gt=[1,149],T=[8,9,11],K=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],f=[1,169],P=[1,165],w=[1,166],A=[1,170],d=[1,167],E=[1,168],y1=[75,113,116],g=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Mt=[10,103],l1=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Z=[1,235],J=[1,233],$=[1,237],t1=[1,231],e1=[1,232],s1=[1,234],u1=[1,236],i1=[1,238],m1=[1,255],Kt=[8,9,11,103],H=[8,9,10,11,58,81,102,103,106,107,108,109],rt={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeperator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,verticeStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(a,o,p,r,C,t,R1){var s=t.length-1;switch(C){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 176:this.$=t[s];break;case 11:r.setDirection("TB"),this.$="TB";break;case 12:r.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=r.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=r.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=r.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 43:r.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 44:r.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 45:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 46:this.$={stmt:t[s],nodes:t[s]};break;case 47:this.$=[t[s]];break;case 48:this.$=t[s-4].concat(t[s]);break;case 49:this.$=t[s];break;case 50:this.$=t[s-2],r.setClass(t[s-2],t[s]);break;case 51:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"square");break;case 52:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"doublecircle");break;case 53:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"circle");break;case 54:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"ellipse");break;case 55:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"stadium");break;case 56:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"subroutine");break;case 57:this.$=t[s-7],r.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 58:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"cylinder");break;case 59:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"round");break;case 60:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"diamond");break;case 61:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"hexagon");break;case 62:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"odd");break;case 63:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"trapezoid");break;case 64:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 65:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_right");break;case 66:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_left");break;case 67:this.$=t[s],r.addVertex(t[s]);break;case 68:t[s-1].text=t[s],this.$=t[s-1];break;case 69:case 70:t[s-2].text=t[s-1],this.$=t[s-2];break;case 71:this.$=t[s];break;case 72:var j=r.destructLink(t[s],t[s-2]);this.$={type:j.type,stroke:j.stroke,length:j.length,text:t[s-1]};break;case 73:this.$={text:t[s],type:"text"};break;case 74:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 75:this.$={text:t[s],type:"string"};break;case 76:this.$={text:t[s],type:"markdown"};break;case 77:var j=r.destructLink(t[s]);this.$={type:j.type,stroke:j.stroke,length:j.length};break;case 78:this.$=t[s-1];break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:case 97:this.$={text:t[s],type:"markdown"};break;case 94:this.$={text:t[s],type:"text"};break;case 95:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 96:this.$={text:t[s],type:"text"};break;case 98:this.$=t[s-4],r.addClass(t[s-2],t[s]);break;case 99:this.$=t[s-4],r.setClass(t[s-2],t[s]);break;case 100:case 108:this.$=t[s-1],r.setClickEvent(t[s-1],t[s]);break;case 101:case 109:this.$=t[s-3],r.setClickEvent(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 102:this.$=t[s-2],r.setClickEvent(t[s-2],t[s-1],t[s]);break;case 103:this.$=t[s-4],r.setClickEvent(t[s-4],t[s-3],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 104:this.$=t[s-2],r.setLink(t[s-2],t[s]);break;case 105:this.$=t[s-4],r.setLink(t[s-4],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 106:this.$=t[s-4],r.setLink(t[s-4],t[s-2],t[s]);break;case 107:this.$=t[s-6],r.setLink(t[s-6],t[s-4],t[s]),r.setTooltip(t[s-6],t[s-2]);break;case 110:this.$=t[s-1],r.setLink(t[s-1],t[s]);break;case 111:this.$=t[s-3],r.setLink(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 112:this.$=t[s-3],r.setLink(t[s-3],t[s-2],t[s]);break;case 113:this.$=t[s-5],r.setLink(t[s-5],t[s-4],t[s]),r.setTooltip(t[s-5],t[s-2]);break;case 114:this.$=t[s-4],r.addVertex(t[s-2],void 0,void 0,t[s]);break;case 115:this.$=t[s-4],r.updateLink([t[s-2]],t[s]);break;case 116:this.$=t[s-4],r.updateLink(t[s-2],t[s]);break;case 117:this.$=t[s-8],r.updateLinkInterpolate([t[s-6]],t[s-2]),r.updateLink([t[s-6]],t[s]);break;case 118:this.$=t[s-8],r.updateLinkInterpolate(t[s-6],t[s-2]),r.updateLink(t[s-6],t[s]);break;case 119:this.$=t[s-6],r.updateLinkInterpolate([t[s-4]],t[s]);break;case 120:this.$=t[s-6],r.updateLinkInterpolate(t[s-4],t[s]);break;case 121:case 123:this.$=[t[s]];break;case 122:case 124:t[s-2].push(t[s]),this.$=t[s-2];break;case 126:this.$=t[s-1]+t[s];break;case 174:this.$=t[s];break;case 175:this.$=t[s-1]+""+t[s];break;case 177:this.$=t[s-1]+""+t[s];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:u,10:i,12:n},{1:[3]},e(c,l,{5:6}),{4:7,9:u,10:i,12:n},{4:8,9:u,10:i,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},e(c,[2,9]),e(c,[2,10]),e(c,[2,11]),{8:[1,54],9:[1,55],10:L1,15:53,18:56},e(b,[2,3]),e(b,[2,4]),e(b,[2,5]),e(b,[2,6]),e(b,[2,7]),e(b,[2,8]),{8:W,9:q,11:Q,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:W,9:q,11:Q,21:66},{8:W,9:q,11:Q,21:67},{8:W,9:q,11:Q,21:68},{8:W,9:q,11:Q,21:69},{8:W,9:q,11:Q,21:70},{8:W,9:q,10:[1,71],11:Q,21:72},e(b,[2,36]),{35:[1,73]},{37:[1,74]},e(b,[2,39]),e(z1,[2,46],{18:75,10:L1}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:k1,42:b1,58:g1,77:[1,83],86:D1,92:[1,80],94:[1,81],98:82,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1,117:84},e(b,[2,178]),e(b,[2,179]),e(b,[2,180]),e(b,[2,181]),e(H1,[2,47]),e(H1,[2,49],{44:[1,96]}),e(N,[2,67],{110:109,29:[1,97],42:S,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:k,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:B,99:x,102:y,103:m,106:v,108:V,111:L,112:I,113:R}),e(M,[2,174]),e(M,[2,135]),e(M,[2,136]),e(M,[2,137]),e(M,[2,138]),e(M,[2,139]),e(M,[2,140]),e(M,[2,141]),e(M,[2,142]),e(M,[2,143]),e(M,[2,144]),e(M,[2,145]),e(c,[2,12]),e(c,[2,18]),e(c,[2,19]),{9:[1,110]},e(Et,[2,26],{18:111,10:L1}),e(b,[2,27]),{40:112,41:38,42:S,43:39,45:40,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},e(b,[2,40]),e(b,[2,41]),e(b,[2,42]),e(I1,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:kt,116:bt},e([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),e(b,[2,28]),e(b,[2,29]),e(b,[2,30]),e(b,[2,31]),e(b,[2,32]),{10:gt,12:Dt,14:Ft,27:Tt,28:122,32:Ct,42:St,58:_t,73:Bt,77:[1,124],78:[1,125],80:135,81:xt,82:yt,83:mt,84:vt,85:Vt,86:Lt,87:It,88:123,102:Rt,106:Nt,108:Ot,111:Pt,112:wt,113:Ut},e(it,l,{5:148}),e(b,[2,37]),e(b,[2,38]),e(z1,[2,45],{42:Gt}),{42:S,45:150,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{99:[1,151],100:152,102:[1,153]},{42:S,45:154,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{42:S,45:155,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},e(T,[2,108],{117:160,10:[1,159],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1}),e(T,[2,110],{10:[1,161]}),e(K,[2,176]),e(K,[2,163]),e(K,[2,164]),e(K,[2,165]),e(K,[2,166]),e(K,[2,167]),e(K,[2,168]),e(K,[2,169]),e(K,[2,170]),e(K,[2,171]),e(K,[2,172]),e(K,[2,173]),{42:S,45:162,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{30:163,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:171,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:173,48:[1,172],65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:174,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:175,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:176,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{106:[1,177]},{30:178,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:179,63:[1,180],65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:181,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:182,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:183,65:f,77:P,78:w,79:164,113:A,114:d,115:E},e(M,[2,175]),e(c,[2,20]),e(Et,[2,25]),e(z1,[2,43],{18:184,10:L1}),e(I1,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{75:[1,188],76:189,113:kt,116:bt},e(y1,[2,73]),e(y1,[2,75]),e(y1,[2,76]),e(y1,[2,161]),e(y1,[2,162]),{8:W,9:q,10:gt,11:Q,12:Dt,14:Ft,21:191,27:Tt,29:[1,190],32:Ct,42:St,58:_t,73:Bt,80:135,81:xt,82:yt,83:mt,84:vt,85:Vt,86:Lt,87:It,88:192,102:Rt,106:Nt,108:Ot,111:Pt,112:wt,113:Ut},e(g,[2,94]),e(g,[2,96]),e(g,[2,97]),e(g,[2,150]),e(g,[2,151]),e(g,[2,152]),e(g,[2,153]),e(g,[2,154]),e(g,[2,155]),e(g,[2,156]),e(g,[2,157]),e(g,[2,158]),e(g,[2,159]),e(g,[2,160]),e(g,[2,83]),e(g,[2,84]),e(g,[2,85]),e(g,[2,86]),e(g,[2,87]),e(g,[2,88]),e(g,[2,89]),e(g,[2,90]),e(g,[2,91]),e(g,[2,92]),e(g,[2,93]),{6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,32:[1,193],33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},{10:L1,18:194},{10:[1,195],42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,196]},{10:[1,197],103:[1,198]},e(Mt,[2,121]),{10:[1,199],42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,200],42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:109,111:L,112:I,113:R},{77:[1,201]},e(T,[2,102],{10:[1,202]}),e(T,[2,104],{10:[1,203]}),{77:[1,204]},e(K,[2,177]),{77:[1,205],95:[1,206]},e(H1,[2,50],{110:109,42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,111:L,112:I,113:R}),{31:[1,207],65:f,79:208,113:A,114:d,115:E},e(l1,[2,79]),e(l1,[2,81]),e(l1,[2,82]),e(l1,[2,146]),e(l1,[2,147]),e(l1,[2,148]),e(l1,[2,149]),{47:[1,209],65:f,79:208,113:A,114:d,115:E},{30:210,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{49:[1,211],65:f,79:208,113:A,114:d,115:E},{51:[1,212],65:f,79:208,113:A,114:d,115:E},{53:[1,213],65:f,79:208,113:A,114:d,115:E},{55:[1,214],65:f,79:208,113:A,114:d,115:E},{58:[1,215]},{62:[1,216],65:f,79:208,113:A,114:d,115:E},{64:[1,217],65:f,79:208,113:A,114:d,115:E},{30:218,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{31:[1,219],65:f,79:208,113:A,114:d,115:E},{65:f,67:[1,220],69:[1,221],79:208,113:A,114:d,115:E},{65:f,67:[1,223],69:[1,222],79:208,113:A,114:d,115:E},e(z1,[2,44],{42:Gt}),e(I1,[2,70]),e(I1,[2,69]),{60:[1,224],65:f,79:208,113:A,114:d,115:E},e(I1,[2,72]),e(y1,[2,74]),{30:225,65:f,77:P,78:w,79:164,113:A,114:d,115:E},e(it,l,{5:226}),e(g,[2,95]),e(b,[2,35]),{41:227,42:S,43:39,45:40,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{10:Z,58:J,81:$,89:228,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{10:Z,58:J,81:$,89:239,101:[1,240],102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{10:Z,58:J,81:$,89:241,101:[1,242],102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{102:[1,243]},{10:Z,58:J,81:$,89:244,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{42:S,45:245,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},e(T,[2,109]),e(T,[2,111],{10:[1,249]}),e(T,[2,112]),e(N,[2,51]),e(l1,[2,80]),e(N,[2,52]),{49:[1,250],65:f,79:208,113:A,114:d,115:E},e(N,[2,59]),e(N,[2,54]),e(N,[2,55]),e(N,[2,56]),{106:[1,251]},e(N,[2,58]),e(N,[2,60]),{64:[1,252],65:f,79:208,113:A,114:d,115:E},e(N,[2,62]),e(N,[2,63]),e(N,[2,65]),e(N,[2,64]),e(N,[2,66]),e([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:f,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,32:[1,254],33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},e(H1,[2,48]),e(T,[2,114],{103:m1}),e(Kt,[2,123],{105:256,10:Z,58:J,81:$,102:t1,106:e1,107:s1,108:u1,109:i1}),e(H,[2,125]),e(H,[2,127]),e(H,[2,128]),e(H,[2,129]),e(H,[2,130]),e(H,[2,131]),e(H,[2,132]),e(H,[2,133]),e(H,[2,134]),e(T,[2,115],{103:m1}),{10:[1,257]},e(T,[2,116],{103:m1}),{10:[1,258]},e(Mt,[2,122]),e(T,[2,98],{103:m1}),e(T,[2,99],{110:109,42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,111:L,112:I,113:R}),e(T,[2,103]),e(T,[2,105],{10:[1,259]}),e(T,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:W,9:q,11:Q,21:264},e(b,[2,34]),{10:Z,58:J,81:$,102:t1,104:265,105:230,106:e1,107:s1,108:u1,109:i1},e(H,[2,126]),{14:k1,42:b1,58:g1,86:D1,98:266,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1,117:84},{14:k1,42:b1,58:g1,86:D1,98:267,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1,117:84},{95:[1,268]},e(T,[2,113]),e(N,[2,53]),{30:269,65:f,77:P,78:w,79:164,113:A,114:d,115:E},e(N,[2,61]),e(it,l,{5:270}),e(Kt,[2,124],{105:256,10:Z,58:J,81:$,102:t1,106:e1,107:s1,108:u1,109:i1}),e(T,[2,119],{117:160,10:[1,271],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1}),e(T,[2,120],{117:160,10:[1,272],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1}),e(T,[2,107]),{31:[1,273],65:f,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,32:[1,274],33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},{10:Z,58:J,81:$,89:275,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{10:Z,58:J,81:$,89:276,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},e(N,[2,57]),e(b,[2,33]),e(T,[2,117],{103:m1}),e(T,[2,118],{103:m1})],defaultActions:{},parseError:function(a,o){if(o.recoverable)this.trace(a);else{var p=new Error(a);throw p.hash=o,p}},parse:function(a){var o=this,p=[0],r=[],C=[null],t=[],R1=this.table,s="",j=0,jt=0,Se=2,Yt=1,_e=t.slice.call(arguments,1),_=Object.create(this.lexer),d1={yy:{}};for(var at in this.yy)Object.prototype.hasOwnProperty.call(this.yy,at)&&(d1.yy[at]=this.yy[at]);_.setInput(a,d1.yy),d1.yy.lexer=_,d1.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var ct=_.yylloc;t.push(ct);var Be=_.options&&_.options.ranges;typeof d1.yy.parseError=="function"?this.parseError=d1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xe(){var n1;return n1=r.pop()||_.lex()||Yt,typeof n1!="number"&&(n1 instanceof Array&&(r=n1,n1=r.pop()),n1=o.symbols_[n1]||n1),n1}for(var G,E1,Y,ot,v1={},W1,r1,Xt,q1;;){if(E1=p[p.length-1],this.defaultActions[E1]?Y=this.defaultActions[E1]:((G===null||typeof G>"u")&&(G=xe()),Y=R1[E1]&&R1[E1][G]),typeof Y>"u"||!Y.length||!Y[0]){var lt="";q1=[];for(W1 in R1[E1])this.terminals_[W1]&&W1>Se&&q1.push("'"+this.terminals_[W1]+"'");_.showPosition?lt="Parse error on line "+(j+1)+`: +import{c as ft,v as ye,s as me,g as ve,a as Ve,b as Le,x as Ie,y as Re,l as Z1,z as At,A as Ne,j as Oe,h as N1}from"./mermaid-934d9bea.JP-6_YN_.js";var ht=function(){var e=function(h1,a,o,p){for(o=o||{},p=h1.length;p--;o[h1[p]]=a);return o},u=[1,4],i=[1,3],n=[1,5],c=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],l=[2,2],h=[1,13],U=[1,14],F=[1,15],O=[1,16],z=[1,23],c1=[1,25],f1=[1,26],A1=[1,27],S=[1,49],k=[1,48],o1=[1,29],w1=[1,30],U1=[1,31],G1=[1,32],M1=[1,33],B=[1,44],x=[1,46],y=[1,42],m=[1,47],v=[1,43],V=[1,50],L=[1,45],I=[1,51],R=[1,52],K1=[1,34],j1=[1,35],Y1=[1,36],X1=[1,37],L1=[1,57],b=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],W=[1,61],q=[1,60],Q=[1,62],z1=[8,9,11,73,75],k1=[1,88],b1=[1,93],g1=[1,92],D1=[1,89],F1=[1,85],T1=[1,91],C1=[1,87],S1=[1,94],_1=[1,90],B1=[1,95],x1=[1,86],H1=[8,9,10,11,73,75],N=[8,9,10,11,44,73,75],M=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Et=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],I1=[42,58,86,99,102,103,106,108,111,112,113],kt=[1,121],bt=[1,120],gt=[1,128],Dt=[1,142],Ft=[1,143],Tt=[1,144],Ct=[1,145],St=[1,130],_t=[1,132],Bt=[1,136],xt=[1,137],yt=[1,138],mt=[1,139],vt=[1,140],Vt=[1,141],Lt=[1,146],It=[1,147],Rt=[1,126],Nt=[1,127],Ot=[1,134],Pt=[1,129],wt=[1,133],Ut=[1,131],it=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],Gt=[1,149],T=[8,9,11],K=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],f=[1,169],P=[1,165],w=[1,166],A=[1,170],d=[1,167],E=[1,168],y1=[75,113,116],g=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Mt=[10,103],l1=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Z=[1,235],J=[1,233],$=[1,237],t1=[1,231],e1=[1,232],s1=[1,234],u1=[1,236],i1=[1,238],m1=[1,255],Kt=[8,9,11,103],H=[8,9,10,11,58,81,102,103,106,107,108,109],rt={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeperator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,verticeStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(a,o,p,r,C,t,R1){var s=t.length-1;switch(C){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 176:this.$=t[s];break;case 11:r.setDirection("TB"),this.$="TB";break;case 12:r.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=r.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=r.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=r.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 43:r.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 44:r.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 45:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 46:this.$={stmt:t[s],nodes:t[s]};break;case 47:this.$=[t[s]];break;case 48:this.$=t[s-4].concat(t[s]);break;case 49:this.$=t[s];break;case 50:this.$=t[s-2],r.setClass(t[s-2],t[s]);break;case 51:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"square");break;case 52:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"doublecircle");break;case 53:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"circle");break;case 54:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"ellipse");break;case 55:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"stadium");break;case 56:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"subroutine");break;case 57:this.$=t[s-7],r.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 58:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"cylinder");break;case 59:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"round");break;case 60:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"diamond");break;case 61:this.$=t[s-5],r.addVertex(t[s-5],t[s-2],"hexagon");break;case 62:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"odd");break;case 63:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"trapezoid");break;case 64:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 65:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_right");break;case 66:this.$=t[s-3],r.addVertex(t[s-3],t[s-1],"lean_left");break;case 67:this.$=t[s],r.addVertex(t[s]);break;case 68:t[s-1].text=t[s],this.$=t[s-1];break;case 69:case 70:t[s-2].text=t[s-1],this.$=t[s-2];break;case 71:this.$=t[s];break;case 72:var j=r.destructLink(t[s],t[s-2]);this.$={type:j.type,stroke:j.stroke,length:j.length,text:t[s-1]};break;case 73:this.$={text:t[s],type:"text"};break;case 74:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 75:this.$={text:t[s],type:"string"};break;case 76:this.$={text:t[s],type:"markdown"};break;case 77:var j=r.destructLink(t[s]);this.$={type:j.type,stroke:j.stroke,length:j.length};break;case 78:this.$=t[s-1];break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:case 97:this.$={text:t[s],type:"markdown"};break;case 94:this.$={text:t[s],type:"text"};break;case 95:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 96:this.$={text:t[s],type:"text"};break;case 98:this.$=t[s-4],r.addClass(t[s-2],t[s]);break;case 99:this.$=t[s-4],r.setClass(t[s-2],t[s]);break;case 100:case 108:this.$=t[s-1],r.setClickEvent(t[s-1],t[s]);break;case 101:case 109:this.$=t[s-3],r.setClickEvent(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 102:this.$=t[s-2],r.setClickEvent(t[s-2],t[s-1],t[s]);break;case 103:this.$=t[s-4],r.setClickEvent(t[s-4],t[s-3],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 104:this.$=t[s-2],r.setLink(t[s-2],t[s]);break;case 105:this.$=t[s-4],r.setLink(t[s-4],t[s-2]),r.setTooltip(t[s-4],t[s]);break;case 106:this.$=t[s-4],r.setLink(t[s-4],t[s-2],t[s]);break;case 107:this.$=t[s-6],r.setLink(t[s-6],t[s-4],t[s]),r.setTooltip(t[s-6],t[s-2]);break;case 110:this.$=t[s-1],r.setLink(t[s-1],t[s]);break;case 111:this.$=t[s-3],r.setLink(t[s-3],t[s-2]),r.setTooltip(t[s-3],t[s]);break;case 112:this.$=t[s-3],r.setLink(t[s-3],t[s-2],t[s]);break;case 113:this.$=t[s-5],r.setLink(t[s-5],t[s-4],t[s]),r.setTooltip(t[s-5],t[s-2]);break;case 114:this.$=t[s-4],r.addVertex(t[s-2],void 0,void 0,t[s]);break;case 115:this.$=t[s-4],r.updateLink([t[s-2]],t[s]);break;case 116:this.$=t[s-4],r.updateLink(t[s-2],t[s]);break;case 117:this.$=t[s-8],r.updateLinkInterpolate([t[s-6]],t[s-2]),r.updateLink([t[s-6]],t[s]);break;case 118:this.$=t[s-8],r.updateLinkInterpolate(t[s-6],t[s-2]),r.updateLink(t[s-6],t[s]);break;case 119:this.$=t[s-6],r.updateLinkInterpolate([t[s-4]],t[s]);break;case 120:this.$=t[s-6],r.updateLinkInterpolate(t[s-4],t[s]);break;case 121:case 123:this.$=[t[s]];break;case 122:case 124:t[s-2].push(t[s]),this.$=t[s-2];break;case 126:this.$=t[s-1]+t[s];break;case 174:this.$=t[s];break;case 175:this.$=t[s-1]+""+t[s];break;case 177:this.$=t[s-1]+""+t[s];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:u,10:i,12:n},{1:[3]},e(c,l,{5:6}),{4:7,9:u,10:i,12:n},{4:8,9:u,10:i,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},e(c,[2,9]),e(c,[2,10]),e(c,[2,11]),{8:[1,54],9:[1,55],10:L1,15:53,18:56},e(b,[2,3]),e(b,[2,4]),e(b,[2,5]),e(b,[2,6]),e(b,[2,7]),e(b,[2,8]),{8:W,9:q,11:Q,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:W,9:q,11:Q,21:66},{8:W,9:q,11:Q,21:67},{8:W,9:q,11:Q,21:68},{8:W,9:q,11:Q,21:69},{8:W,9:q,11:Q,21:70},{8:W,9:q,10:[1,71],11:Q,21:72},e(b,[2,36]),{35:[1,73]},{37:[1,74]},e(b,[2,39]),e(z1,[2,46],{18:75,10:L1}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:k1,42:b1,58:g1,77:[1,83],86:D1,92:[1,80],94:[1,81],98:82,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1,117:84},e(b,[2,178]),e(b,[2,179]),e(b,[2,180]),e(b,[2,181]),e(H1,[2,47]),e(H1,[2,49],{44:[1,96]}),e(N,[2,67],{110:109,29:[1,97],42:S,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:k,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:B,99:x,102:y,103:m,106:v,108:V,111:L,112:I,113:R}),e(M,[2,174]),e(M,[2,135]),e(M,[2,136]),e(M,[2,137]),e(M,[2,138]),e(M,[2,139]),e(M,[2,140]),e(M,[2,141]),e(M,[2,142]),e(M,[2,143]),e(M,[2,144]),e(M,[2,145]),e(c,[2,12]),e(c,[2,18]),e(c,[2,19]),{9:[1,110]},e(Et,[2,26],{18:111,10:L1}),e(b,[2,27]),{40:112,41:38,42:S,43:39,45:40,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},e(b,[2,40]),e(b,[2,41]),e(b,[2,42]),e(I1,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:kt,116:bt},e([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),e(b,[2,28]),e(b,[2,29]),e(b,[2,30]),e(b,[2,31]),e(b,[2,32]),{10:gt,12:Dt,14:Ft,27:Tt,28:122,32:Ct,42:St,58:_t,73:Bt,77:[1,124],78:[1,125],80:135,81:xt,82:yt,83:mt,84:vt,85:Vt,86:Lt,87:It,88:123,102:Rt,106:Nt,108:Ot,111:Pt,112:wt,113:Ut},e(it,l,{5:148}),e(b,[2,37]),e(b,[2,38]),e(z1,[2,45],{42:Gt}),{42:S,45:150,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{99:[1,151],100:152,102:[1,153]},{42:S,45:154,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{42:S,45:155,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},e(T,[2,108],{117:160,10:[1,159],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1}),e(T,[2,110],{10:[1,161]}),e(K,[2,176]),e(K,[2,163]),e(K,[2,164]),e(K,[2,165]),e(K,[2,166]),e(K,[2,167]),e(K,[2,168]),e(K,[2,169]),e(K,[2,170]),e(K,[2,171]),e(K,[2,172]),e(K,[2,173]),{42:S,45:162,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{30:163,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:171,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:173,48:[1,172],65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:174,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:175,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:176,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{106:[1,177]},{30:178,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:179,63:[1,180],65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:181,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:182,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{30:183,65:f,77:P,78:w,79:164,113:A,114:d,115:E},e(M,[2,175]),e(c,[2,20]),e(Et,[2,25]),e(z1,[2,43],{18:184,10:L1}),e(I1,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{75:[1,188],76:189,113:kt,116:bt},e(y1,[2,73]),e(y1,[2,75]),e(y1,[2,76]),e(y1,[2,161]),e(y1,[2,162]),{8:W,9:q,10:gt,11:Q,12:Dt,14:Ft,21:191,27:Tt,29:[1,190],32:Ct,42:St,58:_t,73:Bt,80:135,81:xt,82:yt,83:mt,84:vt,85:Vt,86:Lt,87:It,88:192,102:Rt,106:Nt,108:Ot,111:Pt,112:wt,113:Ut},e(g,[2,94]),e(g,[2,96]),e(g,[2,97]),e(g,[2,150]),e(g,[2,151]),e(g,[2,152]),e(g,[2,153]),e(g,[2,154]),e(g,[2,155]),e(g,[2,156]),e(g,[2,157]),e(g,[2,158]),e(g,[2,159]),e(g,[2,160]),e(g,[2,83]),e(g,[2,84]),e(g,[2,85]),e(g,[2,86]),e(g,[2,87]),e(g,[2,88]),e(g,[2,89]),e(g,[2,90]),e(g,[2,91]),e(g,[2,92]),e(g,[2,93]),{6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,32:[1,193],33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},{10:L1,18:194},{10:[1,195],42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,196]},{10:[1,197],103:[1,198]},e(Mt,[2,121]),{10:[1,199],42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:109,111:L,112:I,113:R},{10:[1,200],42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:109,111:L,112:I,113:R},{77:[1,201]},e(T,[2,102],{10:[1,202]}),e(T,[2,104],{10:[1,203]}),{77:[1,204]},e(K,[2,177]),{77:[1,205],95:[1,206]},e(H1,[2,50],{110:109,42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,111:L,112:I,113:R}),{31:[1,207],65:f,79:208,113:A,114:d,115:E},e(l1,[2,79]),e(l1,[2,81]),e(l1,[2,82]),e(l1,[2,146]),e(l1,[2,147]),e(l1,[2,148]),e(l1,[2,149]),{47:[1,209],65:f,79:208,113:A,114:d,115:E},{30:210,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{49:[1,211],65:f,79:208,113:A,114:d,115:E},{51:[1,212],65:f,79:208,113:A,114:d,115:E},{53:[1,213],65:f,79:208,113:A,114:d,115:E},{55:[1,214],65:f,79:208,113:A,114:d,115:E},{58:[1,215]},{62:[1,216],65:f,79:208,113:A,114:d,115:E},{64:[1,217],65:f,79:208,113:A,114:d,115:E},{30:218,65:f,77:P,78:w,79:164,113:A,114:d,115:E},{31:[1,219],65:f,79:208,113:A,114:d,115:E},{65:f,67:[1,220],69:[1,221],79:208,113:A,114:d,115:E},{65:f,67:[1,223],69:[1,222],79:208,113:A,114:d,115:E},e(z1,[2,44],{42:Gt}),e(I1,[2,70]),e(I1,[2,69]),{60:[1,224],65:f,79:208,113:A,114:d,115:E},e(I1,[2,72]),e(y1,[2,74]),{30:225,65:f,77:P,78:w,79:164,113:A,114:d,115:E},e(it,l,{5:226}),e(g,[2,95]),e(b,[2,35]),{41:227,42:S,43:39,45:40,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},{10:Z,58:J,81:$,89:228,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{10:Z,58:J,81:$,89:239,101:[1,240],102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{10:Z,58:J,81:$,89:241,101:[1,242],102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{102:[1,243]},{10:Z,58:J,81:$,89:244,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{42:S,45:245,58:k,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R},e(T,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},e(T,[2,109]),e(T,[2,111],{10:[1,249]}),e(T,[2,112]),e(N,[2,51]),e(l1,[2,80]),e(N,[2,52]),{49:[1,250],65:f,79:208,113:A,114:d,115:E},e(N,[2,59]),e(N,[2,54]),e(N,[2,55]),e(N,[2,56]),{106:[1,251]},e(N,[2,58]),e(N,[2,60]),{64:[1,252],65:f,79:208,113:A,114:d,115:E},e(N,[2,62]),e(N,[2,63]),e(N,[2,65]),e(N,[2,64]),e(N,[2,66]),e([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:f,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,32:[1,254],33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},e(H1,[2,48]),e(T,[2,114],{103:m1}),e(Kt,[2,123],{105:256,10:Z,58:J,81:$,102:t1,106:e1,107:s1,108:u1,109:i1}),e(H,[2,125]),e(H,[2,127]),e(H,[2,128]),e(H,[2,129]),e(H,[2,130]),e(H,[2,131]),e(H,[2,132]),e(H,[2,133]),e(H,[2,134]),e(T,[2,115],{103:m1}),{10:[1,257]},e(T,[2,116],{103:m1}),{10:[1,258]},e(Mt,[2,122]),e(T,[2,98],{103:m1}),e(T,[2,99],{110:109,42:S,58:k,86:B,99:x,102:y,103:m,106:v,108:V,111:L,112:I,113:R}),e(T,[2,103]),e(T,[2,105],{10:[1,259]}),e(T,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:W,9:q,11:Q,21:264},e(b,[2,34]),{10:Z,58:J,81:$,102:t1,104:265,105:230,106:e1,107:s1,108:u1,109:i1},e(H,[2,126]),{14:k1,42:b1,58:g1,86:D1,98:266,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1,117:84},{14:k1,42:b1,58:g1,86:D1,98:267,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1,117:84},{95:[1,268]},e(T,[2,113]),e(N,[2,53]),{30:269,65:f,77:P,78:w,79:164,113:A,114:d,115:E},e(N,[2,61]),e(it,l,{5:270}),e(Kt,[2,124],{105:256,10:Z,58:J,81:$,102:t1,106:e1,107:s1,108:u1,109:i1}),e(T,[2,119],{117:160,10:[1,271],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1}),e(T,[2,120],{117:160,10:[1,272],14:k1,42:b1,58:g1,86:D1,102:F1,103:T1,106:C1,108:S1,111:_1,112:B1,113:x1}),e(T,[2,107]),{31:[1,273],65:f,79:208,113:A,114:d,115:E},{6:11,7:12,8:h,9:U,10:F,11:O,20:17,22:18,23:19,24:20,25:21,26:22,27:z,32:[1,274],33:24,34:c1,36:f1,38:A1,40:28,41:38,42:S,43:39,45:40,58:k,81:o1,82:w1,83:U1,84:G1,85:M1,86:B,99:x,102:y,103:m,106:v,108:V,110:41,111:L,112:I,113:R,118:K1,119:j1,120:Y1,121:X1},{10:Z,58:J,81:$,89:275,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},{10:Z,58:J,81:$,89:276,102:t1,104:229,105:230,106:e1,107:s1,108:u1,109:i1},e(N,[2,57]),e(b,[2,33]),e(T,[2,117],{103:m1}),e(T,[2,118],{103:m1})],defaultActions:{},parseError:function(a,o){if(o.recoverable)this.trace(a);else{var p=new Error(a);throw p.hash=o,p}},parse:function(a){var o=this,p=[0],r=[],C=[null],t=[],R1=this.table,s="",j=0,jt=0,Se=2,Yt=1,_e=t.slice.call(arguments,1),_=Object.create(this.lexer),d1={yy:{}};for(var at in this.yy)Object.prototype.hasOwnProperty.call(this.yy,at)&&(d1.yy[at]=this.yy[at]);_.setInput(a,d1.yy),d1.yy.lexer=_,d1.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var ct=_.yylloc;t.push(ct);var Be=_.options&&_.options.ranges;typeof d1.yy.parseError=="function"?this.parseError=d1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xe(){var n1;return n1=r.pop()||_.lex()||Yt,typeof n1!="number"&&(n1 instanceof Array&&(r=n1,n1=r.pop()),n1=o.symbols_[n1]||n1),n1}for(var G,E1,Y,ot,v1={},W1,r1,Xt,q1;;){if(E1=p[p.length-1],this.defaultActions[E1]?Y=this.defaultActions[E1]:((G===null||typeof G>"u")&&(G=xe()),Y=R1[E1]&&R1[E1][G]),typeof Y>"u"||!Y.length||!Y[0]){var lt="";q1=[];for(W1 in R1[E1])this.terminals_[W1]&&W1>Se&&q1.push("'"+this.terminals_[W1]+"'");_.showPosition?lt="Parse error on line "+(j+1)+`: `+_.showPosition()+` Expecting `+q1.join(", ")+", got '"+(this.terminals_[G]||G)+"'":lt="Parse error on line "+(j+1)+": Unexpected "+(G==Yt?"end of input":"'"+(this.terminals_[G]||G)+"'"),this.parseError(lt,{text:_.match,token:this.terminals_[G]||G,line:_.yylineno,loc:ct,expected:q1})}if(Y[0]instanceof Array&&Y.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E1+", token: "+G);switch(Y[0]){case 1:p.push(G),C.push(_.yytext),t.push(_.yylloc),p.push(Y[1]),G=null,jt=_.yyleng,s=_.yytext,j=_.yylineno,ct=_.yylloc;break;case 2:if(r1=this.productions_[Y[1]][1],v1.$=C[C.length-r1],v1._$={first_line:t[t.length-(r1||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(r1||1)].first_column,last_column:t[t.length-1].last_column},Be&&(v1._$.range=[t[t.length-(r1||1)].range[0],t[t.length-1].range[1]]),ot=this.performAction.apply(v1,[s,jt,j,d1.yy,Y[1],C,t].concat(_e)),typeof ot<"u")return ot;r1&&(p=p.slice(0,-1*r1*2),C=C.slice(0,-1*r1),t=t.slice(0,-1*r1)),p.push(this.productions_[Y[1]][0]),C.push(v1.$),t.push(v1._$),Xt=R1[p[p.length-2]][p[p.length-1]],p.push(Xt);break;case 3:return!0}}return!0}},Ce=function(){var h1={EOF:1,parseError:function(o,p){if(this.yy.parser)this.yy.parser.parseError(o,p);else throw new Error(o)},setInput:function(a,o){return this.yy=o||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var o=a.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var o=a.length,p=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var C=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===r.length?this.yylloc.first_column:0)+r[r.length-p.length].length-p[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[C[0],C[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),o=new Array(a.length+1).join("-");return a+this.upcomingInput()+` diff --git a/_nuxt/flowDiagram-61eb444c.aopSxhPZ.js b/_nuxt/flowDiagram-61eb444c.8YXXN8fx.js similarity index 97% rename from _nuxt/flowDiagram-61eb444c.aopSxhPZ.js rename to _nuxt/flowDiagram-61eb444c.8YXXN8fx.js index 7e242f6061..d9aad5e6d1 100644 --- a/_nuxt/flowDiagram-61eb444c.aopSxhPZ.js +++ b/_nuxt/flowDiagram-61eb444c.8YXXN8fx.js @@ -1,4 +1,4 @@ -import{p as St,f as W}from"./flowDb-170db09d.Pq8ih4By.js";import{h as S,u as Lt,r as Et,p as _t,l as Tt,d as M,f as tt,G as Nt}from"./layout.cBG5TzxH.js";import{h as x,p as P,q as z,r as et,c as J,j as rt,l as R,t as V,u as At}from"./mermaid-934d9bea.GjCu814R.js";import{a as N,b as at,i as nt,c as _,e as st,d as it,f as Ct,g as It,s as Bt}from"./styles-b966c4ae.IjxwHMVL.js";import{l as Mt}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./index-67a42d7d.xm4RvesR.js";import"./edges-80f1ebb6.h90W1bSR.js";import"./createText-aebacdfe.b7sMoTCr.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";function Dt(r){if(!r.ok)throw new Error(r.status+" "+r.statusText);return r.text()}function Rt(r,e){return fetch(r,e).then(Dt)}function Gt(r){return(e,t)=>Rt(e,t).then(n=>new DOMParser().parseFromString(n,r))}var Pt=Gt("image/svg+xml"),Y={normal:$t,vee:Wt,undirected:Vt};function Ut(r){Y=r}function $t(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Wt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Vt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function zt(r,e){var t=r;return t.node().appendChild(e.label),N(t,e.labelStyle),t}function Yt(r,e){for(var t=r.append("text"),n=Ht(e.label).split(` +import{p as St,f as W}from"./flowDb-170db09d.zcb_9fvH.js";import{h as S,u as Lt,r as Et,p as _t,l as Tt,d as M,f as tt,G as Nt}from"./layout.v3y_H6P2.js";import{h as x,p as P,q as z,r as et,c as J,j as rt,l as R,t as V,u as At}from"./mermaid-934d9bea.JP-6_YN_.js";import{a as N,b as at,i as nt,c as _,e as st,d as it,f as Ct,g as It,s as Bt}from"./styles-b966c4ae.XG1tK9wD.js";import{l as Mt}from"./line.uArpYtMu.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./index-67a42d7d.k58ohfnG.js";import"./edges-80f1ebb6.gtortKGL.js";import"./createText-aebacdfe.QPUQ3eAz.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";function Dt(r){if(!r.ok)throw new Error(r.status+" "+r.statusText);return r.text()}function Rt(r,e){return fetch(r,e).then(Dt)}function Gt(r){return(e,t)=>Rt(e,t).then(n=>new DOMParser().parseFromString(n,r))}var Pt=Gt("image/svg+xml"),Y={normal:$t,vee:Wt,undirected:Vt};function Ut(r){Y=r}function $t(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Wt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function Vt(r,e,t,n){var a=r.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=a.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");N(s,t[n+"Style"]),t[n+"Class"]&&s.attr("class",t[n+"Class"])}function zt(r,e){var t=r;return t.node().appendChild(e.label),N(t,e.labelStyle),t}function Yt(r,e){for(var t=r.append("text"),n=Ht(e.label).split(` `),a=0;a0}function T(r,e,t){var n=r.x,a=r.y,s=[],i=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY;e.forEach(function(p){i=Math.min(i,p.x),o=Math.min(o,p.y)});for(var c=n-r.width/2-i,d=a-r.height/2-o,l=0;l1&&s.sort(function(p,g){var f=p.x-t.x,y=p.y-t.y,k=Math.sqrt(f*f+y*y),I=g.x-t.x,E=g.y-t.y,U=Math.sqrt(I*I+E*E);return kMath.abs(a)*o?(s<0&&(o=-o),c=s===0?0:o*a/s,d=o):(a<0&&(i=-i),c=i,d=a===0?0:i*s/a),{x:t+c,y:n+d}}var Q={rect:ie,ellipse:oe,circle:le,diamond:ce};function se(r){Q=r}function ie(r,e,t){var n=r.insert("rect",":first-child").attr("rx",t.rx).attr("ry",t.ry).attr("x",-e.width/2).attr("y",-e.height/2).attr("width",e.width).attr("height",e.height);return t.intersect=function(a){return Z(t,a)},n}function oe(r,e,t){var n=e.width/2,a=e.height/2,s=r.insert("ellipse",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("rx",n).attr("ry",a);return t.intersect=function(i){return lt(t,n,a,i)},s}function le(r,e,t){var n=Math.max(e.width,e.height)/2,a=r.insert("circle",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("r",n);return t.intersect=function(s){return ae(t,n,s)},a}function ce(r,e,t){var n=e.width*Math.SQRT2/2,a=e.height*Math.SQRT2/2,s=[{x:0,y:-a},{x:-n,y:0},{x:0,y:a},{x:n,y:0}],i=r.insert("polygon",":first-child").attr("points",s.map(function(o){return o.x+","+o.y}).join(" "));return t.intersect=function(o){return T(t,s,o)},i}function de(){var r=function(e,t){fe(t);var n=D(e,"output"),a=D(n,"clusters"),s=D(n,"edgePaths"),i=X(D(n,"edgeLabels"),t),o=q(D(n,"nodes"),t,Q);Tt(t),re(o,t),ee(i,t),F(s,t,Y);var c=H(a,t);te(c,t),pe(t)};return r.createNodes=function(e){return arguments.length?(jt(e),r):q},r.createClusters=function(e){return arguments.length?(Xt(e),r):H},r.createEdgeLabels=function(e){return arguments.length?(Ft(e),r):X},r.createEdgePaths=function(e){return arguments.length?(qt(e),r):F},r.shapes=function(e){return arguments.length?(se(e),r):Q},r.arrows=function(e){return arguments.length?(Ut(e),r):Y},r}var he={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},ue={arrowhead:"normal",curve:P};function fe(r){r.nodes().forEach(function(e){var t=r.node(e);!S(t,"label")&&!r.children(e).length&&(t.label=e),S(t,"paddingX")&&M(t,{paddingLeft:t.paddingX,paddingRight:t.paddingX}),S(t,"paddingY")&&M(t,{paddingTop:t.paddingY,paddingBottom:t.paddingY}),S(t,"padding")&&M(t,{paddingLeft:t.padding,paddingRight:t.padding,paddingTop:t.padding,paddingBottom:t.padding}),M(t,he),tt(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(n){t[n]=Number(t[n])}),S(t,"width")&&(t._prevWidth=t.width),S(t,"height")&&(t._prevHeight=t.height)}),r.edges().forEach(function(e){var t=r.edge(e);S(t,"label")||(t.label=""),M(t,ue)})}function pe(r){tt(r.nodes(),function(e){var t=r.node(e);S(t,"_prevWidth")?t.width=t._prevWidth:delete t.width,S(t,"_prevHeight")?t.height=t._prevHeight:delete t.height,delete t._prevWidth,delete t._prevHeight})}function D(r,e){var t=r.select("g."+e);return t.empty()&&(t=r.append("g").attr("class",e)),t}function ct(r,e,t){const n=e.width,a=e.height,s=(n+a)*.9,i=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}],o=A(r,s,s,i);return t.intersect=function(c){return T(t,i,c)},o}function dt(r,e,t){const a=e.height,s=a/4,i=e.width+2*s,o=[{x:s,y:0},{x:i-s,y:0},{x:i,y:-a/2},{x:i-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],c=A(r,i,a,o);return t.intersect=function(d){return T(t,o,d)},c}function ht(r,e,t){const n=e.width,a=e.height,s=[{x:-a/2,y:0},{x:n,y:0},{x:n,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function ut(r,e,t){const n=e.width,a=e.height,s=[{x:-2*a/6,y:0},{x:n-a/6,y:0},{x:n+2*a/6,y:-a},{x:a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function ft(r,e,t){const n=e.width,a=e.height,s=[{x:2*a/6,y:0},{x:n+a/6,y:0},{x:n-2*a/6,y:-a},{x:-a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function pt(r,e,t){const n=e.width,a=e.height,s=[{x:-2*a/6,y:0},{x:n+2*a/6,y:0},{x:n-a/6,y:-a},{x:a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function vt(r,e,t){const n=e.width,a=e.height,s=[{x:a/6,y:0},{x:n-a/6,y:0},{x:n+2*a/6,y:-a},{x:-2*a/6,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function yt(r,e,t){const n=e.width,a=e.height,s=[{x:0,y:0},{x:n+a/2,y:0},{x:n,y:-a/2},{x:n+a/2,y:-a},{x:0,y:-a}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function gt(r,e,t){const n=e.height,a=e.width+n/4,s=r.insert("rect",":first-child").attr("rx",n/2).attr("ry",n/2).attr("x",-a/2).attr("y",-n/2).attr("width",a).attr("height",n);return t.intersect=function(i){return Z(t,i)},s}function wt(r,e,t){const n=e.width,a=e.height,s=[{x:0,y:0},{x:n,y:0},{x:n,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:n+8,y:0},{x:n+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],i=A(r,n,a,s);return t.intersect=function(o){return T(t,s,o)},i}function mt(r,e,t){const n=e.width,a=n/2,s=a/(2.5+n/50),i=e.height+s,o="M 0,"+s+" a "+a+","+s+" 0,0,0 "+n+" 0 a "+a+","+s+" 0,0,0 "+-n+" 0 l 0,"+i+" a "+a+","+s+" 0,0,0 "+n+" 0 l 0,"+-i,c=r.attr("label-offset-y",s).insert("path",":first-child").attr("d",o).attr("transform","translate("+-n/2+","+-(i/2+s)+")");return t.intersect=function(d){const l=Z(t,d),v=l.x-t.x;if(a!=0&&(Math.abs(v)t.height/2-s)){let h=s*s*(1-v*v/(a*a));h!=0&&(h=Math.sqrt(h)),h=s-h,d.y-t.y>0&&(h=-h),l.y+=h}return l},c}function ve(r){r.shapes().question=ct,r.shapes().hexagon=dt,r.shapes().stadium=gt,r.shapes().subroutine=wt,r.shapes().cylinder=mt,r.shapes().rect_left_inv_arrow=ht,r.shapes().lean_right=ut,r.shapes().lean_left=ft,r.shapes().trapezoid=pt,r.shapes().inv_trapezoid=vt,r.shapes().rect_right_inv_arrow=yt}function ye(r){r({question:ct}),r({hexagon:dt}),r({stadium:gt}),r({subroutine:wt}),r({cylinder:mt}),r({rect_left_inv_arrow:ht}),r({lean_right:ut}),r({lean_left:ft}),r({trapezoid:pt}),r({inv_trapezoid:vt}),r({rect_right_inv_arrow:yt})}function A(r,e,t,n){return r.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("transform","translate("+-e/2+","+t/2+")")}const ge={addToRender:ve,addToRenderV2:ye},xt={},we=function(r){const e=Object.keys(r);for(const t of e)xt[t]=r[t]},bt=function(r,e,t,n,a,s){const i=n?n.select(`[id="${t}"]`):x(`[id="${t}"]`),o=a||document;Object.keys(r).forEach(function(d){const l=r[d];let v="default";l.classes.length>0&&(v=l.classes.join(" "));const h=z(l.styles);let u=l.text!==void 0?l.text:l.id,p;if(et(J().flowchart.htmlLabels)){const y={label:u.replace(/fa[blrs]?:fa-[\w-]+/g,k=>``)};p=at(i,y).node(),p.parentNode.removeChild(p)}else{const y=o.createElementNS("http://www.w3.org/2000/svg","text");y.setAttribute("style",h.labelStyle.replace("color:","fill:"));const k=u.split(rt.lineBreakRegex);for(const I of k){const E=o.createElementNS("http://www.w3.org/2000/svg","tspan");E.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),E.setAttribute("dy","1em"),E.setAttribute("x","1"),E.textContent=I,y.appendChild(E)}p=y}let g=0,f="";switch(l.type){case"round":g=5,f="rect";break;case"square":f="rect";break;case"diamond":f="question";break;case"hexagon":f="hexagon";break;case"odd":f="rect_left_inv_arrow";break;case"lean_right":f="lean_right";break;case"lean_left":f="lean_left";break;case"trapezoid":f="trapezoid";break;case"inv_trapezoid":f="inv_trapezoid";break;case"odd_right":f="rect_left_inv_arrow";break;case"circle":f="circle";break;case"ellipse":f="ellipse";break;case"stadium":f="stadium";break;case"subroutine":f="subroutine";break;case"cylinder":f="cylinder";break;case"group":f="rect";break;default:f="rect"}R.warn("Adding node",l.id,l.domId),e.setNode(s.db.lookUpDomId(l.id),{labelType:"svg",labelStyle:h.labelStyle,shape:f,label:p,rx:g,ry:g,class:v,style:h.style,id:s.db.lookUpDomId(l.id)})})},kt=function(r,e,t){let n=0,a,s;if(r.defaultStyle!==void 0){const i=z(r.defaultStyle);a=i.style,s=i.labelStyle}r.forEach(function(i){n++;const o="L-"+i.start+"-"+i.end,c="LS-"+i.start,d="LE-"+i.end,l={};i.type==="arrow_open"?l.arrowhead="none":l.arrowhead="normal";let v="",h="";if(i.style!==void 0){const u=z(i.style);v=u.style,h=u.labelStyle}else switch(i.stroke){case"normal":v="fill:none",a!==void 0&&(v=a),s!==void 0&&(h=s);break;case"dotted":v="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":v=" stroke-width: 3.5px;fill:none";break}l.style=v,l.labelStyle=h,i.interpolate!==void 0?l.curve=V(i.interpolate,P):r.defaultInterpolate!==void 0?l.curve=V(r.defaultInterpolate,P):l.curve=V(xt.curve,P),i.text===void 0?i.style!==void 0&&(l.arrowheadStyle="fill: #333"):(l.arrowheadStyle="fill: #333",l.labelpos="c",et(J().flowchart.htmlLabels)?(l.labelType="html",l.label=`${i.text.replace(/fa[blrs]?:fa-[\w-]+/g,u=>``)}`):(l.labelType="text",l.label=i.text.replace(rt.lineBreakRegex,` `),i.style===void 0&&(l.style=l.style||"stroke: #333; stroke-width: 1.5px;fill:none"),l.labelStyle=l.labelStyle.replace("color:","fill:"))),l.id=o,l.class=c+" "+d,l.minlen=i.length||1,e.setEdge(t.db.lookUpDomId(i.start),t.db.lookUpDomId(i.end),l,n)})},me=function(r,e){return R.info("Extracting classes"),e.db.getClasses()},xe=function(r,e,t,n){R.info("Drawing flowchart");const{securityLevel:a,flowchart:s}=J();let i;a==="sandbox"&&(i=x("#i"+e));const o=a==="sandbox"?x(i.nodes()[0].contentDocument.body):x("body"),c=a==="sandbox"?i.nodes()[0].contentDocument:document;let d=n.db.getDirection();d===void 0&&(d="TD");const l=s.nodeSpacing||50,v=s.rankSpacing||50,h=new Nt({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:l,ranksep:v,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let u;const p=n.db.getSubGraphs();for(let w=p.length-1;w>=0;w--)u=p[w],n.db.addVertex(u.id,u.title,"group",void 0,u.classes);const g=n.db.getVertices();R.warn("Get vertices",g);const f=n.db.getEdges();let y=0;for(y=p.length-1;y>=0;y--){u=p[y],Bt("cluster").append("text");for(let w=0;w{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,be.setConf(r.flowchart),W.clear(),W.setGen("gen-1")}};export{De as diagram}; diff --git a/_nuxt/flowDiagram-v2-2f8f667a.ExBBvo5t.js b/_nuxt/flowDiagram-v2-2f8f667a.ExBBvo5t.js new file mode 100644 index 0000000000..c315fcae2e --- /dev/null +++ b/_nuxt/flowDiagram-v2-2f8f667a.ExBBvo5t.js @@ -0,0 +1 @@ +import{p as e,f as o}from"./flowDb-170db09d.zcb_9fvH.js";import{f as t,g as a}from"./styles-b966c4ae.XG1tK9wD.js";import{ar as s}from"./mermaid-934d9bea.JP-6_YN_.js";import"./layout.v3y_H6P2.js";import"./index-67a42d7d.k58ohfnG.js";import"./edges-80f1ebb6.gtortKGL.js";import"./createText-aebacdfe.QPUQ3eAz.js";import"./line.uArpYtMu.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";const A={parser:e,db:o,renderer:t,styles:a,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,s({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),t.setConf(r.flowchart),o.clear(),o.setGen("gen-2")}};export{A as diagram}; diff --git a/_nuxt/flowDiagram-v2-2f8f667a.ToNiPqRe.js b/_nuxt/flowDiagram-v2-2f8f667a.ToNiPqRe.js deleted file mode 100644 index 913fd1f479..0000000000 --- a/_nuxt/flowDiagram-v2-2f8f667a.ToNiPqRe.js +++ /dev/null @@ -1 +0,0 @@ -import{p as e,f as o}from"./flowDb-170db09d.Pq8ih4By.js";import{f as t,g as a}from"./styles-b966c4ae.IjxwHMVL.js";import{ar as s}from"./mermaid-934d9bea.GjCu814R.js";import"./layout.cBG5TzxH.js";import"./index-67a42d7d.xm4RvesR.js";import"./edges-80f1ebb6.h90W1bSR.js";import"./createText-aebacdfe.b7sMoTCr.js";import"./line.yVnlcbB_.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";const A={parser:e,db:o,renderer:t,styles:a,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,s({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),t.setConf(r.flowchart),o.clear(),o.setGen("gen-2")}};export{A as diagram}; diff --git a/_nuxt/flowchart-elk-definition-e097735e.HZ7cBKko.js b/_nuxt/flowchart-elk-definition-e097735e.Fftys7wX.js similarity index 99% rename from _nuxt/flowchart-elk-definition-e097735e.HZ7cBKko.js rename to _nuxt/flowchart-elk-definition-e097735e.Fftys7wX.js index cae1ecd20e..d8564c2305 100644 --- a/_nuxt/flowchart-elk-definition-e097735e.HZ7cBKko.js +++ b/_nuxt/flowchart-elk-definition-e097735e.Fftys7wX.js @@ -1,4 +1,4 @@ -import{d as bMe,p as wMe}from"./flowDb-170db09d.Pq8ih4By.js";import{l as K1,h as lI,a_ as OH,u as gMe,q as V1n,t as X1n,p as IH,j as pMe}from"./mermaid-934d9bea.GjCu814R.js";import{i as vMe,a as mMe,l as kMe,b as yMe,j as jMe}from"./edges-80f1ebb6.h90W1bSR.js";import{c as Hee,g as EMe}from"./_commonjsHelpers.5-cIlDoe.js";import{l as CMe}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./createText-aebacdfe.b7sMoTCr.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";function PH(Ae){throw new Error('Could not dynamically require "'+Ae+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Uee={exports:{}};(function(Ae,At){(function(ft){Ae.exports=ft()})(function(){return function(){function ft(dt,Vt,Et){function y(Bt,qt){if(!Vt[Bt]){if(!dt[Bt]){var Ge=typeof PH=="function"&&PH;if(!qt&&Ge)return Ge(Bt,!0);if(Ht)return Ht(Bt,!0);var Ki=new Error("Cannot find module '"+Bt+"'");throw Ki.code="MODULE_NOT_FOUND",Ki}var Ii=Vt[Bt]={exports:{}};dt[Bt][0].call(Ii.exports,function(An){var Uc=dt[Bt][1][An];return y(Uc||An)},Ii,Ii.exports,ft,dt,Vt,Et)}return Vt[Bt].exports}for(var Ht=typeof PH=="function"&&PH,Lc=0;Lc0&&arguments[0]!==void 0?arguments[0]:{},Ki=Ge.defaultLayoutOptions,Ii=Ki===void 0?{}:Ki,An=Ge.algorithms,Uc=An===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:An,Nc=Ge.workerFactory,ju=Ge.workerUrl;if(y(this,Bt),this.defaultLayoutOptions=Ii,this.initialized=!1,typeof ju>"u"&&typeof Nc>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var vr=Nc;typeof ju<"u"&&typeof Nc>"u"&&(vr=function(q1){return new Worker(q1)});var Jo=vr(ju);if(typeof Jo.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new Lc(Jo),this.worker.postMessage({cmd:"register",algorithms:Uc}).then(function(H1){return qt.initialized=!0}).catch(console.err)}return Et(Bt,[{key:"layout",value:function(Ge){var Ki=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Ii=Ki.layoutOptions,An=Ii===void 0?this.defaultLayoutOptions:Ii,Uc=Ki.logging,Nc=Uc===void 0?!1:Uc,ju=Ki.measureExecutionTime,vr=ju===void 0?!1:ju;return Ge?this.worker.postMessage({cmd:"layout",graph:Ge,layoutOptions:An,options:{logging:Nc,measureExecutionTime:vr}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),Bt}();Vt.default=Ht;var Lc=function(){function Bt(qt){var Ge=this;if(y(this,Bt),qt===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=qt,this.worker.onmessage=function(Ki){setTimeout(function(){Ge.receive(Ge,Ki)},0)}}return Et(Bt,[{key:"postMessage",value:function(Ge){var Ki=this.id||0;this.id=Ki+1,Ge.id=Ki;var Ii=this;return new Promise(function(An,Uc){Ii.resolvers[Ki]=function(Nc,ju){Nc?(Ii.convertGwtStyleError(Nc),Uc(Nc)):An(ju)},Ii.worker.postMessage(Ge)})}},{key:"receive",value:function(Ge,Ki){var Ii=Ki.data,An=Ge.resolvers[Ii.id];An&&(delete Ge.resolvers[Ii.id],Ii.error?An(Ii.error):An(null,Ii.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(Ge){if(Ge){var Ki=Ge.__java$exception;Ki&&(Ki.cause&&Ki.cause.backingJsObject&&(Ge.cause=Ki.cause.backingJsObject,this.convertGwtStyleError(Ge.cause)),delete Ge.__java$exception)}}}]),Bt}()},{}],2:[function(ft,dt,Vt){(function(Et){(function(){var y;typeof window<"u"?y=window:typeof Et<"u"?y=Et:typeof self<"u"&&(y=self);var Ht;function Lc(){}function Bt(){}function qt(){}function Ge(){}function Ki(){}function Ii(){}function An(){}function Uc(){}function Nc(){}function ju(){}function vr(){}function Jo(){}function H1(){}function q1(){}function ww(){}function Np(){}function G1(){}function Th(){}function Q1n(){}function J1n(){}function zy(){}function Y1n(){}function Z1n(){}function nln(){}function eln(){}function Xg(){}function N(){}function tln(){}function aI(){}function iln(){}function rln(){}function cln(){}function uln(){}function DH(){}function sln(){}function oln(){}function fln(){}function z1(){}function U1(){}function dI(){}function hln(){}function lln(){}function aln(){}function $H(){}function dln(){}function bln(){}function Vg(){}function Qg(){}function wln(){}function gln(){}function pln(){}function vln(){}function FH(){}function W1(){}function Jg(){}function Yg(){}function mln(){}function Vee(){}function bI(){}function kln(){}function yln(){}function jln(){}function Eln(){}function Cln(){}function Tln(){}function Mln(){}function Aln(){}function Sln(){}function Pln(){}function Iln(){}function Oln(){}function Dln(){}function $ln(){}function Fln(){}function xln(){}function Lln(){}function Nln(){}function Bln(){}function Rln(){}function _ln(){}function Kln(){}function Hln(){}function qln(){}function Gln(){}function zln(){}function Uln(){}function Wln(){}function Xln(){}function Vln(){}function Qln(){}function Jln(){}function Yln(){}function xH(){}function Zln(){}function nan(){}function ean(){}function tan(){}function wI(){}function gI(){}function Uy(){}function ian(){}function ran(){}function pI(){}function can(){}function uan(){}function san(){}function Wy(){}function oan(){}function fan(){}function han(){}function lan(){}function aan(){}function dan(){}function ban(){}function wan(){}function gan(){}function LH(){}function pan(){}function van(){}function man(){}function kan(){}function yan(){}function NH(){}function jan(){}function Ean(){}function Can(){}function Tan(){}function Man(){}function Aan(){}function San(){}function Pan(){}function Ian(){}function Oan(){}function Dan(){}function $an(){}function Fan(){}function xan(){}function vI(){}function Lan(){}function Nan(){}function Ban(){}function Ran(){}function _an(){}function BH(){}function Kan(){}function Han(){}function qan(){}function Gan(){}function zan(){}function Uan(){}function Wan(){}function Xan(){}function Van(){}function Qan(){}function Jan(){}function Yan(){}function Zan(){}function ndn(){}function edn(){}function tdn(){}function idn(){}function rdn(){}function cdn(){}function udn(){}function sdn(){}function odn(){}function fdn(){}function hdn(){}function ldn(){}function adn(){}function ddn(){}function bdn(){}function wdn(){}function gdn(){}function pdn(){}function vdn(){}function mdn(){}function kdn(){}function ydn(){}function jdn(){}function Edn(){}function Cdn(){}function Tdn(){}function Mdn(){}function Adn(){}function Sdn(){}function Pdn(){}function Idn(){}function Odn(){}function Ddn(){}function $dn(){}function Fdn(){}function xdn(){}function Ldn(){}function Ndn(){}function Bdn(){}function Rdn(){}function _dn(){}function Kdn(){}function Hdn(){}function qdn(){}function Gdn(){}function zdn(){}function Udn(){}function Wdn(){}function Xdn(){}function Vdn(){}function Qdn(){}function Jdn(){}function Ydn(){}function Zdn(){}function n0n(){}function e0n(){}function t0n(){}function i0n(){}function r0n(){}function c0n(){}function u0n(){}function s0n(){}function o0n(){}function f0n(){}function h0n(){}function l0n(){}function a0n(){}function d0n(){}function b0n(){}function w0n(){}function g0n(){}function p0n(){}function v0n(){}function m0n(){}function k0n(){}function y0n(){}function j0n(){}function E0n(){}function C0n(){}function T0n(){}function M0n(){}function A0n(){}function S0n(){}function P0n(){}function I0n(){}function O0n(){}function D0n(){}function RH(){}function $0n(){}function F0n(){}function x0n(){}function L0n(){}function N0n(){}function B0n(){}function R0n(){}function _0n(){}function K0n(){}function H0n(){}function q0n(){}function G0n(){}function z0n(){}function U0n(){}function W0n(){}function X0n(){}function V0n(){}function Q0n(){}function J0n(){}function Y0n(){}function Z0n(){}function nbn(){}function ebn(){}function tbn(){}function ibn(){}function rbn(){}function cbn(){}function ubn(){}function sbn(){}function obn(){}function fbn(){}function hbn(){}function lbn(){}function abn(){}function dbn(){}function bbn(){}function wbn(){}function gbn(){}function pbn(){}function vbn(){}function mbn(){}function kbn(){}function ybn(){}function jbn(){}function Ebn(){}function Cbn(){}function Tbn(){}function Mbn(){}function Abn(){}function Sbn(){}function Pbn(){}function Ibn(){}function Obn(){}function Dbn(){}function $bn(){}function Fbn(){}function xbn(){}function Lbn(){}function Nbn(){}function Bbn(){}function Rbn(){}function _bn(){}function Kbn(){}function Hbn(){}function qbn(){}function Gbn(){}function zbn(){}function _H(){}function Ubn(){}function Wbn(){}function Xbn(){}function Vbn(){}function Qbn(){}function Jbn(){}function Ybn(){}function Zbn(){}function nwn(){}function ewn(){}function twn(){}function iwn(){}function rwn(){}function cwn(){}function uwn(){}function swn(){}function own(){}function fwn(){}function hwn(){}function lwn(){}function KH(){}function awn(){}function dwn(){}function bwn(){}function wwn(){}function gwn(){}function pwn(){}function HH(){}function qH(){}function vwn(){}function GH(){}function zH(){}function mwn(){}function kwn(){}function ywn(){}function jwn(){}function Ewn(){}function Cwn(){}function Twn(){}function Mwn(){}function Awn(){}function UH(){}function Swn(){}function Pwn(){}function Iwn(){}function Own(){}function Dwn(){}function $wn(){}function Fwn(){}function xwn(){}function Lwn(){}function Nwn(){}function Bwn(){}function Rwn(){}function _wn(){}function Kwn(){}function Hwn(){}function qwn(){}function Gwn(){}function zwn(){}function Uwn(){}function Wwn(){}function Xwn(){}function Vwn(){}function Qwn(){}function Jwn(){}function Ywn(){}function Zwn(){}function ngn(){}function egn(){}function tgn(){}function ign(){}function rgn(){}function cgn(){}function ugn(){}function sgn(){}function ogn(){}function fgn(){}function hgn(){}function lgn(){}function agn(){}function dgn(){}function bgn(){}function wgn(){}function ggn(){}function pgn(){}function vgn(){}function mgn(){}function kgn(){}function ygn(){}function jgn(){}function Egn(){}function Cgn(){}function Tgn(){}function Mgn(){}function Agn(){}function Sgn(){}function Pgn(){}function Ign(){}function Ogn(){}function Dgn(){}function $gn(){}function Fgn(){}function xgn(){}function Lgn(){}function Ngn(){}function Bgn(){}function Rgn(){}function _gn(){}function Kgn(){}function mI(){}function kI(){}function yI(){}function Hgn(){}function qgn(){}function Ggn(){}function zgn(){}function Ugn(){}function WH(){}function Wgn(){}function Xgn(){}function Qee(){}function Vgn(){}function Qgn(){}function Jgn(){}function Ygn(){}function Zgn(){}function n2n(){}function e2n(){}function Zl(){}function t2n(){}function Zg(){}function XH(){}function i2n(){}function r2n(){}function c2n(){}function u2n(){}function s2n(){}function o2n(){}function f2n(){}function h2n(){}function l2n(){}function a2n(){}function d2n(){}function b2n(){}function w2n(){}function g2n(){}function p2n(){}function v2n(){}function m2n(){}function k2n(){}function y2n(){}function j2n(){}function E2n(){}function dn(){}function C2n(){}function T2n(){}function M2n(){}function A2n(){}function S2n(){}function P2n(){}function I2n(){}function O2n(){}function D2n(){}function $2n(){}function jI(){}function F2n(){}function x2n(){}function L2n(){}function N2n(){}function B2n(){}function VH(){}function Xy(){}function Vy(){}function R2n(){}function QH(){}function Qy(){}function _2n(){}function K2n(){}function H2n(){}function q2n(){}function G2n(){}function z2n(){}function Jy(){}function U2n(){}function W2n(){}function X2n(){}function Yy(){}function V2n(){}function JH(){}function Q2n(){}function EI(){}function YH(){}function J2n(){}function Y2n(){}function Z2n(){}function npn(){}function Jee(){}function epn(){}function tpn(){}function ipn(){}function rpn(){}function cpn(){}function upn(){}function spn(){}function opn(){}function fpn(){}function hpn(){}function Bp(){}function CI(){}function lpn(){}function apn(){}function dpn(){}function bpn(){}function wpn(){}function gpn(){}function ppn(){}function vpn(){}function mpn(){}function kpn(){}function ypn(){}function jpn(){}function Epn(){}function Cpn(){}function Tpn(){}function Mpn(){}function Apn(){}function Spn(){}function Ppn(){}function Ipn(){}function Opn(){}function Dpn(){}function $pn(){}function Fpn(){}function xpn(){}function Lpn(){}function Npn(){}function Bpn(){}function Rpn(){}function _pn(){}function Kpn(){}function Hpn(){}function qpn(){}function Gpn(){}function zpn(){}function Upn(){}function Wpn(){}function Xpn(){}function Vpn(){}function Qpn(){}function Jpn(){}function Ypn(){}function Zpn(){}function n3n(){}function e3n(){}function t3n(){}function i3n(){}function r3n(){}function c3n(){}function u3n(){}function s3n(){}function o3n(){}function f3n(){}function h3n(){}function l3n(){}function a3n(){}function d3n(){}function b3n(){}function w3n(){}function g3n(){}function p3n(){}function v3n(){}function m3n(){}function k3n(){}function y3n(){}function j3n(){}function E3n(){}function C3n(){}function T3n(){}function M3n(){}function A3n(){}function S3n(){}function P3n(){}function I3n(){}function O3n(){}function D3n(){}function $3n(){}function F3n(){}function x3n(){}function L3n(){}function N3n(){}function B3n(){}function R3n(){}function _3n(){}function K3n(){}function H3n(){}function q3n(){}function G3n(){}function z3n(){}function U3n(){}function W3n(){}function X3n(){}function V3n(){}function Q3n(){}function J3n(){}function Y3n(){}function Z3n(){}function n4n(){}function e4n(){}function t4n(){}function i4n(){}function ZH(){}function r4n(){}function c4n(){}function TI(){Rv()}function u4n(){pF()}function s4n(){a6()}function o4n(){WT()}function f4n(){YJ()}function h4n(){Go()}function l4n(){fJ()}function a4n(){C7()}function d4n(){q9()}function b4n(){H9()}function w4n(){w8()}function g4n(){v7n()}function p4n(){x2()}function v4n(){Sj()}function m4n(){PSn()}function k4n(){HIn()}function y4n(){sPn()}function j4n(){CMn()}function E4n(){V3()}function C4n(){yl()}function T4n(){qIn()}function M4n(){pAn()}function A4n(){zZ()}function S4n(){IFn()}function P4n(){TMn()}function I4n(){nn()}function O4n(){EMn()}function D4n(){GIn()}function $4n(){WOn()}function F4n(){AMn()}function x4n(){aPn()}function L4n(){m7n()}function N4n(){$Y()}function B4n(){gb()}function R4n(){pOn()}function _4n(){S7()}function K4n(){Ux()}function H4n(){ZF()}function q4n(){Zd()}function G4n(){PV()}function z4n(){MMn()}function U4n(){BBn()}function W4n(){IY()}function X4n(){Bx()}function V4n(){DC()}function Q4n(){nM()}function nq(){Xe()}function J4n(){wT()}function Y4n(){NQ()}function eq(){mM()}function Fo(){dEn()}function tq(){eF()}function Z4n(){pZ()}function iq(n){_n(n)}function nvn(n){this.a=n}function Zy(n){this.a=n}function evn(n){this.a=n}function tvn(n){this.a=n}function ivn(n){this.a=n}function rvn(n){this.a=n}function cvn(n){this.a=n}function uvn(n){this.a=n}function rq(n){this.a=n}function cq(n){this.a=n}function svn(n){this.a=n}function MI(n){this.a=n}function ovn(n){this.a=n}function AI(n){this.a=n}function fvn(n){this.a=n}function SI(n){this.a=n}function hvn(n){this.a=n}function PI(n){this.a=n}function lvn(n){this.a=n}function avn(n){this.a=n}function dvn(n){this.a=n}function uq(n){this.b=n}function bvn(n){this.c=n}function wvn(n){this.a=n}function gvn(n){this.a=n}function pvn(n){this.a=n}function vvn(n){this.a=n}function mvn(n){this.a=n}function kvn(n){this.a=n}function yvn(n){this.a=n}function jvn(n){this.a=n}function Evn(n){this.a=n}function Cvn(n){this.a=n}function Tvn(n){this.a=n}function Mvn(n){this.a=n}function Avn(n){this.a=n}function sq(n){this.a=n}function oq(n){this.a=n}function nj(n){this.a=n}function M9(n){this.a=n}function na(){this.a=[]}function Svn(n,e){n.a=e}function Yee(n,e){n.a=e}function Zee(n,e){n.b=e}function nte(n,e){n.b=e}function ete(n,e){n.b=e}function fq(n,e){n.j=e}function tte(n,e){n.g=e}function ite(n,e){n.i=e}function rte(n,e){n.c=e}function cte(n,e){n.d=e}function ute(n,e){n.d=e}function ste(n,e){n.c=e}function ea(n,e){n.k=e}function ote(n,e){n.c=e}function hq(n,e){n.c=e}function lq(n,e){n.a=e}function fte(n,e){n.a=e}function hte(n,e){n.f=e}function lte(n,e){n.a=e}function ate(n,e){n.b=e}function II(n,e){n.d=e}function ej(n,e){n.i=e}function aq(n,e){n.o=e}function dte(n,e){n.r=e}function bte(n,e){n.a=e}function wte(n,e){n.b=e}function Pvn(n,e){n.e=e}function gte(n,e){n.f=e}function dq(n,e){n.g=e}function pte(n,e){n.e=e}function vte(n,e){n.f=e}function mte(n,e){n.f=e}function kte(n,e){n.n=e}function yte(n,e){n.a=e}function jte(n,e){n.a=e}function Ete(n,e){n.c=e}function Cte(n,e){n.c=e}function Tte(n,e){n.d=e}function Mte(n,e){n.e=e}function Ate(n,e){n.g=e}function Ste(n,e){n.a=e}function Pte(n,e){n.c=e}function Ite(n,e){n.d=e}function Ote(n,e){n.e=e}function Dte(n,e){n.f=e}function $te(n,e){n.j=e}function Fte(n,e){n.a=e}function xte(n,e){n.b=e}function Lte(n,e){n.a=e}function Ivn(n){n.b=n.a}function Ovn(n){n.c=n.d.d}function $v(n){this.d=n}function ta(n){this.a=n}function Rp(n){this.a=n}function bq(n){this.a=n}function Mh(n){this.a=n}function A9(n){this.a=n}function Dvn(n){this.a=n}function wq(n){this.a=n}function S9(n){this.a=n}function gq(n){this.a=n}function pq(n){this.a=n}function vq(n){this.a=n}function L0(n){this.a=n}function P9(n){this.a=n}function I9(n){this.a=n}function mq(n){this.b=n}function _p(n){this.b=n}function Kp(n){this.b=n}function OI(n){this.a=n}function $vn(n){this.a=n}function kq(n){this.a=n}function DI(n){this.c=n}function E(n){this.c=n}function Fvn(n){this.c=n}function yq(n){this.a=n}function jq(n){this.a=n}function Eq(n){this.a=n}function Cq(n){this.a=n}function ut(n){this.a=n}function xvn(n){this.a=n}function Tq(n){this.a=n}function Mq(n){this.a=n}function Lvn(n){this.a=n}function Nvn(n){this.a=n}function Fv(n){this.a=n}function Bvn(n){this.a=n}function Rvn(n){this.a=n}function _vn(n){this.a=n}function Kvn(n){this.a=n}function Hvn(n){this.a=n}function qvn(n){this.a=n}function Gvn(n){this.a=n}function zvn(n){this.a=n}function Uvn(n){this.a=n}function Wvn(n){this.a=n}function Xvn(n){this.a=n}function Vvn(n){this.a=n}function Qvn(n){this.a=n}function Jvn(n){this.a=n}function Yvn(n){this.a=n}function Zvn(n){this.a=n}function n5n(n){this.a=n}function O9(n){this.a=n}function e5n(n){this.a=n}function t5n(n){this.a=n}function tj(n){this.a=n}function i5n(n){this.a=n}function r5n(n){this.a=n}function Hp(n){this.a=n}function Aq(n){this.a=n}function c5n(n){this.a=n}function u5n(n){this.a=n}function s5n(n){this.a=n}function o5n(n){this.a=n}function f5n(n){this.a=n}function Sq(n){this.a=n}function Pq(n){this.a=n}function Iq(n){this.a=n}function ij(n){this.a=n}function rj(n){this.e=n}function qp(n){this.a=n}function h5n(n){this.a=n}function n2(n){this.a=n}function Oq(n){this.a=n}function l5n(n){this.a=n}function a5n(n){this.a=n}function d5n(n){this.a=n}function b5n(n){this.a=n}function w5n(n){this.a=n}function g5n(n){this.a=n}function p5n(n){this.a=n}function v5n(n){this.a=n}function m5n(n){this.a=n}function k5n(n){this.a=n}function y5n(n){this.a=n}function Dq(n){this.a=n}function j5n(n){this.a=n}function E5n(n){this.a=n}function C5n(n){this.a=n}function T5n(n){this.a=n}function M5n(n){this.a=n}function A5n(n){this.a=n}function S5n(n){this.a=n}function P5n(n){this.a=n}function I5n(n){this.a=n}function O5n(n){this.a=n}function D5n(n){this.a=n}function $5n(n){this.a=n}function F5n(n){this.a=n}function x5n(n){this.a=n}function L5n(n){this.a=n}function N5n(n){this.a=n}function B5n(n){this.a=n}function R5n(n){this.a=n}function _5n(n){this.a=n}function K5n(n){this.a=n}function H5n(n){this.a=n}function q5n(n){this.a=n}function G5n(n){this.a=n}function z5n(n){this.a=n}function U5n(n){this.a=n}function W5n(n){this.a=n}function X5n(n){this.a=n}function V5n(n){this.a=n}function Q5n(n){this.a=n}function J5n(n){this.a=n}function Y5n(n){this.a=n}function Z5n(n){this.a=n}function n6n(n){this.a=n}function e6n(n){this.a=n}function t6n(n){this.a=n}function i6n(n){this.a=n}function r6n(n){this.a=n}function c6n(n){this.c=n}function u6n(n){this.b=n}function s6n(n){this.a=n}function o6n(n){this.a=n}function f6n(n){this.a=n}function h6n(n){this.a=n}function l6n(n){this.a=n}function a6n(n){this.a=n}function d6n(n){this.a=n}function b6n(n){this.a=n}function w6n(n){this.a=n}function g6n(n){this.a=n}function p6n(n){this.a=n}function v6n(n){this.a=n}function m6n(n){this.a=n}function k6n(n){this.a=n}function y6n(n){this.a=n}function j6n(n){this.a=n}function E6n(n){this.a=n}function C6n(n){this.a=n}function T6n(n){this.a=n}function M6n(n){this.a=n}function A6n(n){this.a=n}function S6n(n){this.a=n}function P6n(n){this.a=n}function I6n(n){this.a=n}function X1(n){this.a=n}function e2(n){this.a=n}function O6n(n){this.a=n}function D6n(n){this.a=n}function $6n(n){this.a=n}function F6n(n){this.a=n}function x6n(n){this.a=n}function L6n(n){this.a=n}function N6n(n){this.a=n}function B6n(n){this.a=n}function R6n(n){this.a=n}function _6n(n){this.a=n}function K6n(n){this.a=n}function H6n(n){this.a=n}function q6n(n){this.a=n}function G6n(n){this.a=n}function z6n(n){this.a=n}function U6n(n){this.a=n}function cj(n){this.a=n}function W6n(n){this.a=n}function X6n(n){this.a=n}function V6n(n){this.a=n}function Q6n(n){this.a=n}function J6n(n){this.a=n}function Y6n(n){this.a=n}function Z6n(n){this.a=n}function nmn(n){this.a=n}function emn(n){this.a=n}function tmn(n){this.a=n}function imn(n){this.a=n}function rmn(n){this.a=n}function cmn(n){this.a=n}function umn(n){this.a=n}function smn(n){this.a=n}function omn(n){this.a=n}function fmn(n){this.a=n}function hmn(n){this.a=n}function lmn(n){this.a=n}function amn(n){this.a=n}function dmn(n){this.a=n}function bmn(n){this.a=n}function wmn(n){this.a=n}function gmn(n){this.a=n}function pmn(n){this.a=n}function vmn(n){this.a=n}function mmn(n){this.a=n}function kmn(n){this.a=n}function $q(n){this.a=n}function kt(n){this.b=n}function ymn(n){this.f=n}function Fq(n){this.a=n}function jmn(n){this.a=n}function Emn(n){this.a=n}function Cmn(n){this.a=n}function Tmn(n){this.a=n}function Mmn(n){this.a=n}function Amn(n){this.a=n}function Smn(n){this.a=n}function Pmn(n){this.a=n}function D9(n){this.a=n}function Imn(n){this.a=n}function Omn(n){this.b=n}function xq(n){this.c=n}function uj(n){this.e=n}function Dmn(n){this.a=n}function sj(n){this.a=n}function oj(n){this.a=n}function $I(n){this.a=n}function $mn(n){this.a=n}function Fmn(n){this.d=n}function Lq(n){this.a=n}function Nq(n){this.a=n}function cd(n){this.e=n}function Nte(){this.a=0}function gw(){dyn(this)}function X(){RO(this)}function we(){Cu(this)}function FI(){pTn(this)}function xmn(){}function ud(){this.c=p1n}function Bte(n,e){e.Wb(n)}function Lmn(n,e){n.b+=e}function Nmn(n){n.b=new JI}function T(n){return n.e}function Rte(n){return n.a}function _te(n){return n.a}function Kte(n){return n.a}function Hte(n){return n.a}function qte(n){return n.a}function Gte(){return null}function zte(){return null}function Ute(){EG(),iTe()}function Wte(n){n.b.tf(n.e)}function xv(n,e){n.b=e-n.b}function Lv(n,e){n.a=e-n.a}function Bmn(n,e){e.ad(n.a)}function Xte(n,e){si(e,n)}function Vte(n,e,t){n.Od(t,e)}function $9(n,e){n.e=e,e.b=n}function Bq(n){$f(),this.a=n}function Rmn(n){$f(),this.a=n}function _mn(n){$f(),this.a=n}function Rq(n){nb(),this.a=n}function Kmn(n){k3(),aR.be(n)}function ia(){Qyn.call(this)}function _q(){Qyn.call(this)}function Kq(){ia.call(this)}function xI(){ia.call(this)}function Hmn(){ia.call(this)}function F9(){ia.call(this)}function fu(){ia.call(this)}function Nv(){ia.call(this)}function ye(){ia.call(this)}function vs(){ia.call(this)}function qmn(){ia.call(this)}function ic(){ia.call(this)}function Gmn(){ia.call(this)}function zmn(){this.a=this}function fj(){this.Bb|=256}function Umn(){this.b=new Xkn}function Hq(){Hq=N,new we}function qq(){Kq.call(this)}function Wmn(n,e){n.length=e}function hj(n,e){W(n.a,e)}function Qte(n,e){nY(n.c,e)}function Jte(n,e){ci(n.b,e)}function Yte(n,e){KT(n.a,e)}function Zte(n,e){MF(n.a,e)}function Gp(n,e){et(n.e,e)}function t2(n){iM(n.c,n.b)}function nie(n,e){n.kc().Nb(e)}function Gq(n){this.a=Yge(n)}function hi(){this.a=new we}function Xmn(){this.a=new we}function lj(){this.a=new X}function LI(){this.a=new X}function zq(){this.a=new X}function Ns(){this.a=new Oln}function ra(){this.a=new TSn}function Uq(){this.a=new LH}function Wq(){this.a=new h7n}function Vmn(){this.a=new YMn}function Xq(){this.a=new bMn}function Vq(){this.a=new Bjn}function Qmn(){this.a=new X}function Qq(){this.a=new X}function Jmn(){this.a=new X}function Ymn(){this.a=new X}function Zmn(){this.d=new X}function n9n(){this.a=new hi}function e9n(){this.a=new we}function t9n(){this.b=new we}function i9n(){this.b=new X}function Jq(){this.e=new X}function r9n(){this.d=new X}function c9n(){this.a=new C4n}function u9n(){X.call(this)}function Yq(){lj.call(this)}function s9n(){kE.call(this)}function o9n(){Qq.call(this)}function NI(){Bv.call(this)}function Bv(){xmn.call(this)}function i2(){xmn.call(this)}function Zq(){i2.call(this)}function f9n(){zTn.call(this)}function h9n(){zTn.call(this)}function l9n(){uG.call(this)}function a9n(){uG.call(this)}function d9n(){uG.call(this)}function b9n(){sG.call(this)}function hu(){Tt.call(this)}function nG(){B2n.call(this)}function eG(){B2n.call(this)}function w9n(){O9n.call(this)}function g9n(){O9n.call(this)}function p9n(){we.call(this)}function v9n(){we.call(this)}function m9n(){we.call(this)}function k9n(){hi.call(this)}function BI(){RIn.call(this)}function y9n(){fj.call(this)}function RI(){Oz.call(this)}function _I(){Oz.call(this)}function tG(){we.call(this)}function KI(){we.call(this)}function j9n(){we.call(this)}function iG(){Yy.call(this)}function E9n(){Yy.call(this)}function C9n(){iG.call(this)}function T9n(){ZH.call(this)}function M9n(n){hIn.call(this,n)}function A9n(n){hIn.call(this,n)}function rG(n){rq.call(this,n)}function cG(n){n7n.call(this,n)}function eie(n){cG.call(this,n)}function tie(n){n7n.call(this,n)}function zp(){this.a=new Tt}function uG(){this.a=new hi}function sG(){this.a=new we}function S9n(){this.a=new X}function P9n(){this.j=new X}function oG(){this.a=new Rgn}function I9n(){this.a=new T8n}function O9n(){this.a=new X2n}function HI(){HI=N,uR=new V9n}function qI(){qI=N,cR=new X9n}function Rv(){Rv=N,rR=new Bt}function aj(){aj=N,fR=new Xyn}function iie(n){cG.call(this,n)}function rie(n){cG.call(this,n)}function D9n(n){m$.call(this,n)}function $9n(n){m$.call(this,n)}function F9n(n){uEn.call(this,n)}function GI(n){C5e.call(this,n)}function sd(n){_0.call(this,n)}function _v(n){Cj.call(this,n)}function fG(n){Cj.call(this,n)}function x9n(n){Cj.call(this,n)}function _r(n){kCn.call(this,n)}function L9n(n){_r.call(this,n)}function r2(){M9.call(this,{})}function dj(n){c3(),this.a=n}function Kv(n){n.b=null,n.c=0}function cie(n,e){n.e=e,NNn(n,e)}function uie(n,e){n.a=e,h6e(n)}function zI(n,e,t){n.a[e.g]=t}function sie(n,e,t){M4e(t,n,e)}function oie(n,e){$ue(e.i,n.n)}function N9n(n,e){Fwe(n).td(e)}function fie(n,e){return n*n/e}function B9n(n,e){return n.g-e.g}function hie(n){return new nj(n)}function lie(n){return new Z0(n)}function bj(n){_r.call(this,n)}function mr(n){_r.call(this,n)}function R9n(n){_r.call(this,n)}function UI(n){kCn.call(this,n)}function WI(n){AV(),this.a=n}function _9n(n){aEn(),this.a=n}function N0(n){ED(),this.f=n}function XI(n){ED(),this.f=n}function Up(n){_r.call(this,n)}function Hn(n){_r.call(this,n)}function $r(n){_r.call(this,n)}function K9n(n){_r.call(this,n)}function c2(n){_r.call(this,n)}function on(n){return _n(n),n}function K(n){return _n(n),n}function x9(n){return _n(n),n}function hG(n){return _n(n),n}function aie(n){return _n(n),n}function Hv(n){return n.b==n.c}function B0(n){return!!n&&n.b}function die(n){return!!n&&n.k}function bie(n){return!!n&&n.j}function Hu(n){_n(n),this.a=n}function lG(n){return ja(n),n}function qv(n){EW(n,n.length)}function t1(n){_r.call(this,n)}function Sf(n){_r.call(this,n)}function VI(n){_r.call(this,n)}function pw(n){_r.call(this,n)}function Gv(n){_r.call(this,n)}function Ee(n){_r.call(this,n)}function QI(n){Vz.call(this,n,0)}function JI(){iX.call(this,12,3)}function aG(){aG=N,din=new Q1n}function H9n(){H9n=N,ain=new Lc}function wj(){wj=N,dm=new H1}function q9n(){q9n=N,vzn=new ww}function G9n(){throw T(new ye)}function dG(){throw T(new ye)}function z9n(){throw T(new ye)}function wie(){throw T(new ye)}function gie(){throw T(new ye)}function pie(){throw T(new ye)}function YI(){this.a=Ce(pe(Ji))}function u2(n){$f(),this.a=pe(n)}function U9n(n,e){n.Td(e),e.Sd(n)}function vie(n,e){n.a.ec().Mc(e)}function mie(n,e,t){n.c.lf(e,t)}function bG(n){mr.call(this,n)}function Pf(n){Hn.call(this,n)}function i1(){A9.call(this,"")}function zv(){A9.call(this,"")}function V1(){A9.call(this,"")}function R0(){A9.call(this,"")}function wG(n){mr.call(this,n)}function Wp(n){_p.call(this,n)}function ZI(n){lE.call(this,n)}function W9n(n){Wp.call(this,n)}function X9n(){AI.call(this,null)}function V9n(){AI.call(this,null)}function gj(){gj=N,k3()}function Q9n(){Q9n=N,Szn=Z4e()}function J9n(n){return n.a?n.b:0}function kie(n){return n.a?n.b:0}function yie(n,e){return n.a-e.a}function jie(n,e){return n.a-e.a}function Eie(n,e){return n.a-e.a}function pj(n,e){return WX(n,e)}function M(n,e){return pMn(n,e)}function Cie(n,e){return e in n.a}function Y9n(n,e){return n.f=e,n}function Tie(n,e){return n.b=e,n}function Z9n(n,e){return n.c=e,n}function Mie(n,e){return n.g=e,n}function gG(n,e){return n.a=e,n}function pG(n,e){return n.f=e,n}function Aie(n,e){return n.k=e,n}function vG(n,e){return n.a=e,n}function Sie(n,e){return n.e=e,n}function mG(n,e){return n.e=e,n}function Pie(n,e){return n.f=e,n}function Iie(n,e){n.b=!0,n.d=e}function Oie(n,e){n.b=new kr(e)}function Die(n,e,t){e.td(n.a[t])}function $ie(n,e,t){e.we(n.a[t])}function Fie(n,e){return n.b-e.b}function xie(n,e){return n.g-e.g}function Lie(n,e){return n.s-e.s}function Nie(n,e){return n?0:e-1}function n8n(n,e){return n?0:e-1}function Bie(n,e){return n?e-1:0}function Rie(n,e){return e.Yf(n)}function od(n,e){return n.b=e,n}function vj(n,e){return n.a=e,n}function fd(n,e){return n.c=e,n}function hd(n,e){return n.d=e,n}function ld(n,e){return n.e=e,n}function kG(n,e){return n.f=e,n}function Uv(n,e){return n.a=e,n}function Xp(n,e){return n.b=e,n}function Vp(n,e){return n.c=e,n}function gn(n,e){return n.c=e,n}function Dn(n,e){return n.b=e,n}function pn(n,e){return n.d=e,n}function vn(n,e){return n.e=e,n}function _ie(n,e){return n.f=e,n}function mn(n,e){return n.g=e,n}function kn(n,e){return n.a=e,n}function yn(n,e){return n.i=e,n}function jn(n,e){return n.j=e,n}function e8n(n,e){return n.k=e,n}function Kie(n,e){return n.j=e,n}function Hie(n,e){yl(),Hr(e,n)}function qie(n,e,t){Nfe(n.a,e,t)}function t8n(n){mTn.call(this,n)}function yG(n){mTn.call(this,n)}function mj(n){uD.call(this,n)}function i8n(n){u2e.call(this,n)}function Q1(n){Ld.call(this,n)}function r8n(n){XD.call(this,n)}function c8n(n){XD.call(this,n)}function u8n(){Mz.call(this,"")}function Li(){this.a=0,this.b=0}function s8n(){this.b=0,this.a=0}function o8n(n,e){n.b=0,hb(n,e)}function Gie(n,e){n.c=e,n.b=!0}function f8n(n,e){return n.c._b(e)}function xo(n){return n.e&&n.e()}function nO(n){return n?n.d:null}function h8n(n,e){return LDn(n.b,e)}function zie(n){return n?n.g:null}function Uie(n){return n?n.i:null}function J1(n){return Ph(n),n.o}function ad(){ad=N,Mne=h4e()}function l8n(){l8n=N,mi=jve()}function Qp(){Qp=N,g1n=a4e()}function a8n(){a8n=N,hee=l4e()}function jG(){jG=N,oc=s6e()}function EG(){EG=N,Wl=N3()}function d8n(){throw T(new ye)}function b8n(){throw T(new ye)}function w8n(){throw T(new ye)}function g8n(){throw T(new ye)}function p8n(){throw T(new ye)}function v8n(){throw T(new ye)}function kj(n){this.a=new s2(n)}function CG(n){d_n(),gTe(this,n)}function Y1(n){this.a=new AD(n)}function vw(n,e){for(;n.ye(e););}function TG(n,e){for(;n.sd(e););}function mw(n,e){return n.a+=e,n}function eO(n,e){return n.a+=e,n}function r1(n,e){return n.a+=e,n}function dd(n,e){return n.a+=e,n}function Wv(n){return fl(n),n.a}function yj(n){return n.b!=n.d.c}function m8n(n){return n.l|n.m<<22}function MG(n,e){return n.d[e.p]}function k8n(n,e){return Q8e(n,e)}function AG(n,e,t){n.splice(e,t)}function y8n(n){n.c?rBn(n):cBn(n)}function jj(n){this.a=0,this.b=n}function j8n(){this.a=new B7(Pon)}function E8n(){this.b=new B7(won)}function C8n(){this.b=new B7(OK)}function T8n(){this.b=new B7(OK)}function M8n(){throw T(new ye)}function A8n(){throw T(new ye)}function S8n(){throw T(new ye)}function P8n(){throw T(new ye)}function I8n(){throw T(new ye)}function O8n(){throw T(new ye)}function D8n(){throw T(new ye)}function $8n(){throw T(new ye)}function F8n(){throw T(new ye)}function x8n(){throw T(new ye)}function Wie(){throw T(new ic)}function Xie(){throw T(new ic)}function L9(n){this.a=new L8n(n)}function L8n(n){cbe(this,n,cve())}function N9(n){return!n||iTn(n)}function B9(n){return Mf[n]!=-1}function Vie(){_A!=0&&(_A=0),KA=-1}function N8n(){iR==null&&(iR=[])}function Qie(n,e){$x(R(n.a),e)}function Jie(n,e){$x(R(n.a),e)}function R9(n,e){Sw.call(this,n,e)}function Jp(n,e){R9.call(this,n,e)}function SG(n,e){this.b=n,this.c=e}function B8n(n,e){this.b=n,this.a=e}function R8n(n,e){this.a=n,this.b=e}function _8n(n,e){this.a=n,this.b=e}function K8n(n,e){this.a=n,this.b=e}function H8n(n,e){this.a=n,this.b=e}function q8n(n,e){this.a=n,this.b=e}function G8n(n,e){this.a=n,this.b=e}function z8n(n,e){this.a=n,this.b=e}function U8n(n,e){this.a=n,this.b=e}function W8n(n,e){this.b=n,this.a=e}function X8n(n,e){this.b=n,this.a=e}function V8n(n,e){this.b=n,this.a=e}function Q8n(n,e){this.b=n,this.a=e}function Oe(n,e){this.f=n,this.g=e}function Yp(n,e){this.e=n,this.d=e}function bd(n,e){this.g=n,this.i=e}function tO(n,e){this.a=n,this.b=e}function J8n(n,e){this.a=n,this.f=e}function Y8n(n,e){this.b=n,this.c=e}function Yie(n,e){this.a=n,this.b=e}function Z8n(n,e){this.a=n,this.b=e}function iO(n,e){this.a=n,this.b=e}function n7n(n){Bz(n.dc()),this.c=n}function Ej(n){this.b=u(pe(n),83)}function e7n(n){this.a=u(pe(n),83)}function _0(n){this.a=u(pe(n),15)}function t7n(n){this.a=u(pe(n),15)}function Cj(n){this.b=u(pe(n),47)}function Tj(){this.q=new y.Date}function nh(){nh=N,Sin=new tln}function Zp(){Zp=N,X4=new nln}function Xv(n){return n.f.c+n.g.c}function _9(n,e){return n.b.Hc(e)}function i7n(n,e){return n.b.Ic(e)}function r7n(n,e){return n.b.Qc(e)}function c7n(n,e){return n.b.Hc(e)}function u7n(n,e){return n.c.uc(e)}function Ah(n,e){return n.a._b(e)}function s7n(n,e){return tt(n.c,e)}function o7n(n,e){return Uu(n.b,e)}function f7n(n,e){return n>e&&e0}function cO(n,e){return fc(n,e)<0}function n5(n,e){return n.a.get(e)}function lre(n,e){return e.split(n)}function S7n(n,e){return Uu(n.e,e)}function LG(n){return _n(n),!1}function xj(n){xn.call(this,n,21)}function are(n,e){cMn.call(this,n,e)}function Lj(n,e){Oe.call(this,n,e)}function uO(n,e){Oe.call(this,n,e)}function NG(n){_D(),uEn.call(this,n)}function BG(n,e){fCn(n,n.length,e)}function z9(n,e){BCn(n,n.length,e)}function dre(n,e,t){e.ud(n.a.Ge(t))}function bre(n,e,t){e.we(n.a.Fe(t))}function wre(n,e,t){e.td(n.a.Kb(t))}function gre(n,e,t){n.Mb(t)&&e.td(t)}function e5(n,e,t){n.splice(e,0,t)}function pre(n,e){return au(n.e,e)}function Nj(n,e){this.d=n,this.e=e}function P7n(n,e){this.b=n,this.a=e}function I7n(n,e){this.b=n,this.a=e}function RG(n,e){this.b=n,this.a=e}function O7n(n,e){this.a=n,this.b=e}function D7n(n,e){this.a=n,this.b=e}function $7n(n,e){this.a=n,this.b=e}function F7n(n,e){this.a=n,this.b=e}function f2(n,e){this.a=n,this.b=e}function _G(n,e){this.b=n,this.a=e}function KG(n,e){this.b=n,this.a=e}function Bj(n,e){Oe.call(this,n,e)}function Rj(n,e){Oe.call(this,n,e)}function HG(n,e){Oe.call(this,n,e)}function qG(n,e){Oe.call(this,n,e)}function kw(n,e){Oe.call(this,n,e)}function sO(n,e){Oe.call(this,n,e)}function oO(n,e){Oe.call(this,n,e)}function fO(n,e){Oe.call(this,n,e)}function _j(n,e){Oe.call(this,n,e)}function GG(n,e){Oe.call(this,n,e)}function hO(n,e){Oe.call(this,n,e)}function U9(n,e){Oe.call(this,n,e)}function Kj(n,e){Oe.call(this,n,e)}function lO(n,e){Oe.call(this,n,e)}function t5(n,e){Oe.call(this,n,e)}function zG(n,e){Oe.call(this,n,e)}function zt(n,e){Oe.call(this,n,e)}function Hj(n,e){Oe.call(this,n,e)}function x7n(n,e){this.a=n,this.b=e}function L7n(n,e){this.a=n,this.b=e}function N7n(n,e){this.a=n,this.b=e}function B7n(n,e){this.a=n,this.b=e}function R7n(n,e){this.a=n,this.b=e}function _7n(n,e){this.a=n,this.b=e}function K7n(n,e){this.a=n,this.b=e}function H7n(n,e){this.a=n,this.b=e}function q7n(n,e){this.a=n,this.b=e}function UG(n,e){this.b=n,this.a=e}function G7n(n,e){this.b=n,this.a=e}function z7n(n,e){this.b=n,this.a=e}function U7n(n,e){this.b=n,this.a=e}function t3(n,e){this.c=n,this.d=e}function W7n(n,e){this.e=n,this.d=e}function X7n(n,e){this.a=n,this.b=e}function V7n(n,e){this.b=e,this.c=n}function qj(n,e){Oe.call(this,n,e)}function W9(n,e){Oe.call(this,n,e)}function aO(n,e){Oe.call(this,n,e)}function i5(n,e){Oe.call(this,n,e)}function WG(n,e){Oe.call(this,n,e)}function dO(n,e){Oe.call(this,n,e)}function bO(n,e){Oe.call(this,n,e)}function X9(n,e){Oe.call(this,n,e)}function XG(n,e){Oe.call(this,n,e)}function wO(n,e){Oe.call(this,n,e)}function r5(n,e){Oe.call(this,n,e)}function VG(n,e){Oe.call(this,n,e)}function c5(n,e){Oe.call(this,n,e)}function u5(n,e){Oe.call(this,n,e)}function H0(n,e){Oe.call(this,n,e)}function gO(n,e){Oe.call(this,n,e)}function pO(n,e){Oe.call(this,n,e)}function QG(n,e){Oe.call(this,n,e)}function s5(n,e){Oe.call(this,n,e)}function vO(n,e){Oe.call(this,n,e)}function Gj(n,e){Oe.call(this,n,e)}function V9(n,e){Oe.call(this,n,e)}function Q9(n,e){Oe.call(this,n,e)}function h2(n,e){Oe.call(this,n,e)}function mO(n,e){Oe.call(this,n,e)}function JG(n,e){Oe.call(this,n,e)}function kO(n,e){Oe.call(this,n,e)}function yO(n,e){Oe.call(this,n,e)}function YG(n,e){Oe.call(this,n,e)}function jO(n,e){Oe.call(this,n,e)}function EO(n,e){Oe.call(this,n,e)}function CO(n,e){Oe.call(this,n,e)}function TO(n,e){Oe.call(this,n,e)}function ZG(n,e){Oe.call(this,n,e)}function Q7n(n,e){this.b=n,this.a=e}function J7n(n,e){this.a=n,this.b=e}function Y7n(n,e){this.a=n,this.b=e}function Z7n(n,e){this.a=n,this.b=e}function nkn(n,e){this.a=n,this.b=e}function nz(n,e){Oe.call(this,n,e)}function ez(n,e){Oe.call(this,n,e)}function ekn(n,e){this.b=n,this.d=e}function tz(n,e){Oe.call(this,n,e)}function iz(n,e){Oe.call(this,n,e)}function tkn(n,e){this.a=n,this.b=e}function ikn(n,e){this.a=n,this.b=e}function zj(n,e){Oe.call(this,n,e)}function o5(n,e){Oe.call(this,n,e)}function rz(n,e){Oe.call(this,n,e)}function cz(n,e){Oe.call(this,n,e)}function uz(n,e){Oe.call(this,n,e)}function MO(n,e){Oe.call(this,n,e)}function sz(n,e){Oe.call(this,n,e)}function AO(n,e){Oe.call(this,n,e)}function Uj(n,e){Oe.call(this,n,e)}function SO(n,e){Oe.call(this,n,e)}function PO(n,e){Oe.call(this,n,e)}function J9(n,e){Oe.call(this,n,e)}function IO(n,e){Oe.call(this,n,e)}function oz(n,e){Oe.call(this,n,e)}function Y9(n,e){Oe.call(this,n,e)}function fz(n,e){Oe.call(this,n,e)}function vre(n,e){return au(n.c,e)}function mre(n,e){return au(e.b,n)}function kre(n,e){return-n.b.Je(e)}function hz(n,e){return au(n.g,e)}function Z9(n,e){Oe.call(this,n,e)}function l2(n,e){Oe.call(this,n,e)}function rkn(n,e){this.a=n,this.b=e}function ckn(n,e){this.a=n,this.b=e}function fn(n,e){this.a=n,this.b=e}function f5(n,e){Oe.call(this,n,e)}function h5(n,e){Oe.call(this,n,e)}function n8(n,e){Oe.call(this,n,e)}function OO(n,e){Oe.call(this,n,e)}function Wj(n,e){Oe.call(this,n,e)}function l5(n,e){Oe.call(this,n,e)}function DO(n,e){Oe.call(this,n,e)}function Xj(n,e){Oe.call(this,n,e)}function yw(n,e){Oe.call(this,n,e)}function e8(n,e){Oe.call(this,n,e)}function a5(n,e){Oe.call(this,n,e)}function d5(n,e){Oe.call(this,n,e)}function t8(n,e){Oe.call(this,n,e)}function Vj(n,e){Oe.call(this,n,e)}function jw(n,e){Oe.call(this,n,e)}function Qj(n,e){Oe.call(this,n,e)}function ukn(n,e){this.a=n,this.b=e}function skn(n,e){this.a=n,this.b=e}function okn(n,e){this.a=n,this.b=e}function fkn(n,e){this.a=n,this.b=e}function hkn(n,e){this.a=n,this.b=e}function lkn(n,e){this.a=n,this.b=e}function Si(n,e){this.a=n,this.b=e}function Jj(n,e){Oe.call(this,n,e)}function akn(n,e){this.a=n,this.b=e}function dkn(n,e){this.a=n,this.b=e}function bkn(n,e){this.a=n,this.b=e}function wkn(n,e){this.a=n,this.b=e}function gkn(n,e){this.a=n,this.b=e}function pkn(n,e){this.a=n,this.b=e}function vkn(n,e){this.b=n,this.a=e}function mkn(n,e){this.b=n,this.a=e}function kkn(n,e){this.b=n,this.a=e}function ykn(n,e){this.b=n,this.a=e}function jkn(n,e){this.a=n,this.b=e}function Ekn(n,e){this.a=n,this.b=e}function yre(n,e){J9e(n.a,u(e,56))}function Ckn(n,e){f0e(n.a,u(e,11))}function jre(n,e){return h3(),e!=n}function Tkn(){return Q9n(),new Szn}function Mkn(){c$(),this.b=new hi}function Akn(){hM(),this.a=new hi}function Skn(){tX(),lW.call(this)}function a2(n,e){Oe.call(this,n,e)}function Pkn(n,e){this.a=n,this.b=e}function Ikn(n,e){this.a=n,this.b=e}function Yj(n,e){this.a=n,this.b=e}function Okn(n,e){this.a=n,this.b=e}function Dkn(n,e){this.a=n,this.b=e}function $kn(n,e){this.a=n,this.b=e}function Fkn(n,e){this.d=n,this.b=e}function lz(n,e){this.d=n,this.e=e}function xkn(n,e){this.f=n,this.c=e}function i8(n,e){this.b=n,this.c=e}function az(n,e){this.i=n,this.g=e}function Lkn(n,e){this.e=n,this.a=e}function Nkn(n,e){this.a=n,this.b=e}function dz(n,e){n.i=null,nT(n,e)}function Ere(n,e){n&&it($y,n,e)}function Bkn(n,e){return NF(n.a,e)}function Zj(n){return g7(n.c,n.b)}function Vr(n){return n?n.dd():null}function B(n){return n??null}function q0(n){return typeof n===X2}function G0(n){return typeof n===UZ}function ki(n){return typeof n===EL}function el(n,e){return n.Hd().Xb(e)}function nE(n,e){return Rbe(n.Kc(),e)}function gd(n,e){return fc(n,e)==0}function Cre(n,e){return fc(n,e)>=0}function b5(n,e){return fc(n,e)!=0}function Tre(n){return""+(_n(n),n)}function r8(n,e){return n.substr(e)}function Rkn(n){return Fu(n),n.d.gc()}function $O(n){return yme(n,n.c),n}function eE(n){return A5(n==null),n}function w5(n,e){return n.a+=""+e,n}function dr(n,e){return n.a+=""+e,n}function g5(n,e){return n.a+=""+e,n}function rc(n,e){return n.a+=""+e,n}function De(n,e){return n.a+=""+e,n}function bz(n,e){return n.a+=""+e,n}function _kn(n,e){Kt(n,e,n.a,n.a.a)}function ua(n,e){Kt(n,e,n.c.b,n.c)}function Mre(n,e,t){VFn(e,Mx(n,t))}function Are(n,e,t){VFn(e,Mx(n,t))}function Sre(n,e){k0e(new ie(n),e)}function Kkn(n,e){n.q.setTime($d(e))}function Hkn(n,e){kW.call(this,n,e)}function qkn(n,e){kW.call(this,n,e)}function FO(n,e){kW.call(this,n,e)}function Gkn(n){Cu(this),Z5(this,n)}function wz(n){return Ln(n,0),null}function Lo(n){return n.a=0,n.b=0,n}function zkn(n,e){return n.a=e.g+1,n}function Pre(n,e){return n.j[e.p]==2}function gz(n){return lhe(u(n,79))}function Ukn(){Ukn=N,jUn=Fe(qF())}function Wkn(){Wkn=N,RWn=Fe(PNn())}function Xkn(){this.b=new s2(sb(12))}function Vkn(){this.b=0,this.a=!1}function Qkn(){this.b=0,this.a=!1}function p5(n){this.a=n,TI.call(this)}function Jkn(n){this.a=n,TI.call(this)}function In(n,e){ri.call(this,n,e)}function xO(n,e){V0.call(this,n,e)}function Ew(n,e){az.call(this,n,e)}function LO(n,e){H3.call(this,n,e)}function Ykn(n,e){c8.call(this,n,e)}function He(n,e){$j(),it(eI,n,e)}function NO(n,e){return Zu(n.a,0,e)}function Zkn(n,e){return n.a.a.a.cc(e)}function nyn(n,e){return B(n)===B(e)}function Ire(n,e){return ni(n.a,e.a)}function Ore(n,e){return Wc(n.a,e.a)}function Dre(n,e){return xCn(n.a,e.a)}function If(n,e){return n.indexOf(e)}function pd(n,e){return n==e?0:n?1:-1}function tE(n){return n<10?"0"+n:""+n}function $re(n){return pe(n),new p5(n)}function eyn(n){return Bc(n.l,n.m,n.h)}function i3(n){return Gt((_n(n),n))}function Fre(n){return Gt((_n(n),n))}function tyn(n,e){return Wc(n.g,e.g)}function Fr(n){return typeof n===UZ}function xre(n){return n==b0||n==Hb}function Lre(n){return n==b0||n==Kb}function pz(n){return xr(n.b.b,n,0)}function iyn(n){this.a=Tkn(),this.b=n}function ryn(n){this.a=Tkn(),this.b=n}function Nre(n,e){return W(n.a,e),e}function Bre(n,e){return W(n.c,e),n}function cyn(n,e){return cs(n.a,e),n}function Rre(n,e){return wo(),e.a+=n}function _re(n,e){return wo(),e.a+=n}function Kre(n,e){return wo(),e.c+=n}function vz(n,e){S3(n,0,n.length,e)}function Sh(){Tq.call(this,new ba)}function uyn(){xE.call(this,0,0,0,0)}function d2(){ys.call(this,0,0,0,0)}function kr(n){this.a=n.a,this.b=n.b}function tl(n){return n==Zs||n==Ao}function r3(n){return n==Yh||n==Jh}function syn(n){return n==xg||n==Fg}function Cw(n){return n!=Ef&&n!=ql}function qu(n){return n.Lg()&&n.Mg()}function oyn(n){return JE(u(n,118))}function iE(n){return cs(new li,n)}function fyn(n,e){return new H3(e,n)}function Hre(n,e){return new H3(e,n)}function mz(n,e,t){UC(n,e),WC(n,t)}function rE(n,e,t){Rd(n,e),Bd(n,t)}function Yo(n,e,t){nu(n,e),eu(n,t)}function cE(n,e,t){D3(n,e),F3(n,t)}function uE(n,e,t){$3(n,e),x3(n,t)}function BO(n,e){X3(n,e),L3(n,n.D)}function kz(n){xkn.call(this,n,!0)}function hyn(n,e,t){fU.call(this,n,e,t)}function il(n){jl(),qbe.call(this,n)}function lyn(){Lj.call(this,"Head",1)}function ayn(){Lj.call(this,"Tail",3)}function RO(n){n.c=F(Zn,rn,1,0,5,1)}function dyn(n){n.a=F(Zn,rn,1,8,5,1)}function byn(n){Zc(n.xf(),new t5n(n))}function Tw(n){return n!=null?mt(n):0}function qre(n,e){return ob(e,ef(n))}function Gre(n,e){return ob(e,ef(n))}function zre(n,e){return n[n.length]=e}function Ure(n,e){return n[n.length]=e}function yz(n){return zoe(n.b.Kc(),n.a)}function Wre(n,e){return ZC(BD(n.d),e)}function Xre(n,e){return ZC(BD(n.g),e)}function Vre(n,e){return ZC(BD(n.j),e)}function tr(n,e){ri.call(this,n.b,e)}function vd(n){xE.call(this,n,n,n,n)}function jz(n){return n.b&&uL(n),n.a}function Ez(n){return n.b&&uL(n),n.c}function Qre(n,e){vf||(n.b=e)}function _O(n,e,t){return St(n,e,t),t}function wyn(n,e,t){St(n.c[e.g],e.g,t)}function Jre(n,e,t){u(n.c,69).Xh(e,t)}function Yre(n,e,t){Yo(t,t.i+n,t.j+e)}function Zre(n,e){me(bc(n.a),PMn(e))}function nce(n,e){me(Du(n.a),IMn(e))}function v5(n){Je(),cd.call(this,n)}function ece(n){return n==null?0:mt(n)}function gyn(){gyn=N,hK=new f6(cH)}function je(){je=N,new pyn,new X}function pyn(){new we,new we,new we}function Cz(){Cz=N,Hq(),bin=new we}function Zo(){Zo=N,y.Math.log(2)}function ms(){ms=N,Ch=(E7n(),Dne)}function tce(){throw T(new t1(izn))}function ice(){throw T(new t1(izn))}function rce(){throw T(new t1(rzn))}function cce(){throw T(new t1(rzn))}function vyn(n){this.a=n,HU.call(this,n)}function KO(n){this.a=n,Ej.call(this,n)}function HO(n){this.a=n,Ej.call(this,n)}function wi(n,e){mD(n.c,n.c.length,e)}function Kr(n){return n.ae?1:0}function kyn(n,e){return fc(n,e)>0?n:e}function Bc(n,e,t){return{l:n,m:e,h:t}}function uce(n,e){n.a!=null&&Ckn(e,n.a)}function yyn(n){n.a=new aI,n.c=new aI}function sE(n){this.b=n,this.a=new X}function jyn(n){this.b=new san,this.a=n}function Mz(n){vU.call(this),this.a=n}function Eyn(){Lj.call(this,"Range",2)}function Cyn(){kJ(),this.a=new B7(Hrn)}function sce(n,e){pe(e),Iw(n).Jc(new ju)}function oce(n,e){return ns(),e.n.b+=n}function fce(n,e,t){return it(n.g,t,e)}function hce(n,e,t){return it(n.k,t,e)}function lce(n,e){return it(n.a,e.a,e)}function Mw(n,e,t){return _Q(e,t,n.c)}function Az(n){return new fn(n.c,n.d)}function ace(n){return new fn(n.c,n.d)}function Qr(n){return new fn(n.a,n.b)}function Tyn(n,e){return xEe(n.a,e,null)}function dce(n){Hi(n,null),Ci(n,null)}function Myn(n){s$(n,null),o$(n,null)}function Ayn(){c8.call(this,null,null)}function Syn(){wE.call(this,null,null)}function Sz(n){this.a=n,we.call(this)}function bce(n){this.b=(Pn(),new DI(n))}function oE(n){n.j=F(Ain,q,310,0,0,1)}function wce(n,e,t){n.c.Vc(e,u(t,133))}function gce(n,e,t){n.c.ji(e,u(t,133))}function Pyn(n,e){de(n),n.Gc(u(e,15))}function m5(n,e){return Jje(n.c,n.b,e)}function pce(n,e){return new Jyn(n.Kc(),e)}function qO(n,e){return gwe(n.Kc(),e)!=-1}function Pz(n,e){return n.a.Bc(e)!=null}function fE(n){return n.Ob()?n.Pb():null}function Iyn(n){return Hs(n,0,n.length)}function I(n,e){return n!=null&&WF(n,e)}function vce(n,e){n.q.setHours(e),S6(n,e)}function Oyn(n,e){n.c&&(ZU(e),iMn(e))}function mce(n,e,t){u(n.Kb(t),164).Nb(e)}function kce(n,e,t){return SEe(n,e,t),t}function Dyn(n,e,t){n.a=e^1502,n.b=t^tN}function GO(n,e,t){return n.a[e.g][t.g]}function nf(n,e){return n.a[e.c.p][e.p]}function yce(n,e){return n.e[e.c.p][e.p]}function jce(n,e){return n.c[e.c.p][e.p]}function Ece(n,e){return n.j[e.p]=D9e(e)}function Cce(n,e){return DX(n.f,e.tg())}function Tce(n,e){return DX(n.b,e.tg())}function Mce(n,e){return n.a0?e*e/n:e*e*100}function Jce(n,e){return n>0?e/(n*n):e*100}function Yce(n,e,t){return W(e,e$n(n,t))}function Zce(n,e,t){DC(),n.Xe(e)&&t.td(n)}function s3(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function U0(n,e,t){return n.a+=e,n.b+=t,n}function nue(n,e,t){return n.a*=e,n.b*=t,n}function o8(n,e,t){return n.a-=e,n.b-=t,n}function Zz(n,e){return n.a=e.a,n.b=e.b,n}function vE(n){return n.a=-n.a,n.b=-n.b,n}function fjn(n){this.c=n,this.a=1,this.b=1}function hjn(n){this.c=n,nu(n,0),eu(n,0)}function ljn(n){Tt.call(this),V5(this,n)}function ajn(n){yL(),Nmn(this),this.mf(n)}function djn(n,e){Zv(),c8.call(this,n,e)}function nU(n,e){c1(),wE.call(this,n,e)}function bjn(n,e){c1(),wE.call(this,n,e)}function wjn(n,e){c1(),nU.call(this,n,e)}function Gu(n,e,t){Xu.call(this,n,e,t,2)}function JO(n,e){ms(),FE.call(this,n,e)}function gjn(n,e){ms(),JO.call(this,n,e)}function eU(n,e){ms(),JO.call(this,n,e)}function pjn(n,e){ms(),eU.call(this,n,e)}function tU(n,e){ms(),FE.call(this,n,e)}function vjn(n,e){ms(),tU.call(this,n,e)}function mjn(n,e){ms(),FE.call(this,n,e)}function eue(n,e){return n.c.Fc(u(e,133))}function iU(n,e,t){return jM(G8(n,e),t)}function tue(n,e,t){return e.Qk(n.e,n.c,t)}function iue(n,e,t){return e.Rk(n.e,n.c,t)}function YO(n,e){return pl(n.e,u(e,49))}function rue(n,e,t){s6(Du(n.a),e,IMn(t))}function cue(n,e,t){s6(bc(n.a),e,PMn(t))}function rU(n,e){e.$modCount=n.$modCount}function C5(){C5=N,Xm=new kt("root")}function o3(){o3=N,xy=new w9n,new g9n}function kjn(){this.a=new Od,this.b=new Od}function cU(){RIn.call(this),this.Bb|=Yi}function yjn(){Oe.call(this,"GROW_TREE",0)}function uue(n){return n==null?null:CCe(n)}function sue(n){return n==null?null:D5e(n)}function oue(n){return n==null?null:Nr(n)}function fue(n){return n==null?null:Nr(n)}function Ph(n){n.o==null&&u9e(n)}function sn(n){return A5(n==null||q0(n)),n}function Y(n){return A5(n==null||G0(n)),n}function Ce(n){return A5(n==null||ki(n)),n}function uU(n){this.q=new y.Date($d(n))}function f8(n,e){this.c=n,Yp.call(this,n,e)}function mE(n,e){this.a=n,f8.call(this,n,e)}function hue(n,e){this.d=n,Ovn(this),this.b=e}function sU(n,e){P$.call(this,n),this.a=e}function oU(n,e){P$.call(this,n),this.a=e}function lue(n){xQ.call(this,0,0),this.f=n}function fU(n,e,t){IC.call(this,n,e,t,null)}function jjn(n,e,t){IC.call(this,n,e,t,null)}function aue(n,e,t){return n.ue(e,t)<=0?t:e}function due(n,e,t){return n.ue(e,t)<=0?e:t}function bue(n,e){return u(xd(n.b,e),149)}function wue(n,e){return u(xd(n.c,e),229)}function ZO(n){return u(un(n.a,n.b),287)}function Ejn(n){return new fn(n.c,n.d+n.a)}function Cjn(n){return ns(),syn(u(n,197))}function W0(){W0=N,prn=Cn((Qu(),id))}function gue(n,e){e.a?e7e(n,e):zO(n.a,e.b)}function Tjn(n,e){vf||W(n.a,e)}function pue(n,e){return H9(),K3(e.d.i,n)}function vue(n,e){return x2(),new ABn(e,n)}function Df(n,e){return T8(e,ann),n.f=e,n}function hU(n,e,t){return t=os(n,e,3,t),t}function lU(n,e,t){return t=os(n,e,6,t),t}function aU(n,e,t){return t=os(n,e,9,t),t}function h8(n,e,t){++n.j,n.Ki(),A$(n,e,t)}function Mjn(n,e,t){++n.j,n.Hi(e,n.oi(e,t))}function Ajn(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function Sjn(n,e,t){return MZ(n.c,n.b,e,t)}function dU(n,e){return(e&nt)%n.d.length}function ri(n,e){kt.call(this,n),this.a=e}function bU(n,e){xq.call(this,n),this.a=e}function nD(n,e){xq.call(this,n),this.a=e}function Pjn(n,e){this.c=n,Ld.call(this,e)}function Ijn(n,e){this.a=n,Omn.call(this,e)}function l8(n,e){this.a=n,Omn.call(this,e)}function Ojn(n){this.a=(rs(n,Pb),new Pc(n))}function Djn(n){this.a=(rs(n,Pb),new Pc(n))}function a8(n){return!n.a&&(n.a=new vr),n.a}function $jn(n){return n>8?0:n+1}function mue(n,e){return qn(),n==e?0:n?1:-1}function wU(n,e,t){return m2(n,u(e,22),t)}function kue(n,e,t){return n.apply(e,t)}function Fjn(n,e,t){return n.a+=Hs(e,0,t),n}function gU(n,e){var t;return t=n.e,n.e=e,t}function yue(n,e){var t;t=n[eN],t.call(n,e)}function jue(n,e){var t;t=n[eN],t.call(n,e)}function X0(n,e){n.a.Vc(n.b,e),++n.b,n.c=-1}function xjn(n){Cu(n.e),n.d.b=n.d,n.d.a=n.d}function d8(n){n.b?d8(n.b):n.f.c.zc(n.e,n.d)}function Eue(n,e,t){ca(),Svn(n,e.Ce(n.a,t))}function Cue(n,e){return nO(p$n(n.a,e,!0))}function Tue(n,e){return nO(v$n(n.a,e,!0))}function bo(n,e){return pj(new Array(e),n)}function eD(n){return String.fromCharCode(n)}function Mue(n){return n==null?null:n.message}function Ljn(){this.a=new X,this.b=new X}function Njn(){this.a=new LH,this.b=new Umn}function Bjn(){this.b=new Li,this.c=new X}function pU(){this.d=new Li,this.e=new Li}function vU(){this.n=new Li,this.o=new Li}function kE(){this.n=new i2,this.i=new d2}function Rjn(){this.a=new v4n,this.b=new cwn}function _jn(){this.a=new X,this.d=new X}function Kjn(){this.b=new hi,this.a=new hi}function Hjn(){this.b=new we,this.a=new we}function qjn(){this.b=new E8n,this.a=new sgn}function Gjn(){kE.call(this),this.a=new Li}function T5(n){Jbe.call(this,n,(FC(),vR))}function mU(n,e,t,i){xE.call(this,n,e,t,i)}function Aue(n,e,t){t!=null&&JC(e,rx(n,t))}function Sue(n,e,t){t!=null&&YC(e,rx(n,t))}function kU(n,e,t){return t=os(n,e,11,t),t}function st(n,e){return n.a+=e.a,n.b+=e.b,n}function yi(n,e){return n.a-=e.a,n.b-=e.b,n}function Pue(n,e){return n.n.a=(_n(e),e+10)}function Iue(n,e){return n.n.a=(_n(e),e+10)}function Oue(n,e){return e==n||o4(sM(e),n)}function zjn(n,e){return it(n.a,e,"")==null}function Due(n,e){return H9(),!K3(e.d.i,n)}function $ue(n,e){tl(n.f)?Qme(n,e):Fve(n,e)}function Fue(n,e){var t;return t=e.Hh(n.a),t}function V0(n,e){mr.call(this,rm+n+Ra+e)}function g2(n,e,t,i){V.call(this,n,e,t,i)}function yU(n,e,t,i){V.call(this,n,e,t,i)}function Ujn(n,e,t,i){yU.call(this,n,e,t,i)}function Wjn(n,e,t,i){zE.call(this,n,e,t,i)}function tD(n,e,t,i){zE.call(this,n,e,t,i)}function jU(n,e,t,i){zE.call(this,n,e,t,i)}function Xjn(n,e,t,i){tD.call(this,n,e,t,i)}function EU(n,e,t,i){tD.call(this,n,e,t,i)}function Fn(n,e,t,i){jU.call(this,n,e,t,i)}function Vjn(n,e,t,i){EU.call(this,n,e,t,i)}function Qjn(n,e,t,i){yW.call(this,n,e,t,i)}function Jjn(n,e,t){this.a=n,Vz.call(this,e,t)}function Yjn(n,e,t){this.c=e,this.b=t,this.a=n}function xue(n,e,t){return n.d=u(e.Kb(t),164)}function CU(n,e){return n.Aj().Nh().Kh(n,e)}function TU(n,e){return n.Aj().Nh().Ih(n,e)}function Zjn(n,e){return _n(n),B(n)===B(e)}function Mn(n,e){return _n(n),B(n)===B(e)}function iD(n,e){return nO(p$n(n.a,e,!1))}function rD(n,e){return nO(v$n(n.a,e,!1))}function Lue(n,e){return n.b.sd(new D7n(n,e))}function Nue(n,e){return n.b.sd(new $7n(n,e))}function nEn(n,e){return n.b.sd(new F7n(n,e))}function MU(n,e,t){return n.lastIndexOf(e,t)}function Bue(n,e,t){return ni(n[e.b],n[t.b])}function Rue(n,e){return H(e,(nn(),Jk),n)}function _ue(n,e){return Wc(e.a.d.p,n.a.d.p)}function Kue(n,e){return Wc(n.a.d.p,e.a.d.p)}function Hue(n,e){return ni(n.c-n.s,e.c-e.s)}function eEn(n){return n.c?xr(n.c.a,n,0):-1}function que(n){return n<100?null:new Q1(n)}function p2(n){return n==td||n==Eh||n==Ac}function tEn(n,e){return I(e,15)&&oBn(n.c,e)}function Gue(n,e){vf||e&&(n.d=e)}function cD(n,e){var t;return t=e,!!VV(n,t)}function AU(n,e){this.c=n,DD.call(this,n,e)}function iEn(n){this.c=n,FO.call(this,IM,0)}function rEn(n,e){Voe.call(this,n,n.length,e)}function zue(n,e,t){return u(n.c,69).lk(e,t)}function yE(n,e,t){return u(n.c,69).mk(e,t)}function Uue(n,e,t){return tue(n,u(e,332),t)}function SU(n,e,t){return iue(n,u(e,332),t)}function Wue(n,e,t){return txn(n,u(e,332),t)}function cEn(n,e,t){return zve(n,u(e,332),t)}function M5(n,e){return e==null?null:ab(n.b,e)}function PU(n){return G0(n)?(_n(n),n):n.ke()}function jE(n){return!isNaN(n)&&!isFinite(n)}function uEn(n){$f(),this.a=(Pn(),new Wp(n))}function b8(n){h3(),this.d=n,this.a=new gw}function ks(n,e,t){this.a=n,this.b=e,this.c=t}function sEn(n,e,t){this.a=n,this.b=e,this.c=t}function oEn(n,e,t){this.d=n,this.b=t,this.a=e}function uD(n){yyn(this),_s(this),Vi(this,n)}function du(n){RO(this),GU(this.c,0,n.Pc())}function fEn(n){Wu(n.a),uPn(n.c,n.b),n.b=null}function hEn(n){this.a=n,nh(),tu(Date.now())}function lEn(){lEn=N,Xin=new Lc,XA=new Lc}function sD(){sD=N,Rin=new iln,Pzn=new rln}function aEn(){aEn=N,Nne=F(Zn,rn,1,0,5,1)}function dEn(){dEn=N,eee=F(Zn,rn,1,0,5,1)}function IU(){IU=N,tee=F(Zn,rn,1,0,5,1)}function $f(){$f=N,new Bq((Pn(),Pn(),cr))}function Xue(n){return FC(),$e((pPn(),Dzn),n)}function Vue(n){return lf(),$e((LSn(),Bzn),n)}function Que(n){return $T(),$e((qAn(),Gzn),n)}function Jue(n){return RC(),$e((GAn(),zzn),n)}function Yue(n){return dM(),$e((IOn(),Uzn),n)}function Zue(n){return _o(),$e(($Sn(),Vzn),n)}function nse(n){return Tu(),$e((FSn(),Jzn),n)}function ese(n){return Yc(),$e((xSn(),Zzn),n)}function tse(n){return SM(),$e((Ukn(),jUn),n)}function ise(n){return Hd(),$e((mPn(),CUn),n)}function rse(n){return K2(),$e((kPn(),MUn),n)}function cse(n){return d6(),$e((yPn(),PUn),n)}function use(n){return Aj(),$e((yAn(),IUn),n)}function sse(n){return _C(),$e((zAn(),WUn),n)}function ose(n){return W5(),$e((NSn(),bWn),n)}function fse(n){return Qi(),$e((JPn(),vWn),n)}function hse(n){return G3(),$e((vPn(),EWn),n)}function lse(n){return qd(),$e((BSn(),PWn),n)}function OU(n,e){if(!n)throw T(new Hn(e))}function ase(n){return Qn(),$e((vIn(),$Wn),n)}function DU(n){xE.call(this,n.d,n.c,n.a,n.b)}function oD(n){xE.call(this,n.d,n.c,n.a,n.b)}function $U(n,e,t){this.b=n,this.c=e,this.a=t}function EE(n,e,t){this.b=n,this.a=e,this.c=t}function bEn(n,e,t){this.a=n,this.b=e,this.c=t}function FU(n,e,t){this.a=n,this.b=e,this.c=t}function wEn(n,e,t){this.a=n,this.b=e,this.c=t}function xU(n,e,t){this.a=n,this.b=e,this.c=t}function gEn(n,e,t){this.b=n,this.a=e,this.c=t}function CE(n,e,t){this.e=e,this.b=n,this.d=t}function dse(n,e,t){return ca(),n.a.Od(e,t),e}function fD(n){var e;return e=new Dln,e.e=n,e}function LU(n){var e;return e=new Zmn,e.b=n,e}function w8(){w8=N,sS=new Fdn,oS=new xdn}function wo(){wo=N,WWn=new pbn,XWn=new vbn}function bse(n){return aT(),$e((EPn(),HWn),n)}function wse(n){return hf(),$e((TPn(),JWn),n)}function gse(n){return lM(),$e((mOn(),cXn),n)}function pse(n){return q2(),$e((yIn(),uXn),n)}function vse(n){return OC(),$e((JAn(),sXn),n)}function mse(n){return F2(),$e((RSn(),oXn),n)}function kse(n){return Vw(),$e((UPn(),ZWn),n)}function yse(n){return Kd(),$e((HSn(),rXn),n)}function jse(n){return VC(),$e((_Sn(),fXn),n)}function Ese(n){return Pa(),$e((GPn(),hXn),n)}function Cse(n){return V8(),$e((WAn(),lXn),n)}function Tse(n){return ya(),$e((KSn(),dXn),n)}function Mse(n){return eM(),$e((TIn(),bXn),n)}function Ase(n){return K8(),$e((XAn(),wXn),n)}function Sse(n){return A7(),$e((EIn(),gXn),n)}function Pse(n){return h4(),$e((jIn(),pXn),n)}function Ise(n){return or(),$e((zOn(),vXn),n)}function Ose(n){return q3(),$e((GSn(),mXn),n)}function Dse(n){return Nh(),$e((qSn(),yXn),n)}function $se(n){return kC(),$e((YAn(),jXn),n)}function Fse(n){return Ss(),$e((WPn(),EXn),n)}function xse(n){return JT(),$e((CIn(),BQn),n)}function Lse(n){return i6(),$e((zSn(),RQn),n)}function Nse(n){return wb(),$e((MPn(),_Qn),n)}function Bse(n){return ur(),$e((XSn(),UQn),n)}function Rse(n){return Zw(),$e((vOn(),HQn),n)}function _se(n){return Rh(),$e((WSn(),qQn),n)}function Kse(n){return z8(),$e((QAn(),GQn),n)}function Hse(n){return oT(),$e((USn(),WQn),n)}function qse(n){return b6(),$e((zPn(),KQn),n)}function Gse(n){return x8(),$e((VAn(),XQn),n)}function zse(n){return Q3(),$e((QSn(),VQn),n)}function Use(n){return uT(),$e((JSn(),QQn),n)}function Wse(n){return dT(),$e((VSn(),JQn),n)}function Xse(n){return _d(),$e((YSn(),hJn),n)}function Vse(n){return z5(),$e((nSn(),wJn),n)}function Qse(n){return xf(),$e((eSn(),jJn),n)}function Jse(n){return tf(),$e((tSn(),CJn),n)}function Yse(n){return No(),$e((ZAn(),RJn),n)}function Zse(n){return Id(),$e((iSn(),UJn),n)}function noe(n){return c4(),$e((jPn(),WJn),n)}function eoe(n){return k6(),$e((MIn(),VJn),n)}function toe(n){return aC(),$e((uSn(),fYn),n)}function ioe(n){return iT(),$e((cSn(),wYn),n)}function roe(n){return gC(),$e((rSn(),hYn),n)}function coe(n){return CT(),$e((ZSn(),pYn),n)}function uoe(n){return $C(),$e((sSn(),vYn),n)}function soe(n){return f7(),$e((nPn(),mYn),n)}function ooe(n){return qT(),$e((CPn(),FYn),n)}function foe(n){return sT(),$e((tPn(),xYn),n)}function hoe(n){return ET(),$e((ePn(),LYn),n)}function loe(n){return g4(),$e((QPn(),tZn),n)}function aoe(n){return w7(),$e((iPn(),iZn),n)}function doe(n){return Pj(),$e((mAn(),rZn),n)}function boe(n){return Ij(),$e((vAn(),uZn),n)}function woe(n){return L8(),$e((fSn(),sZn),n)}function goe(n){return P7(),$e((XPn(),oZn),n)}function poe(n){return Jv(),$e((kAn(),CZn),n)}function voe(n){return c7(),$e((oSn(),TZn),n)}function moe(n){return Ho(),$e((VPn(),OZn),n)}function koe(n){return y1(),$e((kOn(),$Zn),n)}function yoe(n){return fh(),$e((kIn(),FZn),n)}function joe(n){return vb(),$e((mIn(),_Zn),n)}function Eoe(n){return rr(),$e((Wkn(),RWn),n)}function Coe(n){return B3(),$e((UAn(),BWn),n)}function Toe(n){return sr(),$e((YPn(),ene),n)}function Moe(n){return of(),$e((cPn(),tne),n)}function Aoe(n){return Hh(),$e((PPn(),ine),n)}function Soe(n){return ZT(),$e((SIn(),rne),n)}function Poe(n){return _h(),$e((rPn(),une),n)}function Ioe(n){return us(),$e((SPn(),one),n)}function Ooe(n){return jb(),$e((POn(),fne),n)}function Doe(n){return qw(),$e((ZPn(),hne),n)}function $oe(n){return Mi(),$e((bIn(),lne),n)}function Foe(n){return Mu(),$e((AIn(),ane),n)}function xoe(n){return Qu(),$e((OPn(),vne),n)}function Loe(n){return Lu(),$e((UOn(),mne),n)}function Noe(n){return J(),$e((nIn(),dne),n)}function Boe(n){return AT(),$e((IPn(),kne),n)}function Roe(n){return Vu(),$e((APn(),Ene),n)}function _oe(n){return d4(),$e((yOn(),Lne),n)}function Koe(n,e){return _n(n),n+(_n(e),e)}function Hoe(n,e){return nh(),me(R(n.a),e)}function qoe(n,e){return nh(),me(R(n.a),e)}function hD(n,e){this.c=n,this.a=e,this.b=e-n}function pEn(n,e,t){this.a=n,this.b=e,this.c=t}function NU(n,e,t){this.a=n,this.b=e,this.c=t}function BU(n,e,t){this.a=n,this.b=e,this.c=t}function vEn(n,e,t){this.a=n,this.b=e,this.c=t}function mEn(n,e,t){this.a=n,this.b=e,this.c=t}function s1(n,e,t){this.e=n,this.a=e,this.c=t}function kEn(n,e,t){ms(),QW.call(this,n,e,t)}function lD(n,e,t){ms(),FW.call(this,n,e,t)}function RU(n,e,t){ms(),FW.call(this,n,e,t)}function _U(n,e,t){ms(),FW.call(this,n,e,t)}function yEn(n,e,t){ms(),lD.call(this,n,e,t)}function KU(n,e,t){ms(),lD.call(this,n,e,t)}function jEn(n,e,t){ms(),KU.call(this,n,e,t)}function EEn(n,e,t){ms(),RU.call(this,n,e,t)}function CEn(n,e,t){ms(),_U.call(this,n,e,t)}function g8(n,e){return pe(n),pe(e),new z8n(n,e)}function v2(n,e){return pe(n),pe(e),new NEn(n,e)}function Goe(n,e){return pe(n),pe(e),new BEn(n,e)}function zoe(n,e){return pe(n),pe(e),new W8n(n,e)}function u(n,e){return A5(n==null||WF(n,e)),n}function f3(n){var e;return e=new X,_$(e,n),e}function Uoe(n){var e;return e=new hi,_$(e,n),e}function TEn(n){var e;return e=new Wq,nF(e,n),e}function p8(n){var e;return e=new Tt,nF(e,n),e}function Woe(n){return!n.e&&(n.e=new X),n.e}function Xoe(n){return!n.c&&(n.c=new Bp),n.c}function W(n,e){return n.c[n.c.length]=e,!0}function MEn(n,e){this.c=n,this.b=e,this.a=!1}function HU(n){this.d=n,Ovn(this),this.b=_fe(n.d)}function AEn(){this.a=";,;",this.b="",this.c=""}function Voe(n,e,t){SCn.call(this,e,t),this.a=n}function SEn(n,e,t){this.b=n,Hkn.call(this,e,t)}function qU(n,e,t){this.c=n,Nj.call(this,e,t)}function GU(n,e,t){aY(t,0,n,e,t.length,!1)}function th(n,e,t,i,r){n.b=e,n.c=t,n.d=i,n.a=r}function Qoe(n,e){e&&(n.b=e,n.a=(fl(e),e.a))}function zU(n,e,t,i,r){n.d=e,n.c=t,n.a=i,n.b=r}function UU(n){var e,t;e=n.b,t=n.c,n.b=t,n.c=e}function WU(n){var e,t;t=n.d,e=n.a,n.d=e,n.a=t}function XU(n){return bl(the(Fr(n)?Ks(n):n))}function Joe(n,e){return Wc(GEn(n.d),GEn(e.d))}function Yoe(n,e){return e==(J(),Gn)?n.c:n.d}function h3(){h3=N,don=(J(),Gn),dP=Vn}function PEn(){this.b=K(Y(cn((Go(),xR))))}function IEn(n){return ca(),F(Zn,rn,1,n,5,1)}function Zoe(n){return new fn(n.c+n.b,n.d+n.a)}function nfe(n,e){return Sj(),Wc(n.d.p,e.d.p)}function aD(n){return ne(n.b!=0),Ts(n,n.a.a)}function efe(n){return ne(n.b!=0),Ts(n,n.c.b)}function VU(n,e){if(!n)throw T(new R9n(e))}function TE(n,e){if(!n)throw T(new Hn(e))}function QU(n,e,t){t3.call(this,n,e),this.b=t}function v8(n,e,t){lz.call(this,n,e),this.c=t}function OEn(n,e,t){oIn.call(this,e,t),this.d=n}function JU(n){IU(),Yy.call(this),this.th(n)}function DEn(n,e,t){this.a=n,Ew.call(this,e,t)}function $En(n,e,t){this.a=n,Ew.call(this,e,t)}function ME(n,e,t){lz.call(this,n,e),this.c=t}function FEn(){T3(),khe.call(this,(Z1(),uo))}function xEn(n){return n!=null&&!$F(n,a9,d9)}function tfe(n,e){return(GDn(n)<<4|GDn(e))&Ut}function ife(n,e){return QE(),ex(n,e),new oTn(n,e)}function sa(n,e){var t;n.n&&(t=e,W(n.f,t))}function l3(n,e,t){var i;i=new Z0(t),Ro(n,e,i)}function rfe(n,e){var t;return t=n.c,wV(n,e),t}function YU(n,e){return e<0?n.g=-1:n.g=e,n}function AE(n,e){return H0e(n),n.a*=e,n.b*=e,n}function LEn(n,e,t,i,r){n.c=e,n.d=t,n.b=i,n.a=r}function Ke(n,e){return Kt(n,e,n.c.b,n.c),!0}function ZU(n){n.a.b=n.b,n.b.a=n.a,n.a=n.b=null}function dD(n){this.b=n,this.a=Ed(this.b.a).Ed()}function NEn(n,e){this.b=n,this.a=e,TI.call(this)}function BEn(n,e){this.a=n,this.b=e,TI.call(this)}function REn(n,e){SCn.call(this,e,1040),this.a=n}function m8(n){return n==0||isNaN(n)?n:n<0?-1:1}function cfe(n){return C2(),hh(n)==Pt(ml(n))}function ufe(n){return C2(),ml(n)==Pt(hh(n))}function jd(n,e){return v6(n,new t3(e.a,e.b))}function sfe(n){return!Xi(n)&&n.c.i.c==n.d.i.c}function SE(n){var e;return e=n.n,n.a.b+e.d+e.a}function _En(n){var e;return e=n.n,n.e.b+e.d+e.a}function nW(n){var e;return e=n.n,n.e.a+e.b+e.c}function KEn(n){return Je(),new ih(0,n)}function ofe(n){return n.a?n.a:WD(n)}function A5(n){if(!n)throw T(new Up(null))}function HEn(){HEn=N,mH=(Pn(),new OI(XB))}function PE(){PE=N,new JQ((HI(),uR),(qI(),cR))}function qEn(){qEn=N,jin=F(Wi,q,19,256,0,1)}function bD(n,e,t,i){MQ.call(this,n,e,t,i,0,0)}function ffe(n,e,t){return it(n.b,u(t.b,17),e)}function hfe(n,e,t){return it(n.b,u(t.b,17),e)}function lfe(n,e){return W(n,new fn(e.a,e.b))}function afe(n,e){return n.c=e)throw T(new qq)}function Xfe(n,e,t){return St(e,0,rW(e[0],t[0])),e}function Vfe(n,e,t){e.Ye(t,K(Y(te(n.b,t)))*n.a)}function ACn(n,e,t){return eg(),R3(n,e)&&R3(n,t)}function D5(n){return Mu(),!n.Hc(n1)&&!n.Hc(Gl)}function qE(n){return new fn(n.c+n.b/2,n.d+n.a/2)}function MD(n,e){return e.kh()?pl(n.b,u(e,49)):e}function kW(n,e){this.e=n,this.d=e&64?e|Bf:e}function SCn(n,e){this.c=0,this.d=n,this.b=e|64|Bf}function GE(n){this.b=new Pc(11),this.a=(Ow(),n)}function AD(n){this.b=null,this.a=(Ow(),n||Lin)}function PCn(n){this.a=Y$n(n.a),this.b=new du(n.b)}function ICn(n){this.b=n,b2.call(this,n),$yn(this)}function OCn(n){this.b=n,u8.call(this,n),Fyn(this)}function Y0(n,e,t){this.a=n,g2.call(this,e,t,5,6)}function yW(n,e,t,i){this.b=n,Yt.call(this,e,t,i)}function gi(n,e,t,i,r){D$.call(this,n,e,t,i,r,-1)}function $5(n,e,t,i,r){R8.call(this,n,e,t,i,r,-1)}function V(n,e,t,i){Yt.call(this,n,e,t),this.b=i}function zE(n,e,t,i){v8.call(this,n,e,t),this.b=i}function DCn(n){xkn.call(this,n,!1),this.a=!1}function $Cn(n,e){this.b=n,bvn.call(this,n.b),this.a=e}function FCn(n,e){nb(),Yie.call(this,n,mT(new Hu(e)))}function UE(n,e){return Je(),new xW(n,e,0)}function SD(n,e){return Je(),new xW(6,n,e)}function Qfe(n,e){return Mn(n.substr(0,e.length),e)}function Uu(n,e){return ki(e)?QD(n,e):!!Sr(n.f,e)}function Oi(n,e){for(_n(e);n.Ob();)e.td(n.Pb())}function Pw(n,e,t){jl(),this.e=n,this.d=e,this.a=t}function o1(n,e,t,i){var r;r=n.i,r.i=e,r.a=t,r.b=i}function jW(n){var e;for(e=n;e.f;)e=e.f;return e}function y2(n){var e;return e=t6(n),ne(e!=null),e}function Jfe(n){var e;return e=Lge(n),ne(e!=null),e}function d3(n,e){var t;return t=n.a.gc(),$X(e,t),t-e}function EW(n,e){var t;for(t=0;t0?y.Math.log(n/e):-100}function xCn(n,e){return fc(n,e)<0?-1:fc(n,e)>0?1:0}function SW(n,e,t){return MRn(n,u(e,46),u(t,167))}function LCn(n,e){return u(vW(Ed(n.a)).Xb(e),42).cd()}function uhe(n,e){return P0e(e,n.length),new REn(n,e)}function DD(n,e){this.d=n,ie.call(this,n),this.e=e}function Cd(n){this.d=(_n(n),n),this.a=0,this.c=IM}function PW(n,e){cd.call(this,1),this.a=n,this.b=e}function NCn(n,e){return n.c?NCn(n.c,e):W(n.b,e),n}function she(n,e,t){var i;return i=ub(n,e),g$(n,e,t),i}function IW(n,e){var t;return t=n.slice(0,e),WX(t,n)}function BCn(n,e,t){var i;for(i=0;i=n.g}function KD(n,e,t){var i;return i=Y$(n,e,t),rZ(n,i)}function j2(n,e){var t;t=n.a.length,ub(n,t),g$(n,t,e)}function ZCn(n,e){var t;t=console[n],t.call(console,e)}function nTn(n,e){var t;++n.j,t=n.Vi(),n.Ii(n.oi(t,e))}function mhe(n,e,t){u(e.b,65),Zc(e.a,new NU(n,t,e))}function FW(n,e,t){uj.call(this,e),this.a=n,this.b=t}function xW(n,e,t){cd.call(this,n),this.a=e,this.b=t}function LW(n,e,t){this.a=n,xq.call(this,e),this.b=t}function eTn(n,e,t){this.a=n,aX.call(this,8,e,null,t)}function khe(n){this.a=(_n(xe),xe),this.b=n,new tG}function tTn(n){this.c=n,this.b=this.c.a,this.a=this.c.e}function NW(n){this.c=n,this.b=n.a.d.a,rU(n.a.e,this)}function Wu(n){z0(n.c!=-1),n.d.$c(n.c),n.b=n.c,n.c=-1}function L5(n){return y.Math.sqrt(n.a*n.a+n.b*n.b)}function Md(n,e){return a3(e,n.a.c.length),un(n.a,e)}function Ff(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function yhe(n){return 0>=n?new PG:sbe(n-1)}function jhe(n){return aw?QD(aw,n):!1}function iTn(n){return n?n.dc():!n.Kc().Ob()}function Gi(n){return!n.a&&n.c?n.c.b:n.a}function Ehe(n){return!n.a&&(n.a=new Yt(zl,n,4)),n.a}function Ad(n){return!n.d&&(n.d=new Yt(ar,n,1)),n.d}function _n(n){if(n==null)throw T(new Nv);return n}function N5(n){n.c?n.c.He():(n.d=!0,S8e(n))}function fl(n){n.c?fl(n.c):(Ta(n),n.d=!0)}function rTn(n){KW(n.a),n.b=F(Zn,rn,1,n.b.length,5,1)}function Che(n,e){return Wc(e.j.c.length,n.j.c.length)}function The(n,e){n.c<0||n.b.b=0?n.Bh(t):bY(n,e)}function cTn(n){var e,t;return e=n.c.i.c,t=n.d.i.c,e==t}function Ahe(n){if(n.p!=4)throw T(new fu);return n.e}function She(n){if(n.p!=3)throw T(new fu);return n.e}function Phe(n){if(n.p!=6)throw T(new fu);return n.f}function Ihe(n){if(n.p!=6)throw T(new fu);return n.k}function Ohe(n){if(n.p!=3)throw T(new fu);return n.j}function Dhe(n){if(n.p!=4)throw T(new fu);return n.j}function BW(n){return!n.b&&(n.b=new sj(new KI)),n.b}function Sd(n){return n.c==-2&&Pte(n,Qve(n.g,n.b)),n.c}function g3(n,e){var t;return t=LD("",n),t.n=e,t.i=1,t}function $he(n,e){yD(u(e.b,65),n),Zc(e.a,new Aq(n))}function Fhe(n,e){me((!n.a&&(n.a=new l8(n,n)),n.a),e)}function uTn(n,e){this.b=n,DD.call(this,n,e),$yn(this)}function sTn(n,e){this.b=n,AU.call(this,n,e),Fyn(this)}function RW(n,e,t,i){bd.call(this,n,e),this.d=t,this.a=i}function VE(n,e,t,i){bd.call(this,n,t),this.a=e,this.f=i}function oTn(n,e){bce.call(this,obe(pe(n),pe(e))),this.a=e}function fTn(){UJ.call(this,Ka,(a8n(),hee)),tEe(this)}function hTn(){UJ.call(this,Vs,(Qp(),g1n)),lje(this)}function lTn(){Oe.call(this,"DELAUNAY_TRIANGULATION",0)}function xhe(n){return String.fromCharCode.apply(null,n)}function it(n,e,t){return ki(e)?yr(n,e,t):_c(n.f,e,t)}function _W(n){return Pn(),n?n.ve():(Ow(),Ow(),Bin)}function Lhe(n,e,t){return L2(),t.pg(n,u(e.cd(),146))}function aTn(n,e){return PE(),new JQ(new Wyn(n),new Uyn(e))}function Nhe(n){return rs(n,AL),KC(qi(qi(5,n),n/10|0))}function QE(){QE=N,fzn=new GI(A(M(Ha,1),OM,42,0,[]))}function dTn(n){return!n.d&&(n.d=new _p(n.c.Cc())),n.d}function p3(n){return!n.a&&(n.a=new W9n(n.c.vc())),n.a}function bTn(n){return!n.b&&(n.b=new Wp(n.c.ec())),n.b}function ch(n,e){for(;e-- >0;)n=n<<1|(n<0?1:0);return n}function pc(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function Bhe(n,e){return qn(),u(e.b,19).ai&&++i,i}function Oh(n){var e,t;return t=(e=new ud,e),O3(t,n),t}function UD(n){var e,t;return t=(e=new ud,e),VJ(t,n),t}function Zhe(n,e){var t;return t=te(n.f,e),MV(e,t),null}function WD(n){var e;return e=hbe(n),e||null}function CTn(n){return!n.b&&(n.b=new V(bi,n,12,3)),n.b}function n1e(n){return n!=null&&_9(tI,n.toLowerCase())}function e1e(n,e){return ni(bu(n)*zu(n),bu(e)*zu(e))}function t1e(n,e){return ni(bu(n)*zu(n),bu(e)*zu(e))}function i1e(n,e){return ni(n.d.c+n.d.b/2,e.d.c+e.d.b/2)}function r1e(n,e){return ni(n.g.c+n.g.b/2,e.g.c+e.g.b/2)}function TTn(n,e,t){t.a?eu(n,e.b-n.f/2):nu(n,e.a-n.g/2)}function MTn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ATn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ha(n,e,t,i){this.e=n,this.a=e,this.c=t,this.d=i}function STn(n,e,t,i){this.a=n,this.c=e,this.d=t,this.b=i}function PTn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function ITn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function OTn(n,e){this.a=n,hue.call(this,n,u(n.d,15).Zc(e))}function XD(n){this.f=n,this.c=this.f.e,n.f>0&&qFn(this)}function DTn(n,e,t,i){this.b=n,this.c=i,FO.call(this,e,t)}function $Tn(n){return ne(n.b=0&&Mn(n.substr(t,e.length),e)}function hl(n,e,t,i,r,c,o){return new v$(n.e,e,t,i,r,c,o)}function QTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function JTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function YTn(n,e){this.g=n,this.d=A(M(mh,1),E1,10,0,[e])}function f1(n,e){this.e=n,this.a=Zn,this.b=yBn(e),this.c=e}function ZTn(n,e){kE.call(this),eV(this),this.a=n,this.c=e}function M8(n,e,t,i){St(n.c[e.g],t.g,i),St(n.c[t.g],e.g,i)}function ZD(n,e,t,i){St(n.c[e.g],e.g,t),St(n.b[e.g],e.g,i)}function M1e(){return x8(),A(M(ron,1),z,376,0,[uK,iy])}function A1e(){return K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])}function S1e(){return V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])}function P1e(){return OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])}function I1e(){return kC(),A(M(fun,1),z,420,0,[j_,oun])}function O1e(){return z8(),A(M(non,1),z,421,0,[iK,rK])}function D1e(){return z5(),A(M(bJn,1),z,523,0,[Hm,Km])}function $1e(){return No(),A(M(BJn,1),z,520,0,[tw,Bl])}function F1e(){return xf(),A(M(yJn,1),z,516,0,[M0,I1])}function x1e(){return tf(),A(M(EJn,1),z,515,0,[Ja,yf])}function L1e(){return Id(),A(M(zJn,1),z,455,0,[Rl,Lg])}function N1e(){return gC(),A(M(Son,1),z,425,0,[yK,Aon])}function B1e(){return aC(),A(M(Mon,1),z,480,0,[kK,Ton])}function R1e(){return iT(),A(M(Pon,1),z,495,0,[EP,mv])}function _1e(){return $C(),A(M(Oon,1),z,426,0,[Ion,TK])}function K1e(){return c7(),A(M(Ffn,1),z,429,0,[DP,$fn])}function H1e(){return L8(),A(M(afn,1),z,430,0,[FK,IP])}function q1e(){return $T(),A(M(Jin,1),z,428,0,[yR,Qin])}function G1e(){return RC(),A(M(Zin,1),z,427,0,[Yin,jR])}function z1e(){return _C(),A(M(Arn,1),z,424,0,[$R,tS])}function U1e(){return B3(),A(M(NWn,1),z,511,0,[_k,UR])}function sC(n,e,t,i){return t>=0?n.jh(e,t,i):n.Sg(null,t,i)}function n$(n){return n.b.b==0?n.a.$e():aD(n.b)}function W1e(n){if(n.p!=5)throw T(new fu);return ge(n.f)}function X1e(n){if(n.p!=5)throw T(new fu);return ge(n.k)}function VW(n){return B(n.a)===B((eF(),gH))&&Vje(n),n.a}function nMn(n){this.a=u(pe(n),271),this.b=(Pn(),new Hz(n))}function eMn(n,e){bte(this,new fn(n.a,n.b)),wte(this,p8(e))}function Id(){Id=N,Rl=new iz(Y2,0),Lg=new iz(Z2,1)}function xf(){xf=N,M0=new ez(Z2,0),I1=new ez(Y2,1)}function Od(){rie.call(this,new s2(sb(12))),Bz(!0),this.a=2}function e$(n,e,t){Je(),cd.call(this,n),this.b=e,this.a=t}function QW(n,e,t){ms(),uj.call(this,e),this.a=n,this.b=t}function tMn(n){kE.call(this),eV(this),this.a=n,this.c=!0}function iMn(n){var e;e=n.c.d.b,n.b=e,n.a=n.c.d,e.a=n.c.d.b=n}function oC(n){var e;ebe(n.a),byn(n.a),e=new tj(n.a),TQ(e)}function V1e(n,e){aBn(n,!0),Zc(n.e.wf(),new $U(n,!0,e))}function fC(n,e){return LAn(e),Y0e(n,F(be,Le,25,e,15,1),e)}function Q1e(n,e){return C2(),n==Pt(hh(e))||n==Pt(ml(e))}function vc(n,e){return e==null?Vr(Sr(n.f,null)):n5(n.g,e)}function J1e(n){return n.b==0?null:(ne(n.b!=0),Ts(n,n.a.a))}function Gt(n){return Math.max(Math.min(n,nt),-2147483648)|0}function Y1e(n,e){var t=lR[n.charCodeAt(0)];return t??n}function hC(n,e){return tC(n,"set1"),tC(e,"set2"),new Z8n(n,e)}function Z1e(n,e){var t;return t=W0e(n.f,e),st(vE(t),n.f.d)}function R5(n,e){var t,i;return t=e,i=new dI,n_n(n,t,i),i.d}function t$(n,e,t,i){var r;r=new Gjn,e.a[t.g]=r,m2(n.b,i,r)}function JW(n,e,t){var i;i=n.Yg(e),i>=0?n.sh(i,t):_Y(n,e,t)}function Dw(n,e,t){dC(),n&&it(dH,n,e),n&&it($y,n,t)}function rMn(n,e,t){this.i=new X,this.b=n,this.g=e,this.a=t}function lC(n,e,t){this.c=new X,this.e=n,this.f=e,this.b=t}function YW(n,e,t){this.a=new X,this.e=n,this.f=e,this.c=t}function cMn(n,e){oE(this),this.f=e,this.g=n,eC(this),this._d()}function A8(n,e){var t;t=n.q.getHours(),n.q.setDate(e),S6(n,t)}function uMn(n,e){var t;for(pe(e),t=n.a;t;t=t.c)e.Od(t.g,t.i)}function sMn(n){var e;return e=new kj(sb(n.length)),qV(e,n),e}function nle(n){function e(){}return e.prototype=n||{},new e}function ele(n,e){return LOn(n,e)?(FIn(n),!0):!1}function Dh(n,e){if(e==null)throw T(new Nv);return Y2e(n,e)}function tle(n){if(n.qe())return null;var e=n.n;return RA[e]}function S8(n){return n.Db>>16!=3?null:u(n.Cb,33)}function ef(n){return n.Db>>16!=9?null:u(n.Cb,33)}function oMn(n){return n.Db>>16!=6?null:u(n.Cb,79)}function fMn(n){return n.Db>>16!=7?null:u(n.Cb,235)}function hMn(n){return n.Db>>16!=7?null:u(n.Cb,160)}function Pt(n){return n.Db>>16!=11?null:u(n.Cb,33)}function lMn(n,e){var t;return t=n.Yg(e),t>=0?n.lh(t):Ox(n,e)}function aMn(n,e){var t;return t=new iW(e),dxn(t,n),new du(t)}function ZW(n){var e;return e=n.d,e=n.si(n.f),me(n,e),e.Ob()}function dMn(n,e){return n.b+=e.b,n.c+=e.c,n.d+=e.d,n.a+=e.a,n}function i$(n,e){return y.Math.abs(n)0}function bMn(){this.a=new Sh,this.e=new hi,this.g=0,this.i=0}function wMn(n){this.a=n,this.b=F(lJn,q,1944,n.e.length,0,2)}function r$(n,e,t){var i;i=tDn(n,e,t),n.b=new tT(i.c.length)}function tf(){tf=N,Ja=new nz(hN,0),yf=new nz("UP",1)}function aC(){aC=N,kK=new rz(PHn,0),Ton=new rz("FAN",1)}function dC(){dC=N,dH=new we,$y=new we,Ere(Azn,new z2n)}function rle(n){if(n.p!=0)throw T(new fu);return b5(n.f,0)}function cle(n){if(n.p!=0)throw T(new fu);return b5(n.k,0)}function gMn(n){return n.Db>>16!=3?null:u(n.Cb,147)}function y3(n){return n.Db>>16!=6?null:u(n.Cb,235)}function eb(n){return n.Db>>16!=17?null:u(n.Cb,26)}function pMn(n,e){var t=n.a=n.a||[];return t[e]||(t[e]=n.le(e))}function ule(n,e){var t;return t=n.a.get(e),t??new Array}function sle(n,e){var t;t=n.q.getHours(),n.q.setMonth(e),S6(n,t)}function yr(n,e,t){return e==null?_c(n.f,null,t):Gd(n.g,e,t)}function _5(n,e,t,i,r,c){return new Lh(n.e,e,n.aj(),t,i,r,c)}function P8(n,e,t){return n.a=Zu(n.a,0,e)+(""+t)+r8(n.a,e),n}function ole(n,e,t){return W(n.a,(QE(),ex(e,t),new bd(e,t))),n}function nX(n){return _z(n.c),n.e=n.a=n.c,n.c=n.c.c,++n.d,n.a.f}function vMn(n){return _z(n.e),n.c=n.a=n.e,n.e=n.e.e,--n.d,n.a.f}function Ci(n,e){n.d&&Jc(n.d.e,n),n.d=e,n.d&&W(n.d.e,n)}function Hi(n,e){n.c&&Jc(n.c.g,n),n.c=e,n.c&&W(n.c.g,n)}function jr(n,e){n.c&&Jc(n.c.a,n),n.c=e,n.c&&W(n.c.a,n)}function Hr(n,e){n.i&&Jc(n.i.j,n),n.i=e,n.i&&W(n.i.j,n)}function mMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function kMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function yMn(n,e){this.a=n,this.c=Qr(this.a),this.b=new uC(e)}function fle(n){var e;return Ta(n),e=new hi,gt(n,new Vvn(e))}function tb(n,e){if(n<0||n>e)throw T(new mr(cnn+n+unn+e))}function eX(n,e){return lCn(n.a,e)?TW(n,u(e,22).g,null):null}function hle(n){return yF(),qn(),u(n.a,81).d.e!=0}function jMn(){jMn=N,azn=Fe((aj(),A(M(lzn,1),z,538,0,[fR])))}function EMn(){EMn=N,YQn=Eu(new li,(Qi(),Or),(rr(),Kk))}function tX(){tX=N,ZQn=Eu(new li,(Qi(),Or),(rr(),Kk))}function CMn(){CMn=N,eJn=Eu(new li,(Qi(),Or),(rr(),Kk))}function TMn(){TMn=N,gJn=Ze(new li,(Qi(),Or),(rr(),km))}function ns(){ns=N,mJn=Ze(new li,(Qi(),Or),(rr(),km))}function MMn(){MMn=N,kJn=Ze(new li,(Qi(),Or),(rr(),km))}function c$(){c$=N,TJn=Ze(new li,(Qi(),Or),(rr(),km))}function AMn(){AMn=N,lYn=Eu(new li,(c4(),Gm),(k6(),lK))}function aa(n,e,t,i){this.c=n,this.d=i,s$(this,e),o$(this,t)}function M2(n){this.c=new Tt,this.b=n.b,this.d=n.c,this.a=n.a}function u$(n){this.a=y.Math.cos(n),this.b=y.Math.sin(n)}function s$(n,e){n.a&&Jc(n.a.k,n),n.a=e,n.a&&W(n.a.k,n)}function o$(n,e){n.b&&Jc(n.b.f,n),n.b=e,n.b&&W(n.b.f,n)}function SMn(n,e){mhe(n,n.b,n.c),u(n.b.b,65),e&&u(e.b,65).b}function lle(n,e){vQ(n,e),I(n.Cb,88)&&yb(Ou(u(n.Cb,88)),2)}function f$(n,e){I(n.Cb,88)&&yb(Ou(u(n.Cb,88)),4),Ic(n,e)}function bC(n,e){I(n.Cb,179)&&(u(n.Cb,179).tb=null),Ic(n,e)}function mc(n,e){return er(),R$(e)?new IE(e,n):new i8(e,n)}function ale(n,e){var t,i;t=e.c,i=t!=null,i&&j2(n,new Z0(e.c))}function PMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function IMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function OMn(n,e){var t;return t=new Rs(n),e.c[e.c.length]=t,t}function DMn(n,e){var t;return t=u(ab(T2(n.a),e),14),t?t.gc():0}function $Mn(n){var e;return Ta(n),e=(Ow(),Ow(),Nin),qC(n,e)}function FMn(n){for(var e;;)if(e=n.Pb(),!n.Ob())return e}function iX(n,e){tie.call(this,new s2(sb(n))),rs(e,W_n),this.a=e}function uh(n,e,t){KDn(e,t,n.gc()),this.c=n,this.a=e,this.b=t-e}function xMn(n,e,t){var i;KDn(e,t,n.c.length),i=t-e,AG(n.c,e,i)}function dle(n,e){Dyn(n,ge(ui(cl(e,24),FM)),ge(ui(e,FM)))}function Ln(n,e){if(n<0||n>=e)throw T(new mr(cnn+n+unn+e))}function Te(n,e){if(n<0||n>=e)throw T(new wG(cnn+n+unn+e))}function xn(n,e){this.b=(_n(n),n),this.a=e&Ib?e:e|64|Bf}function LMn(n){dyn(this),Wmn(this.a,KV(y.Math.max(8,n))<<1)}function rf(n){return Gr(A(M(di,1),q,8,0,[n.i.n,n.n,n.a]))}function ble(){return lf(),A(M(Bu,1),z,132,0,[Win,ls,Rb])}function wle(){return _o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])}function gle(){return Tu(),A(M(Qzn,1),z,461,0,[Vf,Ol,Co])}function ple(){return Yc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])}function vle(){return qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])}function mle(){return W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])}function kle(){return i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])}function yle(){return F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])}function jle(){return VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])}function Ele(){return ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])}function Cle(){return Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])}function Tle(){return Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])}function Mle(){return q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])}function Ale(){return ur(),A(M(zQn,1),z,452,0,[Bm,Su,xc])}function Sle(){return Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])}function Ple(){return oT(),A(M(ion,1),z,375,0,[eon,cK,ton])}function Ile(){return dT(),A(M(hon,1),z,377,0,[fK,pv,ew])}function Ole(){return Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])}function Dle(){return uT(),A(M(fon,1),z,338,0,[oon,oK,son])}function $le(){return _d(),A(M(fJn,1),z,454,0,[ry,_m,aP])}function Fle(){return CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])}function xle(){return f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])}function Lle(){return ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])}function Nle(){return sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])}function Ble(){return w7(),A(M(OK,1),z,437,0,[AP,SP,PP])}function Rle(){return _h(),A(M(Khn,1),z,334,0,[HP,F1,i9])}function _le(){return of(),A(M(Phn,1),z,272,0,[jv,cw,Ev])}function Kle(n,e){return o9e(n,e,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Hle(n,e,t){var i;return i=O6(n,e,!1),i.b<=e&&i.a<=t}function NMn(n,e,t){var i;i=new Jwn,i.b=e,i.a=t,++e.b,W(n.d,i)}function qle(n,e){var t;return t=(_n(n),n).g,Yz(!!t),_n(e),t(e)}function rX(n,e){var t,i;return i=d3(n,e),t=n.a.Zc(i),new Y8n(n,t)}function Gle(n){return n.Db>>16!=6?null:u(Fx(n),235)}function zle(n){if(n.p!=2)throw T(new fu);return ge(n.f)&Ut}function Ule(n){if(n.p!=2)throw T(new fu);return ge(n.k)&Ut}function Wle(n){return n.a==(T3(),uI)&&Ste(n,C9e(n.g,n.b)),n.a}function A2(n){return n.d==(T3(),uI)&&Ite(n,pke(n.g,n.b)),n.d}function j(n){return ne(n.ai?1:0}function BMn(n,e){var t,i;return t=F$(e),i=t,u(te(n.c,i),19).a}function RMn(n,e){var t;for(t=n+"";t.length0&&n.a[--n.d]==0;);n.a[n.d++]==0&&(n.e=0)}function rAn(n){return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function rae(n){return!!n.a&&Du(n.a.a).i!=0&&!(n.b&&YF(n.b))}function cae(n){return!!n.u&&bc(n.u.a).i!=0&&!(n.n&&JF(n.n))}function cAn(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),16,new tvn(n))}function uae(n,e){return xCn(tu(n.q.getTime()),tu(e.q.getTime()))}function Lf(n){return u(af(n,F(GR,MN,17,n.c.length,0,1)),474)}function I8(n){return u(af(n,F(mh,E1,10,n.c.length,0,1)),193)}function sae(n){return ns(),!Xi(n)&&!(!Xi(n)&&n.c.i.c==n.d.i.c)}function uAn(n,e,t){var i;i=(pe(n),new du(n)),N3e(new mMn(i,e,t))}function O8(n,e,t){var i;i=(pe(n),new du(n)),B3e(new kMn(i,e,t))}function sAn(n,e){var t;return t=1-e,n.a[t]=eT(n.a[t],t),eT(n,e)}function oAn(n,e){var t;n.e=new oG,t=Cb(e),wi(t,n.c),eBn(n,t,0)}function Ti(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.a,r)}function Z(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.b,r)}function po(n){var e,t,i;return e=new HCn,t=Zx(e,n),UEe(e),i=t,i}function hX(){var n,e,t;return e=(t=(n=new ud,n),t),W(M1n,e),e}function pC(n){return n.j.c=F(Zn,rn,1,0,5,1),KW(n.c),Khe(n.a),n}function $w(n){return Qv(),I(n.g,10)?u(n.g,10):null}function oae(n){return Iw(n).dc()?!1:(sce(n,new Np),!0)}function fae(n){if(!("stack"in n))try{throw n}catch{}return n}function D8(n,e){if(n<0||n>=e)throw T(new mr(j6e(n,e)));return n}function fAn(n,e,t){if(n<0||et)throw T(new mr(W5e(n,e,t)))}function d$(n,e){if(ci(n.a,e),e.d)throw T(new _r(wKn));e.d=n}function b$(n,e){if(e.$modCount!=n.$modCount)throw T(new vs)}function hAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function lAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function aAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function hae(n,e){return n.a<=n.b?(e.ud(n.a++),!0):!1}function $d(n){var e;return Fr(n)?(e=n,e==-0?0:e):m0e(n)}function vC(n){var e;return fl(n),e=new fln,vw(n.a,new Wvn(e)),e}function dAn(n){var e;return fl(n),e=new oln,vw(n.a,new Uvn(e)),e}function Pi(n,e){this.a=n,$v.call(this,n),tb(e,n.gc()),this.b=e}function lX(n){this.e=n,this.b=this.e.a.entries(),this.a=new Array}function lae(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),273,new evn(n))}function mC(n){return new Pc((rs(n,AL),KC(qi(qi(5,n),n/10|0))))}function bAn(n){return u(af(n,F(FWn,UKn,11,n.c.length,0,1)),1943)}function aae(n,e,t){return t.f.c.length>0?SW(n.a,e,t):SW(n.b,e,t)}function dae(n,e,t){n.d&&Jc(n.d.e,n),n.d=e,n.d&&Q0(n.d.e,t,n)}function w$(n,e){uTe(e,n),WU(n.d),WU(u(k(n,(nn(),eP)),207))}function H5(n,e){cTe(e,n),UU(n.d),UU(u(k(n,(nn(),eP)),207))}function Fd(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.fe()),i}function j3(n,e){var t,i;return t=ub(n,e),i=null,t&&(i=t.ie()),i}function q5(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.ie()),i}function $h(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=tY(t)),i}function bae(n,e,t){var i;return i=i4(t),gM(n.g,i,e),gM(n.i,e,t),e}function wae(n,e,t){var i;i=q2e();try{return kue(n,e,t)}finally{Mae(i)}}function wAn(n){var e;e=n.Wg(),this.a=I(e,69)?u(e,69).Zh():e.Kc()}function li(){P9n.call(this),this.j.c=F(Zn,rn,1,0,5,1),this.a=-1}function aX(n,e,t,i){this.d=n,this.n=e,this.g=t,this.o=i,this.p=-1}function gAn(n,e,t,i){this.e=i,this.d=null,this.c=n,this.a=e,this.b=t}function dX(n,e,t){this.d=new r6n(this),this.e=n,this.i=e,this.f=t}function kC(){kC=N,j_=new QG(I4,0),oun=new QG("TOP_LEFT",1)}function pAn(){pAn=N,aon=aTn(Q(1),Q(4)),lon=aTn(Q(1),Q(2))}function vAn(){vAn=N,uZn=Fe((Ij(),A(M(cZn,1),z,551,0,[$K])))}function mAn(){mAn=N,rZn=Fe((Pj(),A(M(lfn,1),z,482,0,[DK])))}function kAn(){kAn=N,CZn=Fe((Jv(),A(M(Dfn,1),z,530,0,[hy])))}function yAn(){yAn=N,IUn=Fe((Aj(),A(M(krn,1),z,481,0,[SR])))}function gae(){return Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])}function pae(){return FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])}function vae(){return d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])}function mae(){return K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])}function kae(){return G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])}function yae(){return aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])}function jAn(n,e,t,i){return I(t,54)?new ojn(n,e,t,i):new pW(n,e,t,i)}function jae(){return hf(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])}function Eae(n){var e;return n.j==(J(),ae)&&(e=GLn(n),au(e,Vn))}function Cae(n,e){var t;t=e.a,Hi(t,e.c.d),Ci(t,e.d.d),fb(t.a,n.n)}function EAn(n,e){return u(yd(KE(u(ct(n.k,e),15).Oc(),jg)),113)}function CAn(n,e){return u(yd(HE(u(ct(n.k,e),15).Oc(),jg)),113)}function Tae(n){return new xn(jbe(u(n.a.dd(),14).gc(),n.a.cd()),16)}function E3(n){return I(n,14)?u(n,14).dc():!n.Kc().Ob()}function S2(n){return Qv(),I(n.g,145)?u(n.g,145):null}function TAn(n){if(n.e.g!=n.b)throw T(new vs);return!!n.c&&n.d>0}function Re(n){return ne(n.b!=n.d.c),n.c=n.b,n.b=n.b.a,++n.a,n.c.c}function bX(n,e){_n(e),St(n.a,n.c,e),n.c=n.c+1&n.a.length-1,MFn(n)}function ll(n,e){_n(e),n.b=n.b-1&n.a.length-1,St(n.a,n.b,e),MFn(n)}function MAn(n,e){var t;for(t=n.j.c.length;t0&&gc(n.g,0,e,0,n.i),e}function IAn(n,e){$j();var t;return t=u(te(eI,n),55),!t||t.wj(e)}function Bae(n){if(n.p!=1)throw T(new fu);return ge(n.f)<<24>>24}function Rae(n){if(n.p!=1)throw T(new fu);return ge(n.k)<<24>>24}function _ae(n){if(n.p!=7)throw T(new fu);return ge(n.k)<<16>>16}function Kae(n){if(n.p!=7)throw T(new fu);return ge(n.f)<<16>>16}function Fh(n){var e;for(e=0;n.Ob();)n.Pb(),e=qi(e,1);return KC(e)}function OAn(n,e){var t;return t=new R0,n.xd(t),t.a+="..",e.yd(t),t.a}function Hae(n,e,t){var i;i=u(te(n.g,t),57),W(n.a.c,new Si(e,i))}function qae(n,e,t){return TD(Y(Vr(Sr(n.f,e))),Y(Vr(Sr(n.f,t))))}function yC(n,e,t){return vM(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Gae(n,e,t){return m4(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function zae(n,e,t){return b9e(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function pX(n,e){return n==(Qn(),ii)&&e==ii?4:n==ii||e==ii?8:32}function DAn(n,e){return B(e)===B(n)?"(this Map)":e==null?ru:Nr(e)}function Uae(n,e){return u(e==null?Vr(Sr(n.f,null)):n5(n.g,e),281)}function $An(n,e,t){var i;return i=i4(t),it(n.b,i,e),it(n.c,e,t),e}function FAn(n,e){var t;for(t=e;t;)U0(n,t.i,t.j),t=Pt(t);return n}function vX(n,e){var t;return t=C8(f3(new x$(n,e))),DE(new x$(n,e)),t}function sh(n,e){er();var t;return t=u(n,66).Mj(),M5e(t,e),t.Ok(e)}function Wae(n,e,t,i,r){var c;c=m9e(r,t,i),W(e,p6e(r,c)),o5e(n,r,e)}function xAn(n,e,t){n.i=0,n.e=0,e!=t&&(uDn(n,e,t),cDn(n,e,t))}function mX(n,e){var t;t=n.q.getHours(),n.q.setFullYear(e+Tl),S6(n,t)}function Xae(n,e,t){if(t){var i=t.ee();n.a[e]=i(t)}else delete n.a[e]}function g$(n,e,t){if(t){var i=t.ee();t=i(t)}else t=void 0;n.a[e]=t}function LAn(n){if(n<0)throw T(new K9n("Negative array size: "+n))}function bc(n){return n.n||(Ou(n),n.n=new wCn(n,ar,n),Ar(n)),n.n}function G5(n){return ne(n.a=0&&n.a[t]===e[t];t--);return t<0}function KAn(n,e){V3();var t;return t=n.j.g-e.j.g,t!=0?t:0}function HAn(n,e){return _n(e),n.a!=null?$fe(e.Kb(n.a)):UA}function jC(n){var e;return n?new iW(n):(e=new Sh,nF(e,n),e)}function ts(n,e){var t;return e.b.Kb(FPn(n,e.c.Ee(),(t=new Jvn(e),t)))}function EC(n){_J(),Dyn(this,ge(ui(cl(n,24),FM)),ge(ui(n,FM)))}function qAn(){qAn=N,Gzn=Fe(($T(),A(M(Jin,1),z,428,0,[yR,Qin])))}function GAn(){GAn=N,zzn=Fe((RC(),A(M(Zin,1),z,427,0,[Yin,jR])))}function zAn(){zAn=N,WUn=Fe((_C(),A(M(Arn,1),z,424,0,[$R,tS])))}function UAn(){UAn=N,BWn=Fe((B3(),A(M(NWn,1),z,511,0,[_k,UR])))}function WAn(){WAn=N,lXn=Fe((V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])))}function XAn(){XAn=N,wXn=Fe((K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])))}function VAn(){VAn=N,XQn=Fe((x8(),A(M(ron,1),z,376,0,[uK,iy])))}function QAn(){QAn=N,GQn=Fe((z8(),A(M(non,1),z,421,0,[iK,rK])))}function JAn(){JAn=N,sXn=Fe((OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])))}function YAn(){YAn=N,jXn=Fe((kC(),A(M(fun,1),z,420,0,[j_,oun])))}function ZAn(){ZAn=N,RJn=Fe((No(),A(M(BJn,1),z,520,0,[tw,Bl])))}function nSn(){nSn=N,wJn=Fe((z5(),A(M(bJn,1),z,523,0,[Hm,Km])))}function eSn(){eSn=N,jJn=Fe((xf(),A(M(yJn,1),z,516,0,[M0,I1])))}function tSn(){tSn=N,CJn=Fe((tf(),A(M(EJn,1),z,515,0,[Ja,yf])))}function iSn(){iSn=N,UJn=Fe((Id(),A(M(zJn,1),z,455,0,[Rl,Lg])))}function rSn(){rSn=N,hYn=Fe((gC(),A(M(Son,1),z,425,0,[yK,Aon])))}function cSn(){cSn=N,wYn=Fe((iT(),A(M(Pon,1),z,495,0,[EP,mv])))}function uSn(){uSn=N,fYn=Fe((aC(),A(M(Mon,1),z,480,0,[kK,Ton])))}function sSn(){sSn=N,vYn=Fe(($C(),A(M(Oon,1),z,426,0,[Ion,TK])))}function oSn(){oSn=N,TZn=Fe((c7(),A(M(Ffn,1),z,429,0,[DP,$fn])))}function fSn(){fSn=N,sZn=Fe((L8(),A(M(afn,1),z,430,0,[FK,IP])))}function z5(){z5=N,Hm=new ZG("UPPER",0),Km=new ZG("LOWER",1)}function Yae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function Zae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function nde(n,e){var t,i;i=!1;do t=JOn(n,e),i=i|t;while(t);return i}function jX(n,e){var t,i;for(t=e,i=0;t>0;)i+=n.a[t],t-=t&-t;return i}function hSn(n,e){var t;for(t=e;t;)U0(n,-t.i,-t.j),t=Pt(t);return n}function $i(n,e){var t,i;for(_n(e),i=n.Kc();i.Ob();)t=i.Pb(),e.td(t)}function lSn(n,e){var t;return t=e.cd(),new bd(t,n.e.pc(t,u(e.dd(),14)))}function Kt(n,e,t,i){var r;r=new aI,r.c=e,r.b=t,r.a=i,i.b=t.a=r,++n.b}function Es(n,e,t){var i;return i=(Ln(e,n.c.length),n.c[e]),n.c[e]=t,i}function ede(n,e,t){return u(e==null?_c(n.f,null,t):Gd(n.g,e,t),281)}function k$(n){return n.c&&n.d?cX(n.c)+"->"+cX(n.d):"e_"+md(n)}function C3(n,e){return(Ta(n),Wv(new $n(n,new UX(e,n.a)))).sd(V4)}function tde(){return Qi(),A(M(Hrn,1),z,356,0,[Qf,$l,Hc,Cc,Or])}function ide(){return J(),A(M(Zi,1),hc,61,0,[Xr,Kn,Vn,ae,Gn])}function rde(n){return gj(),function(){return wae(n,this,arguments)}}function cde(){return Date.now?Date.now():new Date().getTime()}function Xi(n){return!n.c||!n.d?!1:!!n.c.i&&n.c.i==n.d.i}function aSn(n){if(!n.c.Sb())throw T(new ic);return n.a=!0,n.c.Ub()}function $8(n){n.i=0,z9(n.b,null),z9(n.c,null),n.a=null,n.e=null,++n.g}function EX(n){are.call(this,n==null?ru:Nr(n),I(n,78)?u(n,78):null)}function dSn(n){B_n(),Nmn(this),this.a=new Tt,QV(this,n),Ke(this.a,n)}function bSn(){RO(this),this.b=new fn(Ft,Ft),this.a=new fn(Qt,Qt)}function wSn(n,e){this.c=0,this.b=e,qkn.call(this,n,17493),this.a=this.c}function y$(n){CC(),!vf&&(this.c=n,this.e=!0,this.a=new X)}function CC(){CC=N,vf=!0,Fzn=!1,xzn=!1,Nzn=!1,Lzn=!1}function CX(n,e){return I(e,149)?Mn(n.c,u(e,149).c):!1}function TX(n,e){var t;return t=0,n&&(t+=n.f.a/2),e&&(t+=e.f.a/2),t}function j$(n,e){var t;return t=u(xd(n.d,e),23),t||u(xd(n.e,e),23)}function gSn(n){this.b=n,ie.call(this,n),this.a=u(Rn(this.b.a,4),126)}function pSn(n){this.b=n,w2.call(this,n),this.a=u(Rn(this.b.a,4),126)}function Ou(n){return n.t||(n.t=new Amn(n),s6(new _9n(n),0,n.t)),n.t}function ude(){return sr(),A(M(e9,1),z,103,0,[kh,Ao,Zs,Jh,Yh])}function sde(){return qw(),A(M(c9,1),z,249,0,[Hl,Cy,Hhn,r9,qhn])}function ode(){return Ho(),A(M($1,1),z,175,0,[Xn,vi,Zf,Ya,D1])}function fde(){return P7(),A(M(gfn,1),z,316,0,[dfn,xK,wfn,LK,bfn])}function hde(){return b6(),A(M(Usn,1),z,315,0,[zsn,nK,eK,Lm,Nm])}function lde(){return Pa(),A(M(zcn,1),z,335,0,[f_,Gcn,h_,Em,jm])}function ade(){return g4(),A(M(eZn,1),z,355,0,[Ng,Ep,Qm,Vm,Jm])}function dde(){return Vw(),A(M(YWn,1),z,363,0,[SS,IS,OS,PS,AS])}function bde(){return Ss(),A(M(jun,1),z,163,0,[Qk,Sm,xl,Pm,Ub])}function T3(){T3=N;var n,e;cI=(Qp(),e=new fj,e),uI=(n=new BI,n)}function vSn(n){var e;return n.c||(e=n.r,I(e,88)&&(n.c=u(e,26))),n.c}function wde(n){return n.e=3,n.d=n.Yb(),n.e!=2?(n.e=0,!0):!1}function E$(n){var e,t,i;return e=n&Nu,t=n>>22&Nu,i=n<0?Wh:0,Bc(e,t,i)}function gde(n){var e,t,i,r;for(t=n,i=0,r=t.length;i0?g$n(n,e):BNn(n,-e)}function MX(n,e){return e==0||n.e==0?n:e>0?BNn(n,e):g$n(n,-e)}function ve(n){if(Se(n))return n.c=n.a,n.a.Pb();throw T(new ic)}function kSn(n){var e,t;return e=n.c.i,t=n.d.i,e.k==(Qn(),Xt)&&t.k==Xt}function C$(n){var e;return e=new Pd,Pr(e,n),H(e,(nn(),Mr),null),e}function T$(n,e,t){var i;return i=n.Yg(e),i>=0?n._g(i,t,!0):Yd(n,e,t)}function AX(n,e,t,i){var r;for(r=0;re)throw T(new mr(fY(n,e,"index")));return n}function M$(n,e,t,i){var r;return r=F(be,Le,25,e,15,1),Pve(r,n,e,t,i),r}function vde(n,e){var t;t=n.q.getHours()+(e/60|0),n.q.setMinutes(e),S6(n,t)}function mde(n,e){return y.Math.min(al(e.a,n.d.d.c),al(e.b,n.d.d.c))}function O2(n,e){return ki(e)?e==null?MY(n.f,null):$On(n.g,e):MY(n.f,e)}function sf(n){this.c=n,this.a=new E(this.c.a),this.b=new E(this.c.b)}function TC(){this.e=new X,this.c=new X,this.d=new X,this.b=new X}function TSn(){this.g=new zq,this.b=new zq,this.a=new X,this.k=new X}function MSn(n,e,t){this.a=n,this.c=e,this.d=t,W(e.e,this),W(t.b,this)}function ASn(n,e){Hkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function SSn(n,e){qkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function FX(n,e){FO.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function MC(n,e,t){this.a=n,this.b=e,this.c=t,W(n.t,this),W(e.i,this)}function AC(){this.b=new Tt,this.a=new Tt,this.b=new Tt,this.a=new Tt}function SC(){SC=N,Ym=new kt("org.eclipse.elk.labels.labelManager")}function PSn(){PSn=N,$cn=new ri("separateLayerConnections",(aT(),QR))}function No(){No=N,tw=new tz("REGULAR",0),Bl=new tz("CRITICAL",1)}function x8(){x8=N,uK=new YG("STACKED",0),iy=new YG("SEQUENCED",1)}function L8(){L8=N,FK=new oz("FIXED",0),IP=new oz("CENTER_NODE",1)}function kde(n,e){var t;return t=CEe(n,e),n.b=new tT(t.c.length),Lje(n,t)}function yde(n,e,t){var i;return++n.e,--n.f,i=u(n.d[e].$c(t),133),i.dd()}function ISn(n){var e;return n.a||(e=n.r,I(e,148)&&(n.a=u(e,148))),n.a}function xX(n){if(n.a){if(n.e)return xX(n.e)}else return n;return null}function jde(n,e){return n.pe.p?-1:0}function PC(n,e){return _n(e),n.c=0,"Initial capacity must not be negative")}function $Sn(){$Sn=N,Vzn=Fe((_o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])))}function FSn(){FSn=N,Jzn=Fe((Tu(),A(M(Qzn,1),z,461,0,[Vf,Ol,Co])))}function xSn(){xSn=N,Zzn=Fe((Yc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])))}function LSn(){LSn=N,Bzn=Fe((lf(),A(M(Bu,1),z,132,0,[Win,ls,Rb])))}function NSn(){NSn=N,bWn=Fe((W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])))}function BSn(){BSn=N,PWn=Fe((qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])))}function RSn(){RSn=N,oXn=Fe((F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])))}function _Sn(){_Sn=N,fXn=Fe((VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])))}function KSn(){KSn=N,dXn=Fe((ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])))}function HSn(){HSn=N,rXn=Fe((Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])))}function qSn(){qSn=N,yXn=Fe((Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])))}function GSn(){GSn=N,mXn=Fe((q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])))}function zSn(){zSn=N,RQn=Fe((i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])))}function USn(){USn=N,WQn=Fe((oT(),A(M(ion,1),z,375,0,[eon,cK,ton])))}function WSn(){WSn=N,qQn=Fe((Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])))}function XSn(){XSn=N,UQn=Fe((ur(),A(M(zQn,1),z,452,0,[Bm,Su,xc])))}function VSn(){VSn=N,JQn=Fe((dT(),A(M(hon,1),z,377,0,[fK,pv,ew])))}function QSn(){QSn=N,VQn=Fe((Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])))}function JSn(){JSn=N,QQn=Fe((uT(),A(M(fon,1),z,338,0,[oon,oK,son])))}function YSn(){YSn=N,hJn=Fe((_d(),A(M(fJn,1),z,454,0,[ry,_m,aP])))}function ZSn(){ZSn=N,pYn=Fe((CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])))}function nPn(){nPn=N,mYn=Fe((f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])))}function ePn(){ePn=N,LYn=Fe((ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])))}function tPn(){tPn=N,xYn=Fe((sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])))}function iPn(){iPn=N,iZn=Fe((w7(),A(M(OK,1),z,437,0,[AP,SP,PP])))}function rPn(){rPn=N,une=Fe((_h(),A(M(Khn,1),z,334,0,[HP,F1,i9])))}function cPn(){cPn=N,tne=Fe((of(),A(M(Phn,1),z,272,0,[jv,cw,Ev])))}function Pde(){return Mi(),A(M(Ghn,1),z,98,0,[ql,Ef,Tv,td,Eh,Ac])}function wa(n,e){return!n.o&&(n.o=new Xu((Dc(),Ul),S0,n,0)),NF(n.o,e)}function Ide(n){return!n.g&&(n.g=new Qy),!n.g.d&&(n.g.d=new Cmn(n)),n.g.d}function Ode(n){return!n.g&&(n.g=new Qy),!n.g.a&&(n.g.a=new Tmn(n)),n.g.a}function Dde(n){return!n.g&&(n.g=new Qy),!n.g.b&&(n.g.b=new Emn(n)),n.g.b}function N8(n){return!n.g&&(n.g=new Qy),!n.g.c&&(n.g.c=new Mmn(n)),n.g.c}function $de(n,e,t){var i,r;for(r=new H3(e,n),i=0;it||e=0?n._g(t,!0,!0):Yd(n,e,!0)}function Qde(n,e){return ni(K(Y(k(n,(G(),k0)))),K(Y(k(e,k0))))}function aPn(){aPn=N,aYn=Xd(Xd(Dj(new li,(c4(),qm)),(k6(),pP)),aK)}function Jde(n,e,t){var i;return i=tDn(n,e,t),n.b=new tT(i.c.length),JY(n,i)}function Yde(n){if(n.b<=0)throw T(new ic);return--n.b,n.a-=n.c.c,Q(n.a)}function Zde(n){var e;if(!n.a)throw T(new gTn);return e=n.a,n.a=Pt(n.a),e}function n0e(n){for(;!n.a;)if(!nEn(n.c,new Xvn(n)))return!1;return!0}function $2(n){var e;return pe(n),I(n,198)?(e=u(n,198),e):new dvn(n)}function e0e(n){DC(),u(n.We((Xe(),rw)),174).Fc((Mu(),Ty)),n.Ye(eH,null)}function DC(){DC=N,SZn=new n2n,IZn=new e2n,PZn=Rwe((Xe(),eH),SZn,_l,IZn)}function $C(){$C=N,Ion=new sz("LEAF_NUMBER",0),TK=new sz("NODE_SIZE",1)}function t0e(n,e,t){n.a=e,n.c=t,n.b.a.$b(),_s(n.d),n.e.a.c=F(Zn,rn,1,0,5,1)}function $$(n){n.a=F(be,Le,25,n.b+1,15,1),n.c=F(be,Le,25,n.b,15,1),n.d=0}function i0e(n,e){n.a.ue(e.d,n.b)>0&&(W(n.c,new QU(e.c,e.d,n.d)),n.b=e.d)}function zX(n,e){if(n.g==null||e>=n.i)throw T(new xO(e,n.i));return n.g[e]}function dPn(n,e,t){if(W3(n,t),t!=null&&!n.wj(t))throw T(new xI);return t}function bPn(n){var e;if(n.Ek())for(e=n.i-1;e>=0;--e)D(n,e);return gX(n)}function r0e(n){var e,t;if(!n.b)return null;for(t=n.b;e=t.a[0];)t=e;return t}function c0e(n,e){var t,i;return LAn(e),t=(i=n.slice(0,e),WX(i,n)),t.length=e,t}function S3(n,e,t,i){var r;i=(Ow(),i||Lin),r=n.slice(e,t),hY(r,n,e,t,-e,i)}function Cs(n,e,t,i,r){return e<0?Yd(n,t,i):u(t,66).Nj().Pj(n,n.yh(),e,i,r)}function u0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Nr(n)}function s0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Nr(n)}function wPn(n,e){if(e.a)throw T(new _r(wKn));ci(n.a,e),e.a=n,!n.j&&(n.j=e)}function UX(n,e){FO.call(this,e.rd(),e.qd()&-16449),_n(n),this.a=n,this.c=e}function gPn(n,e){var t,i;return i=e/n.c.Hd().gc()|0,t=e%n.c.Hd().gc(),D2(n,i,t)}function Tu(){Tu=N,Vf=new oO(Y2,0),Ol=new oO(I4,1),Co=new oO(Z2,2)}function FC(){FC=N,vR=new Lj("All",0),qin=new lyn,Gin=new Eyn,zin=new ayn}function pPn(){pPn=N,Dzn=Fe((FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])))}function vPn(){vPn=N,EWn=Fe((G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])))}function mPn(){mPn=N,CUn=Fe((Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])))}function kPn(){kPn=N,MUn=Fe((K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])))}function yPn(){yPn=N,PUn=Fe((d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])))}function jPn(){jPn=N,WJn=Fe((c4(),A(M(won,1),z,393,0,[gP,qm,uy,Gm])))}function EPn(){EPn=N,HWn=Fe((aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])))}function CPn(){CPn=N,FYn=Fe((qT(),A(M(zon,1),z,340,0,[SK,qon,Gon,Hon])))}function TPn(){TPn=N,JWn=Fe((hf(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])))}function MPn(){MPn=N,_Qn=Fe((wb(),A(M(Z_,1),z,197,0,[fP,Y_,xg,Fg])))}function APn(){APn=N,Ene=Fe((Vu(),A(M(jne,1),z,396,0,[gs,Yhn,Jhn,Zhn])))}function SPn(){SPn=N,one=Fe((us(),A(M(sne,1),z,285,0,[Ey,yh,Kl,jy])))}function PPn(){PPn=N,ine=Fe((Hh(),A(M(cH,1),z,218,0,[rH,yy,Cv,Sp])))}function IPn(){IPn=N,kne=Fe((AT(),A(M(Qhn,1),z,311,0,[oH,Whn,Vhn,Xhn])))}function OPn(){OPn=N,vne=Fe((Qu(),A(M(o9,1),z,374,0,[Ay,id,My,uw])))}function DPn(){DPn=N,mM(),F1n=Ft,Tee=Qt,x1n=new S9(Ft),Mee=new S9(Qt)}function K8(){K8=N,Vcn=new VG(Xh,0),xS=new VG("IMPROVE_STRAIGHTNESS",1)}function o0e(n,e){return h3(),W(n,new Si(e,Q(e.e.c.length+e.g.c.length)))}function f0e(n,e){return h3(),W(n,new Si(e,Q(e.e.c.length+e.g.c.length)))}function WX(n,e){return U8(e)!=10&&A($u(e),e.hm,e.__elementTypeId$,U8(e),n),n}function Jc(n,e){var t;return t=xr(n,e,0),t==-1?!1:(h1(n,t),!0)}function $Pn(n,e){var t;return t=u(O2(n.e,e),387),t?(ZU(t),t.e):null}function P3(n){var e;return Fr(n)&&(e=0-n,!isNaN(e))?e:bl(z3(n))}function xr(n,e,t){for(;t=0?BT(n,t,!0,!0):Yd(n,e,!0)}function YX(n,e){Qv();var t,i;return t=S2(n),i=S2(e),!!t&&!!i&&!V$n(t.k,i.k)}function a0e(n,e){nu(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function d0e(n,e){eu(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function b0e(n,e){Rd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function w0e(n,e){Bd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function BPn(n){(this.q?this.q:(Pn(),Pn(),vh)).Ac(n.q?n.q:(Pn(),Pn(),vh))}function g0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function p0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function RPn(n,e){vrn=new Wy,AUn=e,gm=n,u(gm.b,65),BX(gm,vrn,null),DRn(gm)}function B$(n,e,t){var i;return i=n.g[e],k5(n,e,n.oi(e,t)),n.gi(e,t,i),n.ci(),i}function BC(n,e){var t;return t=n.Xc(e),t>=0?(n.$c(t),!0):!1}function R$(n){var e;return n.d!=n.r&&(e=qs(n),n.e=!!e&&e.Cj()==kGn,n.d=e),n.e}function _$(n,e){var t;for(pe(n),pe(e),t=!1;e.Ob();)t=t|n.Fc(e.Pb());return t}function xd(n,e){var t;return t=u(te(n.e,e),387),t?(Oyn(n,t),t.e):null}function _Pn(n){var e,t;return e=n/60|0,t=n%60,t==0?""+e:""+e+":"+(""+t)}function qr(n,e){var t,i;return Ta(n),i=new FX(e,n.a),t=new iEn(i),new $n(n,t)}function ub(n,e){var t=n.a[e],i=(cF(),dR)[typeof t];return i?i(t):tQ(typeof t)}function v0e(n){switch(n.g){case 0:return nt;case 1:return-1;default:return 0}}function m0e(n){return mJ(n,(I3(),pin))<0?-xce(z3(n)):n.l+n.m*J2+n.h*$a}function U8(n){return n.__elementTypeCategory$==null?10:n.__elementTypeCategory$}function K$(n){var e;return e=n.b.c.length==0?null:un(n.b,0),e!=null&&J$(n,0),e}function KPn(n,e){for(;e[0]0&&arguments[0]!==void 0?arguments[0]:{},Ki=Ge.defaultLayoutOptions,Ii=Ki===void 0?{}:Ki,An=Ge.algorithms,Uc=An===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:An,Nc=Ge.workerFactory,ju=Ge.workerUrl;if(y(this,Bt),this.defaultLayoutOptions=Ii,this.initialized=!1,typeof ju>"u"&&typeof Nc>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var vr=Nc;typeof ju<"u"&&typeof Nc>"u"&&(vr=function(q1){return new Worker(q1)});var Jo=vr(ju);if(typeof Jo.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new Lc(Jo),this.worker.postMessage({cmd:"register",algorithms:Uc}).then(function(H1){return qt.initialized=!0}).catch(console.err)}return Et(Bt,[{key:"layout",value:function(Ge){var Ki=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Ii=Ki.layoutOptions,An=Ii===void 0?this.defaultLayoutOptions:Ii,Uc=Ki.logging,Nc=Uc===void 0?!1:Uc,ju=Ki.measureExecutionTime,vr=ju===void 0?!1:ju;return Ge?this.worker.postMessage({cmd:"layout",graph:Ge,layoutOptions:An,options:{logging:Nc,measureExecutionTime:vr}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),Bt}();Vt.default=Ht;var Lc=function(){function Bt(qt){var Ge=this;if(y(this,Bt),qt===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=qt,this.worker.onmessage=function(Ki){setTimeout(function(){Ge.receive(Ge,Ki)},0)}}return Et(Bt,[{key:"postMessage",value:function(Ge){var Ki=this.id||0;this.id=Ki+1,Ge.id=Ki;var Ii=this;return new Promise(function(An,Uc){Ii.resolvers[Ki]=function(Nc,ju){Nc?(Ii.convertGwtStyleError(Nc),Uc(Nc)):An(ju)},Ii.worker.postMessage(Ge)})}},{key:"receive",value:function(Ge,Ki){var Ii=Ki.data,An=Ge.resolvers[Ii.id];An&&(delete Ge.resolvers[Ii.id],Ii.error?An(Ii.error):An(null,Ii.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(Ge){if(Ge){var Ki=Ge.__java$exception;Ki&&(Ki.cause&&Ki.cause.backingJsObject&&(Ge.cause=Ki.cause.backingJsObject,this.convertGwtStyleError(Ge.cause)),delete Ge.__java$exception)}}}]),Bt}()},{}],2:[function(ft,dt,Vt){(function(Et){(function(){var y;typeof window<"u"?y=window:typeof Et<"u"?y=Et:typeof self<"u"&&(y=self);var Ht;function Lc(){}function Bt(){}function qt(){}function Ge(){}function Ki(){}function Ii(){}function An(){}function Uc(){}function Nc(){}function ju(){}function vr(){}function Jo(){}function H1(){}function q1(){}function ww(){}function Np(){}function G1(){}function Th(){}function Q1n(){}function J1n(){}function zy(){}function Y1n(){}function Z1n(){}function nln(){}function eln(){}function Xg(){}function N(){}function tln(){}function aI(){}function iln(){}function rln(){}function cln(){}function uln(){}function DH(){}function sln(){}function oln(){}function fln(){}function z1(){}function U1(){}function dI(){}function hln(){}function lln(){}function aln(){}function $H(){}function dln(){}function bln(){}function Vg(){}function Qg(){}function wln(){}function gln(){}function pln(){}function vln(){}function FH(){}function W1(){}function Jg(){}function Yg(){}function mln(){}function Vee(){}function bI(){}function kln(){}function yln(){}function jln(){}function Eln(){}function Cln(){}function Tln(){}function Mln(){}function Aln(){}function Sln(){}function Pln(){}function Iln(){}function Oln(){}function Dln(){}function $ln(){}function Fln(){}function xln(){}function Lln(){}function Nln(){}function Bln(){}function Rln(){}function _ln(){}function Kln(){}function Hln(){}function qln(){}function Gln(){}function zln(){}function Uln(){}function Wln(){}function Xln(){}function Vln(){}function Qln(){}function Jln(){}function Yln(){}function xH(){}function Zln(){}function nan(){}function ean(){}function tan(){}function wI(){}function gI(){}function Uy(){}function ian(){}function ran(){}function pI(){}function can(){}function uan(){}function san(){}function Wy(){}function oan(){}function fan(){}function han(){}function lan(){}function aan(){}function dan(){}function ban(){}function wan(){}function gan(){}function LH(){}function pan(){}function van(){}function man(){}function kan(){}function yan(){}function NH(){}function jan(){}function Ean(){}function Can(){}function Tan(){}function Man(){}function Aan(){}function San(){}function Pan(){}function Ian(){}function Oan(){}function Dan(){}function $an(){}function Fan(){}function xan(){}function vI(){}function Lan(){}function Nan(){}function Ban(){}function Ran(){}function _an(){}function BH(){}function Kan(){}function Han(){}function qan(){}function Gan(){}function zan(){}function Uan(){}function Wan(){}function Xan(){}function Van(){}function Qan(){}function Jan(){}function Yan(){}function Zan(){}function ndn(){}function edn(){}function tdn(){}function idn(){}function rdn(){}function cdn(){}function udn(){}function sdn(){}function odn(){}function fdn(){}function hdn(){}function ldn(){}function adn(){}function ddn(){}function bdn(){}function wdn(){}function gdn(){}function pdn(){}function vdn(){}function mdn(){}function kdn(){}function ydn(){}function jdn(){}function Edn(){}function Cdn(){}function Tdn(){}function Mdn(){}function Adn(){}function Sdn(){}function Pdn(){}function Idn(){}function Odn(){}function Ddn(){}function $dn(){}function Fdn(){}function xdn(){}function Ldn(){}function Ndn(){}function Bdn(){}function Rdn(){}function _dn(){}function Kdn(){}function Hdn(){}function qdn(){}function Gdn(){}function zdn(){}function Udn(){}function Wdn(){}function Xdn(){}function Vdn(){}function Qdn(){}function Jdn(){}function Ydn(){}function Zdn(){}function n0n(){}function e0n(){}function t0n(){}function i0n(){}function r0n(){}function c0n(){}function u0n(){}function s0n(){}function o0n(){}function f0n(){}function h0n(){}function l0n(){}function a0n(){}function d0n(){}function b0n(){}function w0n(){}function g0n(){}function p0n(){}function v0n(){}function m0n(){}function k0n(){}function y0n(){}function j0n(){}function E0n(){}function C0n(){}function T0n(){}function M0n(){}function A0n(){}function S0n(){}function P0n(){}function I0n(){}function O0n(){}function D0n(){}function RH(){}function $0n(){}function F0n(){}function x0n(){}function L0n(){}function N0n(){}function B0n(){}function R0n(){}function _0n(){}function K0n(){}function H0n(){}function q0n(){}function G0n(){}function z0n(){}function U0n(){}function W0n(){}function X0n(){}function V0n(){}function Q0n(){}function J0n(){}function Y0n(){}function Z0n(){}function nbn(){}function ebn(){}function tbn(){}function ibn(){}function rbn(){}function cbn(){}function ubn(){}function sbn(){}function obn(){}function fbn(){}function hbn(){}function lbn(){}function abn(){}function dbn(){}function bbn(){}function wbn(){}function gbn(){}function pbn(){}function vbn(){}function mbn(){}function kbn(){}function ybn(){}function jbn(){}function Ebn(){}function Cbn(){}function Tbn(){}function Mbn(){}function Abn(){}function Sbn(){}function Pbn(){}function Ibn(){}function Obn(){}function Dbn(){}function $bn(){}function Fbn(){}function xbn(){}function Lbn(){}function Nbn(){}function Bbn(){}function Rbn(){}function _bn(){}function Kbn(){}function Hbn(){}function qbn(){}function Gbn(){}function zbn(){}function _H(){}function Ubn(){}function Wbn(){}function Xbn(){}function Vbn(){}function Qbn(){}function Jbn(){}function Ybn(){}function Zbn(){}function nwn(){}function ewn(){}function twn(){}function iwn(){}function rwn(){}function cwn(){}function uwn(){}function swn(){}function own(){}function fwn(){}function hwn(){}function lwn(){}function KH(){}function awn(){}function dwn(){}function bwn(){}function wwn(){}function gwn(){}function pwn(){}function HH(){}function qH(){}function vwn(){}function GH(){}function zH(){}function mwn(){}function kwn(){}function ywn(){}function jwn(){}function Ewn(){}function Cwn(){}function Twn(){}function Mwn(){}function Awn(){}function UH(){}function Swn(){}function Pwn(){}function Iwn(){}function Own(){}function Dwn(){}function $wn(){}function Fwn(){}function xwn(){}function Lwn(){}function Nwn(){}function Bwn(){}function Rwn(){}function _wn(){}function Kwn(){}function Hwn(){}function qwn(){}function Gwn(){}function zwn(){}function Uwn(){}function Wwn(){}function Xwn(){}function Vwn(){}function Qwn(){}function Jwn(){}function Ywn(){}function Zwn(){}function ngn(){}function egn(){}function tgn(){}function ign(){}function rgn(){}function cgn(){}function ugn(){}function sgn(){}function ogn(){}function fgn(){}function hgn(){}function lgn(){}function agn(){}function dgn(){}function bgn(){}function wgn(){}function ggn(){}function pgn(){}function vgn(){}function mgn(){}function kgn(){}function ygn(){}function jgn(){}function Egn(){}function Cgn(){}function Tgn(){}function Mgn(){}function Agn(){}function Sgn(){}function Pgn(){}function Ign(){}function Ogn(){}function Dgn(){}function $gn(){}function Fgn(){}function xgn(){}function Lgn(){}function Ngn(){}function Bgn(){}function Rgn(){}function _gn(){}function Kgn(){}function mI(){}function kI(){}function yI(){}function Hgn(){}function qgn(){}function Ggn(){}function zgn(){}function Ugn(){}function WH(){}function Wgn(){}function Xgn(){}function Qee(){}function Vgn(){}function Qgn(){}function Jgn(){}function Ygn(){}function Zgn(){}function n2n(){}function e2n(){}function Zl(){}function t2n(){}function Zg(){}function XH(){}function i2n(){}function r2n(){}function c2n(){}function u2n(){}function s2n(){}function o2n(){}function f2n(){}function h2n(){}function l2n(){}function a2n(){}function d2n(){}function b2n(){}function w2n(){}function g2n(){}function p2n(){}function v2n(){}function m2n(){}function k2n(){}function y2n(){}function j2n(){}function E2n(){}function dn(){}function C2n(){}function T2n(){}function M2n(){}function A2n(){}function S2n(){}function P2n(){}function I2n(){}function O2n(){}function D2n(){}function $2n(){}function jI(){}function F2n(){}function x2n(){}function L2n(){}function N2n(){}function B2n(){}function VH(){}function Xy(){}function Vy(){}function R2n(){}function QH(){}function Qy(){}function _2n(){}function K2n(){}function H2n(){}function q2n(){}function G2n(){}function z2n(){}function Jy(){}function U2n(){}function W2n(){}function X2n(){}function Yy(){}function V2n(){}function JH(){}function Q2n(){}function EI(){}function YH(){}function J2n(){}function Y2n(){}function Z2n(){}function npn(){}function Jee(){}function epn(){}function tpn(){}function ipn(){}function rpn(){}function cpn(){}function upn(){}function spn(){}function opn(){}function fpn(){}function hpn(){}function Bp(){}function CI(){}function lpn(){}function apn(){}function dpn(){}function bpn(){}function wpn(){}function gpn(){}function ppn(){}function vpn(){}function mpn(){}function kpn(){}function ypn(){}function jpn(){}function Epn(){}function Cpn(){}function Tpn(){}function Mpn(){}function Apn(){}function Spn(){}function Ppn(){}function Ipn(){}function Opn(){}function Dpn(){}function $pn(){}function Fpn(){}function xpn(){}function Lpn(){}function Npn(){}function Bpn(){}function Rpn(){}function _pn(){}function Kpn(){}function Hpn(){}function qpn(){}function Gpn(){}function zpn(){}function Upn(){}function Wpn(){}function Xpn(){}function Vpn(){}function Qpn(){}function Jpn(){}function Ypn(){}function Zpn(){}function n3n(){}function e3n(){}function t3n(){}function i3n(){}function r3n(){}function c3n(){}function u3n(){}function s3n(){}function o3n(){}function f3n(){}function h3n(){}function l3n(){}function a3n(){}function d3n(){}function b3n(){}function w3n(){}function g3n(){}function p3n(){}function v3n(){}function m3n(){}function k3n(){}function y3n(){}function j3n(){}function E3n(){}function C3n(){}function T3n(){}function M3n(){}function A3n(){}function S3n(){}function P3n(){}function I3n(){}function O3n(){}function D3n(){}function $3n(){}function F3n(){}function x3n(){}function L3n(){}function N3n(){}function B3n(){}function R3n(){}function _3n(){}function K3n(){}function H3n(){}function q3n(){}function G3n(){}function z3n(){}function U3n(){}function W3n(){}function X3n(){}function V3n(){}function Q3n(){}function J3n(){}function Y3n(){}function Z3n(){}function n4n(){}function e4n(){}function t4n(){}function i4n(){}function ZH(){}function r4n(){}function c4n(){}function TI(){Rv()}function u4n(){pF()}function s4n(){a6()}function o4n(){WT()}function f4n(){YJ()}function h4n(){Go()}function l4n(){fJ()}function a4n(){C7()}function d4n(){q9()}function b4n(){H9()}function w4n(){w8()}function g4n(){v7n()}function p4n(){x2()}function v4n(){Sj()}function m4n(){PSn()}function k4n(){HIn()}function y4n(){sPn()}function j4n(){CMn()}function E4n(){V3()}function C4n(){yl()}function T4n(){qIn()}function M4n(){pAn()}function A4n(){zZ()}function S4n(){IFn()}function P4n(){TMn()}function I4n(){nn()}function O4n(){EMn()}function D4n(){GIn()}function $4n(){WOn()}function F4n(){AMn()}function x4n(){aPn()}function L4n(){m7n()}function N4n(){$Y()}function B4n(){gb()}function R4n(){pOn()}function _4n(){S7()}function K4n(){Ux()}function H4n(){ZF()}function q4n(){Zd()}function G4n(){PV()}function z4n(){MMn()}function U4n(){BBn()}function W4n(){IY()}function X4n(){Bx()}function V4n(){DC()}function Q4n(){nM()}function nq(){Xe()}function J4n(){wT()}function Y4n(){NQ()}function eq(){mM()}function Fo(){dEn()}function tq(){eF()}function Z4n(){pZ()}function iq(n){_n(n)}function nvn(n){this.a=n}function Zy(n){this.a=n}function evn(n){this.a=n}function tvn(n){this.a=n}function ivn(n){this.a=n}function rvn(n){this.a=n}function cvn(n){this.a=n}function uvn(n){this.a=n}function rq(n){this.a=n}function cq(n){this.a=n}function svn(n){this.a=n}function MI(n){this.a=n}function ovn(n){this.a=n}function AI(n){this.a=n}function fvn(n){this.a=n}function SI(n){this.a=n}function hvn(n){this.a=n}function PI(n){this.a=n}function lvn(n){this.a=n}function avn(n){this.a=n}function dvn(n){this.a=n}function uq(n){this.b=n}function bvn(n){this.c=n}function wvn(n){this.a=n}function gvn(n){this.a=n}function pvn(n){this.a=n}function vvn(n){this.a=n}function mvn(n){this.a=n}function kvn(n){this.a=n}function yvn(n){this.a=n}function jvn(n){this.a=n}function Evn(n){this.a=n}function Cvn(n){this.a=n}function Tvn(n){this.a=n}function Mvn(n){this.a=n}function Avn(n){this.a=n}function sq(n){this.a=n}function oq(n){this.a=n}function nj(n){this.a=n}function M9(n){this.a=n}function na(){this.a=[]}function Svn(n,e){n.a=e}function Yee(n,e){n.a=e}function Zee(n,e){n.b=e}function nte(n,e){n.b=e}function ete(n,e){n.b=e}function fq(n,e){n.j=e}function tte(n,e){n.g=e}function ite(n,e){n.i=e}function rte(n,e){n.c=e}function cte(n,e){n.d=e}function ute(n,e){n.d=e}function ste(n,e){n.c=e}function ea(n,e){n.k=e}function ote(n,e){n.c=e}function hq(n,e){n.c=e}function lq(n,e){n.a=e}function fte(n,e){n.a=e}function hte(n,e){n.f=e}function lte(n,e){n.a=e}function ate(n,e){n.b=e}function II(n,e){n.d=e}function ej(n,e){n.i=e}function aq(n,e){n.o=e}function dte(n,e){n.r=e}function bte(n,e){n.a=e}function wte(n,e){n.b=e}function Pvn(n,e){n.e=e}function gte(n,e){n.f=e}function dq(n,e){n.g=e}function pte(n,e){n.e=e}function vte(n,e){n.f=e}function mte(n,e){n.f=e}function kte(n,e){n.n=e}function yte(n,e){n.a=e}function jte(n,e){n.a=e}function Ete(n,e){n.c=e}function Cte(n,e){n.c=e}function Tte(n,e){n.d=e}function Mte(n,e){n.e=e}function Ate(n,e){n.g=e}function Ste(n,e){n.a=e}function Pte(n,e){n.c=e}function Ite(n,e){n.d=e}function Ote(n,e){n.e=e}function Dte(n,e){n.f=e}function $te(n,e){n.j=e}function Fte(n,e){n.a=e}function xte(n,e){n.b=e}function Lte(n,e){n.a=e}function Ivn(n){n.b=n.a}function Ovn(n){n.c=n.d.d}function $v(n){this.d=n}function ta(n){this.a=n}function Rp(n){this.a=n}function bq(n){this.a=n}function Mh(n){this.a=n}function A9(n){this.a=n}function Dvn(n){this.a=n}function wq(n){this.a=n}function S9(n){this.a=n}function gq(n){this.a=n}function pq(n){this.a=n}function vq(n){this.a=n}function L0(n){this.a=n}function P9(n){this.a=n}function I9(n){this.a=n}function mq(n){this.b=n}function _p(n){this.b=n}function Kp(n){this.b=n}function OI(n){this.a=n}function $vn(n){this.a=n}function kq(n){this.a=n}function DI(n){this.c=n}function E(n){this.c=n}function Fvn(n){this.c=n}function yq(n){this.a=n}function jq(n){this.a=n}function Eq(n){this.a=n}function Cq(n){this.a=n}function ut(n){this.a=n}function xvn(n){this.a=n}function Tq(n){this.a=n}function Mq(n){this.a=n}function Lvn(n){this.a=n}function Nvn(n){this.a=n}function Fv(n){this.a=n}function Bvn(n){this.a=n}function Rvn(n){this.a=n}function _vn(n){this.a=n}function Kvn(n){this.a=n}function Hvn(n){this.a=n}function qvn(n){this.a=n}function Gvn(n){this.a=n}function zvn(n){this.a=n}function Uvn(n){this.a=n}function Wvn(n){this.a=n}function Xvn(n){this.a=n}function Vvn(n){this.a=n}function Qvn(n){this.a=n}function Jvn(n){this.a=n}function Yvn(n){this.a=n}function Zvn(n){this.a=n}function n5n(n){this.a=n}function O9(n){this.a=n}function e5n(n){this.a=n}function t5n(n){this.a=n}function tj(n){this.a=n}function i5n(n){this.a=n}function r5n(n){this.a=n}function Hp(n){this.a=n}function Aq(n){this.a=n}function c5n(n){this.a=n}function u5n(n){this.a=n}function s5n(n){this.a=n}function o5n(n){this.a=n}function f5n(n){this.a=n}function Sq(n){this.a=n}function Pq(n){this.a=n}function Iq(n){this.a=n}function ij(n){this.a=n}function rj(n){this.e=n}function qp(n){this.a=n}function h5n(n){this.a=n}function n2(n){this.a=n}function Oq(n){this.a=n}function l5n(n){this.a=n}function a5n(n){this.a=n}function d5n(n){this.a=n}function b5n(n){this.a=n}function w5n(n){this.a=n}function g5n(n){this.a=n}function p5n(n){this.a=n}function v5n(n){this.a=n}function m5n(n){this.a=n}function k5n(n){this.a=n}function y5n(n){this.a=n}function Dq(n){this.a=n}function j5n(n){this.a=n}function E5n(n){this.a=n}function C5n(n){this.a=n}function T5n(n){this.a=n}function M5n(n){this.a=n}function A5n(n){this.a=n}function S5n(n){this.a=n}function P5n(n){this.a=n}function I5n(n){this.a=n}function O5n(n){this.a=n}function D5n(n){this.a=n}function $5n(n){this.a=n}function F5n(n){this.a=n}function x5n(n){this.a=n}function L5n(n){this.a=n}function N5n(n){this.a=n}function B5n(n){this.a=n}function R5n(n){this.a=n}function _5n(n){this.a=n}function K5n(n){this.a=n}function H5n(n){this.a=n}function q5n(n){this.a=n}function G5n(n){this.a=n}function z5n(n){this.a=n}function U5n(n){this.a=n}function W5n(n){this.a=n}function X5n(n){this.a=n}function V5n(n){this.a=n}function Q5n(n){this.a=n}function J5n(n){this.a=n}function Y5n(n){this.a=n}function Z5n(n){this.a=n}function n6n(n){this.a=n}function e6n(n){this.a=n}function t6n(n){this.a=n}function i6n(n){this.a=n}function r6n(n){this.a=n}function c6n(n){this.c=n}function u6n(n){this.b=n}function s6n(n){this.a=n}function o6n(n){this.a=n}function f6n(n){this.a=n}function h6n(n){this.a=n}function l6n(n){this.a=n}function a6n(n){this.a=n}function d6n(n){this.a=n}function b6n(n){this.a=n}function w6n(n){this.a=n}function g6n(n){this.a=n}function p6n(n){this.a=n}function v6n(n){this.a=n}function m6n(n){this.a=n}function k6n(n){this.a=n}function y6n(n){this.a=n}function j6n(n){this.a=n}function E6n(n){this.a=n}function C6n(n){this.a=n}function T6n(n){this.a=n}function M6n(n){this.a=n}function A6n(n){this.a=n}function S6n(n){this.a=n}function P6n(n){this.a=n}function I6n(n){this.a=n}function X1(n){this.a=n}function e2(n){this.a=n}function O6n(n){this.a=n}function D6n(n){this.a=n}function $6n(n){this.a=n}function F6n(n){this.a=n}function x6n(n){this.a=n}function L6n(n){this.a=n}function N6n(n){this.a=n}function B6n(n){this.a=n}function R6n(n){this.a=n}function _6n(n){this.a=n}function K6n(n){this.a=n}function H6n(n){this.a=n}function q6n(n){this.a=n}function G6n(n){this.a=n}function z6n(n){this.a=n}function U6n(n){this.a=n}function cj(n){this.a=n}function W6n(n){this.a=n}function X6n(n){this.a=n}function V6n(n){this.a=n}function Q6n(n){this.a=n}function J6n(n){this.a=n}function Y6n(n){this.a=n}function Z6n(n){this.a=n}function nmn(n){this.a=n}function emn(n){this.a=n}function tmn(n){this.a=n}function imn(n){this.a=n}function rmn(n){this.a=n}function cmn(n){this.a=n}function umn(n){this.a=n}function smn(n){this.a=n}function omn(n){this.a=n}function fmn(n){this.a=n}function hmn(n){this.a=n}function lmn(n){this.a=n}function amn(n){this.a=n}function dmn(n){this.a=n}function bmn(n){this.a=n}function wmn(n){this.a=n}function gmn(n){this.a=n}function pmn(n){this.a=n}function vmn(n){this.a=n}function mmn(n){this.a=n}function kmn(n){this.a=n}function $q(n){this.a=n}function kt(n){this.b=n}function ymn(n){this.f=n}function Fq(n){this.a=n}function jmn(n){this.a=n}function Emn(n){this.a=n}function Cmn(n){this.a=n}function Tmn(n){this.a=n}function Mmn(n){this.a=n}function Amn(n){this.a=n}function Smn(n){this.a=n}function Pmn(n){this.a=n}function D9(n){this.a=n}function Imn(n){this.a=n}function Omn(n){this.b=n}function xq(n){this.c=n}function uj(n){this.e=n}function Dmn(n){this.a=n}function sj(n){this.a=n}function oj(n){this.a=n}function $I(n){this.a=n}function $mn(n){this.a=n}function Fmn(n){this.d=n}function Lq(n){this.a=n}function Nq(n){this.a=n}function cd(n){this.e=n}function Nte(){this.a=0}function gw(){dyn(this)}function X(){RO(this)}function we(){Cu(this)}function FI(){pTn(this)}function xmn(){}function ud(){this.c=p1n}function Bte(n,e){e.Wb(n)}function Lmn(n,e){n.b+=e}function Nmn(n){n.b=new JI}function T(n){return n.e}function Rte(n){return n.a}function _te(n){return n.a}function Kte(n){return n.a}function Hte(n){return n.a}function qte(n){return n.a}function Gte(){return null}function zte(){return null}function Ute(){EG(),iTe()}function Wte(n){n.b.tf(n.e)}function xv(n,e){n.b=e-n.b}function Lv(n,e){n.a=e-n.a}function Bmn(n,e){e.ad(n.a)}function Xte(n,e){si(e,n)}function Vte(n,e,t){n.Od(t,e)}function $9(n,e){n.e=e,e.b=n}function Bq(n){$f(),this.a=n}function Rmn(n){$f(),this.a=n}function _mn(n){$f(),this.a=n}function Rq(n){nb(),this.a=n}function Kmn(n){k3(),aR.be(n)}function ia(){Qyn.call(this)}function _q(){Qyn.call(this)}function Kq(){ia.call(this)}function xI(){ia.call(this)}function Hmn(){ia.call(this)}function F9(){ia.call(this)}function fu(){ia.call(this)}function Nv(){ia.call(this)}function ye(){ia.call(this)}function vs(){ia.call(this)}function qmn(){ia.call(this)}function ic(){ia.call(this)}function Gmn(){ia.call(this)}function zmn(){this.a=this}function fj(){this.Bb|=256}function Umn(){this.b=new Xkn}function Hq(){Hq=N,new we}function qq(){Kq.call(this)}function Wmn(n,e){n.length=e}function hj(n,e){W(n.a,e)}function Qte(n,e){nY(n.c,e)}function Jte(n,e){ci(n.b,e)}function Yte(n,e){KT(n.a,e)}function Zte(n,e){MF(n.a,e)}function Gp(n,e){et(n.e,e)}function t2(n){iM(n.c,n.b)}function nie(n,e){n.kc().Nb(e)}function Gq(n){this.a=Yge(n)}function hi(){this.a=new we}function Xmn(){this.a=new we}function lj(){this.a=new X}function LI(){this.a=new X}function zq(){this.a=new X}function Ns(){this.a=new Oln}function ra(){this.a=new TSn}function Uq(){this.a=new LH}function Wq(){this.a=new h7n}function Vmn(){this.a=new YMn}function Xq(){this.a=new bMn}function Vq(){this.a=new Bjn}function Qmn(){this.a=new X}function Qq(){this.a=new X}function Jmn(){this.a=new X}function Ymn(){this.a=new X}function Zmn(){this.d=new X}function n9n(){this.a=new hi}function e9n(){this.a=new we}function t9n(){this.b=new we}function i9n(){this.b=new X}function Jq(){this.e=new X}function r9n(){this.d=new X}function c9n(){this.a=new C4n}function u9n(){X.call(this)}function Yq(){lj.call(this)}function s9n(){kE.call(this)}function o9n(){Qq.call(this)}function NI(){Bv.call(this)}function Bv(){xmn.call(this)}function i2(){xmn.call(this)}function Zq(){i2.call(this)}function f9n(){zTn.call(this)}function h9n(){zTn.call(this)}function l9n(){uG.call(this)}function a9n(){uG.call(this)}function d9n(){uG.call(this)}function b9n(){sG.call(this)}function hu(){Tt.call(this)}function nG(){B2n.call(this)}function eG(){B2n.call(this)}function w9n(){O9n.call(this)}function g9n(){O9n.call(this)}function p9n(){we.call(this)}function v9n(){we.call(this)}function m9n(){we.call(this)}function k9n(){hi.call(this)}function BI(){RIn.call(this)}function y9n(){fj.call(this)}function RI(){Oz.call(this)}function _I(){Oz.call(this)}function tG(){we.call(this)}function KI(){we.call(this)}function j9n(){we.call(this)}function iG(){Yy.call(this)}function E9n(){Yy.call(this)}function C9n(){iG.call(this)}function T9n(){ZH.call(this)}function M9n(n){hIn.call(this,n)}function A9n(n){hIn.call(this,n)}function rG(n){rq.call(this,n)}function cG(n){n7n.call(this,n)}function eie(n){cG.call(this,n)}function tie(n){n7n.call(this,n)}function zp(){this.a=new Tt}function uG(){this.a=new hi}function sG(){this.a=new we}function S9n(){this.a=new X}function P9n(){this.j=new X}function oG(){this.a=new Rgn}function I9n(){this.a=new T8n}function O9n(){this.a=new X2n}function HI(){HI=N,uR=new V9n}function qI(){qI=N,cR=new X9n}function Rv(){Rv=N,rR=new Bt}function aj(){aj=N,fR=new Xyn}function iie(n){cG.call(this,n)}function rie(n){cG.call(this,n)}function D9n(n){m$.call(this,n)}function $9n(n){m$.call(this,n)}function F9n(n){uEn.call(this,n)}function GI(n){C5e.call(this,n)}function sd(n){_0.call(this,n)}function _v(n){Cj.call(this,n)}function fG(n){Cj.call(this,n)}function x9n(n){Cj.call(this,n)}function _r(n){kCn.call(this,n)}function L9n(n){_r.call(this,n)}function r2(){M9.call(this,{})}function dj(n){c3(),this.a=n}function Kv(n){n.b=null,n.c=0}function cie(n,e){n.e=e,NNn(n,e)}function uie(n,e){n.a=e,h6e(n)}function zI(n,e,t){n.a[e.g]=t}function sie(n,e,t){M4e(t,n,e)}function oie(n,e){$ue(e.i,n.n)}function N9n(n,e){Fwe(n).td(e)}function fie(n,e){return n*n/e}function B9n(n,e){return n.g-e.g}function hie(n){return new nj(n)}function lie(n){return new Z0(n)}function bj(n){_r.call(this,n)}function mr(n){_r.call(this,n)}function R9n(n){_r.call(this,n)}function UI(n){kCn.call(this,n)}function WI(n){AV(),this.a=n}function _9n(n){aEn(),this.a=n}function N0(n){ED(),this.f=n}function XI(n){ED(),this.f=n}function Up(n){_r.call(this,n)}function Hn(n){_r.call(this,n)}function $r(n){_r.call(this,n)}function K9n(n){_r.call(this,n)}function c2(n){_r.call(this,n)}function on(n){return _n(n),n}function K(n){return _n(n),n}function x9(n){return _n(n),n}function hG(n){return _n(n),n}function aie(n){return _n(n),n}function Hv(n){return n.b==n.c}function B0(n){return!!n&&n.b}function die(n){return!!n&&n.k}function bie(n){return!!n&&n.j}function Hu(n){_n(n),this.a=n}function lG(n){return ja(n),n}function qv(n){EW(n,n.length)}function t1(n){_r.call(this,n)}function Sf(n){_r.call(this,n)}function VI(n){_r.call(this,n)}function pw(n){_r.call(this,n)}function Gv(n){_r.call(this,n)}function Ee(n){_r.call(this,n)}function QI(n){Vz.call(this,n,0)}function JI(){iX.call(this,12,3)}function aG(){aG=N,din=new Q1n}function H9n(){H9n=N,ain=new Lc}function wj(){wj=N,dm=new H1}function q9n(){q9n=N,vzn=new ww}function G9n(){throw T(new ye)}function dG(){throw T(new ye)}function z9n(){throw T(new ye)}function wie(){throw T(new ye)}function gie(){throw T(new ye)}function pie(){throw T(new ye)}function YI(){this.a=Ce(pe(Ji))}function u2(n){$f(),this.a=pe(n)}function U9n(n,e){n.Td(e),e.Sd(n)}function vie(n,e){n.a.ec().Mc(e)}function mie(n,e,t){n.c.lf(e,t)}function bG(n){mr.call(this,n)}function Pf(n){Hn.call(this,n)}function i1(){A9.call(this,"")}function zv(){A9.call(this,"")}function V1(){A9.call(this,"")}function R0(){A9.call(this,"")}function wG(n){mr.call(this,n)}function Wp(n){_p.call(this,n)}function ZI(n){lE.call(this,n)}function W9n(n){Wp.call(this,n)}function X9n(){AI.call(this,null)}function V9n(){AI.call(this,null)}function gj(){gj=N,k3()}function Q9n(){Q9n=N,Szn=Z4e()}function J9n(n){return n.a?n.b:0}function kie(n){return n.a?n.b:0}function yie(n,e){return n.a-e.a}function jie(n,e){return n.a-e.a}function Eie(n,e){return n.a-e.a}function pj(n,e){return WX(n,e)}function M(n,e){return pMn(n,e)}function Cie(n,e){return e in n.a}function Y9n(n,e){return n.f=e,n}function Tie(n,e){return n.b=e,n}function Z9n(n,e){return n.c=e,n}function Mie(n,e){return n.g=e,n}function gG(n,e){return n.a=e,n}function pG(n,e){return n.f=e,n}function Aie(n,e){return n.k=e,n}function vG(n,e){return n.a=e,n}function Sie(n,e){return n.e=e,n}function mG(n,e){return n.e=e,n}function Pie(n,e){return n.f=e,n}function Iie(n,e){n.b=!0,n.d=e}function Oie(n,e){n.b=new kr(e)}function Die(n,e,t){e.td(n.a[t])}function $ie(n,e,t){e.we(n.a[t])}function Fie(n,e){return n.b-e.b}function xie(n,e){return n.g-e.g}function Lie(n,e){return n.s-e.s}function Nie(n,e){return n?0:e-1}function n8n(n,e){return n?0:e-1}function Bie(n,e){return n?e-1:0}function Rie(n,e){return e.Yf(n)}function od(n,e){return n.b=e,n}function vj(n,e){return n.a=e,n}function fd(n,e){return n.c=e,n}function hd(n,e){return n.d=e,n}function ld(n,e){return n.e=e,n}function kG(n,e){return n.f=e,n}function Uv(n,e){return n.a=e,n}function Xp(n,e){return n.b=e,n}function Vp(n,e){return n.c=e,n}function gn(n,e){return n.c=e,n}function Dn(n,e){return n.b=e,n}function pn(n,e){return n.d=e,n}function vn(n,e){return n.e=e,n}function _ie(n,e){return n.f=e,n}function mn(n,e){return n.g=e,n}function kn(n,e){return n.a=e,n}function yn(n,e){return n.i=e,n}function jn(n,e){return n.j=e,n}function e8n(n,e){return n.k=e,n}function Kie(n,e){return n.j=e,n}function Hie(n,e){yl(),Hr(e,n)}function qie(n,e,t){Nfe(n.a,e,t)}function t8n(n){mTn.call(this,n)}function yG(n){mTn.call(this,n)}function mj(n){uD.call(this,n)}function i8n(n){u2e.call(this,n)}function Q1(n){Ld.call(this,n)}function r8n(n){XD.call(this,n)}function c8n(n){XD.call(this,n)}function u8n(){Mz.call(this,"")}function Li(){this.a=0,this.b=0}function s8n(){this.b=0,this.a=0}function o8n(n,e){n.b=0,hb(n,e)}function Gie(n,e){n.c=e,n.b=!0}function f8n(n,e){return n.c._b(e)}function xo(n){return n.e&&n.e()}function nO(n){return n?n.d:null}function h8n(n,e){return LDn(n.b,e)}function zie(n){return n?n.g:null}function Uie(n){return n?n.i:null}function J1(n){return Ph(n),n.o}function ad(){ad=N,Mne=h4e()}function l8n(){l8n=N,mi=jve()}function Qp(){Qp=N,g1n=a4e()}function a8n(){a8n=N,hee=l4e()}function jG(){jG=N,oc=s6e()}function EG(){EG=N,Wl=N3()}function d8n(){throw T(new ye)}function b8n(){throw T(new ye)}function w8n(){throw T(new ye)}function g8n(){throw T(new ye)}function p8n(){throw T(new ye)}function v8n(){throw T(new ye)}function kj(n){this.a=new s2(n)}function CG(n){d_n(),gTe(this,n)}function Y1(n){this.a=new AD(n)}function vw(n,e){for(;n.ye(e););}function TG(n,e){for(;n.sd(e););}function mw(n,e){return n.a+=e,n}function eO(n,e){return n.a+=e,n}function r1(n,e){return n.a+=e,n}function dd(n,e){return n.a+=e,n}function Wv(n){return fl(n),n.a}function yj(n){return n.b!=n.d.c}function m8n(n){return n.l|n.m<<22}function MG(n,e){return n.d[e.p]}function k8n(n,e){return Q8e(n,e)}function AG(n,e,t){n.splice(e,t)}function y8n(n){n.c?rBn(n):cBn(n)}function jj(n){this.a=0,this.b=n}function j8n(){this.a=new B7(Pon)}function E8n(){this.b=new B7(won)}function C8n(){this.b=new B7(OK)}function T8n(){this.b=new B7(OK)}function M8n(){throw T(new ye)}function A8n(){throw T(new ye)}function S8n(){throw T(new ye)}function P8n(){throw T(new ye)}function I8n(){throw T(new ye)}function O8n(){throw T(new ye)}function D8n(){throw T(new ye)}function $8n(){throw T(new ye)}function F8n(){throw T(new ye)}function x8n(){throw T(new ye)}function Wie(){throw T(new ic)}function Xie(){throw T(new ic)}function L9(n){this.a=new L8n(n)}function L8n(n){cbe(this,n,cve())}function N9(n){return!n||iTn(n)}function B9(n){return Mf[n]!=-1}function Vie(){_A!=0&&(_A=0),KA=-1}function N8n(){iR==null&&(iR=[])}function Qie(n,e){$x(R(n.a),e)}function Jie(n,e){$x(R(n.a),e)}function R9(n,e){Sw.call(this,n,e)}function Jp(n,e){R9.call(this,n,e)}function SG(n,e){this.b=n,this.c=e}function B8n(n,e){this.b=n,this.a=e}function R8n(n,e){this.a=n,this.b=e}function _8n(n,e){this.a=n,this.b=e}function K8n(n,e){this.a=n,this.b=e}function H8n(n,e){this.a=n,this.b=e}function q8n(n,e){this.a=n,this.b=e}function G8n(n,e){this.a=n,this.b=e}function z8n(n,e){this.a=n,this.b=e}function U8n(n,e){this.a=n,this.b=e}function W8n(n,e){this.b=n,this.a=e}function X8n(n,e){this.b=n,this.a=e}function V8n(n,e){this.b=n,this.a=e}function Q8n(n,e){this.b=n,this.a=e}function Oe(n,e){this.f=n,this.g=e}function Yp(n,e){this.e=n,this.d=e}function bd(n,e){this.g=n,this.i=e}function tO(n,e){this.a=n,this.b=e}function J8n(n,e){this.a=n,this.f=e}function Y8n(n,e){this.b=n,this.c=e}function Yie(n,e){this.a=n,this.b=e}function Z8n(n,e){this.a=n,this.b=e}function iO(n,e){this.a=n,this.b=e}function n7n(n){Bz(n.dc()),this.c=n}function Ej(n){this.b=u(pe(n),83)}function e7n(n){this.a=u(pe(n),83)}function _0(n){this.a=u(pe(n),15)}function t7n(n){this.a=u(pe(n),15)}function Cj(n){this.b=u(pe(n),47)}function Tj(){this.q=new y.Date}function nh(){nh=N,Sin=new tln}function Zp(){Zp=N,X4=new nln}function Xv(n){return n.f.c+n.g.c}function _9(n,e){return n.b.Hc(e)}function i7n(n,e){return n.b.Ic(e)}function r7n(n,e){return n.b.Qc(e)}function c7n(n,e){return n.b.Hc(e)}function u7n(n,e){return n.c.uc(e)}function Ah(n,e){return n.a._b(e)}function s7n(n,e){return tt(n.c,e)}function o7n(n,e){return Uu(n.b,e)}function f7n(n,e){return n>e&&e0}function cO(n,e){return fc(n,e)<0}function n5(n,e){return n.a.get(e)}function lre(n,e){return e.split(n)}function S7n(n,e){return Uu(n.e,e)}function LG(n){return _n(n),!1}function xj(n){xn.call(this,n,21)}function are(n,e){cMn.call(this,n,e)}function Lj(n,e){Oe.call(this,n,e)}function uO(n,e){Oe.call(this,n,e)}function NG(n){_D(),uEn.call(this,n)}function BG(n,e){fCn(n,n.length,e)}function z9(n,e){BCn(n,n.length,e)}function dre(n,e,t){e.ud(n.a.Ge(t))}function bre(n,e,t){e.we(n.a.Fe(t))}function wre(n,e,t){e.td(n.a.Kb(t))}function gre(n,e,t){n.Mb(t)&&e.td(t)}function e5(n,e,t){n.splice(e,0,t)}function pre(n,e){return au(n.e,e)}function Nj(n,e){this.d=n,this.e=e}function P7n(n,e){this.b=n,this.a=e}function I7n(n,e){this.b=n,this.a=e}function RG(n,e){this.b=n,this.a=e}function O7n(n,e){this.a=n,this.b=e}function D7n(n,e){this.a=n,this.b=e}function $7n(n,e){this.a=n,this.b=e}function F7n(n,e){this.a=n,this.b=e}function f2(n,e){this.a=n,this.b=e}function _G(n,e){this.b=n,this.a=e}function KG(n,e){this.b=n,this.a=e}function Bj(n,e){Oe.call(this,n,e)}function Rj(n,e){Oe.call(this,n,e)}function HG(n,e){Oe.call(this,n,e)}function qG(n,e){Oe.call(this,n,e)}function kw(n,e){Oe.call(this,n,e)}function sO(n,e){Oe.call(this,n,e)}function oO(n,e){Oe.call(this,n,e)}function fO(n,e){Oe.call(this,n,e)}function _j(n,e){Oe.call(this,n,e)}function GG(n,e){Oe.call(this,n,e)}function hO(n,e){Oe.call(this,n,e)}function U9(n,e){Oe.call(this,n,e)}function Kj(n,e){Oe.call(this,n,e)}function lO(n,e){Oe.call(this,n,e)}function t5(n,e){Oe.call(this,n,e)}function zG(n,e){Oe.call(this,n,e)}function zt(n,e){Oe.call(this,n,e)}function Hj(n,e){Oe.call(this,n,e)}function x7n(n,e){this.a=n,this.b=e}function L7n(n,e){this.a=n,this.b=e}function N7n(n,e){this.a=n,this.b=e}function B7n(n,e){this.a=n,this.b=e}function R7n(n,e){this.a=n,this.b=e}function _7n(n,e){this.a=n,this.b=e}function K7n(n,e){this.a=n,this.b=e}function H7n(n,e){this.a=n,this.b=e}function q7n(n,e){this.a=n,this.b=e}function UG(n,e){this.b=n,this.a=e}function G7n(n,e){this.b=n,this.a=e}function z7n(n,e){this.b=n,this.a=e}function U7n(n,e){this.b=n,this.a=e}function t3(n,e){this.c=n,this.d=e}function W7n(n,e){this.e=n,this.d=e}function X7n(n,e){this.a=n,this.b=e}function V7n(n,e){this.b=e,this.c=n}function qj(n,e){Oe.call(this,n,e)}function W9(n,e){Oe.call(this,n,e)}function aO(n,e){Oe.call(this,n,e)}function i5(n,e){Oe.call(this,n,e)}function WG(n,e){Oe.call(this,n,e)}function dO(n,e){Oe.call(this,n,e)}function bO(n,e){Oe.call(this,n,e)}function X9(n,e){Oe.call(this,n,e)}function XG(n,e){Oe.call(this,n,e)}function wO(n,e){Oe.call(this,n,e)}function r5(n,e){Oe.call(this,n,e)}function VG(n,e){Oe.call(this,n,e)}function c5(n,e){Oe.call(this,n,e)}function u5(n,e){Oe.call(this,n,e)}function H0(n,e){Oe.call(this,n,e)}function gO(n,e){Oe.call(this,n,e)}function pO(n,e){Oe.call(this,n,e)}function QG(n,e){Oe.call(this,n,e)}function s5(n,e){Oe.call(this,n,e)}function vO(n,e){Oe.call(this,n,e)}function Gj(n,e){Oe.call(this,n,e)}function V9(n,e){Oe.call(this,n,e)}function Q9(n,e){Oe.call(this,n,e)}function h2(n,e){Oe.call(this,n,e)}function mO(n,e){Oe.call(this,n,e)}function JG(n,e){Oe.call(this,n,e)}function kO(n,e){Oe.call(this,n,e)}function yO(n,e){Oe.call(this,n,e)}function YG(n,e){Oe.call(this,n,e)}function jO(n,e){Oe.call(this,n,e)}function EO(n,e){Oe.call(this,n,e)}function CO(n,e){Oe.call(this,n,e)}function TO(n,e){Oe.call(this,n,e)}function ZG(n,e){Oe.call(this,n,e)}function Q7n(n,e){this.b=n,this.a=e}function J7n(n,e){this.a=n,this.b=e}function Y7n(n,e){this.a=n,this.b=e}function Z7n(n,e){this.a=n,this.b=e}function nkn(n,e){this.a=n,this.b=e}function nz(n,e){Oe.call(this,n,e)}function ez(n,e){Oe.call(this,n,e)}function ekn(n,e){this.b=n,this.d=e}function tz(n,e){Oe.call(this,n,e)}function iz(n,e){Oe.call(this,n,e)}function tkn(n,e){this.a=n,this.b=e}function ikn(n,e){this.a=n,this.b=e}function zj(n,e){Oe.call(this,n,e)}function o5(n,e){Oe.call(this,n,e)}function rz(n,e){Oe.call(this,n,e)}function cz(n,e){Oe.call(this,n,e)}function uz(n,e){Oe.call(this,n,e)}function MO(n,e){Oe.call(this,n,e)}function sz(n,e){Oe.call(this,n,e)}function AO(n,e){Oe.call(this,n,e)}function Uj(n,e){Oe.call(this,n,e)}function SO(n,e){Oe.call(this,n,e)}function PO(n,e){Oe.call(this,n,e)}function J9(n,e){Oe.call(this,n,e)}function IO(n,e){Oe.call(this,n,e)}function oz(n,e){Oe.call(this,n,e)}function Y9(n,e){Oe.call(this,n,e)}function fz(n,e){Oe.call(this,n,e)}function vre(n,e){return au(n.c,e)}function mre(n,e){return au(e.b,n)}function kre(n,e){return-n.b.Je(e)}function hz(n,e){return au(n.g,e)}function Z9(n,e){Oe.call(this,n,e)}function l2(n,e){Oe.call(this,n,e)}function rkn(n,e){this.a=n,this.b=e}function ckn(n,e){this.a=n,this.b=e}function fn(n,e){this.a=n,this.b=e}function f5(n,e){Oe.call(this,n,e)}function h5(n,e){Oe.call(this,n,e)}function n8(n,e){Oe.call(this,n,e)}function OO(n,e){Oe.call(this,n,e)}function Wj(n,e){Oe.call(this,n,e)}function l5(n,e){Oe.call(this,n,e)}function DO(n,e){Oe.call(this,n,e)}function Xj(n,e){Oe.call(this,n,e)}function yw(n,e){Oe.call(this,n,e)}function e8(n,e){Oe.call(this,n,e)}function a5(n,e){Oe.call(this,n,e)}function d5(n,e){Oe.call(this,n,e)}function t8(n,e){Oe.call(this,n,e)}function Vj(n,e){Oe.call(this,n,e)}function jw(n,e){Oe.call(this,n,e)}function Qj(n,e){Oe.call(this,n,e)}function ukn(n,e){this.a=n,this.b=e}function skn(n,e){this.a=n,this.b=e}function okn(n,e){this.a=n,this.b=e}function fkn(n,e){this.a=n,this.b=e}function hkn(n,e){this.a=n,this.b=e}function lkn(n,e){this.a=n,this.b=e}function Si(n,e){this.a=n,this.b=e}function Jj(n,e){Oe.call(this,n,e)}function akn(n,e){this.a=n,this.b=e}function dkn(n,e){this.a=n,this.b=e}function bkn(n,e){this.a=n,this.b=e}function wkn(n,e){this.a=n,this.b=e}function gkn(n,e){this.a=n,this.b=e}function pkn(n,e){this.a=n,this.b=e}function vkn(n,e){this.b=n,this.a=e}function mkn(n,e){this.b=n,this.a=e}function kkn(n,e){this.b=n,this.a=e}function ykn(n,e){this.b=n,this.a=e}function jkn(n,e){this.a=n,this.b=e}function Ekn(n,e){this.a=n,this.b=e}function yre(n,e){J9e(n.a,u(e,56))}function Ckn(n,e){f0e(n.a,u(e,11))}function jre(n,e){return h3(),e!=n}function Tkn(){return Q9n(),new Szn}function Mkn(){c$(),this.b=new hi}function Akn(){hM(),this.a=new hi}function Skn(){tX(),lW.call(this)}function a2(n,e){Oe.call(this,n,e)}function Pkn(n,e){this.a=n,this.b=e}function Ikn(n,e){this.a=n,this.b=e}function Yj(n,e){this.a=n,this.b=e}function Okn(n,e){this.a=n,this.b=e}function Dkn(n,e){this.a=n,this.b=e}function $kn(n,e){this.a=n,this.b=e}function Fkn(n,e){this.d=n,this.b=e}function lz(n,e){this.d=n,this.e=e}function xkn(n,e){this.f=n,this.c=e}function i8(n,e){this.b=n,this.c=e}function az(n,e){this.i=n,this.g=e}function Lkn(n,e){this.e=n,this.a=e}function Nkn(n,e){this.a=n,this.b=e}function dz(n,e){n.i=null,nT(n,e)}function Ere(n,e){n&&it($y,n,e)}function Bkn(n,e){return NF(n.a,e)}function Zj(n){return g7(n.c,n.b)}function Vr(n){return n?n.dd():null}function B(n){return n??null}function q0(n){return typeof n===X2}function G0(n){return typeof n===UZ}function ki(n){return typeof n===EL}function el(n,e){return n.Hd().Xb(e)}function nE(n,e){return Rbe(n.Kc(),e)}function gd(n,e){return fc(n,e)==0}function Cre(n,e){return fc(n,e)>=0}function b5(n,e){return fc(n,e)!=0}function Tre(n){return""+(_n(n),n)}function r8(n,e){return n.substr(e)}function Rkn(n){return Fu(n),n.d.gc()}function $O(n){return yme(n,n.c),n}function eE(n){return A5(n==null),n}function w5(n,e){return n.a+=""+e,n}function dr(n,e){return n.a+=""+e,n}function g5(n,e){return n.a+=""+e,n}function rc(n,e){return n.a+=""+e,n}function De(n,e){return n.a+=""+e,n}function bz(n,e){return n.a+=""+e,n}function _kn(n,e){Kt(n,e,n.a,n.a.a)}function ua(n,e){Kt(n,e,n.c.b,n.c)}function Mre(n,e,t){VFn(e,Mx(n,t))}function Are(n,e,t){VFn(e,Mx(n,t))}function Sre(n,e){k0e(new ie(n),e)}function Kkn(n,e){n.q.setTime($d(e))}function Hkn(n,e){kW.call(this,n,e)}function qkn(n,e){kW.call(this,n,e)}function FO(n,e){kW.call(this,n,e)}function Gkn(n){Cu(this),Z5(this,n)}function wz(n){return Ln(n,0),null}function Lo(n){return n.a=0,n.b=0,n}function zkn(n,e){return n.a=e.g+1,n}function Pre(n,e){return n.j[e.p]==2}function gz(n){return lhe(u(n,79))}function Ukn(){Ukn=N,jUn=Fe(qF())}function Wkn(){Wkn=N,RWn=Fe(PNn())}function Xkn(){this.b=new s2(sb(12))}function Vkn(){this.b=0,this.a=!1}function Qkn(){this.b=0,this.a=!1}function p5(n){this.a=n,TI.call(this)}function Jkn(n){this.a=n,TI.call(this)}function In(n,e){ri.call(this,n,e)}function xO(n,e){V0.call(this,n,e)}function Ew(n,e){az.call(this,n,e)}function LO(n,e){H3.call(this,n,e)}function Ykn(n,e){c8.call(this,n,e)}function He(n,e){$j(),it(eI,n,e)}function NO(n,e){return Zu(n.a,0,e)}function Zkn(n,e){return n.a.a.a.cc(e)}function nyn(n,e){return B(n)===B(e)}function Ire(n,e){return ni(n.a,e.a)}function Ore(n,e){return Wc(n.a,e.a)}function Dre(n,e){return xCn(n.a,e.a)}function If(n,e){return n.indexOf(e)}function pd(n,e){return n==e?0:n?1:-1}function tE(n){return n<10?"0"+n:""+n}function $re(n){return pe(n),new p5(n)}function eyn(n){return Bc(n.l,n.m,n.h)}function i3(n){return Gt((_n(n),n))}function Fre(n){return Gt((_n(n),n))}function tyn(n,e){return Wc(n.g,e.g)}function Fr(n){return typeof n===UZ}function xre(n){return n==b0||n==Hb}function Lre(n){return n==b0||n==Kb}function pz(n){return xr(n.b.b,n,0)}function iyn(n){this.a=Tkn(),this.b=n}function ryn(n){this.a=Tkn(),this.b=n}function Nre(n,e){return W(n.a,e),e}function Bre(n,e){return W(n.c,e),n}function cyn(n,e){return cs(n.a,e),n}function Rre(n,e){return wo(),e.a+=n}function _re(n,e){return wo(),e.a+=n}function Kre(n,e){return wo(),e.c+=n}function vz(n,e){S3(n,0,n.length,e)}function Sh(){Tq.call(this,new ba)}function uyn(){xE.call(this,0,0,0,0)}function d2(){ys.call(this,0,0,0,0)}function kr(n){this.a=n.a,this.b=n.b}function tl(n){return n==Zs||n==Ao}function r3(n){return n==Yh||n==Jh}function syn(n){return n==xg||n==Fg}function Cw(n){return n!=Ef&&n!=ql}function qu(n){return n.Lg()&&n.Mg()}function oyn(n){return JE(u(n,118))}function iE(n){return cs(new li,n)}function fyn(n,e){return new H3(e,n)}function Hre(n,e){return new H3(e,n)}function mz(n,e,t){UC(n,e),WC(n,t)}function rE(n,e,t){Rd(n,e),Bd(n,t)}function Yo(n,e,t){nu(n,e),eu(n,t)}function cE(n,e,t){D3(n,e),F3(n,t)}function uE(n,e,t){$3(n,e),x3(n,t)}function BO(n,e){X3(n,e),L3(n,n.D)}function kz(n){xkn.call(this,n,!0)}function hyn(n,e,t){fU.call(this,n,e,t)}function il(n){jl(),qbe.call(this,n)}function lyn(){Lj.call(this,"Head",1)}function ayn(){Lj.call(this,"Tail",3)}function RO(n){n.c=F(Zn,rn,1,0,5,1)}function dyn(n){n.a=F(Zn,rn,1,8,5,1)}function byn(n){Zc(n.xf(),new t5n(n))}function Tw(n){return n!=null?mt(n):0}function qre(n,e){return ob(e,ef(n))}function Gre(n,e){return ob(e,ef(n))}function zre(n,e){return n[n.length]=e}function Ure(n,e){return n[n.length]=e}function yz(n){return zoe(n.b.Kc(),n.a)}function Wre(n,e){return ZC(BD(n.d),e)}function Xre(n,e){return ZC(BD(n.g),e)}function Vre(n,e){return ZC(BD(n.j),e)}function tr(n,e){ri.call(this,n.b,e)}function vd(n){xE.call(this,n,n,n,n)}function jz(n){return n.b&&uL(n),n.a}function Ez(n){return n.b&&uL(n),n.c}function Qre(n,e){vf||(n.b=e)}function _O(n,e,t){return St(n,e,t),t}function wyn(n,e,t){St(n.c[e.g],e.g,t)}function Jre(n,e,t){u(n.c,69).Xh(e,t)}function Yre(n,e,t){Yo(t,t.i+n,t.j+e)}function Zre(n,e){me(bc(n.a),PMn(e))}function nce(n,e){me(Du(n.a),IMn(e))}function v5(n){Je(),cd.call(this,n)}function ece(n){return n==null?0:mt(n)}function gyn(){gyn=N,hK=new f6(cH)}function je(){je=N,new pyn,new X}function pyn(){new we,new we,new we}function Cz(){Cz=N,Hq(),bin=new we}function Zo(){Zo=N,y.Math.log(2)}function ms(){ms=N,Ch=(E7n(),Dne)}function tce(){throw T(new t1(izn))}function ice(){throw T(new t1(izn))}function rce(){throw T(new t1(rzn))}function cce(){throw T(new t1(rzn))}function vyn(n){this.a=n,HU.call(this,n)}function KO(n){this.a=n,Ej.call(this,n)}function HO(n){this.a=n,Ej.call(this,n)}function wi(n,e){mD(n.c,n.c.length,e)}function Kr(n){return n.ae?1:0}function kyn(n,e){return fc(n,e)>0?n:e}function Bc(n,e,t){return{l:n,m:e,h:t}}function uce(n,e){n.a!=null&&Ckn(e,n.a)}function yyn(n){n.a=new aI,n.c=new aI}function sE(n){this.b=n,this.a=new X}function jyn(n){this.b=new san,this.a=n}function Mz(n){vU.call(this),this.a=n}function Eyn(){Lj.call(this,"Range",2)}function Cyn(){kJ(),this.a=new B7(Hrn)}function sce(n,e){pe(e),Iw(n).Jc(new ju)}function oce(n,e){return ns(),e.n.b+=n}function fce(n,e,t){return it(n.g,t,e)}function hce(n,e,t){return it(n.k,t,e)}function lce(n,e){return it(n.a,e.a,e)}function Mw(n,e,t){return _Q(e,t,n.c)}function Az(n){return new fn(n.c,n.d)}function ace(n){return new fn(n.c,n.d)}function Qr(n){return new fn(n.a,n.b)}function Tyn(n,e){return xEe(n.a,e,null)}function dce(n){Hi(n,null),Ci(n,null)}function Myn(n){s$(n,null),o$(n,null)}function Ayn(){c8.call(this,null,null)}function Syn(){wE.call(this,null,null)}function Sz(n){this.a=n,we.call(this)}function bce(n){this.b=(Pn(),new DI(n))}function oE(n){n.j=F(Ain,q,310,0,0,1)}function wce(n,e,t){n.c.Vc(e,u(t,133))}function gce(n,e,t){n.c.ji(e,u(t,133))}function Pyn(n,e){de(n),n.Gc(u(e,15))}function m5(n,e){return Jje(n.c,n.b,e)}function pce(n,e){return new Jyn(n.Kc(),e)}function qO(n,e){return gwe(n.Kc(),e)!=-1}function Pz(n,e){return n.a.Bc(e)!=null}function fE(n){return n.Ob()?n.Pb():null}function Iyn(n){return Hs(n,0,n.length)}function I(n,e){return n!=null&&WF(n,e)}function vce(n,e){n.q.setHours(e),S6(n,e)}function Oyn(n,e){n.c&&(ZU(e),iMn(e))}function mce(n,e,t){u(n.Kb(t),164).Nb(e)}function kce(n,e,t){return SEe(n,e,t),t}function Dyn(n,e,t){n.a=e^1502,n.b=t^tN}function GO(n,e,t){return n.a[e.g][t.g]}function nf(n,e){return n.a[e.c.p][e.p]}function yce(n,e){return n.e[e.c.p][e.p]}function jce(n,e){return n.c[e.c.p][e.p]}function Ece(n,e){return n.j[e.p]=D9e(e)}function Cce(n,e){return DX(n.f,e.tg())}function Tce(n,e){return DX(n.b,e.tg())}function Mce(n,e){return n.a0?e*e/n:e*e*100}function Jce(n,e){return n>0?e/(n*n):e*100}function Yce(n,e,t){return W(e,e$n(n,t))}function Zce(n,e,t){DC(),n.Xe(e)&&t.td(n)}function s3(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function U0(n,e,t){return n.a+=e,n.b+=t,n}function nue(n,e,t){return n.a*=e,n.b*=t,n}function o8(n,e,t){return n.a-=e,n.b-=t,n}function Zz(n,e){return n.a=e.a,n.b=e.b,n}function vE(n){return n.a=-n.a,n.b=-n.b,n}function fjn(n){this.c=n,this.a=1,this.b=1}function hjn(n){this.c=n,nu(n,0),eu(n,0)}function ljn(n){Tt.call(this),V5(this,n)}function ajn(n){yL(),Nmn(this),this.mf(n)}function djn(n,e){Zv(),c8.call(this,n,e)}function nU(n,e){c1(),wE.call(this,n,e)}function bjn(n,e){c1(),wE.call(this,n,e)}function wjn(n,e){c1(),nU.call(this,n,e)}function Gu(n,e,t){Xu.call(this,n,e,t,2)}function JO(n,e){ms(),FE.call(this,n,e)}function gjn(n,e){ms(),JO.call(this,n,e)}function eU(n,e){ms(),JO.call(this,n,e)}function pjn(n,e){ms(),eU.call(this,n,e)}function tU(n,e){ms(),FE.call(this,n,e)}function vjn(n,e){ms(),tU.call(this,n,e)}function mjn(n,e){ms(),FE.call(this,n,e)}function eue(n,e){return n.c.Fc(u(e,133))}function iU(n,e,t){return jM(G8(n,e),t)}function tue(n,e,t){return e.Qk(n.e,n.c,t)}function iue(n,e,t){return e.Rk(n.e,n.c,t)}function YO(n,e){return pl(n.e,u(e,49))}function rue(n,e,t){s6(Du(n.a),e,IMn(t))}function cue(n,e,t){s6(bc(n.a),e,PMn(t))}function rU(n,e){e.$modCount=n.$modCount}function C5(){C5=N,Xm=new kt("root")}function o3(){o3=N,xy=new w9n,new g9n}function kjn(){this.a=new Od,this.b=new Od}function cU(){RIn.call(this),this.Bb|=Yi}function yjn(){Oe.call(this,"GROW_TREE",0)}function uue(n){return n==null?null:CCe(n)}function sue(n){return n==null?null:D5e(n)}function oue(n){return n==null?null:Nr(n)}function fue(n){return n==null?null:Nr(n)}function Ph(n){n.o==null&&u9e(n)}function sn(n){return A5(n==null||q0(n)),n}function Y(n){return A5(n==null||G0(n)),n}function Ce(n){return A5(n==null||ki(n)),n}function uU(n){this.q=new y.Date($d(n))}function f8(n,e){this.c=n,Yp.call(this,n,e)}function mE(n,e){this.a=n,f8.call(this,n,e)}function hue(n,e){this.d=n,Ovn(this),this.b=e}function sU(n,e){P$.call(this,n),this.a=e}function oU(n,e){P$.call(this,n),this.a=e}function lue(n){xQ.call(this,0,0),this.f=n}function fU(n,e,t){IC.call(this,n,e,t,null)}function jjn(n,e,t){IC.call(this,n,e,t,null)}function aue(n,e,t){return n.ue(e,t)<=0?t:e}function due(n,e,t){return n.ue(e,t)<=0?e:t}function bue(n,e){return u(xd(n.b,e),149)}function wue(n,e){return u(xd(n.c,e),229)}function ZO(n){return u(un(n.a,n.b),287)}function Ejn(n){return new fn(n.c,n.d+n.a)}function Cjn(n){return ns(),syn(u(n,197))}function W0(){W0=N,prn=Cn((Qu(),id))}function gue(n,e){e.a?e7e(n,e):zO(n.a,e.b)}function Tjn(n,e){vf||W(n.a,e)}function pue(n,e){return H9(),K3(e.d.i,n)}function vue(n,e){return x2(),new ABn(e,n)}function Df(n,e){return T8(e,ann),n.f=e,n}function hU(n,e,t){return t=os(n,e,3,t),t}function lU(n,e,t){return t=os(n,e,6,t),t}function aU(n,e,t){return t=os(n,e,9,t),t}function h8(n,e,t){++n.j,n.Ki(),A$(n,e,t)}function Mjn(n,e,t){++n.j,n.Hi(e,n.oi(e,t))}function Ajn(n,e,t){var i;i=n.Zc(e),i.Rb(t)}function Sjn(n,e,t){return MZ(n.c,n.b,e,t)}function dU(n,e){return(e&nt)%n.d.length}function ri(n,e){kt.call(this,n),this.a=e}function bU(n,e){xq.call(this,n),this.a=e}function nD(n,e){xq.call(this,n),this.a=e}function Pjn(n,e){this.c=n,Ld.call(this,e)}function Ijn(n,e){this.a=n,Omn.call(this,e)}function l8(n,e){this.a=n,Omn.call(this,e)}function Ojn(n){this.a=(rs(n,Pb),new Pc(n))}function Djn(n){this.a=(rs(n,Pb),new Pc(n))}function a8(n){return!n.a&&(n.a=new vr),n.a}function $jn(n){return n>8?0:n+1}function mue(n,e){return qn(),n==e?0:n?1:-1}function wU(n,e,t){return m2(n,u(e,22),t)}function kue(n,e,t){return n.apply(e,t)}function Fjn(n,e,t){return n.a+=Hs(e,0,t),n}function gU(n,e){var t;return t=n.e,n.e=e,t}function yue(n,e){var t;t=n[eN],t.call(n,e)}function jue(n,e){var t;t=n[eN],t.call(n,e)}function X0(n,e){n.a.Vc(n.b,e),++n.b,n.c=-1}function xjn(n){Cu(n.e),n.d.b=n.d,n.d.a=n.d}function d8(n){n.b?d8(n.b):n.f.c.zc(n.e,n.d)}function Eue(n,e,t){ca(),Svn(n,e.Ce(n.a,t))}function Cue(n,e){return nO(p$n(n.a,e,!0))}function Tue(n,e){return nO(v$n(n.a,e,!0))}function bo(n,e){return pj(new Array(e),n)}function eD(n){return String.fromCharCode(n)}function Mue(n){return n==null?null:n.message}function Ljn(){this.a=new X,this.b=new X}function Njn(){this.a=new LH,this.b=new Umn}function Bjn(){this.b=new Li,this.c=new X}function pU(){this.d=new Li,this.e=new Li}function vU(){this.n=new Li,this.o=new Li}function kE(){this.n=new i2,this.i=new d2}function Rjn(){this.a=new v4n,this.b=new cwn}function _jn(){this.a=new X,this.d=new X}function Kjn(){this.b=new hi,this.a=new hi}function Hjn(){this.b=new we,this.a=new we}function qjn(){this.b=new E8n,this.a=new sgn}function Gjn(){kE.call(this),this.a=new Li}function T5(n){Jbe.call(this,n,(FC(),vR))}function mU(n,e,t,i){xE.call(this,n,e,t,i)}function Aue(n,e,t){t!=null&&JC(e,rx(n,t))}function Sue(n,e,t){t!=null&&YC(e,rx(n,t))}function kU(n,e,t){return t=os(n,e,11,t),t}function st(n,e){return n.a+=e.a,n.b+=e.b,n}function yi(n,e){return n.a-=e.a,n.b-=e.b,n}function Pue(n,e){return n.n.a=(_n(e),e+10)}function Iue(n,e){return n.n.a=(_n(e),e+10)}function Oue(n,e){return e==n||o4(sM(e),n)}function zjn(n,e){return it(n.a,e,"")==null}function Due(n,e){return H9(),!K3(e.d.i,n)}function $ue(n,e){tl(n.f)?Qme(n,e):Fve(n,e)}function Fue(n,e){var t;return t=e.Hh(n.a),t}function V0(n,e){mr.call(this,rm+n+Ra+e)}function g2(n,e,t,i){V.call(this,n,e,t,i)}function yU(n,e,t,i){V.call(this,n,e,t,i)}function Ujn(n,e,t,i){yU.call(this,n,e,t,i)}function Wjn(n,e,t,i){zE.call(this,n,e,t,i)}function tD(n,e,t,i){zE.call(this,n,e,t,i)}function jU(n,e,t,i){zE.call(this,n,e,t,i)}function Xjn(n,e,t,i){tD.call(this,n,e,t,i)}function EU(n,e,t,i){tD.call(this,n,e,t,i)}function Fn(n,e,t,i){jU.call(this,n,e,t,i)}function Vjn(n,e,t,i){EU.call(this,n,e,t,i)}function Qjn(n,e,t,i){yW.call(this,n,e,t,i)}function Jjn(n,e,t){this.a=n,Vz.call(this,e,t)}function Yjn(n,e,t){this.c=e,this.b=t,this.a=n}function xue(n,e,t){return n.d=u(e.Kb(t),164)}function CU(n,e){return n.Aj().Nh().Kh(n,e)}function TU(n,e){return n.Aj().Nh().Ih(n,e)}function Zjn(n,e){return _n(n),B(n)===B(e)}function Mn(n,e){return _n(n),B(n)===B(e)}function iD(n,e){return nO(p$n(n.a,e,!1))}function rD(n,e){return nO(v$n(n.a,e,!1))}function Lue(n,e){return n.b.sd(new D7n(n,e))}function Nue(n,e){return n.b.sd(new $7n(n,e))}function nEn(n,e){return n.b.sd(new F7n(n,e))}function MU(n,e,t){return n.lastIndexOf(e,t)}function Bue(n,e,t){return ni(n[e.b],n[t.b])}function Rue(n,e){return H(e,(nn(),Jk),n)}function _ue(n,e){return Wc(e.a.d.p,n.a.d.p)}function Kue(n,e){return Wc(n.a.d.p,e.a.d.p)}function Hue(n,e){return ni(n.c-n.s,e.c-e.s)}function eEn(n){return n.c?xr(n.c.a,n,0):-1}function que(n){return n<100?null:new Q1(n)}function p2(n){return n==td||n==Eh||n==Ac}function tEn(n,e){return I(e,15)&&oBn(n.c,e)}function Gue(n,e){vf||e&&(n.d=e)}function cD(n,e){var t;return t=e,!!VV(n,t)}function AU(n,e){this.c=n,DD.call(this,n,e)}function iEn(n){this.c=n,FO.call(this,IM,0)}function rEn(n,e){Voe.call(this,n,n.length,e)}function zue(n,e,t){return u(n.c,69).lk(e,t)}function yE(n,e,t){return u(n.c,69).mk(e,t)}function Uue(n,e,t){return tue(n,u(e,332),t)}function SU(n,e,t){return iue(n,u(e,332),t)}function Wue(n,e,t){return txn(n,u(e,332),t)}function cEn(n,e,t){return zve(n,u(e,332),t)}function M5(n,e){return e==null?null:ab(n.b,e)}function PU(n){return G0(n)?(_n(n),n):n.ke()}function jE(n){return!isNaN(n)&&!isFinite(n)}function uEn(n){$f(),this.a=(Pn(),new Wp(n))}function b8(n){h3(),this.d=n,this.a=new gw}function ks(n,e,t){this.a=n,this.b=e,this.c=t}function sEn(n,e,t){this.a=n,this.b=e,this.c=t}function oEn(n,e,t){this.d=n,this.b=t,this.a=e}function uD(n){yyn(this),_s(this),Vi(this,n)}function du(n){RO(this),GU(this.c,0,n.Pc())}function fEn(n){Wu(n.a),uPn(n.c,n.b),n.b=null}function hEn(n){this.a=n,nh(),tu(Date.now())}function lEn(){lEn=N,Xin=new Lc,XA=new Lc}function sD(){sD=N,Rin=new iln,Pzn=new rln}function aEn(){aEn=N,Nne=F(Zn,rn,1,0,5,1)}function dEn(){dEn=N,eee=F(Zn,rn,1,0,5,1)}function IU(){IU=N,tee=F(Zn,rn,1,0,5,1)}function $f(){$f=N,new Bq((Pn(),Pn(),cr))}function Xue(n){return FC(),$e((pPn(),Dzn),n)}function Vue(n){return lf(),$e((LSn(),Bzn),n)}function Que(n){return $T(),$e((qAn(),Gzn),n)}function Jue(n){return RC(),$e((GAn(),zzn),n)}function Yue(n){return dM(),$e((IOn(),Uzn),n)}function Zue(n){return _o(),$e(($Sn(),Vzn),n)}function nse(n){return Tu(),$e((FSn(),Jzn),n)}function ese(n){return Yc(),$e((xSn(),Zzn),n)}function tse(n){return SM(),$e((Ukn(),jUn),n)}function ise(n){return Hd(),$e((mPn(),CUn),n)}function rse(n){return K2(),$e((kPn(),MUn),n)}function cse(n){return d6(),$e((yPn(),PUn),n)}function use(n){return Aj(),$e((yAn(),IUn),n)}function sse(n){return _C(),$e((zAn(),WUn),n)}function ose(n){return W5(),$e((NSn(),bWn),n)}function fse(n){return Qi(),$e((JPn(),vWn),n)}function hse(n){return G3(),$e((vPn(),EWn),n)}function lse(n){return qd(),$e((BSn(),PWn),n)}function OU(n,e){if(!n)throw T(new Hn(e))}function ase(n){return Qn(),$e((vIn(),$Wn),n)}function DU(n){xE.call(this,n.d,n.c,n.a,n.b)}function oD(n){xE.call(this,n.d,n.c,n.a,n.b)}function $U(n,e,t){this.b=n,this.c=e,this.a=t}function EE(n,e,t){this.b=n,this.a=e,this.c=t}function bEn(n,e,t){this.a=n,this.b=e,this.c=t}function FU(n,e,t){this.a=n,this.b=e,this.c=t}function wEn(n,e,t){this.a=n,this.b=e,this.c=t}function xU(n,e,t){this.a=n,this.b=e,this.c=t}function gEn(n,e,t){this.b=n,this.a=e,this.c=t}function CE(n,e,t){this.e=e,this.b=n,this.d=t}function dse(n,e,t){return ca(),n.a.Od(e,t),e}function fD(n){var e;return e=new Dln,e.e=n,e}function LU(n){var e;return e=new Zmn,e.b=n,e}function w8(){w8=N,sS=new Fdn,oS=new xdn}function wo(){wo=N,WWn=new pbn,XWn=new vbn}function bse(n){return aT(),$e((EPn(),HWn),n)}function wse(n){return hf(),$e((TPn(),JWn),n)}function gse(n){return lM(),$e((mOn(),cXn),n)}function pse(n){return q2(),$e((yIn(),uXn),n)}function vse(n){return OC(),$e((JAn(),sXn),n)}function mse(n){return F2(),$e((RSn(),oXn),n)}function kse(n){return Vw(),$e((UPn(),ZWn),n)}function yse(n){return Kd(),$e((HSn(),rXn),n)}function jse(n){return VC(),$e((_Sn(),fXn),n)}function Ese(n){return Pa(),$e((GPn(),hXn),n)}function Cse(n){return V8(),$e((WAn(),lXn),n)}function Tse(n){return ya(),$e((KSn(),dXn),n)}function Mse(n){return eM(),$e((TIn(),bXn),n)}function Ase(n){return K8(),$e((XAn(),wXn),n)}function Sse(n){return A7(),$e((EIn(),gXn),n)}function Pse(n){return h4(),$e((jIn(),pXn),n)}function Ise(n){return or(),$e((zOn(),vXn),n)}function Ose(n){return q3(),$e((GSn(),mXn),n)}function Dse(n){return Nh(),$e((qSn(),yXn),n)}function $se(n){return kC(),$e((YAn(),jXn),n)}function Fse(n){return Ss(),$e((WPn(),EXn),n)}function xse(n){return JT(),$e((CIn(),BQn),n)}function Lse(n){return i6(),$e((zSn(),RQn),n)}function Nse(n){return wb(),$e((MPn(),_Qn),n)}function Bse(n){return ur(),$e((XSn(),UQn),n)}function Rse(n){return Zw(),$e((vOn(),HQn),n)}function _se(n){return Rh(),$e((WSn(),qQn),n)}function Kse(n){return z8(),$e((QAn(),GQn),n)}function Hse(n){return oT(),$e((USn(),WQn),n)}function qse(n){return b6(),$e((zPn(),KQn),n)}function Gse(n){return x8(),$e((VAn(),XQn),n)}function zse(n){return Q3(),$e((QSn(),VQn),n)}function Use(n){return uT(),$e((JSn(),QQn),n)}function Wse(n){return dT(),$e((VSn(),JQn),n)}function Xse(n){return _d(),$e((YSn(),hJn),n)}function Vse(n){return z5(),$e((nSn(),wJn),n)}function Qse(n){return xf(),$e((eSn(),jJn),n)}function Jse(n){return tf(),$e((tSn(),CJn),n)}function Yse(n){return No(),$e((ZAn(),RJn),n)}function Zse(n){return Id(),$e((iSn(),UJn),n)}function noe(n){return c4(),$e((jPn(),WJn),n)}function eoe(n){return k6(),$e((MIn(),VJn),n)}function toe(n){return aC(),$e((uSn(),fYn),n)}function ioe(n){return iT(),$e((cSn(),wYn),n)}function roe(n){return gC(),$e((rSn(),hYn),n)}function coe(n){return CT(),$e((ZSn(),pYn),n)}function uoe(n){return $C(),$e((sSn(),vYn),n)}function soe(n){return f7(),$e((nPn(),mYn),n)}function ooe(n){return qT(),$e((CPn(),FYn),n)}function foe(n){return sT(),$e((tPn(),xYn),n)}function hoe(n){return ET(),$e((ePn(),LYn),n)}function loe(n){return g4(),$e((QPn(),tZn),n)}function aoe(n){return w7(),$e((iPn(),iZn),n)}function doe(n){return Pj(),$e((mAn(),rZn),n)}function boe(n){return Ij(),$e((vAn(),uZn),n)}function woe(n){return L8(),$e((fSn(),sZn),n)}function goe(n){return P7(),$e((XPn(),oZn),n)}function poe(n){return Jv(),$e((kAn(),CZn),n)}function voe(n){return c7(),$e((oSn(),TZn),n)}function moe(n){return Ho(),$e((VPn(),OZn),n)}function koe(n){return y1(),$e((kOn(),$Zn),n)}function yoe(n){return fh(),$e((kIn(),FZn),n)}function joe(n){return vb(),$e((mIn(),_Zn),n)}function Eoe(n){return rr(),$e((Wkn(),RWn),n)}function Coe(n){return B3(),$e((UAn(),BWn),n)}function Toe(n){return sr(),$e((YPn(),ene),n)}function Moe(n){return of(),$e((cPn(),tne),n)}function Aoe(n){return Hh(),$e((PPn(),ine),n)}function Soe(n){return ZT(),$e((SIn(),rne),n)}function Poe(n){return _h(),$e((rPn(),une),n)}function Ioe(n){return us(),$e((SPn(),one),n)}function Ooe(n){return jb(),$e((POn(),fne),n)}function Doe(n){return qw(),$e((ZPn(),hne),n)}function $oe(n){return Mi(),$e((bIn(),lne),n)}function Foe(n){return Mu(),$e((AIn(),ane),n)}function xoe(n){return Qu(),$e((OPn(),vne),n)}function Loe(n){return Lu(),$e((UOn(),mne),n)}function Noe(n){return J(),$e((nIn(),dne),n)}function Boe(n){return AT(),$e((IPn(),kne),n)}function Roe(n){return Vu(),$e((APn(),Ene),n)}function _oe(n){return d4(),$e((yOn(),Lne),n)}function Koe(n,e){return _n(n),n+(_n(e),e)}function Hoe(n,e){return nh(),me(R(n.a),e)}function qoe(n,e){return nh(),me(R(n.a),e)}function hD(n,e){this.c=n,this.a=e,this.b=e-n}function pEn(n,e,t){this.a=n,this.b=e,this.c=t}function NU(n,e,t){this.a=n,this.b=e,this.c=t}function BU(n,e,t){this.a=n,this.b=e,this.c=t}function vEn(n,e,t){this.a=n,this.b=e,this.c=t}function mEn(n,e,t){this.a=n,this.b=e,this.c=t}function s1(n,e,t){this.e=n,this.a=e,this.c=t}function kEn(n,e,t){ms(),QW.call(this,n,e,t)}function lD(n,e,t){ms(),FW.call(this,n,e,t)}function RU(n,e,t){ms(),FW.call(this,n,e,t)}function _U(n,e,t){ms(),FW.call(this,n,e,t)}function yEn(n,e,t){ms(),lD.call(this,n,e,t)}function KU(n,e,t){ms(),lD.call(this,n,e,t)}function jEn(n,e,t){ms(),KU.call(this,n,e,t)}function EEn(n,e,t){ms(),RU.call(this,n,e,t)}function CEn(n,e,t){ms(),_U.call(this,n,e,t)}function g8(n,e){return pe(n),pe(e),new z8n(n,e)}function v2(n,e){return pe(n),pe(e),new NEn(n,e)}function Goe(n,e){return pe(n),pe(e),new BEn(n,e)}function zoe(n,e){return pe(n),pe(e),new W8n(n,e)}function u(n,e){return A5(n==null||WF(n,e)),n}function f3(n){var e;return e=new X,_$(e,n),e}function Uoe(n){var e;return e=new hi,_$(e,n),e}function TEn(n){var e;return e=new Wq,nF(e,n),e}function p8(n){var e;return e=new Tt,nF(e,n),e}function Woe(n){return!n.e&&(n.e=new X),n.e}function Xoe(n){return!n.c&&(n.c=new Bp),n.c}function W(n,e){return n.c[n.c.length]=e,!0}function MEn(n,e){this.c=n,this.b=e,this.a=!1}function HU(n){this.d=n,Ovn(this),this.b=_fe(n.d)}function AEn(){this.a=";,;",this.b="",this.c=""}function Voe(n,e,t){SCn.call(this,e,t),this.a=n}function SEn(n,e,t){this.b=n,Hkn.call(this,e,t)}function qU(n,e,t){this.c=n,Nj.call(this,e,t)}function GU(n,e,t){aY(t,0,n,e,t.length,!1)}function th(n,e,t,i,r){n.b=e,n.c=t,n.d=i,n.a=r}function Qoe(n,e){e&&(n.b=e,n.a=(fl(e),e.a))}function zU(n,e,t,i,r){n.d=e,n.c=t,n.a=i,n.b=r}function UU(n){var e,t;e=n.b,t=n.c,n.b=t,n.c=e}function WU(n){var e,t;t=n.d,e=n.a,n.d=e,n.a=t}function XU(n){return bl(the(Fr(n)?Ks(n):n))}function Joe(n,e){return Wc(GEn(n.d),GEn(e.d))}function Yoe(n,e){return e==(J(),Gn)?n.c:n.d}function h3(){h3=N,don=(J(),Gn),dP=Vn}function PEn(){this.b=K(Y(cn((Go(),xR))))}function IEn(n){return ca(),F(Zn,rn,1,n,5,1)}function Zoe(n){return new fn(n.c+n.b,n.d+n.a)}function nfe(n,e){return Sj(),Wc(n.d.p,e.d.p)}function aD(n){return ne(n.b!=0),Ts(n,n.a.a)}function efe(n){return ne(n.b!=0),Ts(n,n.c.b)}function VU(n,e){if(!n)throw T(new R9n(e))}function TE(n,e){if(!n)throw T(new Hn(e))}function QU(n,e,t){t3.call(this,n,e),this.b=t}function v8(n,e,t){lz.call(this,n,e),this.c=t}function OEn(n,e,t){oIn.call(this,e,t),this.d=n}function JU(n){IU(),Yy.call(this),this.th(n)}function DEn(n,e,t){this.a=n,Ew.call(this,e,t)}function $En(n,e,t){this.a=n,Ew.call(this,e,t)}function ME(n,e,t){lz.call(this,n,e),this.c=t}function FEn(){T3(),khe.call(this,(Z1(),uo))}function xEn(n){return n!=null&&!$F(n,a9,d9)}function tfe(n,e){return(GDn(n)<<4|GDn(e))&Ut}function ife(n,e){return QE(),ex(n,e),new oTn(n,e)}function sa(n,e){var t;n.n&&(t=e,W(n.f,t))}function l3(n,e,t){var i;i=new Z0(t),Ro(n,e,i)}function rfe(n,e){var t;return t=n.c,wV(n,e),t}function YU(n,e){return e<0?n.g=-1:n.g=e,n}function AE(n,e){return H0e(n),n.a*=e,n.b*=e,n}function LEn(n,e,t,i,r){n.c=e,n.d=t,n.b=i,n.a=r}function Ke(n,e){return Kt(n,e,n.c.b,n.c),!0}function ZU(n){n.a.b=n.b,n.b.a=n.a,n.a=n.b=null}function dD(n){this.b=n,this.a=Ed(this.b.a).Ed()}function NEn(n,e){this.b=n,this.a=e,TI.call(this)}function BEn(n,e){this.a=n,this.b=e,TI.call(this)}function REn(n,e){SCn.call(this,e,1040),this.a=n}function m8(n){return n==0||isNaN(n)?n:n<0?-1:1}function cfe(n){return C2(),hh(n)==Pt(ml(n))}function ufe(n){return C2(),ml(n)==Pt(hh(n))}function jd(n,e){return v6(n,new t3(e.a,e.b))}function sfe(n){return!Xi(n)&&n.c.i.c==n.d.i.c}function SE(n){var e;return e=n.n,n.a.b+e.d+e.a}function _En(n){var e;return e=n.n,n.e.b+e.d+e.a}function nW(n){var e;return e=n.n,n.e.a+e.b+e.c}function KEn(n){return Je(),new ih(0,n)}function ofe(n){return n.a?n.a:WD(n)}function A5(n){if(!n)throw T(new Up(null))}function HEn(){HEn=N,mH=(Pn(),new OI(XB))}function PE(){PE=N,new JQ((HI(),uR),(qI(),cR))}function qEn(){qEn=N,jin=F(Wi,q,19,256,0,1)}function bD(n,e,t,i){MQ.call(this,n,e,t,i,0,0)}function ffe(n,e,t){return it(n.b,u(t.b,17),e)}function hfe(n,e,t){return it(n.b,u(t.b,17),e)}function lfe(n,e){return W(n,new fn(e.a,e.b))}function afe(n,e){return n.c=e)throw T(new qq)}function Xfe(n,e,t){return St(e,0,rW(e[0],t[0])),e}function Vfe(n,e,t){e.Ye(t,K(Y(te(n.b,t)))*n.a)}function ACn(n,e,t){return eg(),R3(n,e)&&R3(n,t)}function D5(n){return Mu(),!n.Hc(n1)&&!n.Hc(Gl)}function qE(n){return new fn(n.c+n.b/2,n.d+n.a/2)}function MD(n,e){return e.kh()?pl(n.b,u(e,49)):e}function kW(n,e){this.e=n,this.d=e&64?e|Bf:e}function SCn(n,e){this.c=0,this.d=n,this.b=e|64|Bf}function GE(n){this.b=new Pc(11),this.a=(Ow(),n)}function AD(n){this.b=null,this.a=(Ow(),n||Lin)}function PCn(n){this.a=Y$n(n.a),this.b=new du(n.b)}function ICn(n){this.b=n,b2.call(this,n),$yn(this)}function OCn(n){this.b=n,u8.call(this,n),Fyn(this)}function Y0(n,e,t){this.a=n,g2.call(this,e,t,5,6)}function yW(n,e,t,i){this.b=n,Yt.call(this,e,t,i)}function gi(n,e,t,i,r){D$.call(this,n,e,t,i,r,-1)}function $5(n,e,t,i,r){R8.call(this,n,e,t,i,r,-1)}function V(n,e,t,i){Yt.call(this,n,e,t),this.b=i}function zE(n,e,t,i){v8.call(this,n,e,t),this.b=i}function DCn(n){xkn.call(this,n,!1),this.a=!1}function $Cn(n,e){this.b=n,bvn.call(this,n.b),this.a=e}function FCn(n,e){nb(),Yie.call(this,n,mT(new Hu(e)))}function UE(n,e){return Je(),new xW(n,e,0)}function SD(n,e){return Je(),new xW(6,n,e)}function Qfe(n,e){return Mn(n.substr(0,e.length),e)}function Uu(n,e){return ki(e)?QD(n,e):!!Sr(n.f,e)}function Oi(n,e){for(_n(e);n.Ob();)e.td(n.Pb())}function Pw(n,e,t){jl(),this.e=n,this.d=e,this.a=t}function o1(n,e,t,i){var r;r=n.i,r.i=e,r.a=t,r.b=i}function jW(n){var e;for(e=n;e.f;)e=e.f;return e}function y2(n){var e;return e=t6(n),ne(e!=null),e}function Jfe(n){var e;return e=Lge(n),ne(e!=null),e}function d3(n,e){var t;return t=n.a.gc(),$X(e,t),t-e}function EW(n,e){var t;for(t=0;t0?y.Math.log(n/e):-100}function xCn(n,e){return fc(n,e)<0?-1:fc(n,e)>0?1:0}function SW(n,e,t){return MRn(n,u(e,46),u(t,167))}function LCn(n,e){return u(vW(Ed(n.a)).Xb(e),42).cd()}function uhe(n,e){return P0e(e,n.length),new REn(n,e)}function DD(n,e){this.d=n,ie.call(this,n),this.e=e}function Cd(n){this.d=(_n(n),n),this.a=0,this.c=IM}function PW(n,e){cd.call(this,1),this.a=n,this.b=e}function NCn(n,e){return n.c?NCn(n.c,e):W(n.b,e),n}function she(n,e,t){var i;return i=ub(n,e),g$(n,e,t),i}function IW(n,e){var t;return t=n.slice(0,e),WX(t,n)}function BCn(n,e,t){var i;for(i=0;i=n.g}function KD(n,e,t){var i;return i=Y$(n,e,t),rZ(n,i)}function j2(n,e){var t;t=n.a.length,ub(n,t),g$(n,t,e)}function ZCn(n,e){var t;t=console[n],t.call(console,e)}function nTn(n,e){var t;++n.j,t=n.Vi(),n.Ii(n.oi(t,e))}function mhe(n,e,t){u(e.b,65),Zc(e.a,new NU(n,t,e))}function FW(n,e,t){uj.call(this,e),this.a=n,this.b=t}function xW(n,e,t){cd.call(this,n),this.a=e,this.b=t}function LW(n,e,t){this.a=n,xq.call(this,e),this.b=t}function eTn(n,e,t){this.a=n,aX.call(this,8,e,null,t)}function khe(n){this.a=(_n(xe),xe),this.b=n,new tG}function tTn(n){this.c=n,this.b=this.c.a,this.a=this.c.e}function NW(n){this.c=n,this.b=n.a.d.a,rU(n.a.e,this)}function Wu(n){z0(n.c!=-1),n.d.$c(n.c),n.b=n.c,n.c=-1}function L5(n){return y.Math.sqrt(n.a*n.a+n.b*n.b)}function Md(n,e){return a3(e,n.a.c.length),un(n.a,e)}function Ff(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function yhe(n){return 0>=n?new PG:sbe(n-1)}function jhe(n){return aw?QD(aw,n):!1}function iTn(n){return n?n.dc():!n.Kc().Ob()}function Gi(n){return!n.a&&n.c?n.c.b:n.a}function Ehe(n){return!n.a&&(n.a=new Yt(zl,n,4)),n.a}function Ad(n){return!n.d&&(n.d=new Yt(ar,n,1)),n.d}function _n(n){if(n==null)throw T(new Nv);return n}function N5(n){n.c?n.c.He():(n.d=!0,S8e(n))}function fl(n){n.c?fl(n.c):(Ta(n),n.d=!0)}function rTn(n){KW(n.a),n.b=F(Zn,rn,1,n.b.length,5,1)}function Che(n,e){return Wc(e.j.c.length,n.j.c.length)}function The(n,e){n.c<0||n.b.b=0?n.Bh(t):bY(n,e)}function cTn(n){var e,t;return e=n.c.i.c,t=n.d.i.c,e==t}function Ahe(n){if(n.p!=4)throw T(new fu);return n.e}function She(n){if(n.p!=3)throw T(new fu);return n.e}function Phe(n){if(n.p!=6)throw T(new fu);return n.f}function Ihe(n){if(n.p!=6)throw T(new fu);return n.k}function Ohe(n){if(n.p!=3)throw T(new fu);return n.j}function Dhe(n){if(n.p!=4)throw T(new fu);return n.j}function BW(n){return!n.b&&(n.b=new sj(new KI)),n.b}function Sd(n){return n.c==-2&&Pte(n,Qve(n.g,n.b)),n.c}function g3(n,e){var t;return t=LD("",n),t.n=e,t.i=1,t}function $he(n,e){yD(u(e.b,65),n),Zc(e.a,new Aq(n))}function Fhe(n,e){me((!n.a&&(n.a=new l8(n,n)),n.a),e)}function uTn(n,e){this.b=n,DD.call(this,n,e),$yn(this)}function sTn(n,e){this.b=n,AU.call(this,n,e),Fyn(this)}function RW(n,e,t,i){bd.call(this,n,e),this.d=t,this.a=i}function VE(n,e,t,i){bd.call(this,n,t),this.a=e,this.f=i}function oTn(n,e){bce.call(this,obe(pe(n),pe(e))),this.a=e}function fTn(){UJ.call(this,Ka,(a8n(),hee)),tEe(this)}function hTn(){UJ.call(this,Vs,(Qp(),g1n)),lje(this)}function lTn(){Oe.call(this,"DELAUNAY_TRIANGULATION",0)}function xhe(n){return String.fromCharCode.apply(null,n)}function it(n,e,t){return ki(e)?yr(n,e,t):_c(n.f,e,t)}function _W(n){return Pn(),n?n.ve():(Ow(),Ow(),Bin)}function Lhe(n,e,t){return L2(),t.pg(n,u(e.cd(),146))}function aTn(n,e){return PE(),new JQ(new Wyn(n),new Uyn(e))}function Nhe(n){return rs(n,AL),KC(qi(qi(5,n),n/10|0))}function QE(){QE=N,fzn=new GI(A(M(Ha,1),OM,42,0,[]))}function dTn(n){return!n.d&&(n.d=new _p(n.c.Cc())),n.d}function p3(n){return!n.a&&(n.a=new W9n(n.c.vc())),n.a}function bTn(n){return!n.b&&(n.b=new Wp(n.c.ec())),n.b}function ch(n,e){for(;e-- >0;)n=n<<1|(n<0?1:0);return n}function pc(n,e){return B(n)===B(e)||n!=null&&tt(n,e)}function Bhe(n,e){return qn(),u(e.b,19).ai&&++i,i}function Oh(n){var e,t;return t=(e=new ud,e),O3(t,n),t}function UD(n){var e,t;return t=(e=new ud,e),VJ(t,n),t}function Zhe(n,e){var t;return t=te(n.f,e),MV(e,t),null}function WD(n){var e;return e=hbe(n),e||null}function CTn(n){return!n.b&&(n.b=new V(bi,n,12,3)),n.b}function n1e(n){return n!=null&&_9(tI,n.toLowerCase())}function e1e(n,e){return ni(bu(n)*zu(n),bu(e)*zu(e))}function t1e(n,e){return ni(bu(n)*zu(n),bu(e)*zu(e))}function i1e(n,e){return ni(n.d.c+n.d.b/2,e.d.c+e.d.b/2)}function r1e(n,e){return ni(n.g.c+n.g.b/2,e.g.c+e.g.b/2)}function TTn(n,e,t){t.a?eu(n,e.b-n.f/2):nu(n,e.a-n.g/2)}function MTn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ATn(n,e,t,i){this.a=n,this.b=e,this.c=t,this.d=i}function ha(n,e,t,i){this.e=n,this.a=e,this.c=t,this.d=i}function STn(n,e,t,i){this.a=n,this.c=e,this.d=t,this.b=i}function PTn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function ITn(n,e,t,i){ms(),ySn.call(this,e,t,i),this.a=n}function OTn(n,e){this.a=n,hue.call(this,n,u(n.d,15).Zc(e))}function XD(n){this.f=n,this.c=this.f.e,n.f>0&&qFn(this)}function DTn(n,e,t,i){this.b=n,this.c=i,FO.call(this,e,t)}function $Tn(n){return ne(n.b=0&&Mn(n.substr(t,e.length),e)}function hl(n,e,t,i,r,c,o){return new v$(n.e,e,t,i,r,c,o)}function QTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function JTn(n,e,t,i,r,c){this.a=n,z$.call(this,e,t,i,r,c)}function YTn(n,e){this.g=n,this.d=A(M(mh,1),E1,10,0,[e])}function f1(n,e){this.e=n,this.a=Zn,this.b=yBn(e),this.c=e}function ZTn(n,e){kE.call(this),eV(this),this.a=n,this.c=e}function M8(n,e,t,i){St(n.c[e.g],t.g,i),St(n.c[t.g],e.g,i)}function ZD(n,e,t,i){St(n.c[e.g],e.g,t),St(n.b[e.g],e.g,i)}function M1e(){return x8(),A(M(ron,1),z,376,0,[uK,iy])}function A1e(){return K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])}function S1e(){return V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])}function P1e(){return OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])}function I1e(){return kC(),A(M(fun,1),z,420,0,[j_,oun])}function O1e(){return z8(),A(M(non,1),z,421,0,[iK,rK])}function D1e(){return z5(),A(M(bJn,1),z,523,0,[Hm,Km])}function $1e(){return No(),A(M(BJn,1),z,520,0,[tw,Bl])}function F1e(){return xf(),A(M(yJn,1),z,516,0,[M0,I1])}function x1e(){return tf(),A(M(EJn,1),z,515,0,[Ja,yf])}function L1e(){return Id(),A(M(zJn,1),z,455,0,[Rl,Lg])}function N1e(){return gC(),A(M(Son,1),z,425,0,[yK,Aon])}function B1e(){return aC(),A(M(Mon,1),z,480,0,[kK,Ton])}function R1e(){return iT(),A(M(Pon,1),z,495,0,[EP,mv])}function _1e(){return $C(),A(M(Oon,1),z,426,0,[Ion,TK])}function K1e(){return c7(),A(M(Ffn,1),z,429,0,[DP,$fn])}function H1e(){return L8(),A(M(afn,1),z,430,0,[FK,IP])}function q1e(){return $T(),A(M(Jin,1),z,428,0,[yR,Qin])}function G1e(){return RC(),A(M(Zin,1),z,427,0,[Yin,jR])}function z1e(){return _C(),A(M(Arn,1),z,424,0,[$R,tS])}function U1e(){return B3(),A(M(NWn,1),z,511,0,[_k,UR])}function sC(n,e,t,i){return t>=0?n.jh(e,t,i):n.Sg(null,t,i)}function n$(n){return n.b.b==0?n.a.$e():aD(n.b)}function W1e(n){if(n.p!=5)throw T(new fu);return ge(n.f)}function X1e(n){if(n.p!=5)throw T(new fu);return ge(n.k)}function VW(n){return B(n.a)===B((eF(),gH))&&Vje(n),n.a}function nMn(n){this.a=u(pe(n),271),this.b=(Pn(),new Hz(n))}function eMn(n,e){bte(this,new fn(n.a,n.b)),wte(this,p8(e))}function Id(){Id=N,Rl=new iz(Y2,0),Lg=new iz(Z2,1)}function xf(){xf=N,M0=new ez(Z2,0),I1=new ez(Y2,1)}function Od(){rie.call(this,new s2(sb(12))),Bz(!0),this.a=2}function e$(n,e,t){Je(),cd.call(this,n),this.b=e,this.a=t}function QW(n,e,t){ms(),uj.call(this,e),this.a=n,this.b=t}function tMn(n){kE.call(this),eV(this),this.a=n,this.c=!0}function iMn(n){var e;e=n.c.d.b,n.b=e,n.a=n.c.d,e.a=n.c.d.b=n}function oC(n){var e;ebe(n.a),byn(n.a),e=new tj(n.a),TQ(e)}function V1e(n,e){aBn(n,!0),Zc(n.e.wf(),new $U(n,!0,e))}function fC(n,e){return LAn(e),Y0e(n,F(be,Le,25,e,15,1),e)}function Q1e(n,e){return C2(),n==Pt(hh(e))||n==Pt(ml(e))}function vc(n,e){return e==null?Vr(Sr(n.f,null)):n5(n.g,e)}function J1e(n){return n.b==0?null:(ne(n.b!=0),Ts(n,n.a.a))}function Gt(n){return Math.max(Math.min(n,nt),-2147483648)|0}function Y1e(n,e){var t=lR[n.charCodeAt(0)];return t??n}function hC(n,e){return tC(n,"set1"),tC(e,"set2"),new Z8n(n,e)}function Z1e(n,e){var t;return t=W0e(n.f,e),st(vE(t),n.f.d)}function R5(n,e){var t,i;return t=e,i=new dI,n_n(n,t,i),i.d}function t$(n,e,t,i){var r;r=new Gjn,e.a[t.g]=r,m2(n.b,i,r)}function JW(n,e,t){var i;i=n.Yg(e),i>=0?n.sh(i,t):_Y(n,e,t)}function Dw(n,e,t){dC(),n&&it(dH,n,e),n&&it($y,n,t)}function rMn(n,e,t){this.i=new X,this.b=n,this.g=e,this.a=t}function lC(n,e,t){this.c=new X,this.e=n,this.f=e,this.b=t}function YW(n,e,t){this.a=new X,this.e=n,this.f=e,this.c=t}function cMn(n,e){oE(this),this.f=e,this.g=n,eC(this),this._d()}function A8(n,e){var t;t=n.q.getHours(),n.q.setDate(e),S6(n,t)}function uMn(n,e){var t;for(pe(e),t=n.a;t;t=t.c)e.Od(t.g,t.i)}function sMn(n){var e;return e=new kj(sb(n.length)),qV(e,n),e}function nle(n){function e(){}return e.prototype=n||{},new e}function ele(n,e){return LOn(n,e)?(FIn(n),!0):!1}function Dh(n,e){if(e==null)throw T(new Nv);return Y2e(n,e)}function tle(n){if(n.qe())return null;var e=n.n;return RA[e]}function S8(n){return n.Db>>16!=3?null:u(n.Cb,33)}function ef(n){return n.Db>>16!=9?null:u(n.Cb,33)}function oMn(n){return n.Db>>16!=6?null:u(n.Cb,79)}function fMn(n){return n.Db>>16!=7?null:u(n.Cb,235)}function hMn(n){return n.Db>>16!=7?null:u(n.Cb,160)}function Pt(n){return n.Db>>16!=11?null:u(n.Cb,33)}function lMn(n,e){var t;return t=n.Yg(e),t>=0?n.lh(t):Ox(n,e)}function aMn(n,e){var t;return t=new iW(e),dxn(t,n),new du(t)}function ZW(n){var e;return e=n.d,e=n.si(n.f),me(n,e),e.Ob()}function dMn(n,e){return n.b+=e.b,n.c+=e.c,n.d+=e.d,n.a+=e.a,n}function i$(n,e){return y.Math.abs(n)0}function bMn(){this.a=new Sh,this.e=new hi,this.g=0,this.i=0}function wMn(n){this.a=n,this.b=F(lJn,q,1944,n.e.length,0,2)}function r$(n,e,t){var i;i=tDn(n,e,t),n.b=new tT(i.c.length)}function tf(){tf=N,Ja=new nz(hN,0),yf=new nz("UP",1)}function aC(){aC=N,kK=new rz(PHn,0),Ton=new rz("FAN",1)}function dC(){dC=N,dH=new we,$y=new we,Ere(Azn,new z2n)}function rle(n){if(n.p!=0)throw T(new fu);return b5(n.f,0)}function cle(n){if(n.p!=0)throw T(new fu);return b5(n.k,0)}function gMn(n){return n.Db>>16!=3?null:u(n.Cb,147)}function y3(n){return n.Db>>16!=6?null:u(n.Cb,235)}function eb(n){return n.Db>>16!=17?null:u(n.Cb,26)}function pMn(n,e){var t=n.a=n.a||[];return t[e]||(t[e]=n.le(e))}function ule(n,e){var t;return t=n.a.get(e),t??new Array}function sle(n,e){var t;t=n.q.getHours(),n.q.setMonth(e),S6(n,t)}function yr(n,e,t){return e==null?_c(n.f,null,t):Gd(n.g,e,t)}function _5(n,e,t,i,r,c){return new Lh(n.e,e,n.aj(),t,i,r,c)}function P8(n,e,t){return n.a=Zu(n.a,0,e)+(""+t)+r8(n.a,e),n}function ole(n,e,t){return W(n.a,(QE(),ex(e,t),new bd(e,t))),n}function nX(n){return _z(n.c),n.e=n.a=n.c,n.c=n.c.c,++n.d,n.a.f}function vMn(n){return _z(n.e),n.c=n.a=n.e,n.e=n.e.e,--n.d,n.a.f}function Ci(n,e){n.d&&Jc(n.d.e,n),n.d=e,n.d&&W(n.d.e,n)}function Hi(n,e){n.c&&Jc(n.c.g,n),n.c=e,n.c&&W(n.c.g,n)}function jr(n,e){n.c&&Jc(n.c.a,n),n.c=e,n.c&&W(n.c.a,n)}function Hr(n,e){n.i&&Jc(n.i.j,n),n.i=e,n.i&&W(n.i.j,n)}function mMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function kMn(n,e,t){this.a=e,this.c=n,this.b=(pe(t),new du(t))}function yMn(n,e){this.a=n,this.c=Qr(this.a),this.b=new uC(e)}function fle(n){var e;return Ta(n),e=new hi,gt(n,new Vvn(e))}function tb(n,e){if(n<0||n>e)throw T(new mr(cnn+n+unn+e))}function eX(n,e){return lCn(n.a,e)?TW(n,u(e,22).g,null):null}function hle(n){return yF(),qn(),u(n.a,81).d.e!=0}function jMn(){jMn=N,azn=Fe((aj(),A(M(lzn,1),z,538,0,[fR])))}function EMn(){EMn=N,YQn=Eu(new li,(Qi(),Or),(rr(),Kk))}function tX(){tX=N,ZQn=Eu(new li,(Qi(),Or),(rr(),Kk))}function CMn(){CMn=N,eJn=Eu(new li,(Qi(),Or),(rr(),Kk))}function TMn(){TMn=N,gJn=Ze(new li,(Qi(),Or),(rr(),km))}function ns(){ns=N,mJn=Ze(new li,(Qi(),Or),(rr(),km))}function MMn(){MMn=N,kJn=Ze(new li,(Qi(),Or),(rr(),km))}function c$(){c$=N,TJn=Ze(new li,(Qi(),Or),(rr(),km))}function AMn(){AMn=N,lYn=Eu(new li,(c4(),Gm),(k6(),lK))}function aa(n,e,t,i){this.c=n,this.d=i,s$(this,e),o$(this,t)}function M2(n){this.c=new Tt,this.b=n.b,this.d=n.c,this.a=n.a}function u$(n){this.a=y.Math.cos(n),this.b=y.Math.sin(n)}function s$(n,e){n.a&&Jc(n.a.k,n),n.a=e,n.a&&W(n.a.k,n)}function o$(n,e){n.b&&Jc(n.b.f,n),n.b=e,n.b&&W(n.b.f,n)}function SMn(n,e){mhe(n,n.b,n.c),u(n.b.b,65),e&&u(e.b,65).b}function lle(n,e){vQ(n,e),I(n.Cb,88)&&yb(Ou(u(n.Cb,88)),2)}function f$(n,e){I(n.Cb,88)&&yb(Ou(u(n.Cb,88)),4),Ic(n,e)}function bC(n,e){I(n.Cb,179)&&(u(n.Cb,179).tb=null),Ic(n,e)}function mc(n,e){return er(),R$(e)?new IE(e,n):new i8(e,n)}function ale(n,e){var t,i;t=e.c,i=t!=null,i&&j2(n,new Z0(e.c))}function PMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function IMn(n){var e,t;return t=(Qp(),e=new ud,e),O3(t,n),t}function OMn(n,e){var t;return t=new Rs(n),e.c[e.c.length]=t,t}function DMn(n,e){var t;return t=u(ab(T2(n.a),e),14),t?t.gc():0}function $Mn(n){var e;return Ta(n),e=(Ow(),Ow(),Nin),qC(n,e)}function FMn(n){for(var e;;)if(e=n.Pb(),!n.Ob())return e}function iX(n,e){tie.call(this,new s2(sb(n))),rs(e,W_n),this.a=e}function uh(n,e,t){KDn(e,t,n.gc()),this.c=n,this.a=e,this.b=t-e}function xMn(n,e,t){var i;KDn(e,t,n.c.length),i=t-e,AG(n.c,e,i)}function dle(n,e){Dyn(n,ge(ui(cl(e,24),FM)),ge(ui(e,FM)))}function Ln(n,e){if(n<0||n>=e)throw T(new mr(cnn+n+unn+e))}function Te(n,e){if(n<0||n>=e)throw T(new wG(cnn+n+unn+e))}function xn(n,e){this.b=(_n(n),n),this.a=e&Ib?e:e|64|Bf}function LMn(n){dyn(this),Wmn(this.a,KV(y.Math.max(8,n))<<1)}function rf(n){return Gr(A(M(di,1),q,8,0,[n.i.n,n.n,n.a]))}function ble(){return lf(),A(M(Bu,1),z,132,0,[Win,ls,Rb])}function wle(){return _o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])}function gle(){return Tu(),A(M(Qzn,1),z,461,0,[Vf,Ol,Co])}function ple(){return Yc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])}function vle(){return qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])}function mle(){return W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])}function kle(){return i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])}function yle(){return F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])}function jle(){return VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])}function Ele(){return ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])}function Cle(){return Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])}function Tle(){return Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])}function Mle(){return q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])}function Ale(){return ur(),A(M(zQn,1),z,452,0,[Bm,Su,xc])}function Sle(){return Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])}function Ple(){return oT(),A(M(ion,1),z,375,0,[eon,cK,ton])}function Ile(){return dT(),A(M(hon,1),z,377,0,[fK,pv,ew])}function Ole(){return Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])}function Dle(){return uT(),A(M(fon,1),z,338,0,[oon,oK,son])}function $le(){return _d(),A(M(fJn,1),z,454,0,[ry,_m,aP])}function Fle(){return CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])}function xle(){return f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])}function Lle(){return ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])}function Nle(){return sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])}function Ble(){return w7(),A(M(OK,1),z,437,0,[AP,SP,PP])}function Rle(){return _h(),A(M(Khn,1),z,334,0,[HP,F1,i9])}function _le(){return of(),A(M(Phn,1),z,272,0,[jv,cw,Ev])}function Kle(n,e){return o9e(n,e,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Hle(n,e,t){var i;return i=O6(n,e,!1),i.b<=e&&i.a<=t}function NMn(n,e,t){var i;i=new Jwn,i.b=e,i.a=t,++e.b,W(n.d,i)}function qle(n,e){var t;return t=(_n(n),n).g,Yz(!!t),_n(e),t(e)}function rX(n,e){var t,i;return i=d3(n,e),t=n.a.Zc(i),new Y8n(n,t)}function Gle(n){return n.Db>>16!=6?null:u(Fx(n),235)}function zle(n){if(n.p!=2)throw T(new fu);return ge(n.f)&Ut}function Ule(n){if(n.p!=2)throw T(new fu);return ge(n.k)&Ut}function Wle(n){return n.a==(T3(),uI)&&Ste(n,C9e(n.g,n.b)),n.a}function A2(n){return n.d==(T3(),uI)&&Ite(n,pke(n.g,n.b)),n.d}function j(n){return ne(n.ai?1:0}function BMn(n,e){var t,i;return t=F$(e),i=t,u(te(n.c,i),19).a}function RMn(n,e){var t;for(t=n+"";t.length0&&n.a[--n.d]==0;);n.a[n.d++]==0&&(n.e=0)}function rAn(n){return n.a?n.e.length==0?n.a.a:n.a.a+(""+n.e):n.c}function rae(n){return!!n.a&&Du(n.a.a).i!=0&&!(n.b&&YF(n.b))}function cae(n){return!!n.u&&bc(n.u.a).i!=0&&!(n.n&&JF(n.n))}function cAn(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),16,new tvn(n))}function uae(n,e){return xCn(tu(n.q.getTime()),tu(e.q.getTime()))}function Lf(n){return u(af(n,F(GR,MN,17,n.c.length,0,1)),474)}function I8(n){return u(af(n,F(mh,E1,10,n.c.length,0,1)),193)}function sae(n){return ns(),!Xi(n)&&!(!Xi(n)&&n.c.i.c==n.d.i.c)}function uAn(n,e,t){var i;i=(pe(n),new du(n)),N3e(new mMn(i,e,t))}function O8(n,e,t){var i;i=(pe(n),new du(n)),B3e(new kMn(i,e,t))}function sAn(n,e){var t;return t=1-e,n.a[t]=eT(n.a[t],t),eT(n,e)}function oAn(n,e){var t;n.e=new oG,t=Cb(e),wi(t,n.c),eBn(n,t,0)}function Ti(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.a,r)}function Z(n,e,t,i){var r;r=new XH,r.a=e,r.b=t,r.c=i,Ke(n.b,r)}function po(n){var e,t,i;return e=new HCn,t=Zx(e,n),UEe(e),i=t,i}function hX(){var n,e,t;return e=(t=(n=new ud,n),t),W(M1n,e),e}function pC(n){return n.j.c=F(Zn,rn,1,0,5,1),KW(n.c),Khe(n.a),n}function $w(n){return Qv(),I(n.g,10)?u(n.g,10):null}function oae(n){return Iw(n).dc()?!1:(sce(n,new Np),!0)}function fae(n){if(!("stack"in n))try{throw n}catch{}return n}function D8(n,e){if(n<0||n>=e)throw T(new mr(j6e(n,e)));return n}function fAn(n,e,t){if(n<0||et)throw T(new mr(W5e(n,e,t)))}function d$(n,e){if(ci(n.a,e),e.d)throw T(new _r(wKn));e.d=n}function b$(n,e){if(e.$modCount!=n.$modCount)throw T(new vs)}function hAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function lAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function aAn(n,e){return I(e,42)?ix(n.a,u(e,42)):!1}function hae(n,e){return n.a<=n.b?(e.ud(n.a++),!0):!1}function $d(n){var e;return Fr(n)?(e=n,e==-0?0:e):m0e(n)}function vC(n){var e;return fl(n),e=new fln,vw(n.a,new Wvn(e)),e}function dAn(n){var e;return fl(n),e=new oln,vw(n.a,new Uvn(e)),e}function Pi(n,e){this.a=n,$v.call(this,n),tb(e,n.gc()),this.b=e}function lX(n){this.e=n,this.b=this.e.a.entries(),this.a=new Array}function lae(n){return gD(n.e.Hd().gc()*n.c.Hd().gc(),273,new evn(n))}function mC(n){return new Pc((rs(n,AL),KC(qi(qi(5,n),n/10|0))))}function bAn(n){return u(af(n,F(FWn,UKn,11,n.c.length,0,1)),1943)}function aae(n,e,t){return t.f.c.length>0?SW(n.a,e,t):SW(n.b,e,t)}function dae(n,e,t){n.d&&Jc(n.d.e,n),n.d=e,n.d&&Q0(n.d.e,t,n)}function w$(n,e){uTe(e,n),WU(n.d),WU(u(k(n,(nn(),eP)),207))}function H5(n,e){cTe(e,n),UU(n.d),UU(u(k(n,(nn(),eP)),207))}function Fd(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.fe()),i}function j3(n,e){var t,i;return t=ub(n,e),i=null,t&&(i=t.ie()),i}function q5(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=t.ie()),i}function $h(n,e){var t,i;return t=Dh(n,e),i=null,t&&(i=tY(t)),i}function bae(n,e,t){var i;return i=i4(t),gM(n.g,i,e),gM(n.i,e,t),e}function wae(n,e,t){var i;i=q2e();try{return kue(n,e,t)}finally{Mae(i)}}function wAn(n){var e;e=n.Wg(),this.a=I(e,69)?u(e,69).Zh():e.Kc()}function li(){P9n.call(this),this.j.c=F(Zn,rn,1,0,5,1),this.a=-1}function aX(n,e,t,i){this.d=n,this.n=e,this.g=t,this.o=i,this.p=-1}function gAn(n,e,t,i){this.e=i,this.d=null,this.c=n,this.a=e,this.b=t}function dX(n,e,t){this.d=new r6n(this),this.e=n,this.i=e,this.f=t}function kC(){kC=N,j_=new QG(I4,0),oun=new QG("TOP_LEFT",1)}function pAn(){pAn=N,aon=aTn(Q(1),Q(4)),lon=aTn(Q(1),Q(2))}function vAn(){vAn=N,uZn=Fe((Ij(),A(M(cZn,1),z,551,0,[$K])))}function mAn(){mAn=N,rZn=Fe((Pj(),A(M(lfn,1),z,482,0,[DK])))}function kAn(){kAn=N,CZn=Fe((Jv(),A(M(Dfn,1),z,530,0,[hy])))}function yAn(){yAn=N,IUn=Fe((Aj(),A(M(krn,1),z,481,0,[SR])))}function gae(){return Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])}function pae(){return FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])}function vae(){return d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])}function mae(){return K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])}function kae(){return G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])}function yae(){return aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])}function jAn(n,e,t,i){return I(t,54)?new ojn(n,e,t,i):new pW(n,e,t,i)}function jae(){return hf(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])}function Eae(n){var e;return n.j==(J(),ae)&&(e=GLn(n),au(e,Vn))}function Cae(n,e){var t;t=e.a,Hi(t,e.c.d),Ci(t,e.d.d),fb(t.a,n.n)}function EAn(n,e){return u(yd(KE(u(ct(n.k,e),15).Oc(),jg)),113)}function CAn(n,e){return u(yd(HE(u(ct(n.k,e),15).Oc(),jg)),113)}function Tae(n){return new xn(jbe(u(n.a.dd(),14).gc(),n.a.cd()),16)}function E3(n){return I(n,14)?u(n,14).dc():!n.Kc().Ob()}function S2(n){return Qv(),I(n.g,145)?u(n.g,145):null}function TAn(n){if(n.e.g!=n.b)throw T(new vs);return!!n.c&&n.d>0}function Re(n){return ne(n.b!=n.d.c),n.c=n.b,n.b=n.b.a,++n.a,n.c.c}function bX(n,e){_n(e),St(n.a,n.c,e),n.c=n.c+1&n.a.length-1,MFn(n)}function ll(n,e){_n(e),n.b=n.b-1&n.a.length-1,St(n.a,n.b,e),MFn(n)}function MAn(n,e){var t;for(t=n.j.c.length;t0&&gc(n.g,0,e,0,n.i),e}function IAn(n,e){$j();var t;return t=u(te(eI,n),55),!t||t.wj(e)}function Bae(n){if(n.p!=1)throw T(new fu);return ge(n.f)<<24>>24}function Rae(n){if(n.p!=1)throw T(new fu);return ge(n.k)<<24>>24}function _ae(n){if(n.p!=7)throw T(new fu);return ge(n.k)<<16>>16}function Kae(n){if(n.p!=7)throw T(new fu);return ge(n.f)<<16>>16}function Fh(n){var e;for(e=0;n.Ob();)n.Pb(),e=qi(e,1);return KC(e)}function OAn(n,e){var t;return t=new R0,n.xd(t),t.a+="..",e.yd(t),t.a}function Hae(n,e,t){var i;i=u(te(n.g,t),57),W(n.a.c,new Si(e,i))}function qae(n,e,t){return TD(Y(Vr(Sr(n.f,e))),Y(Vr(Sr(n.f,t))))}function yC(n,e,t){return vM(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function Gae(n,e,t){return m4(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function zae(n,e,t){return b9e(n,e,t,I(e,99)&&(u(e,18).Bb&Yi)!=0)}function pX(n,e){return n==(Qn(),ii)&&e==ii?4:n==ii||e==ii?8:32}function DAn(n,e){return B(e)===B(n)?"(this Map)":e==null?ru:Nr(e)}function Uae(n,e){return u(e==null?Vr(Sr(n.f,null)):n5(n.g,e),281)}function $An(n,e,t){var i;return i=i4(t),it(n.b,i,e),it(n.c,e,t),e}function FAn(n,e){var t;for(t=e;t;)U0(n,t.i,t.j),t=Pt(t);return n}function vX(n,e){var t;return t=C8(f3(new x$(n,e))),DE(new x$(n,e)),t}function sh(n,e){er();var t;return t=u(n,66).Mj(),M5e(t,e),t.Ok(e)}function Wae(n,e,t,i,r){var c;c=m9e(r,t,i),W(e,p6e(r,c)),o5e(n,r,e)}function xAn(n,e,t){n.i=0,n.e=0,e!=t&&(uDn(n,e,t),cDn(n,e,t))}function mX(n,e){var t;t=n.q.getHours(),n.q.setFullYear(e+Tl),S6(n,t)}function Xae(n,e,t){if(t){var i=t.ee();n.a[e]=i(t)}else delete n.a[e]}function g$(n,e,t){if(t){var i=t.ee();t=i(t)}else t=void 0;n.a[e]=t}function LAn(n){if(n<0)throw T(new K9n("Negative array size: "+n))}function bc(n){return n.n||(Ou(n),n.n=new wCn(n,ar,n),Ar(n)),n.n}function G5(n){return ne(n.a=0&&n.a[t]===e[t];t--);return t<0}function KAn(n,e){V3();var t;return t=n.j.g-e.j.g,t!=0?t:0}function HAn(n,e){return _n(e),n.a!=null?$fe(e.Kb(n.a)):UA}function jC(n){var e;return n?new iW(n):(e=new Sh,nF(e,n),e)}function ts(n,e){var t;return e.b.Kb(FPn(n,e.c.Ee(),(t=new Jvn(e),t)))}function EC(n){_J(),Dyn(this,ge(ui(cl(n,24),FM)),ge(ui(n,FM)))}function qAn(){qAn=N,Gzn=Fe(($T(),A(M(Jin,1),z,428,0,[yR,Qin])))}function GAn(){GAn=N,zzn=Fe((RC(),A(M(Zin,1),z,427,0,[Yin,jR])))}function zAn(){zAn=N,WUn=Fe((_C(),A(M(Arn,1),z,424,0,[$R,tS])))}function UAn(){UAn=N,BWn=Fe((B3(),A(M(NWn,1),z,511,0,[_k,UR])))}function WAn(){WAn=N,lXn=Fe((V8(),A(M(Wcn,1),z,419,0,[$S,Ucn])))}function XAn(){XAn=N,wXn=Fe((K8(),A(M(Qcn,1),z,479,0,[Vcn,xS])))}function VAn(){VAn=N,XQn=Fe((x8(),A(M(ron,1),z,376,0,[uK,iy])))}function QAn(){QAn=N,GQn=Fe((z8(),A(M(non,1),z,421,0,[iK,rK])))}function JAn(){JAn=N,sXn=Fe((OC(),A(M(Rcn,1),z,422,0,[Bcn,s_])))}function YAn(){YAn=N,jXn=Fe((kC(),A(M(fun,1),z,420,0,[j_,oun])))}function ZAn(){ZAn=N,RJn=Fe((No(),A(M(BJn,1),z,520,0,[tw,Bl])))}function nSn(){nSn=N,wJn=Fe((z5(),A(M(bJn,1),z,523,0,[Hm,Km])))}function eSn(){eSn=N,jJn=Fe((xf(),A(M(yJn,1),z,516,0,[M0,I1])))}function tSn(){tSn=N,CJn=Fe((tf(),A(M(EJn,1),z,515,0,[Ja,yf])))}function iSn(){iSn=N,UJn=Fe((Id(),A(M(zJn,1),z,455,0,[Rl,Lg])))}function rSn(){rSn=N,hYn=Fe((gC(),A(M(Son,1),z,425,0,[yK,Aon])))}function cSn(){cSn=N,wYn=Fe((iT(),A(M(Pon,1),z,495,0,[EP,mv])))}function uSn(){uSn=N,fYn=Fe((aC(),A(M(Mon,1),z,480,0,[kK,Ton])))}function sSn(){sSn=N,vYn=Fe(($C(),A(M(Oon,1),z,426,0,[Ion,TK])))}function oSn(){oSn=N,TZn=Fe((c7(),A(M(Ffn,1),z,429,0,[DP,$fn])))}function fSn(){fSn=N,sZn=Fe((L8(),A(M(afn,1),z,430,0,[FK,IP])))}function z5(){z5=N,Hm=new ZG("UPPER",0),Km=new ZG("LOWER",1)}function Yae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function Zae(n,e){var t;t=new r2,la(t,"x",e.a),la(t,"y",e.b),j2(n,t)}function nde(n,e){var t,i;i=!1;do t=JOn(n,e),i=i|t;while(t);return i}function jX(n,e){var t,i;for(t=e,i=0;t>0;)i+=n.a[t],t-=t&-t;return i}function hSn(n,e){var t;for(t=e;t;)U0(n,-t.i,-t.j),t=Pt(t);return n}function $i(n,e){var t,i;for(_n(e),i=n.Kc();i.Ob();)t=i.Pb(),e.td(t)}function lSn(n,e){var t;return t=e.cd(),new bd(t,n.e.pc(t,u(e.dd(),14)))}function Kt(n,e,t,i){var r;r=new aI,r.c=e,r.b=t,r.a=i,i.b=t.a=r,++n.b}function Es(n,e,t){var i;return i=(Ln(e,n.c.length),n.c[e]),n.c[e]=t,i}function ede(n,e,t){return u(e==null?_c(n.f,null,t):Gd(n.g,e,t),281)}function k$(n){return n.c&&n.d?cX(n.c)+"->"+cX(n.d):"e_"+md(n)}function C3(n,e){return(Ta(n),Wv(new $n(n,new UX(e,n.a)))).sd(V4)}function tde(){return Qi(),A(M(Hrn,1),z,356,0,[Qf,$l,Hc,Cc,Or])}function ide(){return J(),A(M(Zi,1),hc,61,0,[Xr,Kn,Vn,ae,Gn])}function rde(n){return gj(),function(){return wae(n,this,arguments)}}function cde(){return Date.now?Date.now():new Date().getTime()}function Xi(n){return!n.c||!n.d?!1:!!n.c.i&&n.c.i==n.d.i}function aSn(n){if(!n.c.Sb())throw T(new ic);return n.a=!0,n.c.Ub()}function $8(n){n.i=0,z9(n.b,null),z9(n.c,null),n.a=null,n.e=null,++n.g}function EX(n){are.call(this,n==null?ru:Nr(n),I(n,78)?u(n,78):null)}function dSn(n){B_n(),Nmn(this),this.a=new Tt,QV(this,n),Ke(this.a,n)}function bSn(){RO(this),this.b=new fn(Ft,Ft),this.a=new fn(Qt,Qt)}function wSn(n,e){this.c=0,this.b=e,qkn.call(this,n,17493),this.a=this.c}function y$(n){CC(),!vf&&(this.c=n,this.e=!0,this.a=new X)}function CC(){CC=N,vf=!0,Fzn=!1,xzn=!1,Nzn=!1,Lzn=!1}function CX(n,e){return I(e,149)?Mn(n.c,u(e,149).c):!1}function TX(n,e){var t;return t=0,n&&(t+=n.f.a/2),e&&(t+=e.f.a/2),t}function j$(n,e){var t;return t=u(xd(n.d,e),23),t||u(xd(n.e,e),23)}function gSn(n){this.b=n,ie.call(this,n),this.a=u(Rn(this.b.a,4),126)}function pSn(n){this.b=n,w2.call(this,n),this.a=u(Rn(this.b.a,4),126)}function Ou(n){return n.t||(n.t=new Amn(n),s6(new _9n(n),0,n.t)),n.t}function ude(){return sr(),A(M(e9,1),z,103,0,[kh,Ao,Zs,Jh,Yh])}function sde(){return qw(),A(M(c9,1),z,249,0,[Hl,Cy,Hhn,r9,qhn])}function ode(){return Ho(),A(M($1,1),z,175,0,[Xn,vi,Zf,Ya,D1])}function fde(){return P7(),A(M(gfn,1),z,316,0,[dfn,xK,wfn,LK,bfn])}function hde(){return b6(),A(M(Usn,1),z,315,0,[zsn,nK,eK,Lm,Nm])}function lde(){return Pa(),A(M(zcn,1),z,335,0,[f_,Gcn,h_,Em,jm])}function ade(){return g4(),A(M(eZn,1),z,355,0,[Ng,Ep,Qm,Vm,Jm])}function dde(){return Vw(),A(M(YWn,1),z,363,0,[SS,IS,OS,PS,AS])}function bde(){return Ss(),A(M(jun,1),z,163,0,[Qk,Sm,xl,Pm,Ub])}function T3(){T3=N;var n,e;cI=(Qp(),e=new fj,e),uI=(n=new BI,n)}function vSn(n){var e;return n.c||(e=n.r,I(e,88)&&(n.c=u(e,26))),n.c}function wde(n){return n.e=3,n.d=n.Yb(),n.e!=2?(n.e=0,!0):!1}function E$(n){var e,t,i;return e=n&Nu,t=n>>22&Nu,i=n<0?Wh:0,Bc(e,t,i)}function gde(n){var e,t,i,r;for(t=n,i=0,r=t.length;i0?g$n(n,e):BNn(n,-e)}function MX(n,e){return e==0||n.e==0?n:e>0?BNn(n,e):g$n(n,-e)}function ve(n){if(Se(n))return n.c=n.a,n.a.Pb();throw T(new ic)}function kSn(n){var e,t;return e=n.c.i,t=n.d.i,e.k==(Qn(),Xt)&&t.k==Xt}function C$(n){var e;return e=new Pd,Pr(e,n),H(e,(nn(),Mr),null),e}function T$(n,e,t){var i;return i=n.Yg(e),i>=0?n._g(i,t,!0):Yd(n,e,t)}function AX(n,e,t,i){var r;for(r=0;re)throw T(new mr(fY(n,e,"index")));return n}function M$(n,e,t,i){var r;return r=F(be,Le,25,e,15,1),Pve(r,n,e,t,i),r}function vde(n,e){var t;t=n.q.getHours()+(e/60|0),n.q.setMinutes(e),S6(n,t)}function mde(n,e){return y.Math.min(al(e.a,n.d.d.c),al(e.b,n.d.d.c))}function O2(n,e){return ki(e)?e==null?MY(n.f,null):$On(n.g,e):MY(n.f,e)}function sf(n){this.c=n,this.a=new E(this.c.a),this.b=new E(this.c.b)}function TC(){this.e=new X,this.c=new X,this.d=new X,this.b=new X}function TSn(){this.g=new zq,this.b=new zq,this.a=new X,this.k=new X}function MSn(n,e,t){this.a=n,this.c=e,this.d=t,W(e.e,this),W(t.b,this)}function ASn(n,e){Hkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function SSn(n,e){qkn.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function FX(n,e){FO.call(this,e.rd(),e.qd()&-6),_n(n),this.a=n,this.b=e}function MC(n,e,t){this.a=n,this.b=e,this.c=t,W(n.t,this),W(e.i,this)}function AC(){this.b=new Tt,this.a=new Tt,this.b=new Tt,this.a=new Tt}function SC(){SC=N,Ym=new kt("org.eclipse.elk.labels.labelManager")}function PSn(){PSn=N,$cn=new ri("separateLayerConnections",(aT(),QR))}function No(){No=N,tw=new tz("REGULAR",0),Bl=new tz("CRITICAL",1)}function x8(){x8=N,uK=new YG("STACKED",0),iy=new YG("SEQUENCED",1)}function L8(){L8=N,FK=new oz("FIXED",0),IP=new oz("CENTER_NODE",1)}function kde(n,e){var t;return t=CEe(n,e),n.b=new tT(t.c.length),Lje(n,t)}function yde(n,e,t){var i;return++n.e,--n.f,i=u(n.d[e].$c(t),133),i.dd()}function ISn(n){var e;return n.a||(e=n.r,I(e,148)&&(n.a=u(e,148))),n.a}function xX(n){if(n.a){if(n.e)return xX(n.e)}else return n;return null}function jde(n,e){return n.pe.p?-1:0}function PC(n,e){return _n(e),n.c=0,"Initial capacity must not be negative")}function $Sn(){$Sn=N,Vzn=Fe((_o(),A(M(_b,1),z,232,0,[Zr,Fc,nc])))}function FSn(){FSn=N,Jzn=Fe((Tu(),A(M(Qzn,1),z,461,0,[Vf,Ol,Co])))}function xSn(){xSn=N,Zzn=Fe((Yc(),A(M(Yzn,1),z,462,0,[Wo,Dl,To])))}function LSn(){LSn=N,Bzn=Fe((lf(),A(M(Bu,1),z,132,0,[Win,ls,Rb])))}function NSn(){NSn=N,bWn=Fe((W5(),A(M(Krn,1),z,379,0,[NR,LR,BR])))}function BSn(){BSn=N,PWn=Fe((qd(),A(M(zrn,1),z,423,0,[yg,Grn,qR])))}function RSn(){RSn=N,oXn=Fe((F2(),A(M(Kcn,1),z,314,0,[ap,qk,_cn])))}function _Sn(){_Sn=N,fXn=Fe((VC(),A(M(qcn,1),z,337,0,[Hcn,DS,o_])))}function KSn(){KSn=N,dXn=Fe((ya(),A(M(aXn,1),z,450,0,[l_,cv,Tg])))}function HSn(){HSn=N,rXn=Fe((Kd(),A(M(YR,1),z,361,0,[g0,Fl,w0])))}function qSn(){qSn=N,yXn=Fe((Nh(),A(M(kXn,1),z,303,0,[zk,Ag,dp])))}function GSn(){GSn=N,mXn=Fe((q3(),A(M(y_,1),z,292,0,[m_,k_,Gk])))}function zSn(){zSn=N,RQn=Fe((i6(),A(M(Gsn,1),z,378,0,[J_,qsn,oP])))}function USn(){USn=N,WQn=Fe((oT(),A(M(ion,1),z,375,0,[eon,cK,ton])))}function WSn(){WSn=N,qQn=Fe((Rh(),A(M(Zsn,1),z,339,0,[Nl,Ysn,tK])))}function XSn(){XSn=N,UQn=Fe((ur(),A(M(zQn,1),z,452,0,[Bm,Su,xc])))}function VSn(){VSn=N,JQn=Fe((dT(),A(M(hon,1),z,377,0,[fK,pv,ew])))}function QSn(){QSn=N,VQn=Fe((Q3(),A(M(uon,1),z,336,0,[sK,con,Rm])))}function JSn(){JSn=N,QQn=Fe((uT(),A(M(fon,1),z,338,0,[oon,oK,son])))}function YSn(){YSn=N,hJn=Fe((_d(),A(M(fJn,1),z,454,0,[ry,_m,aP])))}function ZSn(){ZSn=N,pYn=Fe((CT(),A(M(gYn,1),z,442,0,[CK,jK,EK])))}function nPn(){nPn=N,mYn=Fe((f7(),A(M(Fon,1),z,380,0,[CP,Don,$on])))}function ePn(){ePn=N,LYn=Fe((ET(),A(M(Yon,1),z,381,0,[Jon,IK,Qon])))}function tPn(){tPn=N,xYn=Fe((sT(),A(M(Xon,1),z,293,0,[PK,Won,Uon])))}function iPn(){iPn=N,iZn=Fe((w7(),A(M(OK,1),z,437,0,[AP,SP,PP])))}function rPn(){rPn=N,une=Fe((_h(),A(M(Khn,1),z,334,0,[HP,F1,i9])))}function cPn(){cPn=N,tne=Fe((of(),A(M(Phn,1),z,272,0,[jv,cw,Ev])))}function Pde(){return Mi(),A(M(Ghn,1),z,98,0,[ql,Ef,Tv,td,Eh,Ac])}function wa(n,e){return!n.o&&(n.o=new Xu((Dc(),Ul),S0,n,0)),NF(n.o,e)}function Ide(n){return!n.g&&(n.g=new Qy),!n.g.d&&(n.g.d=new Cmn(n)),n.g.d}function Ode(n){return!n.g&&(n.g=new Qy),!n.g.a&&(n.g.a=new Tmn(n)),n.g.a}function Dde(n){return!n.g&&(n.g=new Qy),!n.g.b&&(n.g.b=new Emn(n)),n.g.b}function N8(n){return!n.g&&(n.g=new Qy),!n.g.c&&(n.g.c=new Mmn(n)),n.g.c}function $de(n,e,t){var i,r;for(r=new H3(e,n),i=0;it||e=0?n._g(t,!0,!0):Yd(n,e,!0)}function Qde(n,e){return ni(K(Y(k(n,(G(),k0)))),K(Y(k(e,k0))))}function aPn(){aPn=N,aYn=Xd(Xd(Dj(new li,(c4(),qm)),(k6(),pP)),aK)}function Jde(n,e,t){var i;return i=tDn(n,e,t),n.b=new tT(i.c.length),JY(n,i)}function Yde(n){if(n.b<=0)throw T(new ic);return--n.b,n.a-=n.c.c,Q(n.a)}function Zde(n){var e;if(!n.a)throw T(new gTn);return e=n.a,n.a=Pt(n.a),e}function n0e(n){for(;!n.a;)if(!nEn(n.c,new Xvn(n)))return!1;return!0}function $2(n){var e;return pe(n),I(n,198)?(e=u(n,198),e):new dvn(n)}function e0e(n){DC(),u(n.We((Xe(),rw)),174).Fc((Mu(),Ty)),n.Ye(eH,null)}function DC(){DC=N,SZn=new n2n,IZn=new e2n,PZn=Rwe((Xe(),eH),SZn,_l,IZn)}function $C(){$C=N,Ion=new sz("LEAF_NUMBER",0),TK=new sz("NODE_SIZE",1)}function t0e(n,e,t){n.a=e,n.c=t,n.b.a.$b(),_s(n.d),n.e.a.c=F(Zn,rn,1,0,5,1)}function $$(n){n.a=F(be,Le,25,n.b+1,15,1),n.c=F(be,Le,25,n.b,15,1),n.d=0}function i0e(n,e){n.a.ue(e.d,n.b)>0&&(W(n.c,new QU(e.c,e.d,n.d)),n.b=e.d)}function zX(n,e){if(n.g==null||e>=n.i)throw T(new xO(e,n.i));return n.g[e]}function dPn(n,e,t){if(W3(n,t),t!=null&&!n.wj(t))throw T(new xI);return t}function bPn(n){var e;if(n.Ek())for(e=n.i-1;e>=0;--e)D(n,e);return gX(n)}function r0e(n){var e,t;if(!n.b)return null;for(t=n.b;e=t.a[0];)t=e;return t}function c0e(n,e){var t,i;return LAn(e),t=(i=n.slice(0,e),WX(i,n)),t.length=e,t}function S3(n,e,t,i){var r;i=(Ow(),i||Lin),r=n.slice(e,t),hY(r,n,e,t,-e,i)}function Cs(n,e,t,i,r){return e<0?Yd(n,t,i):u(t,66).Nj().Pj(n,n.yh(),e,i,r)}function u0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Nr(n)}function s0e(n){return I(n,172)?""+u(n,172).a:n==null?null:Nr(n)}function wPn(n,e){if(e.a)throw T(new _r(wKn));ci(n.a,e),e.a=n,!n.j&&(n.j=e)}function UX(n,e){FO.call(this,e.rd(),e.qd()&-16449),_n(n),this.a=n,this.c=e}function gPn(n,e){var t,i;return i=e/n.c.Hd().gc()|0,t=e%n.c.Hd().gc(),D2(n,i,t)}function Tu(){Tu=N,Vf=new oO(Y2,0),Ol=new oO(I4,1),Co=new oO(Z2,2)}function FC(){FC=N,vR=new Lj("All",0),qin=new lyn,Gin=new Eyn,zin=new ayn}function pPn(){pPn=N,Dzn=Fe((FC(),A(M(WA,1),z,297,0,[vR,qin,Gin,zin])))}function vPn(){vPn=N,EWn=Fe((G3(),A(M(jWn,1),z,405,0,[b0,Hb,Kb,kg])))}function mPn(){mPn=N,CUn=Fe((Hd(),A(M(EUn,1),z,406,0,[Ok,Ik,MR,AR])))}function kPn(){kPn=N,MUn=Fe((K2(),A(M(TUn,1),z,323,0,[$k,Dk,Fk,xk])))}function yPn(){yPn=N,PUn=Fe((d6(),A(M(SUn,1),z,394,0,[Lk,YA,ZA,Nk])))}function jPn(){jPn=N,WJn=Fe((c4(),A(M(won,1),z,393,0,[gP,qm,uy,Gm])))}function EPn(){EPn=N,HWn=Fe((aT(),A(M(KWn,1),z,360,0,[QR,TS,MS,Hk])))}function CPn(){CPn=N,FYn=Fe((qT(),A(M(zon,1),z,340,0,[SK,qon,Gon,Hon])))}function TPn(){TPn=N,JWn=Fe((hf(),A(M(QWn,1),z,411,0,[lp,nv,ev,JR])))}function MPn(){MPn=N,_Qn=Fe((wb(),A(M(Z_,1),z,197,0,[fP,Y_,xg,Fg])))}function APn(){APn=N,Ene=Fe((Vu(),A(M(jne,1),z,396,0,[gs,Yhn,Jhn,Zhn])))}function SPn(){SPn=N,one=Fe((us(),A(M(sne,1),z,285,0,[Ey,yh,Kl,jy])))}function PPn(){PPn=N,ine=Fe((Hh(),A(M(cH,1),z,218,0,[rH,yy,Cv,Sp])))}function IPn(){IPn=N,kne=Fe((AT(),A(M(Qhn,1),z,311,0,[oH,Whn,Vhn,Xhn])))}function OPn(){OPn=N,vne=Fe((Qu(),A(M(o9,1),z,374,0,[Ay,id,My,uw])))}function DPn(){DPn=N,mM(),F1n=Ft,Tee=Qt,x1n=new S9(Ft),Mee=new S9(Qt)}function K8(){K8=N,Vcn=new VG(Xh,0),xS=new VG("IMPROVE_STRAIGHTNESS",1)}function o0e(n,e){return h3(),W(n,new Si(e,Q(e.e.c.length+e.g.c.length)))}function f0e(n,e){return h3(),W(n,new Si(e,Q(e.e.c.length+e.g.c.length)))}function WX(n,e){return U8(e)!=10&&A($u(e),e.hm,e.__elementTypeId$,U8(e),n),n}function Jc(n,e){var t;return t=xr(n,e,0),t==-1?!1:(h1(n,t),!0)}function $Pn(n,e){var t;return t=u(O2(n.e,e),387),t?(ZU(t),t.e):null}function P3(n){var e;return Fr(n)&&(e=0-n,!isNaN(e))?e:bl(z3(n))}function xr(n,e,t){for(;t=0?BT(n,t,!0,!0):Yd(n,e,!0)}function YX(n,e){Qv();var t,i;return t=S2(n),i=S2(e),!!t&&!!i&&!V$n(t.k,i.k)}function a0e(n,e){nu(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function d0e(n,e){eu(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function b0e(n,e){Rd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function w0e(n,e){Bd(n,e==null||jE((_n(e),e))||isNaN((_n(e),e))?0:(_n(e),e))}function BPn(n){(this.q?this.q:(Pn(),Pn(),vh)).Ac(n.q?n.q:(Pn(),Pn(),vh))}function g0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function p0e(n,e){return I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n)}function RPn(n,e){vrn=new Wy,AUn=e,gm=n,u(gm.b,65),BX(gm,vrn,null),DRn(gm)}function B$(n,e,t){var i;return i=n.g[e],k5(n,e,n.oi(e,t)),n.gi(e,t,i),n.ci(),i}function BC(n,e){var t;return t=n.Xc(e),t>=0?(n.$c(t),!0):!1}function R$(n){var e;return n.d!=n.r&&(e=qs(n),n.e=!!e&&e.Cj()==kGn,n.d=e),n.e}function _$(n,e){var t;for(pe(n),pe(e),t=!1;e.Ob();)t=t|n.Fc(e.Pb());return t}function xd(n,e){var t;return t=u(te(n.e,e),387),t?(Oyn(n,t),t.e):null}function _Pn(n){var e,t;return e=n/60|0,t=n%60,t==0?""+e:""+e+":"+(""+t)}function qr(n,e){var t,i;return Ta(n),i=new FX(e,n.a),t=new iEn(i),new $n(n,t)}function ub(n,e){var t=n.a[e],i=(cF(),dR)[typeof t];return i?i(t):tQ(typeof t)}function v0e(n){switch(n.g){case 0:return nt;case 1:return-1;default:return 0}}function m0e(n){return mJ(n,(I3(),pin))<0?-xce(z3(n)):n.l+n.m*J2+n.h*$a}function U8(n){return n.__elementTypeCategory$==null?10:n.__elementTypeCategory$}function K$(n){var e;return e=n.b.c.length==0?null:un(n.b,0),e!=null&&J$(n,0),e}function KPn(n,e){for(;e[0]=0;)++e[0]}function W8(n,e){this.e=e,this.a=FOn(n),this.a<54?this.f=$d(n):this.c=m7(n)}function HPn(n,e,t,i){Je(),cd.call(this,26),this.c=n,this.a=e,this.d=t,this.b=i}function oh(n,e,t){var i,r;for(i=10,r=0;rn.a[i]&&(i=t);return i}function T0e(n,e){var t;return t=zd(n.e.c,e.e.c),t==0?ni(n.e.d,e.e.d):t}function Fw(n,e){return e.e==0||n.e==0?W4:(a4(),Hx(n,e))}function M0e(n,e){if(!n)throw T(new Hn(P8e("Enum constant undefined: %s",e)))}function X5(){X5=N,MWn=new San,AWn=new Man,CWn=new $an,TWn=new Fan,SWn=new xan}function RC(){RC=N,Yin=new qG("BY_SIZE",0),jR=new qG("BY_SIZE_AND_SHAPE",1)}function _C(){_C=N,$R=new GG("EADES",0),tS=new GG("FRUCHTERMAN_REINGOLD",1)}function V8(){V8=N,$S=new XG("READING_DIRECTION",0),Ucn=new XG("ROTATION",1)}function GPn(){GPn=N,hXn=Fe((Pa(),A(M(zcn,1),z,335,0,[f_,Gcn,h_,Em,jm])))}function zPn(){zPn=N,KQn=Fe((b6(),A(M(Usn,1),z,315,0,[zsn,nK,eK,Lm,Nm])))}function UPn(){UPn=N,ZWn=Fe((Vw(),A(M(YWn,1),z,363,0,[SS,IS,OS,PS,AS])))}function WPn(){WPn=N,EXn=Fe((Ss(),A(M(jun,1),z,163,0,[Qk,Sm,xl,Pm,Ub])))}function XPn(){XPn=N,oZn=Fe((P7(),A(M(gfn,1),z,316,0,[dfn,xK,wfn,LK,bfn])))}function VPn(){VPn=N,OZn=Fe((Ho(),A(M($1,1),z,175,0,[Xn,vi,Zf,Ya,D1])))}function QPn(){QPn=N,tZn=Fe((g4(),A(M(eZn,1),z,355,0,[Ng,Ep,Qm,Vm,Jm])))}function JPn(){JPn=N,vWn=Fe((Qi(),A(M(Hrn,1),z,356,0,[Qf,$l,Hc,Cc,Or])))}function YPn(){YPn=N,ene=Fe((sr(),A(M(e9,1),z,103,0,[kh,Ao,Zs,Jh,Yh])))}function ZPn(){ZPn=N,hne=Fe((qw(),A(M(c9,1),z,249,0,[Hl,Cy,Hhn,r9,qhn])))}function nIn(){nIn=N,dne=Fe((J(),A(M(Zi,1),hc,61,0,[Xr,Kn,Vn,ae,Gn])))}function H$(n,e){var t;return t=u(te(n.a,e),134),t||(t=new pI,it(n.a,e,t)),t}function eIn(n){var e;return e=u(k(n,(G(),p0)),305),e?e.a==n:!1}function tIn(n){var e;return e=u(k(n,(G(),p0)),305),e?e.i==n:!1}function iIn(n,e){return _n(e),mW(n),n.d.Ob()?(e.td(n.d.Pb()),!0):!1}function KC(n){return fc(n,nt)>0?nt:fc(n,Bi)<0?Bi:ge(n)}function sb(n){return n<3?(rs(n,J_n),n+1):n=0&&e=-.01&&n.a<=wf&&(n.a=0),n.b>=-.01&&n.b<=wf&&(n.b=0),n}function cIn(n,e){return e==(sD(),sD(),Pzn)?n.toLocaleLowerCase():n.toLowerCase()}function nV(n){return(n.i&2?"interface ":n.i&1?"":"class ")+(Ph(n),n.o)}function Cr(n){var e,t;t=(e=new RI,e),me((!n.q&&(n.q=new V(co,n,11,10)),n.q),t)}function A0e(n,e){var t;return t=e>0?e-1:e,e8n(Kie(IIn(YU(new zp,t),n.n),n.j),n.k)}function S0e(n,e,t,i){var r;n.j=-1,EY(n,iY(n,e,t),(er(),r=u(e,66).Mj(),r.Ok(i)))}function uIn(n){this.g=n,this.f=new X,this.a=y.Math.min(this.g.c.c,this.g.d.c)}function sIn(n){this.b=new X,this.a=new X,this.c=new X,this.d=new X,this.e=n}function oIn(n,e){this.a=new we,this.e=new we,this.b=(i6(),oP),this.c=n,this.b=e}function fIn(n,e,t){kE.call(this),eV(this),this.a=n,this.c=t,this.b=e.d,this.f=e.e}function hIn(n){this.d=n,this.c=n.c.vc().Kc(),this.b=null,this.a=null,this.e=(aj(),fR)}function Ld(n){if(n<0)throw T(new Hn("Illegal Capacity: "+n));this.g=this.ri(n)}function P0e(n,e){if(0>n||n>e)throw T(new bG("fromIndex: 0, toIndex: "+n+tnn+e))}function I0e(n){var e;if(n.a==n.b.a)throw T(new ic);return e=n.a,n.c=e,n.a=n.a.e,e}function HC(n){var e;z0(!!n.c),e=n.c.a,Ts(n.d,n.c),n.b==n.c?n.b=e:--n.a,n.c=null}function qC(n,e){var t;return Ta(n),t=new DTn(n,n.a.rd(),n.a.qd()|4,e),new $n(n,t)}function O0e(n,e){var t,i;return t=u(ab(n.d,e),14),t?(i=e,n.e.pc(i,t)):null}function GC(n,e){var t,i;for(i=n.Kc();i.Ob();)t=u(i.Pb(),70),H(t,(G(),pp),e)}function D0e(n){var e;return e=K(Y(k(n,(nn(),S1)))),e<0&&(e=0,H(n,S1,e)),e}function $0e(n,e,t){var i;i=y.Math.max(0,n.b/2-.5),g6(t,i,1),W(e,new L7n(t,i))}function F0e(n,e,t){var i;return i=n.a.e[u(e.a,10).p]-n.a.e[u(t.a,10).p],Gt(m8(i))}function lIn(n,e,t,i,r,c){var o;o=C$(i),Hi(o,r),Ci(o,c),Tn(n.a,i,new EE(o,e,t.f))}function aIn(n,e){var t;if(t=R7(n.Tg(),e),!t)throw T(new Hn(Pl+e+MB));return t}function ob(n,e){var t;for(t=n;Pt(t);)if(t=Pt(t),t==e)return!0;return!1}function x0e(n,e){var t,i,r;for(i=e.a.cd(),t=u(e.a.dd(),14).gc(),r=0;r0&&(n.a/=e,n.b/=e),n}function is(n){var e;return n.w?n.w:(e=Gle(n),e&&!e.kh()&&(n.w=e),e)}function q0e(n){var e;return n==null?null:(e=u(n,190),Gve(e,e.length))}function D(n,e){if(n.g==null||e>=n.i)throw T(new xO(e,n.i));return n.li(e,n.g[e])}function G0e(n){var e,t;for(e=n.a.d.j,t=n.c.d.j;e!=t;)ko(n.b,e),e=yT(e);ko(n.b,e)}function z0e(n){var e;for(e=0;e=14&&e<=16))),n}function gIn(n,e,t){var i=function(){return n.apply(i,arguments)};return e.apply(i,t),i}function pIn(n,e,t){var i,r;i=e;do r=K(n.p[i.p])+t,n.p[i.p]=r,i=n.a[i.p];while(i!=e)}function O3(n,e){var t,i;i=n.a,t=Tge(n,e,null),i!=e&&!n.e&&(t=j4(n,e,t)),t&&t.Fi()}function tV(n,e){return Zo(),mo(Cl),y.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)}function iV(n,e){return Zo(),mo(Cl),y.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)}function X0e(n,e){return yl(),Wc(n.b.c.length-n.e.c.length,e.b.c.length-e.e.c.length)}function xw(n,e){return Uie(J5(n,e,ge(Ni(dh,ch(ge(Ni(e==null?0:mt(e),bh)),15)))))}function vIn(){vIn=N,$Wn=Fe((Qn(),A(M(zR,1),z,267,0,[ii,pi,Xt,Tc,Ju,mf])))}function mIn(){mIn=N,_Zn=Fe((vb(),A(M(UK,1),z,291,0,[zK,gy,wy,GK,dy,by])))}function kIn(){kIn=N,FZn=Fe((fh(),A(M(Rfn,1),z,248,0,[HK,ly,ay,xP,$P,FP])))}function yIn(){yIn=N,uXn=Fe((q2(),A(M(rv,1),z,227,0,[iv,ym,tv,qb,Cg,Eg])))}function jIn(){jIn=N,pXn=Fe((h4(),A(M(sun,1),z,275,0,[Cm,iun,uun,cun,run,tun])))}function EIn(){EIn=N,gXn=Fe((A7(),A(M(eun,1),z,274,0,[LS,Ycn,nun,Jcn,Zcn,p_])))}function CIn(){CIn=N,BQn=Fe((JT(),A(M(Hsn,1),z,313,0,[Q_,_sn,V_,Rsn,Ksn,sP])))}function TIn(){TIn=N,bXn=Fe((eM(),A(M(Xcn,1),z,276,0,[d_,a_,w_,b_,g_,FS])))}function MIn(){MIn=N,VJn=Fe((k6(),A(M(XJn,1),z,327,0,[pP,aK,bK,dK,wK,lK])))}function AIn(){AIn=N,ane=Fe((Mu(),A(M(qP,1),z,273,0,[Gl,n1,Ty,s9,u9,Pp])))}function SIn(){SIn=N,rne=Fe((ZT(),A(M(xhn,1),z,312,0,[uH,Dhn,Fhn,Ihn,$hn,Ohn])))}function V0e(){return jb(),A(M(lr,1),z,93,0,[So,Zh,Po,Oo,jh,eo,ds,Io,no])}function UC(n,e){var t;t=n.a,n.a=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,0,t,n.a))}function WC(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,1,t,n.b))}function D3(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,3,t,n.b))}function Bd(n,e){var t;t=n.f,n.f=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,3,t,n.f))}function Rd(n,e){var t;t=n.g,n.g=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,4,t,n.g))}function nu(n,e){var t;t=n.i,n.i=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,5,t,n.i))}function eu(n,e){var t;t=n.j,n.j=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,6,t,n.j))}function $3(n,e){var t;t=n.j,n.j=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,1,t,n.j))}function F3(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,4,t,n.c))}function x3(n,e){var t;t=n.k,n.k=e,n.Db&4&&!(n.Db&1)&&et(n,new rb(n,2,t,n.k))}function G$(n,e){var t;t=n.d,n.d=e,n.Db&4&&!(n.Db&1)&&et(n,new p$(n,2,t,n.d))}function d1(n,e){var t;t=n.s,n.s=e,n.Db&4&&!(n.Db&1)&&et(n,new p$(n,4,t,n.s))}function hb(n,e){var t;t=n.t,n.t=e,n.Db&4&&!(n.Db&1)&&et(n,new p$(n,5,t,n.t))}function L3(n,e){var t;t=n.F,n.F=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,5,t,e))}function Q8(n,e){var t;return t=u(te(($j(),eI),n),55),t?t.xj(e):F(Zn,rn,1,e,5,1)}function Bh(n,e){var t,i;return t=e in n.a,t&&(i=Dh(n,e).he(),i)?i.a:null}function Q0e(n,e){var t,i,r;return t=(i=(ad(),r=new QH,r),e&&zY(i,e),i),aV(t,n),t}function PIn(n,e,t){if(W3(n,t),!n.Bk()&&t!=null&&!n.wj(t))throw T(new xI);return t}function IIn(n,e){return n.n=e,n.n?(n.f=new X,n.e=new X):(n.f=null,n.e=null),n}function Me(n,e,t,i,r,c){var o;return o=LD(n,e),DIn(t,o),o.i=r?8:0,o.f=i,o.e=r,o.g=c,o}function rV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=1,this.c=n,this.a=t}function cV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=2,this.c=n,this.a=t}function uV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=6,this.c=n,this.a=t}function sV(n,e,t,i,r){this.d=e,this.k=i,this.f=r,this.o=-1,this.p=7,this.c=n,this.a=t}function oV(n,e,t,i,r){this.d=e,this.j=i,this.e=r,this.o=-1,this.p=4,this.c=n,this.a=t}function OIn(n,e){var t,i,r,c;for(i=e,r=0,c=i.length;r=0),Q2e(n.d,n.c)<0&&(n.a=n.a-1&n.d.a.length-1,n.b=n.d.c),n.c=-1}function fV(n){return n.a<54?n.f<0?-1:n.f>0?1:0:(!n.c&&(n.c=h7(n.f)),n.c).e}function mo(n){if(!(n>=0))throw T(new Hn("tolerance ("+n+") must be >= 0"));return n}function N3(){return _K||(_K=new kBn,_w(_K,A(M(mg,1),rn,130,0,[new nq]))),_K}function ur(){ur=N,Bm=new kO(K6,0),Su=new kO("INPUT",1),xc=new kO("OUTPUT",2)}function VC(){VC=N,Hcn=new bO("ARD",0),DS=new bO("MSD",1),o_=new bO("MANUAL",2)}function _d(){_d=N,ry=new TO("BARYCENTER",0),_m=new TO(rHn,1),aP=new TO(cHn,2)}function J8(n,e){var t;if(t=n.gc(),e<0||e>t)throw T(new V0(e,t));return new AU(n,e)}function xIn(n,e){var t;return I(e,42)?n.c.Mc(e):(t=NF(n,e),IT(n,e),t)}function wr(n,e,t){return Ca(n,e),Ic(n,t),d1(n,0),hb(n,1),p1(n,!0),g1(n,!0),n}function rs(n,e){if(n<0)throw T(new Hn(e+" cannot be negative but was: "+n));return n}function LIn(n,e){var t,i;for(t=0,i=n.gc();t0?u(un(t.a,i-1),10):null}function Q5(n,e){var t;t=n.k,n.k=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,2,t,n.k))}function JC(n,e){var t;t=n.f,n.f=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,8,t,n.f))}function YC(n,e){var t;t=n.i,n.i=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,7,t,n.i))}function aV(n,e){var t;t=n.a,n.a=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,8,t,n.a))}function dV(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,0,t,n.b))}function bV(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,0,t,n.b))}function wV(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,1,t,n.c))}function gV(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,1,t,n.c))}function U$(n,e){var t;t=n.c,n.c=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,4,t,n.c))}function pV(n,e){var t;t=n.d,n.d=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,1,t,n.d))}function W$(n,e){var t;t=n.D,n.D=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,2,t,n.D))}function X$(n,e){n.r>0&&n.c0&&n.g!=0&&X$(n.i,e/n.r*n.i.d))}function cbe(n,e,t){var i;n.b=e,n.a=t,i=(n.a&512)==512?new T9n:new ZH,n.c=y7e(i,n.b,n.a)}function zIn(n,e){return zh(n.e,e)?(er(),R$(e)?new IE(e,n):new i8(e,n)):new Nkn(e,n)}function ZC(n,e){return zie(Y5(n.a,e,ge(Ni(dh,ch(ge(Ni(e==null?0:mt(e),bh)),15)))))}function ube(n,e,t){return cb(n,new Hvn(e),new mln,new qvn(t),A(M(Bu,1),z,132,0,[]))}function sbe(n){var e,t;return 0>n?new PG:(e=n+1,t=new wSn(e,n),new oU(null,t))}function obe(n,e){Pn();var t;return t=new s2(1),ki(n)?yr(t,n,e):_c(t.f,n,e),new DI(t)}function fbe(n,e){var t,i;return t=n.o+n.p,i=e.o+e.p,te?(e<<=1,e>0?e:L6):e}function V$(n){switch(Rz(n.e!=3),n.e){case 2:return!1;case 0:return!0}return wde(n)}function WIn(n,e){var t;return I(e,8)?(t=u(e,8),n.a==t.a&&n.b==t.b):!1}function Q$(n,e,t){var i,r,c;return c=e>>5,r=e&31,i=ui(J0(n.n[t][c],ge(Ih(r,1))),3),i}function lbe(n,e){var t,i;for(i=e.vc().Kc();i.Ob();)t=u(i.Pb(),42),XT(n,t.cd(),t.dd())}function abe(n,e){var t;t=new Wy,u(e.b,65),u(e.b,65),u(e.b,65),Zc(e.a,new BU(n,t,e))}function vV(n,e){var t;t=n.b,n.b=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,21,t,n.b))}function mV(n,e){var t;t=n.d,n.d=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,11,t,n.d))}function nT(n,e){var t;t=n.j,n.j=e,n.Db&4&&!(n.Db&1)&&et(n,new gi(n,1,13,t,n.j))}function XIn(n,e,t){var i,r,c;for(c=n.a.length-1,r=n.b,i=0;i>>31;i!=0&&(n[t]=i)}function jbe(n,e){Pn();var t,i;for(i=new X,t=0;t0&&(this.g=this.ri(this.i+(this.i/8|0)+1),n.Qc(this.g))}function $t(n,e){ME.call(this,ree,n,e),this.b=this,this.a=Kc(n.Tg(),On(this.e.Tg(),this.c))}function Z5(n,e){var t,i;for(_n(e),i=e.vc().Kc();i.Ob();)t=u(i.Pb(),42),n.zc(t.cd(),t.dd())}function Dbe(n,e,t){var i;for(i=t.Kc();i.Ob();)if(!yC(n,e,i.Pb()))return!1;return!0}function $be(n,e,t,i,r){var c;return t&&(c=yt(e.Tg(),n.c),r=t.gh(e,-1-(c==-1?i:c),null,r)),r}function Fbe(n,e,t,i,r){var c;return t&&(c=yt(e.Tg(),n.c),r=t.ih(e,-1-(c==-1?i:c),null,r)),r}function dOn(n){var e;if(n.b==-2){if(n.e==0)e=-1;else for(e=0;n.a[e]==0;e++);n.b=e}return n.b}function bOn(n){switch(n.g){case 2:return J(),Gn;case 4:return J(),Vn;default:return n}}function wOn(n){switch(n.g){case 1:return J(),ae;case 3:return J(),Kn;default:return n}}function xbe(n){var e,t,i;return n.j==(J(),Kn)&&(e=GLn(n),t=au(e,Vn),i=au(e,Gn),i||i&&t)}function Lbe(n){var e,t;return e=u(n.e&&n.e(),9),t=u(IW(e,e.length),9),new ks(e,t,e.length)}function Nbe(n,e){le(e,iHn,1),TQ(ire(new tj((Vv(),new GD(n,!1,!1,new BH))))),ce(e)}function Y8(n,e){return qn(),ki(n)?DX(n,Ce(e)):G0(n)?TD(n,Y(e)):q0(n)?Kfe(n,sn(e)):n.wd(e)}function TV(n,e){e.q=n,n.d=y.Math.max(n.d,e.r),n.b+=e.d+(n.a.c.length==0?0:n.c),W(n.a,e)}function R3(n,e){var t,i,r,c;return r=n.c,t=n.c+n.b,c=n.d,i=n.d+n.a,e.a>r&&e.ac&&e.b1||n.Ob())return++n.a,n.g=0,e=n.i,n.Ob(),e;throw T(new ic)}function Vbe(n){gyn();var e;return M7n(hK,n)||(e=new Zwn,e.a=n,wU(hK,n,e)),u(br(hK,n),635)}function Ks(n){var e,t,i,r;return r=n,i=0,r<0&&(r+=$a,i=Wh),t=Gt(r/J2),e=Gt(r-t*J2),Bc(e,t,i)}function Z8(n){var e,t,i;for(i=0,t=new o2(n.a);t.a>22),r=n.h+e.h+(i>>22),Bc(t&Nu,i&Nu,r&Wh)}function xOn(n,e){var t,i,r;return t=n.l-e.l,i=n.m-e.m+(t>>22),r=n.h-e.h+(i>>22),Bc(t&Nu,i&Nu,r&Wh)}function i7(n){var e;return n<128?(e=(QEn(),yin)[n],!e&&(e=yin[n]=new wq(n)),e):new wq(n)}function jt(n){var e;return I(n,78)?n:(e=n&&n.__java$exception,e||(e=new CDn(n),Kmn(e)),e)}function r7(n){if(I(n,186))return u(n,118);if(n)return null;throw T(new c2(Iqn))}function LOn(n,e){if(e==null)return!1;for(;n.a!=n.b;)if(tt(e,vT(n)))return!0;return!1}function OV(n){return n.a.Ob()?!0:n.a!=n.d?!1:(n.a=new lX(n.e.f),n.a.Ob())}function Zt(n,e){var t,i;return t=e.Pc(),i=t.length,i==0?!1:(GU(n.c,n.c.length,t),!0)}function hwe(n,e,t){var i,r;for(r=e.vc().Kc();r.Ob();)i=u(r.Pb(),42),n.yc(i.cd(),i.dd(),t);return n}function NOn(n,e){var t,i;for(i=new E(n.b);i.a=0,"Negative initial capacity"),TE(e>=0,"Non-positive load factor"),Cu(this)}function uF(n,e,t){return n>=128?!1:n<64?b5(ui(Ih(1,n),t),0):b5(ui(Ih(1,n-64),e),0)}function mwe(n,e){return!n||!e||n==e?!1:zd(n.b.c,e.b.c+e.b.b)<0&&zd(e.b.c,n.b.c+n.b.b)<0}function VOn(n){var e,t,i;return t=n.n,i=n.o,e=n.d,new ys(t.a-e.b,t.b-e.d,i.a+(e.b+e.c),i.b+(e.d+e.a))}function kwe(n){var e,t,i,r;for(t=n.a,i=0,r=t.length;ii)throw T(new V0(e,i));return n.hi()&&(t=aMn(n,t)),n.Vh(e,t)}function s7(n,e,t){return t==null?(!n.q&&(n.q=new we),O2(n.q,e)):(!n.q&&(n.q=new we),it(n.q,e,t)),n}function H(n,e,t){return t==null?(!n.q&&(n.q=new we),O2(n.q,e)):(!n.q&&(n.q=new we),it(n.q,e,t)),n}function QOn(n){var e,t;return t=new TC,Pr(t,n),H(t,(dl(),hp),n),e=new we,Cye(n,t,e),QEe(n,t,e),t}function Ewe(n){eg();var e,t,i;for(t=F(di,q,8,2,0,1),i=0,e=0;e<2;e++)i+=.5,t[e]=r3e(i,n);return t}function JOn(n,e){var t,i,r,c;for(t=!1,i=n.a[e].length,c=0;c>=1);return e}function ZOn(n){var e,t;return t=x7(n.h),t==32?(e=x7(n.m),e==32?x7(n.l)+32:e+20-10):t-12}function t6(n){var e;return e=n.a[n.b],e==null?null:(St(n.a,n.b,null),n.b=n.b+1&n.a.length-1,e)}function nDn(n){var e,t;return e=n.t-n.k[n.o.p]*n.d+n.j[n.o.p]>n.f,t=n.u+n.e[n.o.p]*n.d>n.f*n.s*n.d,e||t}function bT(n,e,t){var i,r;return i=new I$(e,t),r=new dI,n.b=zNn(n,n.b,i,r),r.b||++n.c,n.b.b=!1,r.d}function eDn(n,e,t){var i,r,c,o;for(o=c6(e,t),c=0,r=o.Kc();r.Ob();)i=u(r.Pb(),11),it(n.c,i,Q(c++))}function wl(n){var e,t;for(t=new E(n.a.b);t.at&&(t=n[e]);return t}function tDn(n,e,t){var i;return i=new X,XY(n,e,i,(J(),Vn),!0,!1),XY(n,t,i,Gn,!1,!1),i}function oF(n,e,t){var i,r,c,o;return c=null,o=e,r=Fd(o,"labels"),i=new jkn(n,t),c=(Hme(i.a,i.b,r),r),c}function Twe(n,e,t,i){var r;return r=xY(n,e,t,i),!r&&(r=Mge(n,t,i),r&&!rg(n,e,r))?null:r}function Mwe(n,e,t,i){var r;return r=LY(n,e,t,i),!r&&(r=TF(n,t,i),r&&!rg(n,e,r))?null:r}function iDn(n,e){var t;for(t=0;t1||e>=0&&n.b<3)}function o7(n){var e,t,i;for(e=new hu,i=_e(n,0);i.b!=i.d.c;)t=u(Re(i),8),s3(e,0,new kr(t));return e}function ja(n){var e,t;for(t=new E(n.a.b);t.ai?1:0}function QV(n,e){return ANn(n,e)?(Tn(n.b,u(k(e,(G(),Gb)),21),e),Ke(n.a,e),!0):!1}function Bwe(n){var e,t;e=u(k(n,(G(),Au)),10),e&&(t=e.c,Jc(t.a,e),t.a.c.length==0&&Jc(Gi(e).b,t))}function fDn(n){return vf?F($zn,lKn,572,0,0,1):u(af(n.a,F($zn,lKn,572,n.a.c.length,0,1)),842)}function Rwe(n,e,t,i){return QE(),new GI(A(M(Ha,1),OM,42,0,[(ex(n,e),new bd(n,e)),(ex(t,i),new bd(t,i))]))}function Rw(n,e,t){var i,r;return r=(i=new RI,i),wr(r,e,t),me((!n.q&&(n.q=new V(co,n,11,10)),n.q),r),r}function aF(n){var e,t,i,r;for(r=lre($ne,n),t=r.length,i=F(tn,q,2,t,6,1),e=0;e=n.b.c.length||(JV(n,2*e+1),t=2*e+2,t=0&&n[i]===e[i];i--);return i<0?0:cO(ui(n[i],fr),ui(e[i],fr))?-1:1}function _we(n,e){var t,i;for(i=_e(n,0);i.b!=i.d.c;)t=u(Re(i),214),t.e.length>0&&(e.td(t),t.i&&Fge(t))}function bF(n,e){var t,i;return i=u(Rn(n.a,4),126),t=F(bH,qB,415,e,0,1),i!=null&&gc(i,0,t,0,i.length),t}function lDn(n,e){var t;return t=new zx((n.f&256)!=0,n.i,n.a,n.d,(n.f&16)!=0,n.j,n.g,e),n.e!=null||(t.c=n),t}function Kwe(n,e){var t,i;for(i=n.Zb().Cc().Kc();i.Ob();)if(t=u(i.Pb(),14),t.Hc(e))return!0;return!1}function wF(n,e,t,i,r){var c,o;for(o=t;o<=r;o++)for(c=e;c<=i;c++)if(zw(n,c,o))return!0;return!1}function aDn(n,e,t){var i,r,c,o;for(_n(t),o=!1,c=n.Zc(e),r=t.Kc();r.Ob();)i=r.Pb(),c.Rb(i),o=!0;return o}function Hwe(n,e){var t;return n===e?!0:I(e,83)?(t=u(e,83),ZJ(Ed(n),t.vc())):!1}function dDn(n,e,t){var i,r;for(r=t.Kc();r.Ob();)if(i=u(r.Pb(),42),n.re(e,i.dd()))return!0;return!1}function bDn(n,e,t){return n.d[e.p][t.p]||(Bpe(n,e,t),n.d[e.p][t.p]=!0,n.d[t.p][e.p]=!0),n.a[e.p][t.p]}function W3(n,e){if(!n.ai()&&e==null)throw T(new Hn("The 'no null' constraint is violated"));return e}function X3(n,e){n.D==null&&n.B!=null&&(n.D=n.B,n.B=null),W$(n,e==null?null:(_n(e),e)),n.C&&n.yk(null)}function qwe(n,e){var t;return!n||n==e||!ai(e,(G(),m0))?!1:(t=u(k(e,(G(),m0)),10),t!=n)}function gF(n){switch(n.i){case 2:return!0;case 1:return!1;case-1:++n.c;default:return n.pl()}}function wDn(n){switch(n.i){case-2:return!0;case-1:return!1;case 1:--n.c;default:return n.ql()}}function gDn(n){cMn.call(this,"The given string does not match the expected format for individual spacings.",n)}function Vu(){Vu=N,gs=new Jj("ELK",0),Yhn=new Jj("JSON",1),Jhn=new Jj("DOT",2),Zhn=new Jj("SVG",3)}function f7(){f7=N,CP=new AO(Xh,0),Don=new AO("RADIAL_COMPACTION",1),$on=new AO("WEDGE_COMPACTION",2)}function lf(){lf=N,Win=new uO("CONCURRENT",0),ls=new uO("IDENTITY_FINISH",1),Rb=new uO("UNORDERED",2)}function pF(){pF=N,jrn=(Aj(),SR),yrn=new In(pnn,jrn),OUn=new kt(vnn),DUn=new kt(mnn),$Un=new kt(knn)}function V3(){V3=N,xcn=new j0n,Lcn=new E0n,zWn=new C0n,GWn=new T0n,qWn=new M0n,Fcn=(_n(qWn),new uln)}function Q3(){Q3=N,sK=new jO("CONSERVATIVE",0),con=new jO("CONSERVATIVE_SOFT",1),Rm=new jO("SLOPPY",2)}function wT(){wT=N,_hn=new vd(15),cne=new tr((Xe(),nd),_hn),t9=Mp,Lhn=HZn,Nhn=Za,Rhn=Kg,Bhn=BP}function vF(n,e,t){var i,r,c;for(i=new Tt,c=_e(t,0);c.b!=c.d.c;)r=u(Re(c),8),Ke(i,new kr(r));aDn(n,e,i)}function Gwe(n){var e,t,i;for(e=0,i=F(di,q,8,n.b,0,1),t=_e(n,0);t.b!=t.d.c;)i[e++]=u(Re(t),8);return i}function ZV(n){var e;return e=(!n.a&&(n.a=new V(e1,n,9,5)),n.a),e.i!=0?ore(u(D(e,0),678)):null}function zwe(n,e){var t;return t=qi(n,e),cO(h$(n,e),0)|Cre(h$(n,t),0)?t:qi(IM,h$(J0(t,63),1))}function Uwe(n,e){var t;t=cn((xF(),uP))!=null&&e.wg()!=null?K(Y(e.wg()))/K(Y(cn(uP))):1,it(n.b,e,t)}function Wwe(n,e){var t,i;return t=u(n.d.Bc(e),14),t?(i=n.e.hc(),i.Gc(t),n.e.d-=t.gc(),t.$b(),i):null}function nQ(n,e){var t,i;if(i=n.c[e],i!=0)for(n.c[e]=0,n.d-=i,t=e+1;t0)return a3(e-1,n.a.c.length),h1(n.a,e-1);throw T(new qmn)}function Xwe(n,e,t){if(e<0)throw T(new mr(_Hn+e));ee)throw T(new Hn(xM+n+aKn+e));if(n<0||e>t)throw T(new bG(xM+n+rnn+e+tnn+t))}function mDn(n){if(!n.a||!(n.a.i&8))throw T(new $r("Enumeration class expected for layout option "+n.f))}function lb(n){var e;++n.j,n.i==0?n.g=null:n.ihA?n-t>hA:t-n>hA}function kF(n,e){return!n||e&&!n.j||I(n,124)&&u(n,124).a.b==0?0:n.Re()}function pT(n,e){return!n||e&&!n.k||I(n,124)&&u(n,124).a.a==0?0:n.Se()}function h7(n){return jl(),n<0?n!=-1?new VQ(-1,-n):gR:n<=10?xin[Gt(n)]:new VQ(1,n)}function tQ(n){throw cF(),T(new L9n("Unexpected typeof result '"+n+"'; please report this bug to the GWT team"))}function CDn(n){H9n(),oE(this),eC(this),this.e=n,NNn(this,n),this.g=n==null?ru:Nr(n),this.a="",this.b=n,this.a=""}function iQ(){this.a=new qgn,this.f=new O6n(this),this.b=new D6n(this),this.i=new $6n(this),this.e=new F6n(this)}function TDn(){iie.call(this,new _X(sb(16))),rs(2,W_n),this.b=2,this.a=new RW(null,null,0,null),$9(this.a,this.a)}function i6(){i6=N,J_=new vO("DUMMY_NODE_OVER",0),qsn=new vO("DUMMY_NODE_UNDER",1),oP=new vO("EQUAL",2)}function yF(){yF=N,_R=sMn(A(M(e9,1),z,103,0,[(sr(),Zs),Ao])),KR=sMn(A(M(e9,1),z,103,0,[Yh,Jh]))}function jF(n){return(J(),uu).Hc(n.j)?K(Y(k(n,(G(),hv)))):Gr(A(M(di,1),q,8,0,[n.i.n,n.n,n.a])).b}function Zwe(n){var e,t,i,r;for(i=n.b.a,t=i.a.ec().Kc();t.Ob();)e=u(t.Pb(),561),r=new pNn(e,n.e,n.f),W(n.g,r)}function Ca(n,e){var t,i,r;i=n.nk(e,null),r=null,e&&(r=(Qp(),t=new ud,t),O3(r,n.r)),i=df(n,r,i),i&&i.Fi()}function nge(n,e){var t,i;for(i=xu(n.d,1)!=0,t=!0;t;)t=!1,t=e.c.Tf(e.e,i),t=t|_7(n,e,i,!1),i=!i;yV(n)}function rQ(n,e){var t,i,r;return i=!1,t=e.q.d,e.dr&&(JFn(e.q,r),i=t!=e.q.d)),i}function MDn(n,e){var t,i,r,c,o,f,h,l;return h=e.i,l=e.j,i=n.f,r=i.i,c=i.j,o=h-r,f=l-c,t=y.Math.sqrt(o*o+f*f),t}function cQ(n,e){var t,i;return i=OT(n),i||(t=(bL(),Yxn(e)),i=new Fmn(t),me(i.Vk(),n)),i}function l7(n,e){var t,i;return t=u(n.c.Bc(e),14),t?(i=n.hc(),i.Gc(t),n.d-=t.gc(),t.$b(),n.mc(i)):n.jc()}function ADn(n,e){var t;for(t=0;t=n.c.b:n.a<=n.c.b))throw T(new ic);return e=n.a,n.a+=n.c.c,++n.b,Q(e)}function ige(n){var e;return e=new uIn(n),O8(n.a,SWn,new Hu(A(M(Rk,1),rn,369,0,[e]))),e.d&&W(e.f,e.d),e.f}function EF(n){var e;return e=new Mz(n.a),Pr(e,n),H(e,(G(),rt),n),e.o.a=n.g,e.o.b=n.f,e.n.a=n.i,e.n.b=n.j,e}function rge(n,e,t,i){var r,c;for(c=n.Kc();c.Ob();)r=u(c.Pb(),70),r.n.a=e.a+(i.a-r.o.a)/2,r.n.b=e.b,e.b+=r.o.b+t}function cge(n,e,t){var i,r;for(r=e.a.a.ec().Kc();r.Ob();)if(i=u(r.Pb(),57),_Tn(n,i,t))return!0;return!1}function uge(n){var e,t;for(t=new E(n.r);t.a=0?e:-e;i>0;)i%2==0?(t*=t,i=i/2|0):(r*=t,i-=1);return e<0?1/r:r}function hge(n,e){var t,i,r;for(r=1,t=n,i=e>=0?e:-e;i>0;)i%2==0?(t*=t,i=i/2|0):(r*=t,i-=1);return e<0?1/r:r}function FDn(n){var e,t;if(n!=null)for(t=0;t0&&(t=u(un(n.a,n.a.c.length-1),570),QV(t,e))||W(n.a,new dSn(e))}function wge(n){wo();var e,t;e=n.d.c-n.e.c,t=u(n.g,145),Zc(t.b,new _5n(e)),Zc(t.c,new K5n(e)),$i(t.i,new H5n(e))}function BDn(n){var e;return e=new V1,e.a+="VerticalSegment ",rc(e,n.e),e.a+=" ",De(e,Lz(new YI,new E(n.k))),e.a}function gge(n){var e;return e=u(xd(n.c.c,""),229),e||(e=new M2(Vp(Xp(new Zg,""),"Other")),Aa(n.c.c,"",e)),e}function r6(n){var e;return n.Db&64?yo(n):(e=new Bs(yo(n)),e.a+=" (name: ",dr(e,n.zb),e.a+=")",e.a)}function hQ(n,e,t){var i,r;return r=n.sb,n.sb=e,n.Db&4&&!(n.Db&1)&&(i=new gi(n,1,4,r,e),t?t.Ei(i):t=i),t}function CF(n,e){var t,i,r;for(t=0,r=zr(n,e).Kc();r.Ob();)i=u(r.Pb(),11),t+=k(i,(G(),Au))!=null?1:0;return t}function Kw(n,e,t){var i,r,c;for(i=0,c=_e(n,0);c.b!=c.d.c&&(r=K(Y(Re(c))),!(r>t));)r>=e&&++i;return i}function pge(n,e,t){var i,r;return i=new Lh(n.e,3,13,null,(r=e.c,r||(Sn(),Tf)),v1(n,e),!1),t?t.Ei(i):t=i,t}function vge(n,e,t){var i,r;return i=new Lh(n.e,4,13,(r=e.c,r||(Sn(),Tf)),null,v1(n,e),!1),t?t.Ei(i):t=i,t}function lQ(n,e,t){var i,r;return r=n.r,n.r=e,n.Db&4&&!(n.Db&1)&&(i=new gi(n,1,8,r,n.r),t?t.Ei(i):t=i),t}function w1(n,e){var t,i;return t=u(e,676),i=t.vk(),!i&&t.wk(i=I(e,88)?new Fkn(n,u(e,26)):new eAn(n,u(e,148))),i}function a7(n,e,t){var i;n.qi(n.i+1),i=n.oi(e,t),e!=n.i&&gc(n.g,e,n.g,e+1,n.i-e),St(n.g,e,i),++n.i,n.bi(e,t),n.ci()}function mge(n,e){var t;return e.a&&(t=e.a.a.length,n.a?De(n.a,n.b):n.a=new Yu(n.d),iAn(n.a,e.a,e.d.length,t)),n}function kge(n,e){var t,i,r,c;if(e.vi(n.a),c=u(Rn(n.a,8),1936),c!=null)for(t=c,i=0,r=t.length;it)throw T(new mr(xM+n+rnn+e+", size: "+t));if(n>e)throw T(new Hn(xM+n+aKn+e))}function As(n,e,t){if(e<0)bY(n,t);else{if(!t.Ij())throw T(new Hn(Pl+t.ne()+em));u(t,66).Nj().Vj(n,n.yh(),e)}}function Ege(n,e,t,i,r,c,o,f){var h;for(h=t;c=i||e=65&&n<=70?n-65+10:n>=97&&n<=102?n-97+10:n>=48&&n<=57?n-48:0}function zDn(n){var e;return n.Db&64?yo(n):(e=new Bs(yo(n)),e.a+=" (source: ",dr(e,n.d),e.a+=")",e.a)}function Tge(n,e,t){var i,r;return r=n.a,n.a=e,n.Db&4&&!(n.Db&1)&&(i=new gi(n,1,5,r,n.a),t?FJ(t,i):t=i),t}function g1(n,e){var t;t=(n.Bb&256)!=0,e?n.Bb|=256:n.Bb&=-257,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,2,t,e))}function dQ(n,e){var t;t=(n.Bb&256)!=0,e?n.Bb|=256:n.Bb&=-257,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,8,t,e))}function kT(n,e){var t;t=(n.Bb&256)!=0,e?n.Bb|=256:n.Bb&=-257,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,8,t,e))}function p1(n,e){var t;t=(n.Bb&512)!=0,e?n.Bb|=512:n.Bb&=-513,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,3,t,e))}function bQ(n,e){var t;t=(n.Bb&512)!=0,e?n.Bb|=512:n.Bb&=-513,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,9,t,e))}function u6(n,e){var t;return n.b==-1&&n.a&&(t=n.a.Gj(),n.b=t?n.c.Xg(n.a.aj(),t):yt(n.c.Tg(),n.a)),n.c.Og(n.b,e)}function Q(n){var e,t;return n>-129&&n<128?(e=n+128,t=(qEn(),jin)[e],!t&&(t=jin[e]=new gq(n)),t):new gq(n)}function J3(n){var e,t;return n>-129&&n<128?(e=n+128,t=(VEn(),Min)[e],!t&&(t=Min[e]=new vq(n)),t):new vq(n)}function wQ(n){var e,t;return e=n.k,e==(Qn(),Xt)?(t=u(k(n,(G(),ec)),61),t==(J(),Kn)||t==ae):!1}function Mge(n,e,t){var i,r,c;return c=(r=b4(n.b,e),r),c&&(i=u(jM(G8(n,c),""),26),i)?xY(n,i,e,t):null}function TF(n,e,t){var i,r,c;return c=(r=b4(n.b,e),r),c&&(i=u(jM(G8(n,c),""),26),i)?LY(n,i,e,t):null}function UDn(n,e){var t,i;for(i=new ie(n);i.e!=i.i.gc();)if(t=u(oe(i),138),B(e)===B(t))return!0;return!1}function s6(n,e,t){var i;if(i=n.gc(),e>i)throw T(new V0(e,i));if(n.hi()&&n.Hc(t))throw T(new Hn(yk));n.Xh(e,t)}function Age(n,e){var t;if(t=xw(n.i,e),t==null)throw T(new Sf("Node did not exist in input."));return MV(e,t),null}function Sge(n,e){var t;if(t=R7(n,e),I(t,322))return u(t,34);throw T(new Hn(Pl+e+"' is not a valid attribute"))}function Pge(n,e,t){var i,r;for(r=I(e,99)&&u(e,18).Bb&Yi?new LO(e,n):new H3(e,n),i=0;ie?1:n==e?n==0?ni(1/n,1/e):0:isNaN(n)?isNaN(e)?0:1:-1}function Bge(n,e){le(e,"Sort end labels",1),Rt(gt(qr(new $n(null,new xn(n.b,16)),new bdn),new wdn),new gdn),ce(e)}function o6(n,e,t){var i,r;return n.ej()?(r=n.fj(),i=Dx(n,e,t),n.$i(n.Zi(7,Q(t),i,e,r)),i):Dx(n,e,t)}function MF(n,e){var t,i,r;n.d==null?(++n.e,--n.f):(r=e.cd(),t=e.Sh(),i=(t&nt)%n.d.length,yde(n,i,hNn(n,i,t,r)))}function Y3(n,e){var t;t=(n.Bb&Eo)!=0,e?n.Bb|=Eo:n.Bb&=-1025,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,10,t,e))}function Z3(n,e){var t;t=(n.Bb&Ib)!=0,e?n.Bb|=Ib:n.Bb&=-4097,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,12,t,e))}function n4(n,e){var t;t=(n.Bb&mu)!=0,e?n.Bb|=mu:n.Bb&=-8193,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,15,t,e))}function e4(n,e){var t;t=(n.Bb&Bb)!=0,e?n.Bb|=Bb:n.Bb&=-2049,n.Db&4&&!(n.Db&1)&&et(n,new vo(n,1,11,t,e))}function Rge(n,e){var t;return t=ni(n.b.c,e.b.c),t!=0||(t=ni(n.a.a,e.a.a),t!=0)?t:ni(n.a.b,e.a.b)}function _ge(n,e){var t;if(t=te(n.k,e),t==null)throw T(new Sf("Port did not exist in input."));return MV(e,t),null}function Kge(n){var e,t;for(t=wNn(is(n)).Kc();t.Ob();)if(e=Ce(t.Pb()),A6(n,e))return Vae((C7n(),zne),e);return null}function Hge(n,e){var t,i,r,c,o;for(o=Kc(n.e.Tg(),e),c=0,t=u(n.g,119),r=0;r>10)+rk&Ut,e[1]=(n&1023)+56320&Ut,Hs(e,0,e.length)}function jT(n){var e,t;return t=u(k(n,(nn(),as)),103),t==(sr(),kh)?(e=K(Y(k(n,zS))),e>=1?Ao:Jh):t}function zge(n){switch(u(k(n,(nn(),Qh)),218).g){case 1:return new ewn;case 3:return new uwn;default:return new nwn}}function Ta(n){if(n.c)Ta(n.c);else if(n.d)throw T(new $r("Stream already terminated, can't be modified or used"))}function PF(n){var e;return n.Db&64?yo(n):(e=new Bs(yo(n)),e.a+=" (identifier: ",dr(e,n.k),e.a+=")",e.a)}function QDn(n,e,t){var i,r;return i=(ad(),r=new Xy,r),UC(i,e),WC(i,t),n&&me((!n.a&&(n.a=new Yt(io,n,5)),n.a),i),i}function IF(n,e,t,i){var r,c;return _n(i),_n(t),r=n.xc(e),c=r==null?t:l7n(u(r,15),u(t,14)),c==null?n.Bc(e):n.zc(e,c),c}function Cn(n){var e,t,i,r;return t=(e=u(xo((i=n.gm,r=i.f,r==Ie?i:r)),9),new ks(e,u(bo(e,e.length),9),0)),ko(t,n),t}function Uge(n,e,t){var i,r;for(r=n.a.ec().Kc();r.Ob();)if(i=u(r.Pb(),10),t7(t,u(un(e,i.p),14)))return i;return null}function Wge(n,e,t){var i;try{Awe(n,e,t)}catch(r){throw r=jt(r),I(r,597)?(i=r,T(new EX(i))):T(r)}return e}function vl(n,e){var t;return Fr(n)&&Fr(e)&&(t=n-e,ik>1,n.k=t-1>>1}function OF(){_J();var n,e,t;t=qTe+++Date.now(),n=Gt(y.Math.floor(t*uk))&FM,e=Gt(t-n*enn),this.a=n^1502,this.b=e^tN}function Kh(n){var e,t,i;for(e=new X,i=new E(n.j);i.a34028234663852886e22?Ft:e<-34028234663852886e22?Qt:e}function JDn(n){return n-=n>>1&1431655765,n=(n>>2&858993459)+(n&858993459),n=(n>>4)+n&252645135,n+=n>>8,n+=n>>16,n&63}function YDn(n){var e,t,i,r;for(e=new Djn(n.Hd().gc()),r=0,i=$2(n.Hd().Kc());i.Ob();)t=i.Pb(),ole(e,t,Q(r++));return $5e(e.a)}function Zge(n,e){var t,i,r;for(r=new we,i=e.vc().Kc();i.Ob();)t=u(i.Pb(),42),it(r,t.cd(),Gbe(n,u(t.dd(),15)));return r}function yQ(n,e){n.n.c.length==0&&W(n.n,new lC(n.s,n.t,n.i)),W(n.b,e),iJ(u(un(n.n,n.n.c.length-1),211),e),oRn(n,e)}function Hw(n){return(n.c!=n.b.b||n.i!=n.g.b)&&(n.a.c=F(Zn,rn,1,0,5,1),Zt(n.a,n.b),Zt(n.a,n.g),n.c=n.b.b,n.i=n.g.b),n.a}function DF(n,e){var t,i,r;for(r=0,i=u(e.Kb(n),20).Kc();i.Ob();)t=u(i.Pb(),17),on(sn(k(t,(G(),kf))))||++r;return r}function n2e(n,e){var t,i,r;i=$w(e),r=K(Y(bb(i,(nn(),Mo)))),t=y.Math.max(0,r/2-.5),g6(e,t,1),W(n,new G7n(e,t))}function Ss(){Ss=N,Qk=new Q9(Xh,0),Sm=new Q9("FIRST",1),xl=new Q9(uHn,2),Pm=new Q9("LAST",3),Ub=new Q9(sHn,4)}function Hh(){Hh=N,rH=new Wj(K6,0),yy=new Wj("POLYLINE",1),Cv=new Wj("ORTHOGONAL",2),Sp=new Wj("SPLINES",3)}function ET(){ET=N,Jon=new PO("ASPECT_RATIO_DRIVEN",0),IK=new PO("MAX_SCALE_DRIVEN",1),Qon=new PO("AREA_DRIVEN",2)}function w7(){w7=N,AP=new IO("P1_STRUCTURE",0),SP=new IO("P2_PROCESSING_ORDER",1),PP=new IO("P3_EXECUTION",2)}function CT(){CT=N,CK=new MO("OVERLAP_REMOVAL",0),jK=new MO("COMPACTION",1),EK=new MO("GRAPH_SIZE_CALCULATION",2)}function zd(n,e){return Zo(),mo(Cl),y.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e))}function ZDn(n,e){var t,i;for(t=_e(n,0);t.b!=t.d.c;){if(i=x9(Y(Re(t))),i==e)return;if(i>e){a$(t);break}}y8(t,e)}function En(n,e){var t,i,r,c,o;if(t=e.f,Aa(n.c.d,t,e),e.g!=null)for(r=e.g,c=0,o=r.length;ce&&i.ue(n[c-1],n[c])>0;--c)o=n[c],St(n,c,n[c-1]),St(n,c-1,o)}function Ps(n,e,t,i){if(e<0)_Y(n,t,i);else{if(!t.Ij())throw T(new Hn(Pl+t.ne()+em));u(t,66).Nj().Tj(n,n.yh(),e,i)}}function TT(n,e){if(e==n.d)return n.e;if(e==n.e)return n.d;throw T(new Hn("Node "+e+" not part of edge "+n))}function t2e(n,e){switch(e.g){case 2:return n.b;case 1:return n.c;case 4:return n.d;case 3:return n.a;default:return!1}}function n$n(n,e){switch(e.g){case 2:return n.b;case 1:return n.c;case 4:return n.d;case 3:return n.a;default:return!1}}function jQ(n,e,t,i){switch(e){case 3:return n.f;case 4:return n.g;case 5:return n.i;case 6:return n.j}return aQ(n,e,t,i)}function i2e(n){return n.k!=(Qn(),ii)?!1:C3(new $n(null,new Cd(new re(ue(ei(n).a.Kc(),new An)))),new Hbn)}function r2e(n){return n.e==null?n:(!n.c&&(n.c=new zx((n.f&256)!=0,n.i,n.a,n.d,(n.f&16)!=0,n.j,n.g,null)),n.c)}function c2e(n,e){return n.h==tk&&n.m==0&&n.l==0?(e&&(Il=Bc(0,0,0)),eyn((I3(),gin))):(e&&(Il=Bc(n.l,n.m,n.h)),Bc(0,0,0))}function Nr(n){var e;return Array.isArray(n)&&n.im===Xg?J1($u(n))+"@"+(e=mt(n)>>>0,e.toString(16)):n.toString()}function f6(n){var e;this.a=(e=u(n.e&&n.e(),9),new ks(e,u(bo(e,e.length),9),0)),this.b=F(Zn,rn,1,this.a.a.length,5,1)}function u2e(n){var e,t,i;for(this.a=new Sh,i=new E(n);i.a0&&(Te(e-1,n.length),n.charCodeAt(e-1)==58)&&!$F(n,a9,d9))}function $F(n,e,t){var i,r;for(i=0,r=n.length;i=r)return e.c+t;return e.c+e.b.gc()}function l2e(n,e){o3();var t,i,r,c;for(i=bPn(n),r=e,S3(i,0,i.length,r),t=0;t0&&(i+=r,++t);return t>1&&(i+=n.d*(t-1)),i}function CQ(n){var e,t,i;for(i=new i1,i.a+="[",e=0,t=n.gc();e0&&this.b>0&&cW(this.c,this.b,this.a)}function AQ(n){xF(),this.c=uf(A(M(sMe,1),rn,831,0,[LQn])),this.b=new we,this.a=n,it(this.b,uP,1),Zc(NQn,new q6n(this))}function e$n(n,e){var t;return n.d?Uu(n.b,e)?u(te(n.b,e),51):(t=e.Kf(),it(n.b,e,t),t):e.Kf()}function SQ(n,e){var t;return B(n)===B(e)?!0:I(e,91)?(t=u(e,91),n.e==t.e&&n.d==t.d&&Jae(n,t.a)):!1}function B2(n){switch(J(),n.g){case 4:return Kn;case 1:return Vn;case 3:return ae;case 2:return Gn;default:return Xr}}function PQ(n,e){switch(e){case 3:return n.f!=0;case 4:return n.g!=0;case 5:return n.i!=0;case 6:return n.j!=0}return SV(n,e)}function p2e(n){switch(n.g){case 0:return new Lgn;case 1:return new Ngn;default:throw T(new Hn(lB+(n.f!=null?n.f:""+n.g)))}}function t$n(n){switch(n.g){case 0:return new xgn;case 1:return new Bgn;default:throw T(new Hn(AN+(n.f!=null?n.f:""+n.g)))}}function i$n(n){switch(n.g){case 0:return new sG;case 1:return new b9n;default:throw T(new Hn(bA+(n.f!=null?n.f:""+n.g)))}}function v2e(n){switch(n.g){case 1:return new Pgn;case 2:return new kjn;default:throw T(new Hn(lB+(n.f!=null?n.f:""+n.g)))}}function m2e(n){var e,t;if(n.b)return n.b;for(t=vf?null:n.d;t;){if(e=vf?null:t.b,e)return e;t=vf?null:t.d}return e3(),Uin}function k2e(n){var e,t,i;return n.e==0?0:(e=n.d<<5,t=n.a[n.d-1],n.e<0&&(i=dOn(n),i==n.d-1&&(--t,t=t|0)),e-=x7(t),e)}function y2e(n){var e,t,i;return n>5,e=n&31,i=F(be,Le,25,t+1,15,1),i[t]=1<3;)r*=10,--c;n=(n+(r>>1))/r|0}return i.i=n,!0}function E2e(n){return yF(),qn(),!!(n$n(u(n.a,81).j,u(n.b,103))||u(n.a,81).d.e!=0&&n$n(u(n.a,81).j,u(n.b,103)))}function C2e(n){DC(),u(n.We((Xe(),_l)),174).Hc((Lu(),UP))&&(u(n.We(rw),174).Fc((Mu(),Pp)),u(n.We(_l),174).Mc(UP))}function c$n(n,e){var t,i;if(e){for(t=0;t=0;--i)for(e=t[i],r=0;r>1,this.k=e-1>>1}function I2e(n,e){le(e,"End label post-processing",1),Rt(gt(qr(new $n(null,new xn(n.b,16)),new udn),new sdn),new odn),ce(e)}function O2e(n,e,t){var i,r;return i=K(n.p[e.i.p])+K(n.d[e.i.p])+e.n.b+e.a.b,r=K(n.p[t.i.p])+K(n.d[t.i.p])+t.n.b+t.a.b,r-i}function D2e(n,e,t){var i,r;for(i=ui(t,fr),r=0;fc(i,0)!=0&&r0&&(Te(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function F2e(n){var e;return n==null?null:new il((e=jc(n,!0),e.length>0&&(Te(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function LQ(n,e){var t;return n.i>0&&(e.lengthn.i&&St(e,n.i,null),e}function Oc(n,e,t){var i,r,c;return n.ej()?(i=n.i,c=n.fj(),a7(n,i,e),r=n.Zi(3,null,e,i,c),t?t.Ei(r):t=r):a7(n,n.i,e),t}function x2e(n,e,t){var i,r;return i=new Lh(n.e,4,10,(r=e.c,I(r,88)?u(r,26):(Sn(),so)),null,v1(n,e),!1),t?t.Ei(i):t=i,t}function L2e(n,e,t){var i,r;return i=new Lh(n.e,3,10,null,(r=e.c,I(r,88)?u(r,26):(Sn(),so)),v1(n,e),!1),t?t.Ei(i):t=i,t}function o$n(n){W0();var e;return e=new kr(u(n.e.We((Xe(),Kg)),8)),n.B.Hc((Lu(),Mv))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function f$n(n){wb();var e;return(n.q?n.q:(Pn(),Pn(),vh))._b((nn(),j0))?e=u(k(n,j0),197):e=u(k(Gi(n),$m),197),e}function bb(n,e){var t,i;return i=null,ai(n,(nn(),rP))&&(t=u(k(n,rP),94),t.Xe(e)&&(i=t.We(e))),i==null&&(i=k(Gi(n),e)),i}function h$n(n,e){var t,i,r;return I(e,42)?(t=u(e,42),i=t.cd(),r=ab(n.Rc(),i),Ff(r,t.dd())&&(r!=null||n.Rc()._b(i))):!1}function NF(n,e){var t,i,r;return n.f>0?(n.qj(),i=e==null?0:mt(e),r=(i&nt)%n.d.length,t=hNn(n,r,i,e),t!=-1):!1}function Ko(n,e){var t,i,r;return n.f>0&&(n.qj(),i=e==null?0:mt(e),r=(i&nt)%n.d.length,t=kY(n,r,i,e),t)?t.dd():null}function g7(n,e){var t,i,r,c;for(c=Kc(n.e.Tg(),e),t=u(n.g,119),r=0;r1?cf(Ih(e.a[1],32),ui(e.a[0],fr)):ui(e.a[0],fr),$d(Ni(e.e,t))))}function p7(n,e){var t;return Fr(n)&&Fr(e)&&(t=n%e,ik>5,e&=31,r=n.d+t+(e==0?0:1),i=F(be,Le,25,r,15,1),Nve(i,n.a,t,e),c=new Pw(n.e,r,i),K5(c),c}function BQ(n,e,t){var i,r;i=u(vc(Pv,e),117),r=u(vc(m9,e),117),t?(yr(Pv,n,i),yr(m9,n,r)):(yr(m9,n,i),yr(Pv,n,r))}function p$n(n,e,t){var i,r,c;for(r=null,c=n.b;c;){if(i=n.a.ue(e,c.d),t&&i==0)return c;i>=0?c=c.a[1]:(r=c,c=c.a[0])}return r}function v$n(n,e,t){var i,r,c;for(r=null,c=n.b;c;){if(i=n.a.ue(e,c.d),t&&i==0)return c;i<=0?c=c.a[0]:(r=c,c=c.a[1])}return r}function K2e(n,e,t,i){var r,c,o;return r=!1,jEe(n.f,t,i)&&(ape(n.f,n.a[e][t],n.a[e][i]),c=n.a[e],o=c[i],c[i]=c[t],c[t]=o,r=!0),r}function RQ(n,e,t,i,r){var c,o,f;for(o=r;e.b!=e.c;)c=u(y2(e),10),f=u(zr(c,i).Xb(0),11),n.d[f.p]=o++,t.c[t.c.length]=f;return o}function _Q(n,e,t){var i,r,c,o,f;return o=n.k,f=e.k,i=t[o.g][f.g],r=Y(bb(n,i)),c=Y(bb(e,i)),y.Math.max((_n(r),r),(_n(c),c))}function H2e(n,e,t){var i,r,c,o;for(i=t/n.c.length,r=0,o=new E(n);o.a2e3&&(wzn=n,KA=y.setTimeout(Vie,10))),_A++==0?(E0e((aG(),din)),!0):!1}function G2e(n,e){var t,i,r;for(i=new re(ue(ei(n).a.Kc(),new An));Se(i);)if(t=u(ve(i),17),r=t.d.i,r.c==e)return!1;return!0}function KQ(n,e){var t,i;if(I(e,245)){i=u(e,245);try{return t=n.vd(i),t==0}catch(r){if(r=jt(r),!I(r,205))throw T(r)}}return!1}function z2e(){return Error.stackTraceLimit>0?(y.Error.stackTraceLimit=Error.stackTraceLimit=64,!0):"stack"in new Error}function U2e(n,e){return Zo(),Zo(),mo(Cl),(y.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e)))>0}function HQ(n,e){return Zo(),Zo(),mo(Cl),(y.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e)))<0}function y$n(n,e){return Zo(),Zo(),mo(Cl),(y.Math.abs(n-e)<=Cl||n==e||isNaN(n)&&isNaN(e)?0:ne?1:pd(isNaN(n),isNaN(e)))<=0}function RF(n,e){for(var t=0;!e[t]||e[t]=="";)t++;for(var i=e[t++];tJL)return t.fh();if(i=t.Zg(),i||t==n)break}return i}function qQ(n){return dC(),I(n,156)?u(te($y,Azn),288).vg(n):Uu($y,$u(n))?u(te($y,$u(n)),288).vg(n):null}function X2e(n){if(DT(B4,n))return qn(),z4;if(DT(EB,n))return qn(),qa;throw T(new Hn("Expecting true or false"))}function V2e(n,e){if(e.c==n)return e.d;if(e.d==n)return e.c;throw T(new Hn("Input edge is not connected to the input port."))}function A$n(n,e){return n.e>e.e?1:n.ee.d?n.e:n.d=48&&n<48+y.Math.min(10,10)?n-48:n>=97&&n<97?n-97+10:n>=65&&n<65?n-65+10:-1}function P$n(n,e){var t;return B(e)===B(n)?!0:!I(e,21)||(t=u(e,21),t.gc()!=n.gc())?!1:n.Ic(t)}function Q2e(n,e){var t,i,r,c;return i=n.a.length-1,t=e-n.b&i,c=n.c-e&i,r=n.c-n.b&i,cjn(t=c?(Vwe(n,e),-1):(Qwe(n,e),1)}function J2e(n,e){var t,i;for(t=(Te(e,n.length),n.charCodeAt(e)),i=e+1;ie.e?1:n.fe.f?1:mt(n)-mt(e)}function DT(n,e){return _n(n),e==null?!1:Mn(n,e)?!0:n.length==e.length&&Mn(n.toLowerCase(),e.toLowerCase())}function upe(n,e){var t,i,r,c;for(i=0,r=e.gc();i0&&fc(n,128)<0?(e=ge(n)+128,t=(XEn(),Ein)[e],!t&&(t=Ein[e]=new pq(n)),t):new pq(n)}function O$n(n,e){var t,i;return t=e.Hh(n.a),t&&(i=Ce(Ko((!t.b&&(t.b=new Gu((Sn(),nr),tc,t)),t.b),We)),i!=null)?i:e.ne()}function spe(n,e){var t,i;return t=e.Hh(n.a),t&&(i=Ce(Ko((!t.b&&(t.b=new Gu((Sn(),nr),tc,t)),t.b),We)),i!=null)?i:e.ne()}function ope(n,e){c$();var t,i;for(i=new re(ue(Kh(n).a.Kc(),new An));Se(i);)if(t=u(ve(i),17),t.d.i==e||t.c.i==e)return t;return null}function UQ(n,e,t){this.c=n,this.f=new X,this.e=new Li,this.j=new eW,this.n=new eW,this.b=e,this.g=new ys(e.c,e.d,e.b,e.a),this.a=t}function _F(n){var e,t,i,r;for(this.a=new Sh,this.d=new hi,this.e=0,t=n,i=0,r=t.length;i0):!1}function F$n(n){var e;B(hn(n,(Xe(),Bg)))===B((_h(),HP))&&(Pt(n)?(e=u(hn(Pt(n),Bg),334),gr(n,Bg,e)):gr(n,Bg,i9))}function ape(n,e,t){var i,r;yx(n.e,e,t,(J(),Gn)),yx(n.i,e,t,Vn),n.a&&(r=u(k(e,(G(),rt)),11),i=u(k(t,rt),11),l$(n.g,r,i))}function x$n(n,e,t){var i,r,c;i=e.c.p,c=e.p,n.b[i][c]=new YTn(n,e),t&&(n.a[i][c]=new c6n(e),r=u(k(e,(G(),m0)),10),r&&Tn(n.d,r,e))}function L$n(n,e){var t,i,r;if(W(eS,n),e.Fc(n),t=u(te(DR,n),21),t)for(r=t.Kc();r.Ob();)i=u(r.Pb(),33),xr(eS,i,0)!=-1||L$n(i,e)}function dpe(n,e,t){var i;(Fzn?(m2e(n),!0):xzn||Nzn?(e3(),!0):Lzn&&(e3(),!1))&&(i=new hEn(e),i.b=t,g5e(n,i))}function KF(n,e){var t;t=!n.A.Hc((Qu(),id))||n.q==(Mi(),Ac),n.u.Hc((Mu(),n1))?t?xCe(n,e):a_n(n,e):n.u.Hc(Gl)&&(t?nCe(n,e):M_n(n,e))}function r4(n,e){var t,i;if(++n.j,e!=null&&(t=(i=n.a.Cb,I(i,97)?u(i,97).Jg():null),ome(e,t))){R2(n.a,4,t);return}R2(n.a,4,u(e,126))}function N$n(n,e,t){return new ys(y.Math.min(n.a,e.a)-t/2,y.Math.min(n.b,e.b)-t/2,y.Math.abs(n.a-e.a)+t,y.Math.abs(n.b-e.b)+t)}function bpe(n,e){var t,i;return t=Wc(n.a.c.p,e.a.c.p),t!=0?t:(i=Wc(n.a.d.i.p,e.a.d.i.p),i!=0?i:Wc(e.a.d.p,n.a.d.p))}function wpe(n,e,t){var i,r,c,o;return c=e.j,o=t.j,c!=o?c.g-o.g:(i=n.f[e.p],r=n.f[t.p],i==0&&r==0?0:i==0?-1:r==0?1:ni(i,r))}function B$n(n,e,t){var i,r,c;if(!t[e.d])for(t[e.d]=!0,r=new E(Hw(e));r.a=r)return r;for(e=e>0?e:0;ei&&St(e,i,null),e}function _$n(n,e){var t,i;for(i=n.a.length,e.lengthi&&St(e,i,null),e}function Aa(n,e,t){var i,r,c;return r=u(te(n.e,e),387),r?(c=gU(r,t),Oyn(n,r),c):(i=new qU(n,e,t),it(n.e,e,i),iMn(i),null)}function vpe(n){var e;if(n==null)return null;if(e=a9e(jc(n,!0)),e==null)throw T(new VI("Invalid hexBinary value: '"+n+"'"));return e}function m7(n){return jl(),fc(n,0)<0?fc(n,-1)!=0?new OJ(-1,P3(n)):gR:fc(n,10)<=0?xin[ge(n)]:new OJ(1,n)}function qF(){return SM(),A(M(yUn,1),z,159,0,[mUn,vUn,kUn,hUn,fUn,lUn,bUn,dUn,aUn,pUn,gUn,wUn,sUn,uUn,oUn,rUn,iUn,cUn,eUn,nUn,tUn,TR])}function K$n(n){var e;this.d=new X,this.j=new Li,this.g=new Li,e=n.g.b,this.f=u(k(Gi(e),(nn(),as)),103),this.e=K(Y(xT(e,nw)))}function H$n(n){this.b=new X,this.e=new X,this.d=n,this.a=!Wv(gt(new $n(null,new Cd(new sf(n.b))),new Fv(new qbn))).sd((ca(),V4))}function Ho(){Ho=N,Xn=new Z9("PARENTS",0),vi=new Z9("NODES",1),Zf=new Z9("EDGES",2),Ya=new Z9("PORTS",3),D1=new Z9("LABELS",4)}function qw(){qw=N,Hl=new e8("DISTRIBUTED",0),Cy=new e8("JUSTIFIED",1),Hhn=new e8("BEGIN",2),r9=new e8(I4,3),qhn=new e8("END",4)}function mpe(n){var e;switch(e=n.yi(null),e){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}function GF(n){switch(n.g){case 1:return sr(),Yh;case 4:return sr(),Zs;case 2:return sr(),Ao;case 3:return sr(),Jh}return sr(),kh}function kpe(n,e,t){var i;switch(i=t.q.getFullYear()-Tl+Tl,i<0&&(i=-i),e){case 1:n.a+=i;break;case 2:oh(n,i%100,2);break;default:oh(n,i,e)}}function _e(n,e){var t,i;if(tb(e,n.b),e>=n.b>>1)for(i=n.c,t=n.b;t>e;--t)i=i.b;else for(i=n.a.a,t=0;t=64&&e<128&&(r=cf(r,Ih(1,e-64)));return r}function xT(n,e){var t,i;return i=null,ai(n,(Xe(),Ap))&&(t=u(k(n,Ap),94),t.Xe(e)&&(i=t.We(e))),i==null&&Gi(n)&&(i=k(Gi(n),e)),i}function z$n(n,e){var t,i,r;r=e.d.i,i=r.k,!(i==(Qn(),ii)||i==mf)&&(t=new re(ue(ei(r).a.Kc(),new An)),Se(t)&&it(n.k,e,u(ve(t),17)))}function zF(n,e){var t,i,r;return i=On(n.Tg(),e),t=e-n.Ah(),t<0?(r=n.Yg(i),r>=0?n.lh(r):Ox(n,i)):t<0?Ox(n,i):u(i,66).Nj().Sj(n,n.yh(),t)}function cn(n){var e;if(I(n.a,4)){if(e=qQ(n.a),e==null)throw T(new $r(HHn+n.b+"'. "+KHn+(Ph(Fy),Fy.k)+Etn));return e}else return n.a}function Epe(n){var e;if(n==null)return null;if(e=qCe(jc(n,!0)),e==null)throw T(new VI("Invalid base64Binary value: '"+n+"'"));return e}function oe(n){var e;try{return e=n.i.Xb(n.e),n.mj(),n.g=n.e++,e}catch(t){throw t=jt(t),I(t,73)?(n.mj(),T(new ic)):T(t)}}function UF(n){var e;try{return e=n.c.ki(n.e),n.mj(),n.g=n.e++,e}catch(t){throw t=jt(t),I(t,73)?(n.mj(),T(new ic)):T(t)}}function a6(){a6=N,Trn=(Xe(),yhn),IR=Zfn,FUn=Tp,Crn=nd,BUn=(WT(),irn),NUn=ern,RUn=crn,LUn=nrn,xUn=(pF(),yrn),PR=OUn,Ern=DUn,nS=$Un}function LT(n){switch(DG(),this.c=new X,this.d=n,n.g){case 0:case 2:this.a=_W(qrn),this.b=Ft;break;case 3:case 1:this.a=qrn,this.b=Qt}}function U$n(n,e,t){var i,r;if(n.c)nu(n.c,n.c.i+e),eu(n.c,n.c.j+t);else for(r=new E(n.b);r.a0&&(W(n.b,new MEn(e.a,t)),i=e.a.length,0i&&(e.a+=Iyn(F(Ls,Rf,25,-i,15,1))))}function W$n(n,e){var t,i,r;for(t=n.o,r=u(u(ct(n.r,e),21),84).Kc();r.Ob();)i=u(r.Pb(),111),i.e.a=M3e(i,t.a),i.e.b=t.b*K(Y(i.b.We(JA)))}function Tpe(n,e){var t,i,r,c;return r=n.k,t=K(Y(k(n,(G(),k0)))),c=e.k,i=K(Y(k(e,k0))),c!=(Qn(),Xt)?-1:r!=Xt?1:t==i?0:t=0?n.hh(e,t,i):(n.eh()&&(i=(r=n.Vg(),r>=0?n.Qg(i):n.eh().ih(n,-1-r,null,i))),n.Sg(e,t,i))}function XQ(n,e){switch(e){case 7:!n.e&&(n.e=new Fn(bi,n,7,4)),de(n.e);return;case 8:!n.d&&(n.d=new Fn(bi,n,8,5)),de(n.d);return}FQ(n,e)}function qo(n,e){var t;t=n.Zc(e);try{return t.Pb()}catch(i){throw i=jt(i),I(i,109)?T(new mr("Can't get element "+e)):T(i)}}function VQ(n,e){this.e=n,e=0&&(t.d=n.t);break;case 3:n.t>=0&&(t.a=n.t)}n.C&&(t.b=n.C.b,t.c=n.C.c)}function K2(){K2=N,$k=new Rj(NM,0),Dk=new Rj(lN,1),Fk=new Rj(aN,2),xk=new Rj(dN,3),$k.a=!1,Dk.a=!0,Fk.a=!1,xk.a=!0}function d6(){d6=N,Lk=new Bj(NM,0),YA=new Bj(lN,1),ZA=new Bj(aN,2),Nk=new Bj(dN,3),Lk.a=!1,YA.a=!0,ZA.a=!1,Nk.a=!0}function Ipe(n){var e;e=n.a;do e=u(ve(new re(ue(Lr(e).a.Kc(),new An))),17).c.i,e.k==(Qn(),pi)&&n.b.Fc(e);while(e.k==(Qn(),pi));n.b=va(n.b)}function Ope(n){var e,t,i;for(i=n.c.a,n.p=(pe(i),new du(i)),t=new E(i);t.at.b)return!0}return!1}function WF(n,e){return ki(n)?!!ozn[e]:n.hm?!!n.hm[e]:G0(n)?!!szn[e]:q0(n)?!!uzn[e]:!1}function gr(n,e,t){return t==null?(!n.o&&(n.o=new Xu((Dc(),Ul),S0,n,0)),IT(n.o,e)):(!n.o&&(n.o=new Xu((Dc(),Ul),S0,n,0)),XT(n.o,e,t)),n}function xpe(n,e,t,i){var r,c;c=e.Xe((Xe(),_g))?u(e.We(_g),21):n.j,r=Cge(c),r!=(SM(),TR)&&(t&&!GQ(r)||nY(d9e(n,r,i),e))}function BT(n,e,t,i){var r,c,o;return c=On(n.Tg(),e),r=e-n.Ah(),r<0?(o=n.Yg(c),o>=0?n._g(o,t,!0):Yd(n,c,t)):u(c,66).Nj().Pj(n,n.yh(),r,t,i)}function Lpe(n,e,t,i){var r,c,o;t.mh(e)&&(er(),R$(e)?(r=u(t.ah(e),153),upe(n,r)):(c=(o=e,o?u(i,49).xh(o):null),c&&Bte(t.ah(e),c)))}function Npe(n){switch(n.g){case 1:return Hd(),Ok;case 3:return Hd(),Ik;case 2:return Hd(),AR;case 4:return Hd(),MR;default:return null}}function QQ(n){switch(typeof n){case EL:return m1(n);case UZ:return Gt(n);case X2:return qn(),n?1231:1237;default:return n==null?0:md(n)}}function Bpe(n,e,t){if(n.e)switch(n.b){case 1:d1e(n.c,e,t);break;case 0:b1e(n.c,e,t)}else xAn(n.c,e,t);n.a[e.p][t.p]=n.c.i,n.a[t.p][e.p]=n.c.e}function Y$n(n){var e,t;if(n==null)return null;for(t=F(mh,q,193,n.length,0,2),e=0;e=0)return r;if(n.Fk()){for(i=0;i=r)throw T(new V0(e,r));if(n.hi()&&(i=n.Xc(t),i>=0&&i!=e))throw T(new Hn(yk));return n.mi(e,t)}function JQ(n,e){if(this.a=u(pe(n),245),this.b=u(pe(e),245),n.vd(e)>0||n==(qI(),cR)||e==(HI(),uR))throw T(new Hn("Invalid range: "+OAn(n,e)))}function Z$n(n){var e,t;for(this.b=new X,this.c=n,this.a=!1,t=new E(n.a);t.a0),(e&-e)==e)return Gt(e*xu(n,31)*4656612873077393e-25);do t=xu(n,31),i=t%e;while(t-i+(e-1)<0);return Gt(i)}function m1(n){lEn();var e,t,i;return t=":"+n,i=XA[t],i!=null?Gt((_n(i),i)):(i=Xin[t],e=i==null?I8e(n):Gt((_n(i),i)),c1e(),XA[t]=e,e)}function eFn(n,e,t){le(t,"Compound graph preprocessor",1),n.a=new Od,s_n(n,e,null),pje(n,e),Z9e(n),H(e,(G(),dun),n.a),n.a=null,Cu(n.b),ce(t)}function Kpe(n,e,t){switch(t.g){case 1:n.a=e.a/2,n.b=0;break;case 2:n.a=e.a,n.b=e.b/2;break;case 3:n.a=e.a/2,n.b=e.b;break;case 4:n.a=0,n.b=e.b/2}}function Hpe(n){var e,t,i;for(i=u(ct(n.a,(Vw(),IS)),15).Kc();i.Ob();)t=u(i.Pb(),101),e=hJ(t),b3(n,t,e[0],(Kd(),w0),0),b3(n,t,e[1],g0,1)}function qpe(n){var e,t,i;for(i=u(ct(n.a,(Vw(),OS)),15).Kc();i.Ob();)t=u(i.Pb(),101),e=hJ(t),b3(n,t,e[0],(Kd(),w0),0),b3(n,t,e[1],g0,1)}function XF(n){switch(n.g){case 0:return null;case 1:return new eOn;case 2:return new oG;default:throw T(new Hn(lB+(n.f!=null?n.f:""+n.g)))}}function k7(n,e,t){var i,r;for(lwe(n,e-n.s,t-n.t),r=new E(n.n);r.a1&&(c=_pe(n,e)),c}function VF(n){var e;return n.f&&n.f.kh()&&(e=u(n.f,49),n.f=u(pl(n,e),82),n.f!=e&&n.Db&4&&!(n.Db&1)&&et(n,new gi(n,9,8,e,n.f))),n.f}function QF(n){var e;return n.i&&n.i.kh()&&(e=u(n.i,49),n.i=u(pl(n,e),82),n.i!=e&&n.Db&4&&!(n.Db&1)&&et(n,new gi(n,9,7,e,n.i))),n.i}function ir(n){var e;return n.b&&n.b.Db&64&&(e=n.b,n.b=u(pl(n,e),18),n.b!=e&&n.Db&4&&!(n.Db&1)&&et(n,new gi(n,9,21,e,n.b))),n.b}function KT(n,e){var t,i,r;n.d==null?(++n.e,++n.f):(i=e.Sh(),u8e(n,n.f+1),r=(i&nt)%n.d.length,t=n.d[r],!t&&(t=n.d[r]=n.uj()),t.Fc(e),++n.f)}function nJ(n,e,t){var i;return e.Kj()?!1:e.Zj()!=-2?(i=e.zj(),i==null?t==null:tt(i,t)):e.Hj()==n.e.Tg()&&t==null}function HT(){var n;rs(16,J_n),n=UIn(16),this.b=F(oR,nk,317,n,0,1),this.c=F(oR,nk,317,n,0,1),this.a=null,this.e=null,this.i=0,this.f=n-1,this.g=0}function qh(n){vU.call(this),this.k=(Qn(),ii),this.j=(rs(6,Pb),new Pc(6)),this.b=(rs(2,Pb),new Pc(2)),this.d=new NI,this.f=new Zq,this.a=n}function zpe(n){var e,t;n.c.length<=1||(e=ZNn(n,(J(),ae)),Kxn(n,u(e.a,19).a,u(e.b,19).a),t=ZNn(n,Gn),Kxn(n,u(t.a,19).a,u(t.b,19).a))}function b6(){b6=N,zsn=new V9("SIMPLE",0),nK=new V9(PN,1),eK=new V9("LINEAR_SEGMENTS",2),Lm=new V9("BRANDES_KOEPF",3),Nm=new V9(EHn,4)}function eJ(n,e,t){p2(u(k(e,(nn(),Lt)),98))||(VX(n,e,k1(e,t)),VX(n,e,k1(e,(J(),ae))),VX(n,e,k1(e,Kn)),Pn(),wi(e.j,new i6n(n)))}function tFn(n,e,t,i){var r,c,o;for(r=u(ct(i?n.a:n.b,e),21),o=r.Kc();o.Ob();)if(c=u(o.Pb(),33),aM(n,t,c))return!0;return!1}function JF(n){var e,t;for(t=new ie(n);t.e!=t.i.gc();)if(e=u(oe(t),87),e.e||(!e.d&&(e.d=new Yt(ar,e,1)),e.d).i!=0)return!0;return!1}function YF(n){var e,t;for(t=new ie(n);t.e!=t.i.gc();)if(e=u(oe(t),87),e.e||(!e.d&&(e.d=new Yt(ar,e,1)),e.d).i!=0)return!0;return!1}function Upe(n){var e,t,i;for(e=0,i=new E(n.c.a);i.a102?-1:n<=57?n-48:n<65?-1:n<=70?n-65+10:n<97?-1:n-97+10}function ex(n,e){if(n==null)throw T(new c2("null key in entry: null="+e));if(e==null)throw T(new c2("null value in entry: "+n+"=null"))}function Wpe(n,e){for(var t,i;n.Ob();)if(!e.Ob()||(t=n.Pb(),i=e.Pb(),!(B(t)===B(i)||t!=null&&tt(t,i))))return!1;return!e.Ob()}function rFn(n,e){var t;return t=A(M(Ei,1),pr,25,15,[kF(n.a[0],e),kF(n.a[1],e),kF(n.a[2],e)]),n.d&&(t[0]=y.Math.max(t[0],t[2]),t[2]=t[0]),t}function cFn(n,e){var t;return t=A(M(Ei,1),pr,25,15,[pT(n.a[0],e),pT(n.a[1],e),pT(n.a[2],e)]),n.d&&(t[0]=y.Math.max(t[0],t[2]),t[2]=t[0]),t}function Pa(){Pa=N,f_=new X9("GREEDY",0),Gcn=new X9(fHn,1),h_=new X9(PN,2),Em=new X9("MODEL_ORDER",3),jm=new X9("GREEDY_MODEL_ORDER",4)}function uFn(n,e){var t,i,r;for(n.b[e.g]=1,i=_e(e.d,0);i.b!=i.d.c;)t=u(Re(i),188),r=t.c,n.b[r.g]==1?Ke(n.a,t):n.b[r.g]==2?n.b[r.g]=1:uFn(n,r)}function Xpe(n,e){var t,i,r;for(r=new Pc(e.gc()),i=e.Kc();i.Ob();)t=u(i.Pb(),286),t.c==t.f?l4(n,t,t.c):U5e(n,t)||(r.c[r.c.length]=t);return r}function Vpe(n,e,t){var i,r,c,o,f;for(f=n.r+e,n.r+=e,n.d+=t,i=t/n.n.c.length,r=0,o=new E(n.n);o.ac&&St(e,c,null),e}function f3e(n,e){var t,i;if(i=n.gc(),e==null){for(t=0;t0&&(h+=r),l[a]=o,o+=f*(h+i)}function bFn(n){var e,t,i;for(i=n.f,n.n=F(Ei,pr,25,i,15,1),n.d=F(Ei,pr,25,i,15,1),e=0;e0?n.c:0),++r;n.b=i,n.d=c}function g3e(n,e){var t,i,r,c,o;for(i=0,r=0,t=0,o=new E(e);o.a0?n.g:0),++t;n.c=r,n.d=i}function mFn(n,e){var t;return t=A(M(Ei,1),pr,25,15,[ZQ(n,(_o(),Zr),e),ZQ(n,Fc,e),ZQ(n,nc,e)]),n.f&&(t[0]=y.Math.max(t[0],t[2]),t[2]=t[0]),t}function p3e(n,e,t){var i;try{wM(n,e+n.j,t+n.k,!1,!0)}catch(r){throw r=jt(r),I(r,73)?(i=r,T(new mr(i.g+RM+e+Ji+t+")."))):T(r)}}function v3e(n,e,t){var i;try{wM(n,e+n.j,t+n.k,!0,!1)}catch(r){throw r=jt(r),I(r,73)?(i=r,T(new mr(i.g+RM+e+Ji+t+")."))):T(r)}}function kFn(n){var e;ai(n,(nn(),y0))&&(e=u(k(n,y0),21),e.Hc((jb(),So))?(e.Mc(So),e.Fc(Po)):e.Hc(Po)&&(e.Mc(Po),e.Fc(So)))}function yFn(n){var e;ai(n,(nn(),y0))&&(e=u(k(n,y0),21),e.Hc((jb(),Oo))?(e.Mc(Oo),e.Fc(eo)):e.Hc(eo)&&(e.Mc(eo),e.Fc(Oo)))}function m3e(n,e,t){le(t,"Self-Loop ordering",1),Rt(Vc(gt(gt(qr(new $n(null,new xn(e.b,16)),new P0n),new I0n),new O0n),new D0n),new O5n(n)),ce(t)}function j7(n,e,t,i){var r,c;for(r=e;r0&&(r.b+=e),r}function zT(n,e){var t,i,r;for(r=new Li,i=n.Kc();i.Ob();)t=u(i.Pb(),37),M6(t,0,r.b),r.b+=t.f.b+e,r.a=y.Math.max(r.a,t.f.a);return r.a>0&&(r.a+=e),r}function EFn(n){var e,t,i;for(i=nt,t=new E(n.a);t.a>16==6?n.Cb.ih(n,5,Vo,e):(i=ir(u(On((t=u(Rn(n,16),26),t||n.zh()),n.Db>>16),18)),n.Cb.ih(n,i.n,i.f,e))}function C3e(n){k3();var e=n.e;if(e&&e.stack){var t=e.stack,i=e+` `;return t.substring(0,i.length)==i&&(t=t.substring(i.length)),t.split(` diff --git a/_nuxt/ganttDiagram-db6931fb.ot2isyFg.js b/_nuxt/ganttDiagram-db6931fb.epajDFpi.js similarity index 99% rename from _nuxt/ganttDiagram-db6931fb.ot2isyFg.js rename to _nuxt/ganttDiagram-db6931fb.epajDFpi.js index 2d0241514f..77b015f80c 100644 --- a/_nuxt/ganttDiagram-db6931fb.ot2isyFg.js +++ b/_nuxt/ganttDiagram-db6931fb.epajDFpi.js @@ -1,4 +1,4 @@ -import{av as Be,aw as Ze,ax as Xe,ay as qe,az as Dn,aA as Kt,aB as Mn,aC as nt,c as xt,s as Sn,g as _n,x as Un,y as Yn,b as Fn,a as Ln,A as En,n as An,l as qt,h as Pt,i as In,j as Wn,z as On}from"./mermaid-934d9bea.GjCu814R.js";import{c as ye,g as ke}from"./_commonjsHelpers.5-cIlDoe.js";import{b as zn,t as Ue,c as Hn,a as Nn,l as Vn}from"./linear.vSTMcYPd.js";import{i as Pn}from"./init.Hi12RPRh.js";import"./entry.TEDHt2QA.js";function Rn(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n=i)&&(n=i)}return n}function Bn(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function Zn(t){return t}var Bt=1,te=2,ue=3,Rt=4,Ye=1e-6;function Xn(t){return"translate("+t+",0)"}function qn(t){return"translate(0,"+t+")"}function Gn(t){return e=>+t(e)}function jn(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function Qn(){return!this.__axis}function Ge(t,e){var n=[],r=null,i=null,s=6,a=6,y=3,_=typeof window<"u"&&window.devicePixelRatio>1?0:.5,k=t===Bt||t===Rt?-1:1,C=t===Rt||t===te?"x":"y",F=t===Bt||t===ue?Xn:qn;function w(x){var q=r??(e.ticks?e.ticks.apply(e,n):e.domain()),g=i??(e.tickFormat?e.tickFormat.apply(e,n):Zn),L=Math.max(s,0)+y,O=e.range(),W=+O[0]+_,B=+O[O.length-1]+_,Z=(e.bandwidth?jn:Gn)(e.copy(),_),Q=x.selection?x.selection():x,v=Q.selectAll(".domain").data([null]),A=Q.selectAll(".tick").data(q,e).order(),T=A.exit(),Y=A.enter().append("g").attr("class","tick"),D=A.select("line"),b=A.select("text");v=v.merge(v.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),A=A.merge(Y),D=D.merge(Y.append("line").attr("stroke","currentColor").attr(C+"2",k*s)),b=b.merge(Y.append("text").attr("fill","currentColor").attr(C,k*L).attr("dy",t===Bt?"0em":t===ue?"0.71em":"0.32em")),x!==Q&&(v=v.transition(x),A=A.transition(x),D=D.transition(x),b=b.transition(x),T=T.transition(x).attr("opacity",Ye).attr("transform",function(o){return isFinite(o=Z(o))?F(o+_):this.getAttribute("transform")}),Y.attr("opacity",Ye).attr("transform",function(o){var d=this.parentNode.__axis;return F((d&&isFinite(d=d(o))?d:Z(o))+_)})),T.remove(),v.attr("d",t===Rt||t===te?a?"M"+k*a+","+W+"H"+_+"V"+B+"H"+k*a:"M"+_+","+W+"V"+B:a?"M"+W+","+k*a+"V"+_+"H"+B+"V"+k*a:"M"+W+","+_+"H"+B),A.attr("opacity",1).attr("transform",function(o){return F(Z(o)+_)}),D.attr(C+"2",k*s),b.attr(C,k*L).text(g),Q.filter(Qn).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===te?"start":t===Rt?"end":"middle"),Q.each(function(){this.__axis=Z})}return w.scale=function(x){return arguments.length?(e=x,w):e},w.ticks=function(){return n=Array.from(arguments),w},w.tickArguments=function(x){return arguments.length?(n=x==null?[]:Array.from(x),w):n.slice()},w.tickValues=function(x){return arguments.length?(r=x==null?null:Array.from(x),w):r&&r.slice()},w.tickFormat=function(x){return arguments.length?(i=x,w):i},w.tickSize=function(x){return arguments.length?(s=a=+x,w):s},w.tickSizeInner=function(x){return arguments.length?(s=+x,w):s},w.tickSizeOuter=function(x){return arguments.length?(a=+x,w):a},w.tickPadding=function(x){return arguments.length?(y=+x,w):y},w.offset=function(x){return arguments.length?(_=+x,w):_},w}function $n(t){return Ge(Bt,t)}function Jn(t){return Ge(ue,t)}const Kn=Math.PI/180,tr=180/Math.PI,Gt=18,je=.96422,Qe=1,$e=.82521,Je=4/29,wt=6/29,Ke=3*wt*wt,er=wt*wt*wt;function tn(t){if(t instanceof ot)return new ot(t.l,t.a,t.b,t.opacity);if(t instanceof ut)return en(t);t instanceof Xe||(t=Dn(t));var e=ie(t.r),n=ie(t.g),r=ie(t.b),i=ee((.2225045*e+.7168786*n+.0606169*r)/Qe),s,a;return e===n&&n===r?s=a=i:(s=ee((.4360747*e+.3850649*n+.1430804*r)/je),a=ee((.0139322*e+.0971045*n+.7141733*r)/$e)),new ot(116*i-16,500*(s-i),200*(i-a),t.opacity)}function nr(t,e,n,r){return arguments.length===1?tn(t):new ot(t,e,n,r??1)}function ot(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}Be(ot,nr,Ze(qe,{brighter(t){return new ot(this.l+Gt*(t??1),this.a,this.b,this.opacity)},darker(t){return new ot(this.l-Gt*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return e=je*ne(e),t=Qe*ne(t),n=$e*ne(n),new Xe(re(3.1338561*e-1.6168667*t-.4906146*n),re(-.9787684*e+1.9161415*t+.033454*n),re(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}}));function ee(t){return t>er?Math.pow(t,1/3):t/Ke+Je}function ne(t){return t>wt?t*t*t:Ke*(t-Je)}function re(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function ie(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function rr(t){if(t instanceof ut)return new ut(t.h,t.c,t.l,t.opacity);if(t instanceof ot||(t=tn(t)),t.a===0&&t.b===0)return new ut(NaN,0(t(s=new Date(+s)),s),i.ceil=s=>(t(s=new Date(s-1)),e(s,1),t(s),s),i.round=s=>{const a=i(s),y=i.ceil(s);return s-a(e(s=new Date(+s),a==null?1:Math.floor(a)),s),i.range=(s,a,y)=>{const _=[];if(s=i.ceil(s),y=y==null?1:Math.floor(y),!(s0))return _;let k;do _.push(k=new Date(+s)),e(s,y),t(s);while(kK(a=>{if(a>=a)for(;t(a),!s(a);)a.setTime(a-1)},(a,y)=>{if(a>=a)if(y<0)for(;++y<=0;)for(;e(a,-1),!s(a););else for(;--y>=0;)for(;e(a,1),!s(a););}),n&&(i.count=(s,a)=>(se.setTime(+s),ae.setTime(+a),t(se),t(ae),Math.floor(n(se,ae))),i.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?i.filter(r?a=>r(a)%s===0:a=>i.count(0,a)%s===0):i)),i}const Dt=K(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);Dt.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?K(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):Dt);Dt.range;const ft=1e3,rt=ft*60,ht=rt*60,dt=ht*24,pe=dt*7,Fe=dt*30,oe=dt*365,gt=K(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*ft)},(t,e)=>(e-t)/ft,t=>t.getUTCSeconds());gt.range;const Et=K(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ft)},(t,e)=>{t.setTime(+t+e*rt)},(t,e)=>(e-t)/rt,t=>t.getMinutes());Et.range;const or=K(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*rt)},(t,e)=>(e-t)/rt,t=>t.getUTCMinutes());or.range;const At=K(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ft-t.getMinutes()*rt)},(t,e)=>{t.setTime(+t+e*ht)},(t,e)=>(e-t)/ht,t=>t.getHours());At.range;const cr=K(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*ht)},(t,e)=>(e-t)/ht,t=>t.getUTCHours());cr.range;const yt=K(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*rt)/dt,t=>t.getDate()-1);yt.range;const Te=K(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/dt,t=>t.getUTCDate()-1);Te.range;const lr=K(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/dt,t=>Math.floor(t/dt));lr.range;function Tt(t){return K(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,n)=>{e.setDate(e.getDate()+n*7)},(e,n)=>(n-e-(n.getTimezoneOffset()-e.getTimezoneOffset())*rt)/pe)}const Ot=Tt(0),It=Tt(1),nn=Tt(2),rn=Tt(3),kt=Tt(4),sn=Tt(5),an=Tt(6);Ot.range;It.range;nn.range;rn.range;kt.range;sn.range;an.range;function vt(t){return K(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCDate(e.getUTCDate()+n*7)},(e,n)=>(n-e)/pe)}const on=vt(0),jt=vt(1),ur=vt(2),fr=vt(3),Mt=vt(4),hr=vt(5),dr=vt(6);on.range;jt.range;ur.range;fr.range;Mt.range;hr.range;dr.range;const Wt=K(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());Wt.range;const mr=K(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());mr.range;const mt=K(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());mt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:K(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)});mt.range;const pt=K(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());pt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:K(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)});pt.range;function gr(t,e,n,r,i,s){const a=[[gt,1,ft],[gt,5,5*ft],[gt,15,15*ft],[gt,30,30*ft],[s,1,rt],[s,5,5*rt],[s,15,15*rt],[s,30,30*rt],[i,1,ht],[i,3,3*ht],[i,6,6*ht],[i,12,12*ht],[r,1,dt],[r,2,2*dt],[n,1,pe],[e,1,Fe],[e,3,3*Fe],[t,1,oe]];function y(k,C,F){const w=CL).right(a,w);if(x===a.length)return t.every(Ue(k/oe,C/oe,F));if(x===0)return Dt.every(Math.max(Ue(k,C,F),1));const[q,g]=a[w/a[x-1][2]53)return null;"w"in l||(l.w=1),"Z"in l?(H=le(Yt(l.y,0,1)),j=H.getUTCDay(),H=j>4||j===0?jt.ceil(H):jt(H),H=Te.offset(H,(l.V-1)*7),l.y=H.getUTCFullYear(),l.m=H.getUTCMonth(),l.d=H.getUTCDate()+(l.w+6)%7):(H=ce(Yt(l.y,0,1)),j=H.getDay(),H=j>4||j===0?It.ceil(H):It(H),H=yt.offset(H,(l.V-1)*7),l.y=H.getFullYear(),l.m=H.getMonth(),l.d=H.getDate()+(l.w+6)%7)}else("W"in l||"U"in l)&&("w"in l||(l.w="u"in l?l.u%7:"W"in l?1:0),j="Z"in l?le(Yt(l.y,0,1)).getUTCDay():ce(Yt(l.y,0,1)).getDay(),l.m=0,l.d="W"in l?(l.w+6)%7+l.W*7-(j+5)%7:l.w+l.U*7-(j+6)%7);return"Z"in l?(l.H+=l.Z/100|0,l.M+=l.Z%100,le(l)):ce(l)}}function T(p,E,M,l){for(var R=0,H=E.length,j=M.length,$,et;R=j)return-1;if($=E.charCodeAt(R++),$===37){if($=E.charAt(R++),et=Q[$ in Le?E.charAt(R++):$],!et||(l=et(p,M,l))<0)return-1}else if($!=M.charCodeAt(l++))return-1}return l}function Y(p,E,M){var l=k.exec(E.slice(M));return l?(p.p=C.get(l[0].toLowerCase()),M+l[0].length):-1}function D(p,E,M){var l=x.exec(E.slice(M));return l?(p.w=q.get(l[0].toLowerCase()),M+l[0].length):-1}function b(p,E,M){var l=F.exec(E.slice(M));return l?(p.w=w.get(l[0].toLowerCase()),M+l[0].length):-1}function o(p,E,M){var l=O.exec(E.slice(M));return l?(p.m=W.get(l[0].toLowerCase()),M+l[0].length):-1}function d(p,E,M){var l=g.exec(E.slice(M));return l?(p.m=L.get(l[0].toLowerCase()),M+l[0].length):-1}function m(p,E,M){return T(p,e,E,M)}function u(p,E,M){return T(p,n,E,M)}function S(p,E,M){return T(p,r,E,M)}function c(p){return a[p.getDay()]}function X(p){return s[p.getDay()]}function f(p){return _[p.getMonth()]}function h(p){return y[p.getMonth()]}function U(p){return i[+(p.getHours()>=12)]}function G(p){return 1+~~(p.getMonth()/3)}function z(p){return a[p.getUTCDay()]}function N(p){return s[p.getUTCDay()]}function I(p){return _[p.getUTCMonth()]}function V(p){return y[p.getUTCMonth()]}function st(p){return i[+(p.getUTCHours()>=12)]}function it(p){return 1+~~(p.getUTCMonth()/3)}return{format:function(p){var E=v(p+="",B);return E.toString=function(){return p},E},parse:function(p){var E=A(p+="",!1);return E.toString=function(){return p},E},utcFormat:function(p){var E=v(p+="",Z);return E.toString=function(){return p},E},utcParse:function(p){var E=A(p+="",!0);return E.toString=function(){return p},E}}}var Le={"-":"",_:" ",0:"0"},tt=/^\s*\d+/,Tr=/^%/,vr=/[\\^$*+?|[\]().{}]/g;function P(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",s=i.length;return r+(s[e.toLowerCase(),n]))}function xr(t,e,n){var r=tt.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function wr(t,e,n){var r=tt.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function Cr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Dr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Mr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function Ee(t,e,n){var r=tt.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function Ae(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Sr(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function _r(t,e,n){var r=tt.exec(e.slice(n,n+1));return r?(t.q=r[0]*3-3,n+r[0].length):-1}function Ur(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Ie(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Yr(t,e,n){var r=tt.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function We(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Fr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Lr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Er(t,e,n){var r=tt.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Ar(t,e,n){var r=tt.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Ir(t,e,n){var r=Tr.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Wr(t,e,n){var r=tt.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function Or(t,e,n){var r=tt.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function Oe(t,e){return P(t.getDate(),e,2)}function zr(t,e){return P(t.getHours(),e,2)}function Hr(t,e){return P(t.getHours()%12||12,e,2)}function Nr(t,e){return P(1+yt.count(mt(t),t),e,3)}function cn(t,e){return P(t.getMilliseconds(),e,3)}function Vr(t,e){return cn(t,e)+"000"}function Pr(t,e){return P(t.getMonth()+1,e,2)}function Rr(t,e){return P(t.getMinutes(),e,2)}function Br(t,e){return P(t.getSeconds(),e,2)}function Zr(t){var e=t.getDay();return e===0?7:e}function Xr(t,e){return P(Ot.count(mt(t)-1,t),e,2)}function ln(t){var e=t.getDay();return e>=4||e===0?kt(t):kt.ceil(t)}function qr(t,e){return t=ln(t),P(kt.count(mt(t),t)+(mt(t).getDay()===4),e,2)}function Gr(t){return t.getDay()}function jr(t,e){return P(It.count(mt(t)-1,t),e,2)}function Qr(t,e){return P(t.getFullYear()%100,e,2)}function $r(t,e){return t=ln(t),P(t.getFullYear()%100,e,2)}function Jr(t,e){return P(t.getFullYear()%1e4,e,4)}function Kr(t,e){var n=t.getDay();return t=n>=4||n===0?kt(t):kt.ceil(t),P(t.getFullYear()%1e4,e,4)}function ti(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+P(e/60|0,"0",2)+P(e%60,"0",2)}function ze(t,e){return P(t.getUTCDate(),e,2)}function ei(t,e){return P(t.getUTCHours(),e,2)}function ni(t,e){return P(t.getUTCHours()%12||12,e,2)}function ri(t,e){return P(1+Te.count(pt(t),t),e,3)}function un(t,e){return P(t.getUTCMilliseconds(),e,3)}function ii(t,e){return un(t,e)+"000"}function si(t,e){return P(t.getUTCMonth()+1,e,2)}function ai(t,e){return P(t.getUTCMinutes(),e,2)}function oi(t,e){return P(t.getUTCSeconds(),e,2)}function ci(t){var e=t.getUTCDay();return e===0?7:e}function li(t,e){return P(on.count(pt(t)-1,t),e,2)}function fn(t){var e=t.getUTCDay();return e>=4||e===0?Mt(t):Mt.ceil(t)}function ui(t,e){return t=fn(t),P(Mt.count(pt(t),t)+(pt(t).getUTCDay()===4),e,2)}function fi(t){return t.getUTCDay()}function hi(t,e){return P(jt.count(pt(t)-1,t),e,2)}function di(t,e){return P(t.getUTCFullYear()%100,e,2)}function mi(t,e){return t=fn(t),P(t.getUTCFullYear()%100,e,2)}function gi(t,e){return P(t.getUTCFullYear()%1e4,e,4)}function yi(t,e){var n=t.getUTCDay();return t=n>=4||n===0?Mt(t):Mt.ceil(t),P(t.getUTCFullYear()%1e4,e,4)}function ki(){return"+0000"}function He(){return"%"}function Ne(t){return+t}function Ve(t){return Math.floor(+t/1e3)}var bt,Qt;pi({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function pi(t){return bt=pr(t),Qt=bt.format,bt.parse,bt.utcFormat,bt.utcParse,bt}function Ti(t){return new Date(t)}function vi(t){return t instanceof Date?+t:+new Date(+t)}function hn(t,e,n,r,i,s,a,y,_,k){var C=Hn(),F=C.invert,w=C.domain,x=k(".%L"),q=k(":%S"),g=k("%I:%M"),L=k("%I %p"),O=k("%a %d"),W=k("%b %d"),B=k("%B"),Z=k("%Y");function Q(v){return(_(v)4&&(x+=7),w.add(x,n));return q.diff(g,"week")+1},y.isoWeekday=function(k){return this.$utils().u(k)?this.day()||7:this.day(this.day()%7?k:k-7)};var _=y.startOf;y.startOf=function(k,C){var F=this.$utils(),w=!!F.u(C)||C;return F.p(k)==="isoweek"?w?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):_.bind(this)(k,C)}}})})(dn);var xi=dn.exports;const wi=ke(xi);var mn={exports:{}};(function(t,e){(function(n,r){t.exports=r()})(ye,function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,i=/\d\d/,s=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,y={},_=function(g){return(g=+g)+(g>68?1900:2e3)},k=function(g){return function(L){this[g]=+L}},C=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=function(L){if(!L||L==="Z")return 0;var O=L.match(/([+-]|\d\d)/g),W=60*O[1]+(+O[2]||0);return W===0?0:O[0]==="+"?-W:W}(g)}],F=function(g){var L=y[g];return L&&(L.indexOf?L:L.s.concat(L.f))},w=function(g,L){var O,W=y.meridiem;if(W){for(var B=1;B<=24;B+=1)if(g.indexOf(W(B,0,L))>-1){O=B>12;break}}else O=g===(L?"pm":"PM");return O},x={A:[a,function(g){this.afternoon=w(g,!1)}],a:[a,function(g){this.afternoon=w(g,!0)}],S:[/\d/,function(g){this.milliseconds=100*+g}],SS:[i,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[s,k("seconds")],ss:[s,k("seconds")],m:[s,k("minutes")],mm:[s,k("minutes")],H:[s,k("hours")],h:[s,k("hours")],HH:[s,k("hours")],hh:[s,k("hours")],D:[s,k("day")],DD:[i,k("day")],Do:[a,function(g){var L=y.ordinal,O=g.match(/\d+/);if(this.day=O[0],L)for(var W=1;W<=31;W+=1)L(W).replace(/\[|\]/g,"")===g&&(this.day=W)}],M:[s,k("month")],MM:[i,k("month")],MMM:[a,function(g){var L=F("months"),O=(F("monthsShort")||L.map(function(W){return W.slice(0,3)})).indexOf(g)+1;if(O<1)throw new Error;this.month=O%12||O}],MMMM:[a,function(g){var L=F("months").indexOf(g)+1;if(L<1)throw new Error;this.month=L%12||L}],Y:[/[+-]?\d+/,k("year")],YY:[i,function(g){this.year=_(g)}],YYYY:[/\d{4}/,k("year")],Z:C,ZZ:C};function q(g){var L,O;L=g,O=y&&y.formats;for(var W=(g=L.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Y,D,b){var o=b&&b.toUpperCase();return D||O[b]||n[b]||O[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(d,m,u){return m||u.slice(1)})})).match(r),B=W.length,Z=0;Z-1)return new Date((c==="X"?1e3:1)*S);var f=q(c)(S),h=f.year,U=f.month,G=f.day,z=f.hours,N=f.minutes,I=f.seconds,V=f.milliseconds,st=f.zone,it=new Date,p=G||(h||U?1:it.getDate()),E=h||it.getFullYear(),M=0;h&&!U||(M=U>0?U-1:it.getMonth());var l=z||0,R=N||0,H=I||0,j=V||0;return st?new Date(Date.UTC(E,M,p,l,R,H,j+60*st.offset*1e3)):X?new Date(Date.UTC(E,M,p,l,R,H,j)):new Date(E,M,p,l,R,H,j)}catch{return new Date("")}}(Q,T,v),this.init(),o&&o!==!0&&(this.$L=this.locale(o).$L),b&&Q!=this.format(T)&&(this.$d=new Date("")),y={}}else if(T instanceof Array)for(var d=T.length,m=1;m<=d;m+=1){A[1]=T[m-1];var u=O.apply(this,A);if(u.isValid()){this.$d=u.$d,this.$L=u.$L,this.init();break}m===d&&(this.$d=new Date(""))}else B.call(this,Z)}}})})(mn);var Ci=mn.exports;const Di=ke(Ci);var gn={exports:{}};(function(t,e){(function(n,r){t.exports=r()})(ye,function(){return function(n,r){var i=r.prototype,s=i.format;i.format=function(a){var y=this,_=this.$locale();if(!this.isValid())return s.bind(this)(a);var k=this.$utils(),C=(a||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(F){switch(F){case"Q":return Math.ceil((y.$M+1)/3);case"Do":return _.ordinal(y.$D);case"gggg":return y.weekYear();case"GGGG":return y.isoWeekYear();case"wo":return _.ordinal(y.week(),"W");case"w":case"ww":return k.s(y.week(),F==="w"?1:2,"0");case"W":case"WW":return k.s(y.isoWeek(),F==="W"?1:2,"0");case"k":case"kk":return k.s(String(y.$H===0?24:y.$H),F==="k"?1:2,"0");case"X":return Math.floor(y.$d.getTime()/1e3);case"x":return y.$d.getTime();case"z":return"["+y.offsetName()+"]";case"zzz":return"["+y.offsetName("long")+"]";default:return F}});return s.bind(this)(C)}}})})(gn);var Mi=gn.exports;const Si=ke(Mi);var he=function(){var t=function(b,o,d,m){for(d=d||{},m=b.length;m--;d[b[m]]=o);return d},e=[6,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,30,32,33,35,37],n=[1,25],r=[1,26],i=[1,27],s=[1,28],a=[1,29],y=[1,30],_=[1,31],k=[1,9],C=[1,10],F=[1,11],w=[1,12],x=[1,13],q=[1,14],g=[1,15],L=[1,16],O=[1,18],W=[1,19],B=[1,20],Z=[1,21],Q=[1,22],v=[1,24],A=[1,32],T={trace:function(){},yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,dateFormat:19,inclusiveEndDates:20,topAxis:21,axisFormat:22,tickInterval:23,excludes:24,includes:25,todayMarker:26,title:27,acc_title:28,acc_title_value:29,acc_descr:30,acc_descr_value:31,acc_descr_multiline_value:32,section:33,clickStatement:34,taskTxt:35,taskData:36,click:37,callbackname:38,callbackargs:39,href:40,clickStatementDebug:41,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",19:"dateFormat",20:"inclusiveEndDates",21:"topAxis",22:"axisFormat",23:"tickInterval",24:"excludes",25:"includes",26:"todayMarker",27:"title",28:"acc_title",29:"acc_title_value",30:"acc_descr",31:"acc_descr_value",32:"acc_descr_multiline_value",33:"section",35:"taskTxt",36:"taskData",37:"click",38:"callbackname",39:"callbackargs",40:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[34,2],[34,3],[34,3],[34,4],[34,3],[34,4],[34,2],[41,2],[41,3],[41,3],[41,4],[41,3],[41,4],[41,2]],performAction:function(o,d,m,u,S,c,X){var f=c.length-1;switch(S){case 1:return c[f-1];case 2:this.$=[];break;case 3:c[f-1].push(c[f]),this.$=c[f-1];break;case 4:case 5:this.$=c[f];break;case 6:case 7:this.$=[];break;case 8:u.setWeekday("monday");break;case 9:u.setWeekday("tuesday");break;case 10:u.setWeekday("wednesday");break;case 11:u.setWeekday("thursday");break;case 12:u.setWeekday("friday");break;case 13:u.setWeekday("saturday");break;case 14:u.setWeekday("sunday");break;case 15:u.setDateFormat(c[f].substr(11)),this.$=c[f].substr(11);break;case 16:u.enableInclusiveEndDates(),this.$=c[f].substr(18);break;case 17:u.TopAxis(),this.$=c[f].substr(8);break;case 18:u.setAxisFormat(c[f].substr(11)),this.$=c[f].substr(11);break;case 19:u.setTickInterval(c[f].substr(13)),this.$=c[f].substr(13);break;case 20:u.setExcludes(c[f].substr(9)),this.$=c[f].substr(9);break;case 21:u.setIncludes(c[f].substr(9)),this.$=c[f].substr(9);break;case 22:u.setTodayMarker(c[f].substr(12)),this.$=c[f].substr(12);break;case 24:u.setDiagramTitle(c[f].substr(6)),this.$=c[f].substr(6);break;case 25:this.$=c[f].trim(),u.setAccTitle(this.$);break;case 26:case 27:this.$=c[f].trim(),u.setAccDescription(this.$);break;case 28:u.addSection(c[f].substr(8)),this.$=c[f].substr(8);break;case 30:u.addTask(c[f-1],c[f]),this.$="task";break;case 31:this.$=c[f-1],u.setClickEvent(c[f-1],c[f],null);break;case 32:this.$=c[f-2],u.setClickEvent(c[f-2],c[f-1],c[f]);break;case 33:this.$=c[f-2],u.setClickEvent(c[f-2],c[f-1],null),u.setLink(c[f-2],c[f]);break;case 34:this.$=c[f-3],u.setClickEvent(c[f-3],c[f-2],c[f-1]),u.setLink(c[f-3],c[f]);break;case 35:this.$=c[f-2],u.setClickEvent(c[f-2],c[f],null),u.setLink(c[f-2],c[f-1]);break;case 36:this.$=c[f-3],u.setClickEvent(c[f-3],c[f-1],c[f]),u.setLink(c[f-3],c[f-2]);break;case 37:this.$=c[f-1],u.setLink(c[f-1],c[f]);break;case 38:case 44:this.$=c[f-1]+" "+c[f];break;case 39:case 40:case 42:this.$=c[f-2]+" "+c[f-1]+" "+c[f];break;case 41:case 43:this.$=c[f-3]+" "+c[f-2]+" "+c[f-1]+" "+c[f];break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:_,19:k,20:C,21:F,22:w,23:x,24:q,25:g,26:L,27:O,28:W,30:B,32:Z,33:Q,34:23,35:v,37:A},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:33,11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:_,19:k,20:C,21:F,22:w,23:x,24:q,25:g,26:L,27:O,28:W,30:B,32:Z,33:Q,34:23,35:v,37:A},t(e,[2,5]),t(e,[2,6]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),{29:[1,34]},{31:[1,35]},t(e,[2,27]),t(e,[2,28]),t(e,[2,29]),{36:[1,36]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),{38:[1,37],40:[1,38]},t(e,[2,4]),t(e,[2,25]),t(e,[2,26]),t(e,[2,30]),t(e,[2,31],{39:[1,39],40:[1,40]}),t(e,[2,37],{38:[1,41]}),t(e,[2,32],{40:[1,42]}),t(e,[2,33]),t(e,[2,35],{39:[1,43]}),t(e,[2,34]),t(e,[2,36])],defaultActions:{},parseError:function(o,d){if(d.recoverable)this.trace(o);else{var m=new Error(o);throw m.hash=d,m}},parse:function(o){var d=this,m=[0],u=[],S=[null],c=[],X=this.table,f="",h=0,U=0,G=2,z=1,N=c.slice.call(arguments,1),I=Object.create(this.lexer),V={yy:{}};for(var st in this.yy)Object.prototype.hasOwnProperty.call(this.yy,st)&&(V.yy[st]=this.yy[st]);I.setInput(o,V.yy),V.yy.lexer=I,V.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var it=I.yylloc;c.push(it);var p=I.options&&I.options.ranges;typeof V.yy.parseError=="function"?this.parseError=V.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function E(){var ct;return ct=u.pop()||I.lex()||z,typeof ct!="number"&&(ct instanceof Array&&(u=ct,ct=u.pop()),ct=d.symbols_[ct]||ct),ct}for(var M,l,R,H,j={},$,et,Ut,Vt;;){if(l=m[m.length-1],this.defaultActions[l]?R=this.defaultActions[l]:((M===null||typeof M>"u")&&(M=E()),R=X[l]&&X[l][M]),typeof R>"u"||!R.length||!R[0]){var Jt="";Vt=[];for($ in X[l])this.terminals_[$]&&$>G&&Vt.push("'"+this.terminals_[$]+"'");I.showPosition?Jt="Parse error on line "+(h+1)+`: +import{av as Be,aw as Ze,ax as Xe,ay as qe,az as Dn,aA as Kt,aB as Mn,aC as nt,c as xt,s as Sn,g as _n,x as Un,y as Yn,b as Fn,a as Ln,A as En,n as An,l as qt,h as Pt,i as In,j as Wn,z as On}from"./mermaid-934d9bea.JP-6_YN_.js";import{c as ye,g as ke}from"./_commonjsHelpers.5-cIlDoe.js";import{b as zn,t as Ue,c as Hn,a as Nn,l as Vn}from"./linear.znFunSuN.js";import{i as Pn}from"./init.Hi12RPRh.js";import"./entry.2w2g1VWZ.js";function Rn(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n=i)&&(n=i)}return n}function Bn(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function Zn(t){return t}var Bt=1,te=2,ue=3,Rt=4,Ye=1e-6;function Xn(t){return"translate("+t+",0)"}function qn(t){return"translate(0,"+t+")"}function Gn(t){return e=>+t(e)}function jn(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function Qn(){return!this.__axis}function Ge(t,e){var n=[],r=null,i=null,s=6,a=6,y=3,_=typeof window<"u"&&window.devicePixelRatio>1?0:.5,k=t===Bt||t===Rt?-1:1,C=t===Rt||t===te?"x":"y",F=t===Bt||t===ue?Xn:qn;function w(x){var q=r??(e.ticks?e.ticks.apply(e,n):e.domain()),g=i??(e.tickFormat?e.tickFormat.apply(e,n):Zn),L=Math.max(s,0)+y,O=e.range(),W=+O[0]+_,B=+O[O.length-1]+_,Z=(e.bandwidth?jn:Gn)(e.copy(),_),Q=x.selection?x.selection():x,v=Q.selectAll(".domain").data([null]),A=Q.selectAll(".tick").data(q,e).order(),T=A.exit(),Y=A.enter().append("g").attr("class","tick"),D=A.select("line"),b=A.select("text");v=v.merge(v.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),A=A.merge(Y),D=D.merge(Y.append("line").attr("stroke","currentColor").attr(C+"2",k*s)),b=b.merge(Y.append("text").attr("fill","currentColor").attr(C,k*L).attr("dy",t===Bt?"0em":t===ue?"0.71em":"0.32em")),x!==Q&&(v=v.transition(x),A=A.transition(x),D=D.transition(x),b=b.transition(x),T=T.transition(x).attr("opacity",Ye).attr("transform",function(o){return isFinite(o=Z(o))?F(o+_):this.getAttribute("transform")}),Y.attr("opacity",Ye).attr("transform",function(o){var d=this.parentNode.__axis;return F((d&&isFinite(d=d(o))?d:Z(o))+_)})),T.remove(),v.attr("d",t===Rt||t===te?a?"M"+k*a+","+W+"H"+_+"V"+B+"H"+k*a:"M"+_+","+W+"V"+B:a?"M"+W+","+k*a+"V"+_+"H"+B+"V"+k*a:"M"+W+","+_+"H"+B),A.attr("opacity",1).attr("transform",function(o){return F(Z(o)+_)}),D.attr(C+"2",k*s),b.attr(C,k*L).text(g),Q.filter(Qn).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===te?"start":t===Rt?"end":"middle"),Q.each(function(){this.__axis=Z})}return w.scale=function(x){return arguments.length?(e=x,w):e},w.ticks=function(){return n=Array.from(arguments),w},w.tickArguments=function(x){return arguments.length?(n=x==null?[]:Array.from(x),w):n.slice()},w.tickValues=function(x){return arguments.length?(r=x==null?null:Array.from(x),w):r&&r.slice()},w.tickFormat=function(x){return arguments.length?(i=x,w):i},w.tickSize=function(x){return arguments.length?(s=a=+x,w):s},w.tickSizeInner=function(x){return arguments.length?(s=+x,w):s},w.tickSizeOuter=function(x){return arguments.length?(a=+x,w):a},w.tickPadding=function(x){return arguments.length?(y=+x,w):y},w.offset=function(x){return arguments.length?(_=+x,w):_},w}function $n(t){return Ge(Bt,t)}function Jn(t){return Ge(ue,t)}const Kn=Math.PI/180,tr=180/Math.PI,Gt=18,je=.96422,Qe=1,$e=.82521,Je=4/29,wt=6/29,Ke=3*wt*wt,er=wt*wt*wt;function tn(t){if(t instanceof ot)return new ot(t.l,t.a,t.b,t.opacity);if(t instanceof ut)return en(t);t instanceof Xe||(t=Dn(t));var e=ie(t.r),n=ie(t.g),r=ie(t.b),i=ee((.2225045*e+.7168786*n+.0606169*r)/Qe),s,a;return e===n&&n===r?s=a=i:(s=ee((.4360747*e+.3850649*n+.1430804*r)/je),a=ee((.0139322*e+.0971045*n+.7141733*r)/$e)),new ot(116*i-16,500*(s-i),200*(i-a),t.opacity)}function nr(t,e,n,r){return arguments.length===1?tn(t):new ot(t,e,n,r??1)}function ot(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}Be(ot,nr,Ze(qe,{brighter(t){return new ot(this.l+Gt*(t??1),this.a,this.b,this.opacity)},darker(t){return new ot(this.l-Gt*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return e=je*ne(e),t=Qe*ne(t),n=$e*ne(n),new Xe(re(3.1338561*e-1.6168667*t-.4906146*n),re(-.9787684*e+1.9161415*t+.033454*n),re(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}}));function ee(t){return t>er?Math.pow(t,1/3):t/Ke+Je}function ne(t){return t>wt?t*t*t:Ke*(t-Je)}function re(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function ie(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function rr(t){if(t instanceof ut)return new ut(t.h,t.c,t.l,t.opacity);if(t instanceof ot||(t=tn(t)),t.a===0&&t.b===0)return new ut(NaN,0(t(s=new Date(+s)),s),i.ceil=s=>(t(s=new Date(s-1)),e(s,1),t(s),s),i.round=s=>{const a=i(s),y=i.ceil(s);return s-a(e(s=new Date(+s),a==null?1:Math.floor(a)),s),i.range=(s,a,y)=>{const _=[];if(s=i.ceil(s),y=y==null?1:Math.floor(y),!(s0))return _;let k;do _.push(k=new Date(+s)),e(s,y),t(s);while(kK(a=>{if(a>=a)for(;t(a),!s(a);)a.setTime(a-1)},(a,y)=>{if(a>=a)if(y<0)for(;++y<=0;)for(;e(a,-1),!s(a););else for(;--y>=0;)for(;e(a,1),!s(a););}),n&&(i.count=(s,a)=>(se.setTime(+s),ae.setTime(+a),t(se),t(ae),Math.floor(n(se,ae))),i.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?i.filter(r?a=>r(a)%s===0:a=>i.count(0,a)%s===0):i)),i}const Dt=K(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);Dt.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?K(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):Dt);Dt.range;const ft=1e3,rt=ft*60,ht=rt*60,dt=ht*24,pe=dt*7,Fe=dt*30,oe=dt*365,gt=K(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*ft)},(t,e)=>(e-t)/ft,t=>t.getUTCSeconds());gt.range;const Et=K(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ft)},(t,e)=>{t.setTime(+t+e*rt)},(t,e)=>(e-t)/rt,t=>t.getMinutes());Et.range;const or=K(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*rt)},(t,e)=>(e-t)/rt,t=>t.getUTCMinutes());or.range;const At=K(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*ft-t.getMinutes()*rt)},(t,e)=>{t.setTime(+t+e*ht)},(t,e)=>(e-t)/ht,t=>t.getHours());At.range;const cr=K(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*ht)},(t,e)=>(e-t)/ht,t=>t.getUTCHours());cr.range;const yt=K(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*rt)/dt,t=>t.getDate()-1);yt.range;const Te=K(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/dt,t=>t.getUTCDate()-1);Te.range;const lr=K(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/dt,t=>Math.floor(t/dt));lr.range;function Tt(t){return K(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,n)=>{e.setDate(e.getDate()+n*7)},(e,n)=>(n-e-(n.getTimezoneOffset()-e.getTimezoneOffset())*rt)/pe)}const Ot=Tt(0),It=Tt(1),nn=Tt(2),rn=Tt(3),kt=Tt(4),sn=Tt(5),an=Tt(6);Ot.range;It.range;nn.range;rn.range;kt.range;sn.range;an.range;function vt(t){return K(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCDate(e.getUTCDate()+n*7)},(e,n)=>(n-e)/pe)}const on=vt(0),jt=vt(1),ur=vt(2),fr=vt(3),Mt=vt(4),hr=vt(5),dr=vt(6);on.range;jt.range;ur.range;fr.range;Mt.range;hr.range;dr.range;const Wt=K(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());Wt.range;const mr=K(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());mr.range;const mt=K(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());mt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:K(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)});mt.range;const pt=K(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());pt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:K(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)});pt.range;function gr(t,e,n,r,i,s){const a=[[gt,1,ft],[gt,5,5*ft],[gt,15,15*ft],[gt,30,30*ft],[s,1,rt],[s,5,5*rt],[s,15,15*rt],[s,30,30*rt],[i,1,ht],[i,3,3*ht],[i,6,6*ht],[i,12,12*ht],[r,1,dt],[r,2,2*dt],[n,1,pe],[e,1,Fe],[e,3,3*Fe],[t,1,oe]];function y(k,C,F){const w=CL).right(a,w);if(x===a.length)return t.every(Ue(k/oe,C/oe,F));if(x===0)return Dt.every(Math.max(Ue(k,C,F),1));const[q,g]=a[w/a[x-1][2]53)return null;"w"in l||(l.w=1),"Z"in l?(H=le(Yt(l.y,0,1)),j=H.getUTCDay(),H=j>4||j===0?jt.ceil(H):jt(H),H=Te.offset(H,(l.V-1)*7),l.y=H.getUTCFullYear(),l.m=H.getUTCMonth(),l.d=H.getUTCDate()+(l.w+6)%7):(H=ce(Yt(l.y,0,1)),j=H.getDay(),H=j>4||j===0?It.ceil(H):It(H),H=yt.offset(H,(l.V-1)*7),l.y=H.getFullYear(),l.m=H.getMonth(),l.d=H.getDate()+(l.w+6)%7)}else("W"in l||"U"in l)&&("w"in l||(l.w="u"in l?l.u%7:"W"in l?1:0),j="Z"in l?le(Yt(l.y,0,1)).getUTCDay():ce(Yt(l.y,0,1)).getDay(),l.m=0,l.d="W"in l?(l.w+6)%7+l.W*7-(j+5)%7:l.w+l.U*7-(j+6)%7);return"Z"in l?(l.H+=l.Z/100|0,l.M+=l.Z%100,le(l)):ce(l)}}function T(p,E,M,l){for(var R=0,H=E.length,j=M.length,$,et;R=j)return-1;if($=E.charCodeAt(R++),$===37){if($=E.charAt(R++),et=Q[$ in Le?E.charAt(R++):$],!et||(l=et(p,M,l))<0)return-1}else if($!=M.charCodeAt(l++))return-1}return l}function Y(p,E,M){var l=k.exec(E.slice(M));return l?(p.p=C.get(l[0].toLowerCase()),M+l[0].length):-1}function D(p,E,M){var l=x.exec(E.slice(M));return l?(p.w=q.get(l[0].toLowerCase()),M+l[0].length):-1}function b(p,E,M){var l=F.exec(E.slice(M));return l?(p.w=w.get(l[0].toLowerCase()),M+l[0].length):-1}function o(p,E,M){var l=O.exec(E.slice(M));return l?(p.m=W.get(l[0].toLowerCase()),M+l[0].length):-1}function d(p,E,M){var l=g.exec(E.slice(M));return l?(p.m=L.get(l[0].toLowerCase()),M+l[0].length):-1}function m(p,E,M){return T(p,e,E,M)}function u(p,E,M){return T(p,n,E,M)}function S(p,E,M){return T(p,r,E,M)}function c(p){return a[p.getDay()]}function X(p){return s[p.getDay()]}function f(p){return _[p.getMonth()]}function h(p){return y[p.getMonth()]}function U(p){return i[+(p.getHours()>=12)]}function G(p){return 1+~~(p.getMonth()/3)}function z(p){return a[p.getUTCDay()]}function N(p){return s[p.getUTCDay()]}function I(p){return _[p.getUTCMonth()]}function V(p){return y[p.getUTCMonth()]}function st(p){return i[+(p.getUTCHours()>=12)]}function it(p){return 1+~~(p.getUTCMonth()/3)}return{format:function(p){var E=v(p+="",B);return E.toString=function(){return p},E},parse:function(p){var E=A(p+="",!1);return E.toString=function(){return p},E},utcFormat:function(p){var E=v(p+="",Z);return E.toString=function(){return p},E},utcParse:function(p){var E=A(p+="",!0);return E.toString=function(){return p},E}}}var Le={"-":"",_:" ",0:"0"},tt=/^\s*\d+/,Tr=/^%/,vr=/[\\^$*+?|[\]().{}]/g;function P(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",s=i.length;return r+(s[e.toLowerCase(),n]))}function xr(t,e,n){var r=tt.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function wr(t,e,n){var r=tt.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function Cr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Dr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Mr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function Ee(t,e,n){var r=tt.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function Ae(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Sr(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function _r(t,e,n){var r=tt.exec(e.slice(n,n+1));return r?(t.q=r[0]*3-3,n+r[0].length):-1}function Ur(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Ie(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Yr(t,e,n){var r=tt.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function We(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Fr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Lr(t,e,n){var r=tt.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Er(t,e,n){var r=tt.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Ar(t,e,n){var r=tt.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Ir(t,e,n){var r=Tr.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Wr(t,e,n){var r=tt.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function Or(t,e,n){var r=tt.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function Oe(t,e){return P(t.getDate(),e,2)}function zr(t,e){return P(t.getHours(),e,2)}function Hr(t,e){return P(t.getHours()%12||12,e,2)}function Nr(t,e){return P(1+yt.count(mt(t),t),e,3)}function cn(t,e){return P(t.getMilliseconds(),e,3)}function Vr(t,e){return cn(t,e)+"000"}function Pr(t,e){return P(t.getMonth()+1,e,2)}function Rr(t,e){return P(t.getMinutes(),e,2)}function Br(t,e){return P(t.getSeconds(),e,2)}function Zr(t){var e=t.getDay();return e===0?7:e}function Xr(t,e){return P(Ot.count(mt(t)-1,t),e,2)}function ln(t){var e=t.getDay();return e>=4||e===0?kt(t):kt.ceil(t)}function qr(t,e){return t=ln(t),P(kt.count(mt(t),t)+(mt(t).getDay()===4),e,2)}function Gr(t){return t.getDay()}function jr(t,e){return P(It.count(mt(t)-1,t),e,2)}function Qr(t,e){return P(t.getFullYear()%100,e,2)}function $r(t,e){return t=ln(t),P(t.getFullYear()%100,e,2)}function Jr(t,e){return P(t.getFullYear()%1e4,e,4)}function Kr(t,e){var n=t.getDay();return t=n>=4||n===0?kt(t):kt.ceil(t),P(t.getFullYear()%1e4,e,4)}function ti(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+P(e/60|0,"0",2)+P(e%60,"0",2)}function ze(t,e){return P(t.getUTCDate(),e,2)}function ei(t,e){return P(t.getUTCHours(),e,2)}function ni(t,e){return P(t.getUTCHours()%12||12,e,2)}function ri(t,e){return P(1+Te.count(pt(t),t),e,3)}function un(t,e){return P(t.getUTCMilliseconds(),e,3)}function ii(t,e){return un(t,e)+"000"}function si(t,e){return P(t.getUTCMonth()+1,e,2)}function ai(t,e){return P(t.getUTCMinutes(),e,2)}function oi(t,e){return P(t.getUTCSeconds(),e,2)}function ci(t){var e=t.getUTCDay();return e===0?7:e}function li(t,e){return P(on.count(pt(t)-1,t),e,2)}function fn(t){var e=t.getUTCDay();return e>=4||e===0?Mt(t):Mt.ceil(t)}function ui(t,e){return t=fn(t),P(Mt.count(pt(t),t)+(pt(t).getUTCDay()===4),e,2)}function fi(t){return t.getUTCDay()}function hi(t,e){return P(jt.count(pt(t)-1,t),e,2)}function di(t,e){return P(t.getUTCFullYear()%100,e,2)}function mi(t,e){return t=fn(t),P(t.getUTCFullYear()%100,e,2)}function gi(t,e){return P(t.getUTCFullYear()%1e4,e,4)}function yi(t,e){var n=t.getUTCDay();return t=n>=4||n===0?Mt(t):Mt.ceil(t),P(t.getUTCFullYear()%1e4,e,4)}function ki(){return"+0000"}function He(){return"%"}function Ne(t){return+t}function Ve(t){return Math.floor(+t/1e3)}var bt,Qt;pi({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function pi(t){return bt=pr(t),Qt=bt.format,bt.parse,bt.utcFormat,bt.utcParse,bt}function Ti(t){return new Date(t)}function vi(t){return t instanceof Date?+t:+new Date(+t)}function hn(t,e,n,r,i,s,a,y,_,k){var C=Hn(),F=C.invert,w=C.domain,x=k(".%L"),q=k(":%S"),g=k("%I:%M"),L=k("%I %p"),O=k("%a %d"),W=k("%b %d"),B=k("%B"),Z=k("%Y");function Q(v){return(_(v)4&&(x+=7),w.add(x,n));return q.diff(g,"week")+1},y.isoWeekday=function(k){return this.$utils().u(k)?this.day()||7:this.day(this.day()%7?k:k-7)};var _=y.startOf;y.startOf=function(k,C){var F=this.$utils(),w=!!F.u(C)||C;return F.p(k)==="isoweek"?w?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):_.bind(this)(k,C)}}})})(dn);var xi=dn.exports;const wi=ke(xi);var mn={exports:{}};(function(t,e){(function(n,r){t.exports=r()})(ye,function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,i=/\d\d/,s=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,y={},_=function(g){return(g=+g)+(g>68?1900:2e3)},k=function(g){return function(L){this[g]=+L}},C=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=function(L){if(!L||L==="Z")return 0;var O=L.match(/([+-]|\d\d)/g),W=60*O[1]+(+O[2]||0);return W===0?0:O[0]==="+"?-W:W}(g)}],F=function(g){var L=y[g];return L&&(L.indexOf?L:L.s.concat(L.f))},w=function(g,L){var O,W=y.meridiem;if(W){for(var B=1;B<=24;B+=1)if(g.indexOf(W(B,0,L))>-1){O=B>12;break}}else O=g===(L?"pm":"PM");return O},x={A:[a,function(g){this.afternoon=w(g,!1)}],a:[a,function(g){this.afternoon=w(g,!0)}],S:[/\d/,function(g){this.milliseconds=100*+g}],SS:[i,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[s,k("seconds")],ss:[s,k("seconds")],m:[s,k("minutes")],mm:[s,k("minutes")],H:[s,k("hours")],h:[s,k("hours")],HH:[s,k("hours")],hh:[s,k("hours")],D:[s,k("day")],DD:[i,k("day")],Do:[a,function(g){var L=y.ordinal,O=g.match(/\d+/);if(this.day=O[0],L)for(var W=1;W<=31;W+=1)L(W).replace(/\[|\]/g,"")===g&&(this.day=W)}],M:[s,k("month")],MM:[i,k("month")],MMM:[a,function(g){var L=F("months"),O=(F("monthsShort")||L.map(function(W){return W.slice(0,3)})).indexOf(g)+1;if(O<1)throw new Error;this.month=O%12||O}],MMMM:[a,function(g){var L=F("months").indexOf(g)+1;if(L<1)throw new Error;this.month=L%12||L}],Y:[/[+-]?\d+/,k("year")],YY:[i,function(g){this.year=_(g)}],YYYY:[/\d{4}/,k("year")],Z:C,ZZ:C};function q(g){var L,O;L=g,O=y&&y.formats;for(var W=(g=L.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Y,D,b){var o=b&&b.toUpperCase();return D||O[b]||n[b]||O[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(d,m,u){return m||u.slice(1)})})).match(r),B=W.length,Z=0;Z-1)return new Date((c==="X"?1e3:1)*S);var f=q(c)(S),h=f.year,U=f.month,G=f.day,z=f.hours,N=f.minutes,I=f.seconds,V=f.milliseconds,st=f.zone,it=new Date,p=G||(h||U?1:it.getDate()),E=h||it.getFullYear(),M=0;h&&!U||(M=U>0?U-1:it.getMonth());var l=z||0,R=N||0,H=I||0,j=V||0;return st?new Date(Date.UTC(E,M,p,l,R,H,j+60*st.offset*1e3)):X?new Date(Date.UTC(E,M,p,l,R,H,j)):new Date(E,M,p,l,R,H,j)}catch{return new Date("")}}(Q,T,v),this.init(),o&&o!==!0&&(this.$L=this.locale(o).$L),b&&Q!=this.format(T)&&(this.$d=new Date("")),y={}}else if(T instanceof Array)for(var d=T.length,m=1;m<=d;m+=1){A[1]=T[m-1];var u=O.apply(this,A);if(u.isValid()){this.$d=u.$d,this.$L=u.$L,this.init();break}m===d&&(this.$d=new Date(""))}else B.call(this,Z)}}})})(mn);var Ci=mn.exports;const Di=ke(Ci);var gn={exports:{}};(function(t,e){(function(n,r){t.exports=r()})(ye,function(){return function(n,r){var i=r.prototype,s=i.format;i.format=function(a){var y=this,_=this.$locale();if(!this.isValid())return s.bind(this)(a);var k=this.$utils(),C=(a||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(F){switch(F){case"Q":return Math.ceil((y.$M+1)/3);case"Do":return _.ordinal(y.$D);case"gggg":return y.weekYear();case"GGGG":return y.isoWeekYear();case"wo":return _.ordinal(y.week(),"W");case"w":case"ww":return k.s(y.week(),F==="w"?1:2,"0");case"W":case"WW":return k.s(y.isoWeek(),F==="W"?1:2,"0");case"k":case"kk":return k.s(String(y.$H===0?24:y.$H),F==="k"?1:2,"0");case"X":return Math.floor(y.$d.getTime()/1e3);case"x":return y.$d.getTime();case"z":return"["+y.offsetName()+"]";case"zzz":return"["+y.offsetName("long")+"]";default:return F}});return s.bind(this)(C)}}})})(gn);var Mi=gn.exports;const Si=ke(Mi);var he=function(){var t=function(b,o,d,m){for(d=d||{},m=b.length;m--;d[b[m]]=o);return d},e=[6,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,30,32,33,35,37],n=[1,25],r=[1,26],i=[1,27],s=[1,28],a=[1,29],y=[1,30],_=[1,31],k=[1,9],C=[1,10],F=[1,11],w=[1,12],x=[1,13],q=[1,14],g=[1,15],L=[1,16],O=[1,18],W=[1,19],B=[1,20],Z=[1,21],Q=[1,22],v=[1,24],A=[1,32],T={trace:function(){},yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,dateFormat:19,inclusiveEndDates:20,topAxis:21,axisFormat:22,tickInterval:23,excludes:24,includes:25,todayMarker:26,title:27,acc_title:28,acc_title_value:29,acc_descr:30,acc_descr_value:31,acc_descr_multiline_value:32,section:33,clickStatement:34,taskTxt:35,taskData:36,click:37,callbackname:38,callbackargs:39,href:40,clickStatementDebug:41,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",19:"dateFormat",20:"inclusiveEndDates",21:"topAxis",22:"axisFormat",23:"tickInterval",24:"excludes",25:"includes",26:"todayMarker",27:"title",28:"acc_title",29:"acc_title_value",30:"acc_descr",31:"acc_descr_value",32:"acc_descr_multiline_value",33:"section",35:"taskTxt",36:"taskData",37:"click",38:"callbackname",39:"callbackargs",40:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[34,2],[34,3],[34,3],[34,4],[34,3],[34,4],[34,2],[41,2],[41,3],[41,3],[41,4],[41,3],[41,4],[41,2]],performAction:function(o,d,m,u,S,c,X){var f=c.length-1;switch(S){case 1:return c[f-1];case 2:this.$=[];break;case 3:c[f-1].push(c[f]),this.$=c[f-1];break;case 4:case 5:this.$=c[f];break;case 6:case 7:this.$=[];break;case 8:u.setWeekday("monday");break;case 9:u.setWeekday("tuesday");break;case 10:u.setWeekday("wednesday");break;case 11:u.setWeekday("thursday");break;case 12:u.setWeekday("friday");break;case 13:u.setWeekday("saturday");break;case 14:u.setWeekday("sunday");break;case 15:u.setDateFormat(c[f].substr(11)),this.$=c[f].substr(11);break;case 16:u.enableInclusiveEndDates(),this.$=c[f].substr(18);break;case 17:u.TopAxis(),this.$=c[f].substr(8);break;case 18:u.setAxisFormat(c[f].substr(11)),this.$=c[f].substr(11);break;case 19:u.setTickInterval(c[f].substr(13)),this.$=c[f].substr(13);break;case 20:u.setExcludes(c[f].substr(9)),this.$=c[f].substr(9);break;case 21:u.setIncludes(c[f].substr(9)),this.$=c[f].substr(9);break;case 22:u.setTodayMarker(c[f].substr(12)),this.$=c[f].substr(12);break;case 24:u.setDiagramTitle(c[f].substr(6)),this.$=c[f].substr(6);break;case 25:this.$=c[f].trim(),u.setAccTitle(this.$);break;case 26:case 27:this.$=c[f].trim(),u.setAccDescription(this.$);break;case 28:u.addSection(c[f].substr(8)),this.$=c[f].substr(8);break;case 30:u.addTask(c[f-1],c[f]),this.$="task";break;case 31:this.$=c[f-1],u.setClickEvent(c[f-1],c[f],null);break;case 32:this.$=c[f-2],u.setClickEvent(c[f-2],c[f-1],c[f]);break;case 33:this.$=c[f-2],u.setClickEvent(c[f-2],c[f-1],null),u.setLink(c[f-2],c[f]);break;case 34:this.$=c[f-3],u.setClickEvent(c[f-3],c[f-2],c[f-1]),u.setLink(c[f-3],c[f]);break;case 35:this.$=c[f-2],u.setClickEvent(c[f-2],c[f],null),u.setLink(c[f-2],c[f-1]);break;case 36:this.$=c[f-3],u.setClickEvent(c[f-3],c[f-1],c[f]),u.setLink(c[f-3],c[f-2]);break;case 37:this.$=c[f-1],u.setLink(c[f-1],c[f]);break;case 38:case 44:this.$=c[f-1]+" "+c[f];break;case 39:case 40:case 42:this.$=c[f-2]+" "+c[f-1]+" "+c[f];break;case 41:case 43:this.$=c[f-3]+" "+c[f-2]+" "+c[f-1]+" "+c[f];break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:_,19:k,20:C,21:F,22:w,23:x,24:q,25:g,26:L,27:O,28:W,30:B,32:Z,33:Q,34:23,35:v,37:A},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:33,11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:_,19:k,20:C,21:F,22:w,23:x,24:q,25:g,26:L,27:O,28:W,30:B,32:Z,33:Q,34:23,35:v,37:A},t(e,[2,5]),t(e,[2,6]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),{29:[1,34]},{31:[1,35]},t(e,[2,27]),t(e,[2,28]),t(e,[2,29]),{36:[1,36]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),{38:[1,37],40:[1,38]},t(e,[2,4]),t(e,[2,25]),t(e,[2,26]),t(e,[2,30]),t(e,[2,31],{39:[1,39],40:[1,40]}),t(e,[2,37],{38:[1,41]}),t(e,[2,32],{40:[1,42]}),t(e,[2,33]),t(e,[2,35],{39:[1,43]}),t(e,[2,34]),t(e,[2,36])],defaultActions:{},parseError:function(o,d){if(d.recoverable)this.trace(o);else{var m=new Error(o);throw m.hash=d,m}},parse:function(o){var d=this,m=[0],u=[],S=[null],c=[],X=this.table,f="",h=0,U=0,G=2,z=1,N=c.slice.call(arguments,1),I=Object.create(this.lexer),V={yy:{}};for(var st in this.yy)Object.prototype.hasOwnProperty.call(this.yy,st)&&(V.yy[st]=this.yy[st]);I.setInput(o,V.yy),V.yy.lexer=I,V.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var it=I.yylloc;c.push(it);var p=I.options&&I.options.ranges;typeof V.yy.parseError=="function"?this.parseError=V.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function E(){var ct;return ct=u.pop()||I.lex()||z,typeof ct!="number"&&(ct instanceof Array&&(u=ct,ct=u.pop()),ct=d.symbols_[ct]||ct),ct}for(var M,l,R,H,j={},$,et,Ut,Vt;;){if(l=m[m.length-1],this.defaultActions[l]?R=this.defaultActions[l]:((M===null||typeof M>"u")&&(M=E()),R=X[l]&&X[l][M]),typeof R>"u"||!R.length||!R[0]){var Jt="";Vt=[];for($ in X[l])this.terminals_[$]&&$>G&&Vt.push("'"+this.terminals_[$]+"'");I.showPosition?Jt="Parse error on line "+(h+1)+`: `+I.showPosition()+` Expecting `+Vt.join(", ")+", got '"+(this.terminals_[M]||M)+"'":Jt="Parse error on line "+(h+1)+": Unexpected "+(M==z?"end of input":"'"+(this.terminals_[M]||M)+"'"),this.parseError(Jt,{text:I.match,token:this.terminals_[M]||M,line:I.yylineno,loc:it,expected:Vt})}if(R[0]instanceof Array&&R.length>1)throw new Error("Parse Error: multiple actions possible at state: "+l+", token: "+M);switch(R[0]){case 1:m.push(M),S.push(I.yytext),c.push(I.yylloc),m.push(R[1]),M=null,U=I.yyleng,f=I.yytext,h=I.yylineno,it=I.yylloc;break;case 2:if(et=this.productions_[R[1]][1],j.$=S[S.length-et],j._$={first_line:c[c.length-(et||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(et||1)].first_column,last_column:c[c.length-1].last_column},p&&(j._$.range=[c[c.length-(et||1)].range[0],c[c.length-1].range[1]]),H=this.performAction.apply(j,[f,U,h,V.yy,R[1],S,c].concat(N)),typeof H<"u")return H;et&&(m=m.slice(0,-1*et*2),S=S.slice(0,-1*et),c=c.slice(0,-1*et)),m.push(this.productions_[R[1]][0]),S.push(j.$),c.push(j._$),Ut=X[m[m.length-2]][m[m.length-1]],m.push(Ut);break;case 3:return!0}}return!0}},Y=function(){var b={EOF:1,parseError:function(d,m){if(this.yy.parser)this.yy.parser.parseError(d,m);else throw new Error(d)},setInput:function(o,d){return this.yy=d||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var d=o.match(/(?:\r\n?|\n).*/g);return d?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var d=o.length,m=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1&&(this.yylineno-=m.length-1);var S=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===u.length?this.yylloc.first_column:0)+u[u.length-m.length].length-m[0].length:this.yylloc.first_column-d},this.options.ranges&&(this.yylloc.range=[S[0],S[0]+this.yyleng-d]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),d=new Array(o.length+1).join("-");return o+this.upcomingInput()+` diff --git a/_nuxt/gitGraphDiagram-6b463803.hIPJn7TU.js b/_nuxt/gitGraphDiagram-6b463803.AWiJsDP2.js similarity index 99% rename from _nuxt/gitGraphDiagram-6b463803.hIPJn7TU.js rename to _nuxt/gitGraphDiagram-6b463803.AWiJsDP2.js index 6b9a325209..94123b834d 100644 --- a/_nuxt/gitGraphDiagram-6b463803.hIPJn7TU.js +++ b/_nuxt/gitGraphDiagram-6b463803.AWiJsDP2.js @@ -1,4 +1,4 @@ -import{c as A,s as vt,g as Ct,a as At,b as Ot,x as St,y as It,l as G,j as D,A as Gt,h as Pt,z as Nt,at as Ht,au as Bt}from"./mermaid-934d9bea.GjCu814R.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";var mt=function(){var r=function(q,h,b,k){for(b=b||{},k=q.length;k--;b[q[k]]=h);return b},a=[1,3],o=[1,6],u=[1,4],n=[1,5],c=[2,5],m=[1,12],l=[5,7,13,19,21,23,24,26,28,31,36,39,46],E=[7,13,19,21,23,24,26,28,31,36,39],_=[7,12,13,19,21,23,24,26,28,31,36,39],i=[7,13,46],g=[1,42],p=[1,41],x=[7,13,29,32,34,37,46],f=[1,55],d=[1,56],y=[1,57],H=[7,13,32,34,41,46],w={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,GG:5,document:6,EOF:7,":":8,DIR:9,options:10,body:11,OPT:12,NL:13,line:14,statement:15,commitStatement:16,mergeStatement:17,cherryPickStatement:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,section:24,branchStatement:25,CHECKOUT:26,ref:27,BRANCH:28,ORDER:29,NUM:30,CHERRY_PICK:31,COMMIT_ID:32,STR:33,COMMIT_TAG:34,EMPTYSTR:35,MERGE:36,COMMIT_TYPE:37,commitType:38,COMMIT:39,commit_arg:40,COMMIT_MSG:41,NORMAL:42,REVERSE:43,HIGHLIGHT:44,ID:45,";":46,$accept:0,$end:1},terminals_:{2:"error",5:"GG",7:"EOF",8:":",9:"DIR",12:"OPT",13:"NL",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"section",26:"CHECKOUT",28:"BRANCH",29:"ORDER",30:"NUM",31:"CHERRY_PICK",32:"COMMIT_ID",33:"STR",34:"COMMIT_TAG",35:"EMPTYSTR",36:"MERGE",37:"COMMIT_TYPE",39:"COMMIT",41:"COMMIT_MSG",42:"NORMAL",43:"REVERSE",44:"HIGHLIGHT",45:"ID",46:";"},productions_:[0,[3,2],[3,3],[3,4],[3,5],[6,0],[6,2],[10,2],[10,1],[11,0],[11,2],[14,2],[14,1],[15,1],[15,1],[15,1],[15,2],[15,2],[15,1],[15,1],[15,1],[15,2],[25,2],[25,4],[18,3],[18,5],[18,5],[18,5],[18,5],[17,2],[17,4],[17,4],[17,4],[17,6],[17,6],[17,6],[17,6],[17,6],[17,6],[17,8],[17,8],[17,8],[17,8],[17,8],[17,8],[16,2],[16,3],[16,3],[16,5],[16,5],[16,3],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,3],[16,5],[16,5],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[40,0],[40,1],[38,1],[38,1],[38,1],[27,1],[27,1],[4,1],[4,1],[4,1]],performAction:function(h,b,k,s,T,t,X){var e=t.length-1;switch(T){case 2:return t[e];case 3:return t[e-1];case 4:return s.setDirection(t[e-3]),t[e-1];case 6:s.setOptions(t[e-1]),this.$=t[e];break;case 7:t[e-1]+=t[e],this.$=t[e-1];break;case 9:this.$=[];break;case 10:t[e-1].push(t[e]),this.$=t[e-1];break;case 11:this.$=t[e-1];break;case 16:this.$=t[e].trim(),s.setAccTitle(this.$);break;case 17:case 18:this.$=t[e].trim(),s.setAccDescription(this.$);break;case 19:s.addSection(t[e].substr(8)),this.$=t[e].substr(8);break;case 21:s.checkout(t[e]);break;case 22:s.branch(t[e]);break;case 23:s.branch(t[e-2],t[e]);break;case 24:s.cherryPick(t[e],"",void 0);break;case 25:s.cherryPick(t[e-2],"",t[e]);break;case 26:case 28:s.cherryPick(t[e-2],"","");break;case 27:s.cherryPick(t[e],"",t[e-2]);break;case 29:s.merge(t[e],"","","");break;case 30:s.merge(t[e-2],t[e],"","");break;case 31:s.merge(t[e-2],"",t[e],"");break;case 32:s.merge(t[e-2],"","",t[e]);break;case 33:s.merge(t[e-4],t[e],"",t[e-2]);break;case 34:s.merge(t[e-4],"",t[e],t[e-2]);break;case 35:s.merge(t[e-4],"",t[e-2],t[e]);break;case 36:s.merge(t[e-4],t[e-2],t[e],"");break;case 37:s.merge(t[e-4],t[e-2],"",t[e]);break;case 38:s.merge(t[e-4],t[e],t[e-2],"");break;case 39:s.merge(t[e-6],t[e-4],t[e-2],t[e]);break;case 40:s.merge(t[e-6],t[e],t[e-4],t[e-2]);break;case 41:s.merge(t[e-6],t[e-4],t[e],t[e-2]);break;case 42:s.merge(t[e-6],t[e-2],t[e-4],t[e]);break;case 43:s.merge(t[e-6],t[e],t[e-2],t[e-4]);break;case 44:s.merge(t[e-6],t[e-2],t[e],t[e-4]);break;case 45:s.commit(t[e]);break;case 46:s.commit("","",s.commitType.NORMAL,t[e]);break;case 47:s.commit("","",t[e],"");break;case 48:s.commit("","",t[e],t[e-2]);break;case 49:s.commit("","",t[e-2],t[e]);break;case 50:s.commit("",t[e],s.commitType.NORMAL,"");break;case 51:s.commit("",t[e-2],s.commitType.NORMAL,t[e]);break;case 52:s.commit("",t[e],s.commitType.NORMAL,t[e-2]);break;case 53:s.commit("",t[e-2],t[e],"");break;case 54:s.commit("",t[e],t[e-2],"");break;case 55:s.commit("",t[e-4],t[e-2],t[e]);break;case 56:s.commit("",t[e-4],t[e],t[e-2]);break;case 57:s.commit("",t[e-2],t[e-4],t[e]);break;case 58:s.commit("",t[e],t[e-4],t[e-2]);break;case 59:s.commit("",t[e],t[e-2],t[e-4]);break;case 60:s.commit("",t[e-2],t[e],t[e-4]);break;case 61:s.commit(t[e],"",s.commitType.NORMAL,"");break;case 62:s.commit(t[e],"",s.commitType.NORMAL,t[e-2]);break;case 63:s.commit(t[e-2],"",s.commitType.NORMAL,t[e]);break;case 64:s.commit(t[e-2],"",t[e],"");break;case 65:s.commit(t[e],"",t[e-2],"");break;case 66:s.commit(t[e],t[e-2],s.commitType.NORMAL,"");break;case 67:s.commit(t[e-2],t[e],s.commitType.NORMAL,"");break;case 68:s.commit(t[e-4],"",t[e-2],t[e]);break;case 69:s.commit(t[e-4],"",t[e],t[e-2]);break;case 70:s.commit(t[e-2],"",t[e-4],t[e]);break;case 71:s.commit(t[e],"",t[e-4],t[e-2]);break;case 72:s.commit(t[e],"",t[e-2],t[e-4]);break;case 73:s.commit(t[e-2],"",t[e],t[e-4]);break;case 74:s.commit(t[e-4],t[e],t[e-2],"");break;case 75:s.commit(t[e-4],t[e-2],t[e],"");break;case 76:s.commit(t[e-2],t[e],t[e-4],"");break;case 77:s.commit(t[e],t[e-2],t[e-4],"");break;case 78:s.commit(t[e],t[e-4],t[e-2],"");break;case 79:s.commit(t[e-2],t[e-4],t[e],"");break;case 80:s.commit(t[e-4],t[e],s.commitType.NORMAL,t[e-2]);break;case 81:s.commit(t[e-4],t[e-2],s.commitType.NORMAL,t[e]);break;case 82:s.commit(t[e-2],t[e],s.commitType.NORMAL,t[e-4]);break;case 83:s.commit(t[e],t[e-2],s.commitType.NORMAL,t[e-4]);break;case 84:s.commit(t[e],t[e-4],s.commitType.NORMAL,t[e-2]);break;case 85:s.commit(t[e-2],t[e-4],s.commitType.NORMAL,t[e]);break;case 86:s.commit(t[e-6],t[e-4],t[e-2],t[e]);break;case 87:s.commit(t[e-6],t[e-4],t[e],t[e-2]);break;case 88:s.commit(t[e-6],t[e-2],t[e-4],t[e]);break;case 89:s.commit(t[e-6],t[e],t[e-4],t[e-2]);break;case 90:s.commit(t[e-6],t[e-2],t[e],t[e-4]);break;case 91:s.commit(t[e-6],t[e],t[e-2],t[e-4]);break;case 92:s.commit(t[e-4],t[e-6],t[e-2],t[e]);break;case 93:s.commit(t[e-4],t[e-6],t[e],t[e-2]);break;case 94:s.commit(t[e-2],t[e-6],t[e-4],t[e]);break;case 95:s.commit(t[e],t[e-6],t[e-4],t[e-2]);break;case 96:s.commit(t[e-2],t[e-6],t[e],t[e-4]);break;case 97:s.commit(t[e],t[e-6],t[e-2],t[e-4]);break;case 98:s.commit(t[e],t[e-4],t[e-2],t[e-6]);break;case 99:s.commit(t[e-2],t[e-4],t[e],t[e-6]);break;case 100:s.commit(t[e],t[e-2],t[e-4],t[e-6]);break;case 101:s.commit(t[e-2],t[e],t[e-4],t[e-6]);break;case 102:s.commit(t[e-4],t[e-2],t[e],t[e-6]);break;case 103:s.commit(t[e-4],t[e],t[e-2],t[e-6]);break;case 104:s.commit(t[e-2],t[e-4],t[e-6],t[e]);break;case 105:s.commit(t[e],t[e-4],t[e-6],t[e-2]);break;case 106:s.commit(t[e-2],t[e],t[e-6],t[e-4]);break;case 107:s.commit(t[e],t[e-2],t[e-6],t[e-4]);break;case 108:s.commit(t[e-4],t[e-2],t[e-6],t[e]);break;case 109:s.commit(t[e-4],t[e],t[e-6],t[e-2]);break;case 110:this.$="";break;case 111:this.$=t[e];break;case 112:this.$=s.commitType.NORMAL;break;case 113:this.$=s.commitType.REVERSE;break;case 114:this.$=s.commitType.HIGHLIGHT;break}},table:[{3:1,4:2,5:a,7:o,13:u,46:n},{1:[3]},{3:7,4:2,5:a,7:o,13:u,46:n},{6:8,7:c,8:[1,9],9:[1,10],10:11,13:m},r(l,[2,117]),r(l,[2,118]),r(l,[2,119]),{1:[2,1]},{7:[1,13]},{6:14,7:c,10:11,13:m},{8:[1,15]},r(E,[2,9],{11:16,12:[1,17]}),r(_,[2,8]),{1:[2,2]},{7:[1,18]},{6:19,7:c,10:11,13:m},{7:[2,6],13:[1,22],14:20,15:21,16:23,17:24,18:25,19:[1,26],21:[1,27],23:[1,28],24:[1,29],25:30,26:[1,31],28:[1,35],31:[1,34],36:[1,33],39:[1,32]},r(_,[2,7]),{1:[2,3]},{7:[1,36]},r(E,[2,10]),{4:37,7:o,13:u,46:n},r(E,[2,12]),r(i,[2,13]),r(i,[2,14]),r(i,[2,15]),{20:[1,38]},{22:[1,39]},r(i,[2,18]),r(i,[2,19]),r(i,[2,20]),{27:40,33:g,45:p},r(i,[2,110],{40:43,32:[1,46],33:[1,48],34:[1,44],37:[1,45],41:[1,47]}),{27:49,33:g,45:p},{32:[1,50],34:[1,51]},{27:52,33:g,45:p},{1:[2,4]},r(E,[2,11]),r(i,[2,16]),r(i,[2,17]),r(i,[2,21]),r(x,[2,115]),r(x,[2,116]),r(i,[2,45]),{33:[1,53]},{38:54,42:f,43:d,44:y},{33:[1,58]},{33:[1,59]},r(i,[2,111]),r(i,[2,29],{32:[1,60],34:[1,62],37:[1,61]}),{33:[1,63]},{33:[1,64],35:[1,65]},r(i,[2,22],{29:[1,66]}),r(i,[2,46],{32:[1,68],37:[1,67],41:[1,69]}),r(i,[2,47],{32:[1,71],34:[1,70],41:[1,72]}),r(H,[2,112]),r(H,[2,113]),r(H,[2,114]),r(i,[2,50],{34:[1,73],37:[1,74],41:[1,75]}),r(i,[2,61],{32:[1,78],34:[1,76],37:[1,77]}),{33:[1,79]},{38:80,42:f,43:d,44:y},{33:[1,81]},r(i,[2,24],{34:[1,82]}),{32:[1,83]},{32:[1,84]},{30:[1,85]},{38:86,42:f,43:d,44:y},{33:[1,87]},{33:[1,88]},{33:[1,89]},{33:[1,90]},{33:[1,91]},{33:[1,92]},{38:93,42:f,43:d,44:y},{33:[1,94]},{33:[1,95]},{38:96,42:f,43:d,44:y},{33:[1,97]},r(i,[2,30],{34:[1,99],37:[1,98]}),r(i,[2,31],{32:[1,101],34:[1,100]}),r(i,[2,32],{32:[1,102],37:[1,103]}),{33:[1,104],35:[1,105]},{33:[1,106]},{33:[1,107]},r(i,[2,23]),r(i,[2,48],{32:[1,108],41:[1,109]}),r(i,[2,52],{37:[1,110],41:[1,111]}),r(i,[2,62],{32:[1,113],37:[1,112]}),r(i,[2,49],{32:[1,114],41:[1,115]}),r(i,[2,54],{34:[1,116],41:[1,117]}),r(i,[2,65],{32:[1,119],34:[1,118]}),r(i,[2,51],{37:[1,120],41:[1,121]}),r(i,[2,53],{34:[1,122],41:[1,123]}),r(i,[2,66],{34:[1,125],37:[1,124]}),r(i,[2,63],{32:[1,127],37:[1,126]}),r(i,[2,64],{32:[1,129],34:[1,128]}),r(i,[2,67],{34:[1,131],37:[1,130]}),{38:132,42:f,43:d,44:y},{33:[1,133]},{33:[1,134]},{33:[1,135]},{33:[1,136]},{38:137,42:f,43:d,44:y},r(i,[2,25]),r(i,[2,26]),r(i,[2,27]),r(i,[2,28]),{33:[1,138]},{33:[1,139]},{38:140,42:f,43:d,44:y},{33:[1,141]},{38:142,42:f,43:d,44:y},{33:[1,143]},{33:[1,144]},{33:[1,145]},{33:[1,146]},{33:[1,147]},{33:[1,148]},{33:[1,149]},{38:150,42:f,43:d,44:y},{33:[1,151]},{33:[1,152]},{33:[1,153]},{38:154,42:f,43:d,44:y},{33:[1,155]},{38:156,42:f,43:d,44:y},{33:[1,157]},{33:[1,158]},{33:[1,159]},{38:160,42:f,43:d,44:y},{33:[1,161]},r(i,[2,36],{34:[1,162]}),r(i,[2,37],{37:[1,163]}),r(i,[2,35],{32:[1,164]}),r(i,[2,38],{34:[1,165]}),r(i,[2,33],{37:[1,166]}),r(i,[2,34],{32:[1,167]}),r(i,[2,59],{41:[1,168]}),r(i,[2,72],{32:[1,169]}),r(i,[2,60],{41:[1,170]}),r(i,[2,83],{37:[1,171]}),r(i,[2,73],{32:[1,172]}),r(i,[2,82],{37:[1,173]}),r(i,[2,58],{41:[1,174]}),r(i,[2,71],{32:[1,175]}),r(i,[2,57],{41:[1,176]}),r(i,[2,77],{34:[1,177]}),r(i,[2,70],{32:[1,178]}),r(i,[2,76],{34:[1,179]}),r(i,[2,56],{41:[1,180]}),r(i,[2,84],{37:[1,181]}),r(i,[2,55],{41:[1,182]}),r(i,[2,78],{34:[1,183]}),r(i,[2,79],{34:[1,184]}),r(i,[2,85],{37:[1,185]}),r(i,[2,69],{32:[1,186]}),r(i,[2,80],{37:[1,187]}),r(i,[2,68],{32:[1,188]}),r(i,[2,74],{34:[1,189]}),r(i,[2,75],{34:[1,190]}),r(i,[2,81],{37:[1,191]}),{33:[1,192]},{38:193,42:f,43:d,44:y},{33:[1,194]},{33:[1,195]},{38:196,42:f,43:d,44:y},{33:[1,197]},{33:[1,198]},{33:[1,199]},{33:[1,200]},{38:201,42:f,43:d,44:y},{33:[1,202]},{38:203,42:f,43:d,44:y},{33:[1,204]},{33:[1,205]},{33:[1,206]},{33:[1,207]},{33:[1,208]},{33:[1,209]},{33:[1,210]},{38:211,42:f,43:d,44:y},{33:[1,212]},{33:[1,213]},{33:[1,214]},{38:215,42:f,43:d,44:y},{33:[1,216]},{38:217,42:f,43:d,44:y},{33:[1,218]},{33:[1,219]},{33:[1,220]},{38:221,42:f,43:d,44:y},r(i,[2,39]),r(i,[2,41]),r(i,[2,40]),r(i,[2,42]),r(i,[2,44]),r(i,[2,43]),r(i,[2,100]),r(i,[2,101]),r(i,[2,98]),r(i,[2,99]),r(i,[2,103]),r(i,[2,102]),r(i,[2,107]),r(i,[2,106]),r(i,[2,105]),r(i,[2,104]),r(i,[2,109]),r(i,[2,108]),r(i,[2,97]),r(i,[2,96]),r(i,[2,95]),r(i,[2,94]),r(i,[2,92]),r(i,[2,93]),r(i,[2,91]),r(i,[2,90]),r(i,[2,89]),r(i,[2,88]),r(i,[2,86]),r(i,[2,87])],defaultActions:{7:[2,1],13:[2,2],18:[2,3],36:[2,4]},parseError:function(h,b){if(b.recoverable)this.trace(h);else{var k=new Error(h);throw k.hash=b,k}},parse:function(h){var b=this,k=[0],s=[],T=[null],t=[],X=this.table,e="",rt=0,pt=0,Tt=2,ft=1,Lt=t.slice.call(arguments,1),M=Object.create(this.lexer),Y={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(Y.yy[ct]=this.yy[ct]);M.setInput(h,Y.yy),Y.yy.lexer=M,Y.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var ot=M.yylloc;t.push(ot);var Rt=M.options&&M.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mt(){var j;return j=s.pop()||M.lex()||ft,typeof j!="number"&&(j instanceof Array&&(s=j,j=s.pop()),j=b.symbols_[j]||j),j}for(var I,K,V,lt,W={},it,z,bt,st;;){if(K=k[k.length-1],this.defaultActions[K]?V=this.defaultActions[K]:((I===null||typeof I>"u")&&(I=Mt()),V=X[K]&&X[K][I]),typeof V>"u"||!V.length||!V[0]){var ht="";st=[];for(it in X[K])this.terminals_[it]&&it>Tt&&st.push("'"+this.terminals_[it]+"'");M.showPosition?ht="Parse error on line "+(rt+1)+`: +import{c as A,s as vt,g as Ct,a as At,b as Ot,x as St,y as It,l as G,j as D,A as Gt,h as Pt,z as Nt,at as Ht,au as Bt}from"./mermaid-934d9bea.JP-6_YN_.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";var mt=function(){var r=function(q,h,b,k){for(b=b||{},k=q.length;k--;b[q[k]]=h);return b},a=[1,3],o=[1,6],u=[1,4],n=[1,5],c=[2,5],m=[1,12],l=[5,7,13,19,21,23,24,26,28,31,36,39,46],E=[7,13,19,21,23,24,26,28,31,36,39],_=[7,12,13,19,21,23,24,26,28,31,36,39],i=[7,13,46],g=[1,42],p=[1,41],x=[7,13,29,32,34,37,46],f=[1,55],d=[1,56],y=[1,57],H=[7,13,32,34,41,46],w={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,GG:5,document:6,EOF:7,":":8,DIR:9,options:10,body:11,OPT:12,NL:13,line:14,statement:15,commitStatement:16,mergeStatement:17,cherryPickStatement:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,section:24,branchStatement:25,CHECKOUT:26,ref:27,BRANCH:28,ORDER:29,NUM:30,CHERRY_PICK:31,COMMIT_ID:32,STR:33,COMMIT_TAG:34,EMPTYSTR:35,MERGE:36,COMMIT_TYPE:37,commitType:38,COMMIT:39,commit_arg:40,COMMIT_MSG:41,NORMAL:42,REVERSE:43,HIGHLIGHT:44,ID:45,";":46,$accept:0,$end:1},terminals_:{2:"error",5:"GG",7:"EOF",8:":",9:"DIR",12:"OPT",13:"NL",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"section",26:"CHECKOUT",28:"BRANCH",29:"ORDER",30:"NUM",31:"CHERRY_PICK",32:"COMMIT_ID",33:"STR",34:"COMMIT_TAG",35:"EMPTYSTR",36:"MERGE",37:"COMMIT_TYPE",39:"COMMIT",41:"COMMIT_MSG",42:"NORMAL",43:"REVERSE",44:"HIGHLIGHT",45:"ID",46:";"},productions_:[0,[3,2],[3,3],[3,4],[3,5],[6,0],[6,2],[10,2],[10,1],[11,0],[11,2],[14,2],[14,1],[15,1],[15,1],[15,1],[15,2],[15,2],[15,1],[15,1],[15,1],[15,2],[25,2],[25,4],[18,3],[18,5],[18,5],[18,5],[18,5],[17,2],[17,4],[17,4],[17,4],[17,6],[17,6],[17,6],[17,6],[17,6],[17,6],[17,8],[17,8],[17,8],[17,8],[17,8],[17,8],[16,2],[16,3],[16,3],[16,5],[16,5],[16,3],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,3],[16,5],[16,5],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[40,0],[40,1],[38,1],[38,1],[38,1],[27,1],[27,1],[4,1],[4,1],[4,1]],performAction:function(h,b,k,s,T,t,X){var e=t.length-1;switch(T){case 2:return t[e];case 3:return t[e-1];case 4:return s.setDirection(t[e-3]),t[e-1];case 6:s.setOptions(t[e-1]),this.$=t[e];break;case 7:t[e-1]+=t[e],this.$=t[e-1];break;case 9:this.$=[];break;case 10:t[e-1].push(t[e]),this.$=t[e-1];break;case 11:this.$=t[e-1];break;case 16:this.$=t[e].trim(),s.setAccTitle(this.$);break;case 17:case 18:this.$=t[e].trim(),s.setAccDescription(this.$);break;case 19:s.addSection(t[e].substr(8)),this.$=t[e].substr(8);break;case 21:s.checkout(t[e]);break;case 22:s.branch(t[e]);break;case 23:s.branch(t[e-2],t[e]);break;case 24:s.cherryPick(t[e],"",void 0);break;case 25:s.cherryPick(t[e-2],"",t[e]);break;case 26:case 28:s.cherryPick(t[e-2],"","");break;case 27:s.cherryPick(t[e],"",t[e-2]);break;case 29:s.merge(t[e],"","","");break;case 30:s.merge(t[e-2],t[e],"","");break;case 31:s.merge(t[e-2],"",t[e],"");break;case 32:s.merge(t[e-2],"","",t[e]);break;case 33:s.merge(t[e-4],t[e],"",t[e-2]);break;case 34:s.merge(t[e-4],"",t[e],t[e-2]);break;case 35:s.merge(t[e-4],"",t[e-2],t[e]);break;case 36:s.merge(t[e-4],t[e-2],t[e],"");break;case 37:s.merge(t[e-4],t[e-2],"",t[e]);break;case 38:s.merge(t[e-4],t[e],t[e-2],"");break;case 39:s.merge(t[e-6],t[e-4],t[e-2],t[e]);break;case 40:s.merge(t[e-6],t[e],t[e-4],t[e-2]);break;case 41:s.merge(t[e-6],t[e-4],t[e],t[e-2]);break;case 42:s.merge(t[e-6],t[e-2],t[e-4],t[e]);break;case 43:s.merge(t[e-6],t[e],t[e-2],t[e-4]);break;case 44:s.merge(t[e-6],t[e-2],t[e],t[e-4]);break;case 45:s.commit(t[e]);break;case 46:s.commit("","",s.commitType.NORMAL,t[e]);break;case 47:s.commit("","",t[e],"");break;case 48:s.commit("","",t[e],t[e-2]);break;case 49:s.commit("","",t[e-2],t[e]);break;case 50:s.commit("",t[e],s.commitType.NORMAL,"");break;case 51:s.commit("",t[e-2],s.commitType.NORMAL,t[e]);break;case 52:s.commit("",t[e],s.commitType.NORMAL,t[e-2]);break;case 53:s.commit("",t[e-2],t[e],"");break;case 54:s.commit("",t[e],t[e-2],"");break;case 55:s.commit("",t[e-4],t[e-2],t[e]);break;case 56:s.commit("",t[e-4],t[e],t[e-2]);break;case 57:s.commit("",t[e-2],t[e-4],t[e]);break;case 58:s.commit("",t[e],t[e-4],t[e-2]);break;case 59:s.commit("",t[e],t[e-2],t[e-4]);break;case 60:s.commit("",t[e-2],t[e],t[e-4]);break;case 61:s.commit(t[e],"",s.commitType.NORMAL,"");break;case 62:s.commit(t[e],"",s.commitType.NORMAL,t[e-2]);break;case 63:s.commit(t[e-2],"",s.commitType.NORMAL,t[e]);break;case 64:s.commit(t[e-2],"",t[e],"");break;case 65:s.commit(t[e],"",t[e-2],"");break;case 66:s.commit(t[e],t[e-2],s.commitType.NORMAL,"");break;case 67:s.commit(t[e-2],t[e],s.commitType.NORMAL,"");break;case 68:s.commit(t[e-4],"",t[e-2],t[e]);break;case 69:s.commit(t[e-4],"",t[e],t[e-2]);break;case 70:s.commit(t[e-2],"",t[e-4],t[e]);break;case 71:s.commit(t[e],"",t[e-4],t[e-2]);break;case 72:s.commit(t[e],"",t[e-2],t[e-4]);break;case 73:s.commit(t[e-2],"",t[e],t[e-4]);break;case 74:s.commit(t[e-4],t[e],t[e-2],"");break;case 75:s.commit(t[e-4],t[e-2],t[e],"");break;case 76:s.commit(t[e-2],t[e],t[e-4],"");break;case 77:s.commit(t[e],t[e-2],t[e-4],"");break;case 78:s.commit(t[e],t[e-4],t[e-2],"");break;case 79:s.commit(t[e-2],t[e-4],t[e],"");break;case 80:s.commit(t[e-4],t[e],s.commitType.NORMAL,t[e-2]);break;case 81:s.commit(t[e-4],t[e-2],s.commitType.NORMAL,t[e]);break;case 82:s.commit(t[e-2],t[e],s.commitType.NORMAL,t[e-4]);break;case 83:s.commit(t[e],t[e-2],s.commitType.NORMAL,t[e-4]);break;case 84:s.commit(t[e],t[e-4],s.commitType.NORMAL,t[e-2]);break;case 85:s.commit(t[e-2],t[e-4],s.commitType.NORMAL,t[e]);break;case 86:s.commit(t[e-6],t[e-4],t[e-2],t[e]);break;case 87:s.commit(t[e-6],t[e-4],t[e],t[e-2]);break;case 88:s.commit(t[e-6],t[e-2],t[e-4],t[e]);break;case 89:s.commit(t[e-6],t[e],t[e-4],t[e-2]);break;case 90:s.commit(t[e-6],t[e-2],t[e],t[e-4]);break;case 91:s.commit(t[e-6],t[e],t[e-2],t[e-4]);break;case 92:s.commit(t[e-4],t[e-6],t[e-2],t[e]);break;case 93:s.commit(t[e-4],t[e-6],t[e],t[e-2]);break;case 94:s.commit(t[e-2],t[e-6],t[e-4],t[e]);break;case 95:s.commit(t[e],t[e-6],t[e-4],t[e-2]);break;case 96:s.commit(t[e-2],t[e-6],t[e],t[e-4]);break;case 97:s.commit(t[e],t[e-6],t[e-2],t[e-4]);break;case 98:s.commit(t[e],t[e-4],t[e-2],t[e-6]);break;case 99:s.commit(t[e-2],t[e-4],t[e],t[e-6]);break;case 100:s.commit(t[e],t[e-2],t[e-4],t[e-6]);break;case 101:s.commit(t[e-2],t[e],t[e-4],t[e-6]);break;case 102:s.commit(t[e-4],t[e-2],t[e],t[e-6]);break;case 103:s.commit(t[e-4],t[e],t[e-2],t[e-6]);break;case 104:s.commit(t[e-2],t[e-4],t[e-6],t[e]);break;case 105:s.commit(t[e],t[e-4],t[e-6],t[e-2]);break;case 106:s.commit(t[e-2],t[e],t[e-6],t[e-4]);break;case 107:s.commit(t[e],t[e-2],t[e-6],t[e-4]);break;case 108:s.commit(t[e-4],t[e-2],t[e-6],t[e]);break;case 109:s.commit(t[e-4],t[e],t[e-6],t[e-2]);break;case 110:this.$="";break;case 111:this.$=t[e];break;case 112:this.$=s.commitType.NORMAL;break;case 113:this.$=s.commitType.REVERSE;break;case 114:this.$=s.commitType.HIGHLIGHT;break}},table:[{3:1,4:2,5:a,7:o,13:u,46:n},{1:[3]},{3:7,4:2,5:a,7:o,13:u,46:n},{6:8,7:c,8:[1,9],9:[1,10],10:11,13:m},r(l,[2,117]),r(l,[2,118]),r(l,[2,119]),{1:[2,1]},{7:[1,13]},{6:14,7:c,10:11,13:m},{8:[1,15]},r(E,[2,9],{11:16,12:[1,17]}),r(_,[2,8]),{1:[2,2]},{7:[1,18]},{6:19,7:c,10:11,13:m},{7:[2,6],13:[1,22],14:20,15:21,16:23,17:24,18:25,19:[1,26],21:[1,27],23:[1,28],24:[1,29],25:30,26:[1,31],28:[1,35],31:[1,34],36:[1,33],39:[1,32]},r(_,[2,7]),{1:[2,3]},{7:[1,36]},r(E,[2,10]),{4:37,7:o,13:u,46:n},r(E,[2,12]),r(i,[2,13]),r(i,[2,14]),r(i,[2,15]),{20:[1,38]},{22:[1,39]},r(i,[2,18]),r(i,[2,19]),r(i,[2,20]),{27:40,33:g,45:p},r(i,[2,110],{40:43,32:[1,46],33:[1,48],34:[1,44],37:[1,45],41:[1,47]}),{27:49,33:g,45:p},{32:[1,50],34:[1,51]},{27:52,33:g,45:p},{1:[2,4]},r(E,[2,11]),r(i,[2,16]),r(i,[2,17]),r(i,[2,21]),r(x,[2,115]),r(x,[2,116]),r(i,[2,45]),{33:[1,53]},{38:54,42:f,43:d,44:y},{33:[1,58]},{33:[1,59]},r(i,[2,111]),r(i,[2,29],{32:[1,60],34:[1,62],37:[1,61]}),{33:[1,63]},{33:[1,64],35:[1,65]},r(i,[2,22],{29:[1,66]}),r(i,[2,46],{32:[1,68],37:[1,67],41:[1,69]}),r(i,[2,47],{32:[1,71],34:[1,70],41:[1,72]}),r(H,[2,112]),r(H,[2,113]),r(H,[2,114]),r(i,[2,50],{34:[1,73],37:[1,74],41:[1,75]}),r(i,[2,61],{32:[1,78],34:[1,76],37:[1,77]}),{33:[1,79]},{38:80,42:f,43:d,44:y},{33:[1,81]},r(i,[2,24],{34:[1,82]}),{32:[1,83]},{32:[1,84]},{30:[1,85]},{38:86,42:f,43:d,44:y},{33:[1,87]},{33:[1,88]},{33:[1,89]},{33:[1,90]},{33:[1,91]},{33:[1,92]},{38:93,42:f,43:d,44:y},{33:[1,94]},{33:[1,95]},{38:96,42:f,43:d,44:y},{33:[1,97]},r(i,[2,30],{34:[1,99],37:[1,98]}),r(i,[2,31],{32:[1,101],34:[1,100]}),r(i,[2,32],{32:[1,102],37:[1,103]}),{33:[1,104],35:[1,105]},{33:[1,106]},{33:[1,107]},r(i,[2,23]),r(i,[2,48],{32:[1,108],41:[1,109]}),r(i,[2,52],{37:[1,110],41:[1,111]}),r(i,[2,62],{32:[1,113],37:[1,112]}),r(i,[2,49],{32:[1,114],41:[1,115]}),r(i,[2,54],{34:[1,116],41:[1,117]}),r(i,[2,65],{32:[1,119],34:[1,118]}),r(i,[2,51],{37:[1,120],41:[1,121]}),r(i,[2,53],{34:[1,122],41:[1,123]}),r(i,[2,66],{34:[1,125],37:[1,124]}),r(i,[2,63],{32:[1,127],37:[1,126]}),r(i,[2,64],{32:[1,129],34:[1,128]}),r(i,[2,67],{34:[1,131],37:[1,130]}),{38:132,42:f,43:d,44:y},{33:[1,133]},{33:[1,134]},{33:[1,135]},{33:[1,136]},{38:137,42:f,43:d,44:y},r(i,[2,25]),r(i,[2,26]),r(i,[2,27]),r(i,[2,28]),{33:[1,138]},{33:[1,139]},{38:140,42:f,43:d,44:y},{33:[1,141]},{38:142,42:f,43:d,44:y},{33:[1,143]},{33:[1,144]},{33:[1,145]},{33:[1,146]},{33:[1,147]},{33:[1,148]},{33:[1,149]},{38:150,42:f,43:d,44:y},{33:[1,151]},{33:[1,152]},{33:[1,153]},{38:154,42:f,43:d,44:y},{33:[1,155]},{38:156,42:f,43:d,44:y},{33:[1,157]},{33:[1,158]},{33:[1,159]},{38:160,42:f,43:d,44:y},{33:[1,161]},r(i,[2,36],{34:[1,162]}),r(i,[2,37],{37:[1,163]}),r(i,[2,35],{32:[1,164]}),r(i,[2,38],{34:[1,165]}),r(i,[2,33],{37:[1,166]}),r(i,[2,34],{32:[1,167]}),r(i,[2,59],{41:[1,168]}),r(i,[2,72],{32:[1,169]}),r(i,[2,60],{41:[1,170]}),r(i,[2,83],{37:[1,171]}),r(i,[2,73],{32:[1,172]}),r(i,[2,82],{37:[1,173]}),r(i,[2,58],{41:[1,174]}),r(i,[2,71],{32:[1,175]}),r(i,[2,57],{41:[1,176]}),r(i,[2,77],{34:[1,177]}),r(i,[2,70],{32:[1,178]}),r(i,[2,76],{34:[1,179]}),r(i,[2,56],{41:[1,180]}),r(i,[2,84],{37:[1,181]}),r(i,[2,55],{41:[1,182]}),r(i,[2,78],{34:[1,183]}),r(i,[2,79],{34:[1,184]}),r(i,[2,85],{37:[1,185]}),r(i,[2,69],{32:[1,186]}),r(i,[2,80],{37:[1,187]}),r(i,[2,68],{32:[1,188]}),r(i,[2,74],{34:[1,189]}),r(i,[2,75],{34:[1,190]}),r(i,[2,81],{37:[1,191]}),{33:[1,192]},{38:193,42:f,43:d,44:y},{33:[1,194]},{33:[1,195]},{38:196,42:f,43:d,44:y},{33:[1,197]},{33:[1,198]},{33:[1,199]},{33:[1,200]},{38:201,42:f,43:d,44:y},{33:[1,202]},{38:203,42:f,43:d,44:y},{33:[1,204]},{33:[1,205]},{33:[1,206]},{33:[1,207]},{33:[1,208]},{33:[1,209]},{33:[1,210]},{38:211,42:f,43:d,44:y},{33:[1,212]},{33:[1,213]},{33:[1,214]},{38:215,42:f,43:d,44:y},{33:[1,216]},{38:217,42:f,43:d,44:y},{33:[1,218]},{33:[1,219]},{33:[1,220]},{38:221,42:f,43:d,44:y},r(i,[2,39]),r(i,[2,41]),r(i,[2,40]),r(i,[2,42]),r(i,[2,44]),r(i,[2,43]),r(i,[2,100]),r(i,[2,101]),r(i,[2,98]),r(i,[2,99]),r(i,[2,103]),r(i,[2,102]),r(i,[2,107]),r(i,[2,106]),r(i,[2,105]),r(i,[2,104]),r(i,[2,109]),r(i,[2,108]),r(i,[2,97]),r(i,[2,96]),r(i,[2,95]),r(i,[2,94]),r(i,[2,92]),r(i,[2,93]),r(i,[2,91]),r(i,[2,90]),r(i,[2,89]),r(i,[2,88]),r(i,[2,86]),r(i,[2,87])],defaultActions:{7:[2,1],13:[2,2],18:[2,3],36:[2,4]},parseError:function(h,b){if(b.recoverable)this.trace(h);else{var k=new Error(h);throw k.hash=b,k}},parse:function(h){var b=this,k=[0],s=[],T=[null],t=[],X=this.table,e="",rt=0,pt=0,Tt=2,ft=1,Lt=t.slice.call(arguments,1),M=Object.create(this.lexer),Y={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(Y.yy[ct]=this.yy[ct]);M.setInput(h,Y.yy),Y.yy.lexer=M,Y.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var ot=M.yylloc;t.push(ot);var Rt=M.options&&M.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mt(){var j;return j=s.pop()||M.lex()||ft,typeof j!="number"&&(j instanceof Array&&(s=j,j=s.pop()),j=b.symbols_[j]||j),j}for(var I,K,V,lt,W={},it,z,bt,st;;){if(K=k[k.length-1],this.defaultActions[K]?V=this.defaultActions[K]:((I===null||typeof I>"u")&&(I=Mt()),V=X[K]&&X[K][I]),typeof V>"u"||!V.length||!V[0]){var ht="";st=[];for(it in X[K])this.terminals_[it]&&it>Tt&&st.push("'"+this.terminals_[it]+"'");M.showPosition?ht="Parse error on line "+(rt+1)+`: `+M.showPosition()+` Expecting `+st.join(", ")+", got '"+(this.terminals_[I]||I)+"'":ht="Parse error on line "+(rt+1)+": Unexpected "+(I==ft?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(ht,{text:M.match,token:this.terminals_[I]||I,line:M.yylineno,loc:ot,expected:st})}if(V[0]instanceof Array&&V.length>1)throw new Error("Parse Error: multiple actions possible at state: "+K+", token: "+I);switch(V[0]){case 1:k.push(I),T.push(M.yytext),t.push(M.yylloc),k.push(V[1]),I=null,pt=M.yyleng,e=M.yytext,rt=M.yylineno,ot=M.yylloc;break;case 2:if(z=this.productions_[V[1]][1],W.$=T[T.length-z],W._$={first_line:t[t.length-(z||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(z||1)].first_column,last_column:t[t.length-1].last_column},Rt&&(W._$.range=[t[t.length-(z||1)].range[0],t[t.length-1].range[1]]),lt=this.performAction.apply(W,[e,pt,rt,Y.yy,V[1],T,t].concat(Lt)),typeof lt<"u")return lt;z&&(k=k.slice(0,-1*z*2),T=T.slice(0,-1*z),t=t.slice(0,-1*z)),k.push(this.productions_[V[1]][0]),T.push(W.$),t.push(W._$),bt=X[k[k.length-2]][k[k.length-1]],k.push(bt);break;case 3:return!0}}return!0}},B=function(){var q={EOF:1,parseError:function(b,k){if(this.yy.parser)this.yy.parser.parseError(b,k);else throw new Error(b)},setInput:function(h,b){return this.yy=b||this.yy||{},this._input=h,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.offset++,this.match+=h,this.matched+=h;var b=h.match(/(?:\r\n?|\n).*/g);return b?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),h},unput:function(h){var b=h.length,k=h.split(/(?:\r\n?|\n)/g);this._input=h+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),k.length-1&&(this.yylineno-=k.length-1);var T=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:k?(k.length===s.length?this.yylloc.first_column:0)+s[s.length-k.length].length-k[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[T[0],T[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(h){this.unput(this.match.slice(h))},pastInput:function(){var h=this.matched.substr(0,this.matched.length-this.match.length);return(h.length>20?"...":"")+h.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var h=this.match;return h.length<20&&(h+=this._input.substr(0,20-h.length)),(h.substr(0,20)+(h.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var h=this.pastInput(),b=new Array(h.length+1).join("-");return h+this.upcomingInput()+` diff --git a/_nuxt/index-67a42d7d.xm4RvesR.js b/_nuxt/index-67a42d7d.k58ohfnG.js similarity index 97% rename from _nuxt/index-67a42d7d.xm4RvesR.js rename to _nuxt/index-67a42d7d.k58ohfnG.js index 2c01e5a8b2..701c07ad6f 100644 --- a/_nuxt/index-67a42d7d.xm4RvesR.js +++ b/_nuxt/index-67a42d7d.k58ohfnG.js @@ -1 +1 @@ -import{b as G,i as m,m as O,G as j,l as A}from"./layout.cBG5TzxH.js";import{i as M,u as _,s as H,a as V,b as U,p as D,c as W,d as Y,e as q,f as z,g as L,h as C}from"./edges-80f1ebb6.h90W1bSR.js";import{l as i,r as N,c as S,h as T}from"./mermaid-934d9bea.GjCu814R.js";import{c as K}from"./createText-aebacdfe.b7sMoTCr.js";var Q=4;function Z(e){return G(e,Q)}function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:I(e),edges:tt(e)};return m(e.graph())||(t.value=Z(e.graph())),t}function I(e){return O(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m(n)||(s.value=n),m(r)||(s.parent=r),s})}function tt(e){return O(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m(t.name)||(r.name=t.name),m(n)||(r.value=n),r})}let f={},g={},J={};const et=()=>{g={},J={},f={}},X=(e,t)=>(i.trace("In isDecendant",t," ",e," = ",g[t].includes(e)),!!g[t].includes(e)),nt=(e,t)=>(i.info("Decendants of ",t," is ",g[t]),i.info("Edge is ",e),e.v===t||e.w===t?!1:g[t]?g[t].includes(e.v)||X(e.v,t)||X(e.w,t)||g[t].includes(e.w):(i.debug("Tilt, ",t,",not in decendants"),!1)),R=(e,t,n,r)=>{i.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(c=>{if(t.children(c).length>0)R(c,t,n,r);else{const d=t.node(c);i.info("cp ",c," to ",r," with parent ",e),n.setNode(c,d),r!==t.parent(c)&&(i.warn("Setting parent",c,t.parent(c)),n.setParent(c,t.parent(c))),e!==r&&c!==e?(i.debug("Setting parent",c,e),n.setParent(c,e)):(i.info("In copy ",e,"root",r,"data",t.node(e),r),i.debug("Not Setting parent for node=",c,"cluster!==rootId",e!==r,"node!==clusterId",c!==e));const l=t.edges(c);i.debug("Copying Edges",l),l.forEach(u=>{i.info("Edge",u);const h=t.edge(u.v,u.w,u.name);i.info("Edge data",h,r);try{nt(u,r)?(i.info("Copying as ",u.v,u.w,h,u.name),n.setEdge(u.v,u.w,h,u.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",r," clusterId:",e)}catch(w){i.error(w)}})}i.debug("Removing node",c),t.removeNode(c)})},P=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)J[s]=e,r=[...r,...P(s,t)];return r},b=(e,t)=>{i.trace("Searching",e);const n=t.children(e);if(i.trace("Searching children of id ",e,n),n.length<1)return i.trace("This is a valid node",e),e;for(const r of n){const s=b(r,t);if(s)return i.trace("Found replacement for",e," => ",s),s}},E=e=>!f[e]||!f[e].externalConnections?e:f[e]?f[e].id:e,it=(e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",b(n,e)),g[n]=P(n,e),f[n]={id:b(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.debug("Cluster identified",n,g),s.forEach(c=>{if(c.v!==n&&c.w!==n){const d=X(c.v,n),l=X(c.w,n);d^l&&(i.warn("Edge: ",c," leaves cluster ",n),i.warn("Decendants of XXX ",n,": ",g[n]),f[n].externalConnections=!0)}})):i.debug("Not a cluster ",n,g)}),e.edges().forEach(function(n){const r=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,c=n.w;if(i.warn("Fix XXX",f,"ids:",n.v,n.w,"Translating: ",f[n.v]," --- ",f[n.w]),f[n.v]&&f[n.w]&&f[n.v]===f[n.w]){i.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=E(n.v),c=E(n.w),e.removeEdge(n.v,n.w,n.name);const d=n.w+"---"+n.v;e.setNode(d,{domId:d,id:d,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const l=structuredClone(r),u=structuredClone(r);l.label="",l.arrowTypeEnd="none",u.label="",l.fromCluster=n.v,u.toCluster=n.v,e.setEdge(s,d,l,n.name+"-cyclic-special"),e.setEdge(d,c,u,n.name+"-cyclic-special")}else(f[n.v]||f[n.w])&&(i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=E(n.v),c=E(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v&&(r.fromCluster=n.v),c!==n.w&&(r.toCluster=n.w),i.warn("Fix Replacing with XXX",s,c,n.name),e.setEdge(s,c,r,n.name))}),i.warn("Adjusted Graph",x(e)),p(e,0),i.trace(f)},p=(e,t)=>{if(i.warn("extractor - ",t,x(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const c=e.children(s);r=r||c.length>0}if(!r){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(const s of n)if(i.debug("Extracting node",s,f,f[s]&&!f[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!f[s])i.debug("Not a cluster",s,t);else if(!f[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.warn("Cluster without external connections, without a parent and with children",s,t);let d=e.graph().rankdir==="TB"?"LR":"TB";f[s]&&f[s].clusterData&&f[s].clusterData.dir&&(d=f[s].clusterData.dir,i.warn("Fixing dir",f[s].clusterData.dir,d));const l=new j({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",x(e)),R(s,e,l,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:f[s].clusterData,labelText:f[s].labelText,graph:l}),i.warn("New graph after copy node: (",s,")",x(l)),i.debug("Old graph after copy",x(e))}else i.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!f[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.debug(f);n=e.nodes(),i.warn("New list of nodes",n);for(const s of n){const c=e.node(s);i.warn(" Now next level",s,c),c.clusterNode&&p(c.graph,t+1)}},F=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),c=F(e,s);n=[...n,...c]}),n},st=e=>F(e,e.children()),rt=(e,t)=>{i.info("Creating subgraph rect for ",t.id,t);const n=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),r=n.insert("rect",":first-child"),s=N(S().flowchart.htmlLabels),c=n.insert("g").attr("class","cluster-label"),d=t.labelType==="markdown"?K(c,t.labelText,{style:t.labelStyle,useHtmlLabels:s}):c.node().appendChild(L(t.labelText,t.labelStyle,void 0,!0));let l=d.getBBox();if(N(S().flowchart.htmlLabels)){const a=d.children[0],o=T(d);l=a.getBoundingClientRect(),o.attr("width",l.width),o.attr("height",l.height)}const u=0*t.padding,h=u/2,w=t.width<=l.width+u?l.width+u:t.width;t.width<=l.width+u?t.diff=(l.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.trace("Data ",t,JSON.stringify(t)),r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-w/2).attr("y",t.y-t.height/2-h).attr("width",w).attr("height",t.height+u),s?c.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2)+")"):c.attr("transform","translate("+t.x+", "+(t.y-t.height/2)+")");const v=r.node().getBBox();return t.width=v.width,t.height=v.height,t.intersect=function(a){return C(t,a)},n},at=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,c=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-c).attr("y",t.y-t.height/2-c).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const d=r.node().getBBox();return t.width=d.width,t.height=d.height,t.intersect=function(l){return C(t,l)},n},ct=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=n.insert("g").attr("class","cluster-label"),c=n.append("rect"),d=s.node().appendChild(L(t.labelText,t.labelStyle,void 0,!0));let l=d.getBBox();if(N(S().flowchart.htmlLabels)){const a=d.children[0],o=T(d);l=a.getBoundingClientRect(),o.attr("width",l.width),o.attr("height",l.height)}l=d.getBBox();const u=0*t.padding,h=u/2,w=t.width<=l.width+t.padding?l.width+t.padding:t.width;t.width<=l.width+t.padding?t.diff=(l.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,r.attr("class","outer").attr("x",t.x-w/2-h).attr("y",t.y-t.height/2-h).attr("width",w+u).attr("height",t.height+u),c.attr("class","inner").attr("x",t.x-w/2-h).attr("y",t.y-t.height/2-h+l.height-1).attr("width",w+u).attr("height",t.height+u-l.height-3),s.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2-t.padding/3+(N(S().flowchart.htmlLabels)?5:3))+")");const v=r.node().getBBox();return t.height=v.height,t.intersect=function(a){return C(t,a)},n},ot=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,c=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-c).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const d=r.node().getBBox();return t.width=d.width,t.height=d.height,t.diff=-t.padding/2,t.intersect=function(l){return C(t,l)},n},lt={rect:rt,roundedWithTitle:ct,noteGroup:at,divider:ot};let k={};const ft=(e,t)=>{i.trace("Inserting cluster");const n=t.shape||"rect";k[t.id]=lt[n](e,t)},dt=()=>{k={}},$=async(e,t,n,r,s)=>{i.info("Graph in recursive render: XXX",x(t),s);const c=t.graph().rankdir;i.trace("Dir in recursive render - dir:",c);const d=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.trace("Recursive edges",t.edge(t.edges()[0]));const l=d.insert("g").attr("class","clusters"),u=d.insert("g").attr("class","edgePaths"),h=d.insert("g").attr("class","edgeLabels"),w=d.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(a){const o=t.node(a);if(s!==void 0){const y=JSON.parse(JSON.stringify(s.clusterData));i.info("Setting data for cluster XXX (",a,") ",y,s),t.setNode(s.id,y),t.parent(a)||(i.trace("Setting parent",a,s.id),t.setParent(a,s.id,y))}if(i.info("(Insert) Node XXX"+a+": "+JSON.stringify(t.node(a))),o&&o.clusterNode){i.info("Cluster identified",a,o.width,t.node(a));const y=await $(w,o.graph,n,r,t.node(a)),B=y.elem;_(o,B),o.diff=y.diff||0,i.info("Node bounds (abc123)",a,o,o.width,o.x,o.y),H(B,o),i.warn("Recursive render complete ",B,o)}else t.children(a).length>0?(i.info("Cluster - the non recursive path XXX",a,o.id,o,t),i.info(b(o.id,t)),f[o.id]={id:b(o.id,t),node:o}):(i.info("Node - the non recursive path",a,o.id,o),await V(w,t.node(a),c))})),t.edges().forEach(function(a){const o=t.edge(a.v,a.w,a.name);i.info("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(a)),i.info("Edge "+a.v+" -> "+a.w+": ",a," ",JSON.stringify(t.edge(a))),i.info("Fix",f,"ids:",a.v,a.w,"Translateing: ",f[a.v],f[a.w]),U(h,o)}),t.edges().forEach(function(a){i.info("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(a))}),i.info("#############################################"),i.info("### Layout ###"),i.info("#############################################"),i.info(t),A(t),i.info("Graph after layout:",x(t));let v=0;return st(t).forEach(function(a){const o=t.node(a);i.info("Position "+a+": "+JSON.stringify(t.node(a))),i.info("Position "+a+": ("+o.x,","+o.y,") width: ",o.width," height: ",o.height),o&&o.clusterNode?D(o):t.children(a).length>0?(ft(l,o),f[o.id].node=o):D(o)}),t.edges().forEach(function(a){const o=t.edge(a);i.info("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(o),o);const y=W(u,a,o,f,n,t,r);Y(o,y)}),t.nodes().forEach(function(a){const o=t.node(a);i.info(a,o.type,o.diff),o.type==="group"&&(v=o.diff)}),{elem:d,diff:v}},xt=async(e,t,n,r,s)=>{M(e,n,r,s),q(),z(),dt(),et(),i.warn("Graph at first:",JSON.stringify(x(t))),it(t),i.warn("Graph after:",JSON.stringify(x(t))),await $(e,t,r,s)};export{xt as r}; +import{b as G,i as m,m as O,G as j,l as A}from"./layout.v3y_H6P2.js";import{i as M,u as _,s as H,a as V,b as U,p as D,c as W,d as Y,e as q,f as z,g as L,h as C}from"./edges-80f1ebb6.gtortKGL.js";import{l as i,r as N,c as S,h as T}from"./mermaid-934d9bea.JP-6_YN_.js";import{c as K}from"./createText-aebacdfe.QPUQ3eAz.js";var Q=4;function Z(e){return G(e,Q)}function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:I(e),edges:tt(e)};return m(e.graph())||(t.value=Z(e.graph())),t}function I(e){return O(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m(n)||(s.value=n),m(r)||(s.parent=r),s})}function tt(e){return O(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m(t.name)||(r.name=t.name),m(n)||(r.value=n),r})}let f={},g={},J={};const et=()=>{g={},J={},f={}},X=(e,t)=>(i.trace("In isDecendant",t," ",e," = ",g[t].includes(e)),!!g[t].includes(e)),nt=(e,t)=>(i.info("Decendants of ",t," is ",g[t]),i.info("Edge is ",e),e.v===t||e.w===t?!1:g[t]?g[t].includes(e.v)||X(e.v,t)||X(e.w,t)||g[t].includes(e.w):(i.debug("Tilt, ",t,",not in decendants"),!1)),R=(e,t,n,r)=>{i.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(c=>{if(t.children(c).length>0)R(c,t,n,r);else{const d=t.node(c);i.info("cp ",c," to ",r," with parent ",e),n.setNode(c,d),r!==t.parent(c)&&(i.warn("Setting parent",c,t.parent(c)),n.setParent(c,t.parent(c))),e!==r&&c!==e?(i.debug("Setting parent",c,e),n.setParent(c,e)):(i.info("In copy ",e,"root",r,"data",t.node(e),r),i.debug("Not Setting parent for node=",c,"cluster!==rootId",e!==r,"node!==clusterId",c!==e));const l=t.edges(c);i.debug("Copying Edges",l),l.forEach(u=>{i.info("Edge",u);const h=t.edge(u.v,u.w,u.name);i.info("Edge data",h,r);try{nt(u,r)?(i.info("Copying as ",u.v,u.w,h,u.name),n.setEdge(u.v,u.w,h,u.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",r," clusterId:",e)}catch(w){i.error(w)}})}i.debug("Removing node",c),t.removeNode(c)})},P=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)J[s]=e,r=[...r,...P(s,t)];return r},b=(e,t)=>{i.trace("Searching",e);const n=t.children(e);if(i.trace("Searching children of id ",e,n),n.length<1)return i.trace("This is a valid node",e),e;for(const r of n){const s=b(r,t);if(s)return i.trace("Found replacement for",e," => ",s),s}},E=e=>!f[e]||!f[e].externalConnections?e:f[e]?f[e].id:e,it=(e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",b(n,e)),g[n]=P(n,e),f[n]={id:b(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.debug("Cluster identified",n,g),s.forEach(c=>{if(c.v!==n&&c.w!==n){const d=X(c.v,n),l=X(c.w,n);d^l&&(i.warn("Edge: ",c," leaves cluster ",n),i.warn("Decendants of XXX ",n,": ",g[n]),f[n].externalConnections=!0)}})):i.debug("Not a cluster ",n,g)}),e.edges().forEach(function(n){const r=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,c=n.w;if(i.warn("Fix XXX",f,"ids:",n.v,n.w,"Translating: ",f[n.v]," --- ",f[n.w]),f[n.v]&&f[n.w]&&f[n.v]===f[n.w]){i.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=E(n.v),c=E(n.w),e.removeEdge(n.v,n.w,n.name);const d=n.w+"---"+n.v;e.setNode(d,{domId:d,id:d,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const l=structuredClone(r),u=structuredClone(r);l.label="",l.arrowTypeEnd="none",u.label="",l.fromCluster=n.v,u.toCluster=n.v,e.setEdge(s,d,l,n.name+"-cyclic-special"),e.setEdge(d,c,u,n.name+"-cyclic-special")}else(f[n.v]||f[n.w])&&(i.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=E(n.v),c=E(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v&&(r.fromCluster=n.v),c!==n.w&&(r.toCluster=n.w),i.warn("Fix Replacing with XXX",s,c,n.name),e.setEdge(s,c,r,n.name))}),i.warn("Adjusted Graph",x(e)),p(e,0),i.trace(f)},p=(e,t)=>{if(i.warn("extractor - ",t,x(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const c=e.children(s);r=r||c.length>0}if(!r){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(const s of n)if(i.debug("Extracting node",s,f,f[s]&&!f[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!f[s])i.debug("Not a cluster",s,t);else if(!f[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.warn("Cluster without external connections, without a parent and with children",s,t);let d=e.graph().rankdir==="TB"?"LR":"TB";f[s]&&f[s].clusterData&&f[s].clusterData.dir&&(d=f[s].clusterData.dir,i.warn("Fixing dir",f[s].clusterData.dir,d));const l=new j({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",x(e)),R(s,e,l,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:f[s].clusterData,labelText:f[s].labelText,graph:l}),i.warn("New graph after copy node: (",s,")",x(l)),i.debug("Old graph after copy",x(e))}else i.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!f[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.debug(f);n=e.nodes(),i.warn("New list of nodes",n);for(const s of n){const c=e.node(s);i.warn(" Now next level",s,c),c.clusterNode&&p(c.graph,t+1)}},F=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),c=F(e,s);n=[...n,...c]}),n},st=e=>F(e,e.children()),rt=(e,t)=>{i.info("Creating subgraph rect for ",t.id,t);const n=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),r=n.insert("rect",":first-child"),s=N(S().flowchart.htmlLabels),c=n.insert("g").attr("class","cluster-label"),d=t.labelType==="markdown"?K(c,t.labelText,{style:t.labelStyle,useHtmlLabels:s}):c.node().appendChild(L(t.labelText,t.labelStyle,void 0,!0));let l=d.getBBox();if(N(S().flowchart.htmlLabels)){const a=d.children[0],o=T(d);l=a.getBoundingClientRect(),o.attr("width",l.width),o.attr("height",l.height)}const u=0*t.padding,h=u/2,w=t.width<=l.width+u?l.width+u:t.width;t.width<=l.width+u?t.diff=(l.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.trace("Data ",t,JSON.stringify(t)),r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-w/2).attr("y",t.y-t.height/2-h).attr("width",w).attr("height",t.height+u),s?c.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2)+")"):c.attr("transform","translate("+t.x+", "+(t.y-t.height/2)+")");const v=r.node().getBBox();return t.width=v.width,t.height=v.height,t.intersect=function(a){return C(t,a)},n},at=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,c=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-c).attr("y",t.y-t.height/2-c).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const d=r.node().getBBox();return t.width=d.width,t.height=d.height,t.intersect=function(l){return C(t,l)},n},ct=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=n.insert("g").attr("class","cluster-label"),c=n.append("rect"),d=s.node().appendChild(L(t.labelText,t.labelStyle,void 0,!0));let l=d.getBBox();if(N(S().flowchart.htmlLabels)){const a=d.children[0],o=T(d);l=a.getBoundingClientRect(),o.attr("width",l.width),o.attr("height",l.height)}l=d.getBBox();const u=0*t.padding,h=u/2,w=t.width<=l.width+t.padding?l.width+t.padding:t.width;t.width<=l.width+t.padding?t.diff=(l.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,r.attr("class","outer").attr("x",t.x-w/2-h).attr("y",t.y-t.height/2-h).attr("width",w+u).attr("height",t.height+u),c.attr("class","inner").attr("x",t.x-w/2-h).attr("y",t.y-t.height/2-h+l.height-1).attr("width",w+u).attr("height",t.height+u-l.height-3),s.attr("transform","translate("+(t.x-l.width/2)+", "+(t.y-t.height/2-t.padding/3+(N(S().flowchart.htmlLabels)?5:3))+")");const v=r.node().getBBox();return t.height=v.height,t.intersect=function(a){return C(t,a)},n},ot=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,c=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-c).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const d=r.node().getBBox();return t.width=d.width,t.height=d.height,t.diff=-t.padding/2,t.intersect=function(l){return C(t,l)},n},lt={rect:rt,roundedWithTitle:ct,noteGroup:at,divider:ot};let k={};const ft=(e,t)=>{i.trace("Inserting cluster");const n=t.shape||"rect";k[t.id]=lt[n](e,t)},dt=()=>{k={}},$=async(e,t,n,r,s)=>{i.info("Graph in recursive render: XXX",x(t),s);const c=t.graph().rankdir;i.trace("Dir in recursive render - dir:",c);const d=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.trace("Recursive edges",t.edge(t.edges()[0]));const l=d.insert("g").attr("class","clusters"),u=d.insert("g").attr("class","edgePaths"),h=d.insert("g").attr("class","edgeLabels"),w=d.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(a){const o=t.node(a);if(s!==void 0){const y=JSON.parse(JSON.stringify(s.clusterData));i.info("Setting data for cluster XXX (",a,") ",y,s),t.setNode(s.id,y),t.parent(a)||(i.trace("Setting parent",a,s.id),t.setParent(a,s.id,y))}if(i.info("(Insert) Node XXX"+a+": "+JSON.stringify(t.node(a))),o&&o.clusterNode){i.info("Cluster identified",a,o.width,t.node(a));const y=await $(w,o.graph,n,r,t.node(a)),B=y.elem;_(o,B),o.diff=y.diff||0,i.info("Node bounds (abc123)",a,o,o.width,o.x,o.y),H(B,o),i.warn("Recursive render complete ",B,o)}else t.children(a).length>0?(i.info("Cluster - the non recursive path XXX",a,o.id,o,t),i.info(b(o.id,t)),f[o.id]={id:b(o.id,t),node:o}):(i.info("Node - the non recursive path",a,o.id,o),await V(w,t.node(a),c))})),t.edges().forEach(function(a){const o=t.edge(a.v,a.w,a.name);i.info("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(a)),i.info("Edge "+a.v+" -> "+a.w+": ",a," ",JSON.stringify(t.edge(a))),i.info("Fix",f,"ids:",a.v,a.w,"Translateing: ",f[a.v],f[a.w]),U(h,o)}),t.edges().forEach(function(a){i.info("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(a))}),i.info("#############################################"),i.info("### Layout ###"),i.info("#############################################"),i.info(t),A(t),i.info("Graph after layout:",x(t));let v=0;return st(t).forEach(function(a){const o=t.node(a);i.info("Position "+a+": "+JSON.stringify(t.node(a))),i.info("Position "+a+": ("+o.x,","+o.y,") width: ",o.width," height: ",o.height),o&&o.clusterNode?D(o):t.children(a).length>0?(ft(l,o),f[o.id].node=o):D(o)}),t.edges().forEach(function(a){const o=t.edge(a);i.info("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(o),o);const y=W(u,a,o,f,n,t,r);Y(o,y)}),t.nodes().forEach(function(a){const o=t.node(a);i.info(a,o.type,o.diff),o.type==="group"&&(v=o.diff)}),{elem:d,diff:v}},xt=async(e,t,n,r,s)=>{M(e,n,r,s),q(),z(),dt(),et(),i.warn("Graph at first:",JSON.stringify(x(t))),it(t),i.warn("Graph after:",JSON.stringify(x(t))),await $(e,t,r,s)};export{xt as r}; diff --git a/_nuxt/index.devlPsl3.js b/_nuxt/index.OaNwcZ7q.js similarity index 89% rename from _nuxt/index.devlPsl3.js rename to _nuxt/index.OaNwcZ7q.js index d787d69833..fa01747dab 100644 --- a/_nuxt/index.devlPsl3.js +++ b/_nuxt/index.OaNwcZ7q.js @@ -1 +1 @@ -import{a6 as a,am as f,a9 as c,as as u,r as i,at as p,au as l}from"./entry.TEDHt2QA.js";function m(e){return p()?(l(e),!0):!1}function S(){const e=new Set,o=t=>{e.delete(t)};return{on:t=>{e.add(t);const n=()=>o(t);return m(n),{off:n}},off:o,trigger:(...t)=>Promise.all(Array.from(e).map(n=>n(...t)))}}typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const d=()=>{};function y(...e){if(e.length!==1)return f(...e);const o=e[0];return typeof o=="function"?c(u(()=>({get:o,set:d}))):i(o)}function h(e,o,s){return a(e,(r,t,n)=>{r&&o(r,t,n)},s)}export{S as c,y as t,h as w}; +import{a6 as a,am as f,a9 as c,as as u,r as i,at as p,au as l}from"./entry.2w2g1VWZ.js";function m(e){return p()?(l(e),!0):!1}function S(){const e=new Set,o=t=>{e.delete(t)};return{on:t=>{e.add(t);const n=()=>o(t);return m(n),{off:n}},off:o,trigger:(...t)=>Promise.all(Array.from(e).map(n=>n(...t)))}}typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const d=()=>{};function y(...e){if(e.length!==1)return f(...e);const o=e[0];return typeof o=="function"?c(u(()=>({get:o,set:d}))):i(o)}function h(e,o,s){return a(e,(r,t,n)=>{r&&o(r,t,n)},s)}export{S as c,y as t,h as w}; diff --git a/_nuxt/index.esm.Trgrr3QY.js b/_nuxt/index.esm.VSbdGIoo.js similarity index 99% rename from _nuxt/index.esm.Trgrr3QY.js rename to _nuxt/index.esm.VSbdGIoo.js index d66ceac29d..4a1d1446e3 100644 --- a/_nuxt/index.esm.Trgrr3QY.js +++ b/_nuxt/index.esm.VSbdGIoo.js @@ -1,4 +1,4 @@ -import{K as T,a5 as w,L as k,o as Gt,U as Ht,Z as ze,a6 as Ee,a7 as Or,r as ie,a8 as Le,B as le,a9 as Er,aa as wr,I as Fr,ab as He,ac as Sr}from"./entry.TEDHt2QA.js";import{g as Ar}from"./_commonjsHelpers.5-cIlDoe.js";/** +import{K as T,a5 as w,L as k,o as Gt,U as Ht,Z as ze,a6 as Ee,a7 as Or,r as ie,a8 as Le,B as le,a9 as Er,aa as wr,I as Fr,ab as He,ac as Sr}from"./entry.2w2g1VWZ.js";import{g as Ar}from"./_commonjsHelpers.5-cIlDoe.js";/** * vee-validate v4.12.4 * (c) 2023 Abdelrahman Awad * @license MIT diff --git a/_nuxt/infoDiagram-a336098b.Wd5ZJWUl.js b/_nuxt/infoDiagram-a336098b.RVDuPuO8.js similarity index 98% rename from _nuxt/infoDiagram-a336098b.Wd5ZJWUl.js rename to _nuxt/infoDiagram-a336098b.RVDuPuO8.js index 6c18c6f369..fb7cae31ea 100644 --- a/_nuxt/infoDiagram-a336098b.Wd5ZJWUl.js +++ b/_nuxt/infoDiagram-a336098b.RVDuPuO8.js @@ -1,4 +1,4 @@ -import{l as Y,aI as D,i as M}from"./mermaid-934d9bea.GjCu814R.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";var O=function(){var a=function(u,t,e,n){for(e=e||{},n=u.length;n--;e[u[n]]=t);return e},f=[6,9,10],m={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(t,e,n,s,r,i,d){switch(i.length-1,r){case 1:return s;case 4:break;case 6:s.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},a(f,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},a(f,[2,3]),a(f,[2,4]),a(f,[2,5]),a(f,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(e.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=e,n}},parse:function(t){var e=this,n=[0],s=[],r=[null],i=[],d=this.table,P="",v=0,L=0,N=2,T=1,R=i.slice.call(arguments,1),o=Object.create(this.lexer),p={yy:{}};for(var E in this.yy)Object.prototype.hasOwnProperty.call(this.yy,E)&&(p.yy[E]=this.yy[E]);o.setInput(t,p.yy),p.yy.lexer=o,p.yy.parser=this,typeof o.yylloc>"u"&&(o.yylloc={});var I=o.yylloc;i.push(I);var z=o.options&&o.options.ranges;typeof p.yy.parseError=="function"?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function U(){var y;return y=s.pop()||o.lex()||T,typeof y!="number"&&(y instanceof Array&&(s=y,y=s.pop()),y=e.symbols_[y]||y),y}for(var l,g,h,w,_={},b,c,F,S;;){if(g=n[n.length-1],this.defaultActions[g]?h=this.defaultActions[g]:((l===null||typeof l>"u")&&(l=U()),h=d[g]&&d[g][l]),typeof h>"u"||!h.length||!h[0]){var A="";S=[];for(b in d[g])this.terminals_[b]&&b>N&&S.push("'"+this.terminals_[b]+"'");o.showPosition?A="Parse error on line "+(v+1)+`: +import{l as Y,aI as D,i as M}from"./mermaid-934d9bea.JP-6_YN_.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";var O=function(){var a=function(u,t,e,n){for(e=e||{},n=u.length;n--;e[u[n]]=t);return e},f=[6,9,10],m={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(t,e,n,s,r,i,d){switch(i.length-1,r){case 1:return s;case 4:break;case 6:s.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},a(f,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},a(f,[2,3]),a(f,[2,4]),a(f,[2,5]),a(f,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(e.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=e,n}},parse:function(t){var e=this,n=[0],s=[],r=[null],i=[],d=this.table,P="",v=0,L=0,N=2,T=1,R=i.slice.call(arguments,1),o=Object.create(this.lexer),p={yy:{}};for(var E in this.yy)Object.prototype.hasOwnProperty.call(this.yy,E)&&(p.yy[E]=this.yy[E]);o.setInput(t,p.yy),p.yy.lexer=o,p.yy.parser=this,typeof o.yylloc>"u"&&(o.yylloc={});var I=o.yylloc;i.push(I);var z=o.options&&o.options.ranges;typeof p.yy.parseError=="function"?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function U(){var y;return y=s.pop()||o.lex()||T,typeof y!="number"&&(y instanceof Array&&(s=y,y=s.pop()),y=e.symbols_[y]||y),y}for(var l,g,h,w,_={},b,c,F,S;;){if(g=n[n.length-1],this.defaultActions[g]?h=this.defaultActions[g]:((l===null||typeof l>"u")&&(l=U()),h=d[g]&&d[g][l]),typeof h>"u"||!h.length||!h[0]){var A="";S=[];for(b in d[g])this.terminals_[b]&&b>N&&S.push("'"+this.terminals_[b]+"'");o.showPosition?A="Parse error on line "+(v+1)+`: `+o.showPosition()+` Expecting `+S.join(", ")+", got '"+(this.terminals_[l]||l)+"'":A="Parse error on line "+(v+1)+": Unexpected "+(l==T?"end of input":"'"+(this.terminals_[l]||l)+"'"),this.parseError(A,{text:o.match,token:this.terminals_[l]||l,line:o.yylineno,loc:I,expected:S})}if(h[0]instanceof Array&&h.length>1)throw new Error("Parse Error: multiple actions possible at state: "+g+", token: "+l);switch(h[0]){case 1:n.push(l),r.push(o.yytext),i.push(o.yylloc),n.push(h[1]),l=null,L=o.yyleng,P=o.yytext,v=o.yylineno,I=o.yylloc;break;case 2:if(c=this.productions_[h[1]][1],_.$=r[r.length-c],_._$={first_line:i[i.length-(c||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(c||1)].first_column,last_column:i[i.length-1].last_column},z&&(_._$.range=[i[i.length-(c||1)].range[0],i[i.length-1].range[1]]),w=this.performAction.apply(_,[P,L,v,p.yy,h[1],r,i].concat(R)),typeof w<"u")return w;c&&(n=n.slice(0,-1*c*2),r=r.slice(0,-1*c),i=i.slice(0,-1*c)),n.push(this.productions_[h[1]][0]),r.push(_.$),i.push(_._$),F=d[n[n.length-2]][n[n.length-1]],n.push(F);break;case 3:return!0}}return!0}},k=function(){var u={EOF:1,parseError:function(e,n){if(this.yy.parser)this.yy.parser.parseError(e,n);else throw new Error(e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===s.length?this.yylloc.first_column:0)+s[s.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+` diff --git a/_nuxt/journeyDiagram-deae3313.TSLs3n0V.js b/_nuxt/journeyDiagram-deae3313.2mgkPFCP.js similarity index 98% rename from _nuxt/journeyDiagram-deae3313.TSLs3n0V.js rename to _nuxt/journeyDiagram-deae3313.2mgkPFCP.js index 671eb39a48..b6ae15c774 100644 --- a/_nuxt/journeyDiagram-deae3313.TSLs3n0V.js +++ b/_nuxt/journeyDiagram-deae3313.2mgkPFCP.js @@ -1,4 +1,4 @@ -import{c as A,x as yt,y as ft,s as dt,g as pt,b as gt,a as mt,A as xt,h as W,i as kt}from"./mermaid-934d9bea.GjCu814R.js";import{d as _t,f as bt,a as vt,g as it}from"./svgDrawCommon-ad5ef572.up_fh1Ps.js";import{a as Q}from"./arc.flIDfKC7.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./path.aUcfwwLI.js";var G=function(){var t=function(p,s,r,a){for(r=r||{},a=p.length;a--;r[p[a]]=s);return r},e=[6,8,10,11,12,14,16,17,18],i=[1,9],l=[1,10],n=[1,11],h=[1,12],c=[1,13],f=[1,14],y={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:function(s,r,a,u,d,o,w){var k=o.length-1;switch(d){case 1:return o[k-1];case 2:this.$=[];break;case 3:o[k-1].push(o[k]),this.$=o[k-1];break;case 4:case 5:this.$=o[k];break;case 6:case 7:this.$=[];break;case 8:u.setDiagramTitle(o[k].substr(6)),this.$=o[k].substr(6);break;case 9:this.$=o[k].trim(),u.setAccTitle(this.$);break;case 10:case 11:this.$=o[k].trim(),u.setAccDescription(this.$);break;case 12:u.addSection(o[k].substr(8)),this.$=o[k].substr(8);break;case 13:u.addTask(o[k-1],o[k]),this.$="task";break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:i,12:l,14:n,16:h,17:c,18:f},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:i,12:l,14:n,16:h,17:c,18:f},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:function(s,r){if(r.recoverable)this.trace(s);else{var a=new Error(s);throw a.hash=r,a}},parse:function(s){var r=this,a=[0],u=[],d=[null],o=[],w=this.table,k="",R=0,Z=0,lt=2,J=1,ct=o.slice.call(arguments,1),x=Object.create(this.lexer),S={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&(S.yy[z]=this.yy[z]);x.setInput(s,S.yy),S.yy.lexer=x,S.yy.parser=this,typeof x.yylloc>"u"&&(x.yylloc={});var Y=x.yylloc;o.push(Y);var ht=x.options&&x.options.ranges;typeof S.yy.parseError=="function"?this.parseError=S.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ut(){var T;return T=u.pop()||x.lex()||J,typeof T!="number"&&(T instanceof Array&&(u=T,T=u.pop()),T=r.symbols_[T]||T),T}for(var _,E,b,O,I={},N,$,K,B;;){if(E=a[a.length-1],this.defaultActions[E]?b=this.defaultActions[E]:((_===null||typeof _>"u")&&(_=ut()),b=w[E]&&w[E][_]),typeof b>"u"||!b.length||!b[0]){var q="";B=[];for(N in w[E])this.terminals_[N]&&N>lt&&B.push("'"+this.terminals_[N]+"'");x.showPosition?q="Parse error on line "+(R+1)+`: +import{c as A,x as yt,y as ft,s as dt,g as pt,b as gt,a as mt,A as xt,h as W,i as kt}from"./mermaid-934d9bea.JP-6_YN_.js";import{d as _t,f as bt,a as vt,g as it}from"./svgDrawCommon-ad5ef572.X8xX495e.js";import{a as Q}from"./arc.kghs0U58.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./path.aUcfwwLI.js";var G=function(){var t=function(p,s,r,a){for(r=r||{},a=p.length;a--;r[p[a]]=s);return r},e=[6,8,10,11,12,14,16,17,18],i=[1,9],l=[1,10],n=[1,11],h=[1,12],c=[1,13],f=[1,14],y={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:function(s,r,a,u,d,o,w){var k=o.length-1;switch(d){case 1:return o[k-1];case 2:this.$=[];break;case 3:o[k-1].push(o[k]),this.$=o[k-1];break;case 4:case 5:this.$=o[k];break;case 6:case 7:this.$=[];break;case 8:u.setDiagramTitle(o[k].substr(6)),this.$=o[k].substr(6);break;case 9:this.$=o[k].trim(),u.setAccTitle(this.$);break;case 10:case 11:this.$=o[k].trim(),u.setAccDescription(this.$);break;case 12:u.addSection(o[k].substr(8)),this.$=o[k].substr(8);break;case 13:u.addTask(o[k-1],o[k]),this.$="task";break}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:i,12:l,14:n,16:h,17:c,18:f},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:i,12:l,14:n,16:h,17:c,18:f},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:function(s,r){if(r.recoverable)this.trace(s);else{var a=new Error(s);throw a.hash=r,a}},parse:function(s){var r=this,a=[0],u=[],d=[null],o=[],w=this.table,k="",R=0,Z=0,lt=2,J=1,ct=o.slice.call(arguments,1),x=Object.create(this.lexer),S={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&(S.yy[z]=this.yy[z]);x.setInput(s,S.yy),S.yy.lexer=x,S.yy.parser=this,typeof x.yylloc>"u"&&(x.yylloc={});var Y=x.yylloc;o.push(Y);var ht=x.options&&x.options.ranges;typeof S.yy.parseError=="function"?this.parseError=S.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ut(){var T;return T=u.pop()||x.lex()||J,typeof T!="number"&&(T instanceof Array&&(u=T,T=u.pop()),T=r.symbols_[T]||T),T}for(var _,E,b,O,I={},N,$,K,B;;){if(E=a[a.length-1],this.defaultActions[E]?b=this.defaultActions[E]:((_===null||typeof _>"u")&&(_=ut()),b=w[E]&&w[E][_]),typeof b>"u"||!b.length||!b[0]){var q="";B=[];for(N in w[E])this.terminals_[N]&&N>lt&&B.push("'"+this.terminals_[N]+"'");x.showPosition?q="Parse error on line "+(R+1)+`: `+x.showPosition()+` Expecting `+B.join(", ")+", got '"+(this.terminals_[_]||_)+"'":q="Parse error on line "+(R+1)+": Unexpected "+(_==J?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(q,{text:x.match,token:this.terminals_[_]||_,line:x.yylineno,loc:Y,expected:B})}if(b[0]instanceof Array&&b.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+_);switch(b[0]){case 1:a.push(_),d.push(x.yytext),o.push(x.yylloc),a.push(b[1]),_=null,Z=x.yyleng,k=x.yytext,R=x.yylineno,Y=x.yylloc;break;case 2:if($=this.productions_[b[1]][1],I.$=d[d.length-$],I._$={first_line:o[o.length-($||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-($||1)].first_column,last_column:o[o.length-1].last_column},ht&&(I._$.range=[o[o.length-($||1)].range[0],o[o.length-1].range[1]]),O=this.performAction.apply(I,[k,Z,R,S.yy,b[1],d,o].concat(ct)),typeof O<"u")return O;$&&(a=a.slice(0,-1*$*2),d=d.slice(0,-1*$),o=o.slice(0,-1*$)),a.push(this.productions_[b[1]][0]),d.push(I.$),o.push(I._$),K=w[a[a.length-2]][a[a.length-1]],a.push(K);break;case 3:return!0}}return!0}},m=function(){var p={EOF:1,parseError:function(r,a){if(this.yy.parser)this.yy.parser.parseError(r,a);else throw new Error(r)},setInput:function(s,r){return this.yy=r||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var r=s.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},unput:function(s){var r=s.length,a=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var d=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===u.length?this.yylloc.first_column:0)+u[u.length-a.length].length-a[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[d[0],d[0]+this.yyleng-r]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(s){this.unput(this.match.slice(s))},pastInput:function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var s=this.pastInput(),r=new Array(s.length+1).join("-");return s+this.upcomingInput()+` diff --git a/_nuxt/layout.cBG5TzxH.js b/_nuxt/layout.v3y_H6P2.js similarity index 99% rename from _nuxt/layout.cBG5TzxH.js rename to _nuxt/layout.v3y_H6P2.js index 040369dd11..84d567641c 100644 --- a/_nuxt/layout.cBG5TzxH.js +++ b/_nuxt/layout.v3y_H6P2.js @@ -1 +1 @@ -import{B as H,C as fr,S as O,D as x,E as F,F as fn,G as dr,H as cr,I as hr,J as Te,K as lr,L as vr,M as dn,N as X,O as gr,P as Le,Q as pr,R as q,T as an,U as Cn,V as br,W as Ln,X as wr,Y as mr,Z as U,_ as In,$ as _r,a0 as Ae,a1 as Kn,a2 as Er,a3 as yr,a4 as Ne,a5 as V,a6 as Oe,a7 as xr,a8 as Pn,a9 as on,aa as Tr,ab as bn,ac as Lr,ad as B,ae as Xn,af as Vn,ag as An}from"./mermaid-934d9bea.GjCu814R.js";var Ar="[object Symbol]";function $(n){return typeof n=="symbol"||H(n)&&fr(n)==Ar}function M(n,e){for(var r=-1,t=n==null?0:n.length,i=Array(t);++r-1}function T(n){return fn(n)?dr(n):cr(n)}var qr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Wr=/^\w*$/;function $n(n,e){if(x(n))return!1;var r=typeof n;return r=="number"||r=="symbol"||r=="boolean"||n==null||$(n)?!0:Wr.test(n)||!qr.test(n)||e!=null&&n in Object(e)}var jr=500;function Kr(n){var e=hr(n,function(t){return r.size===jr&&r.clear(),t}),r=e.cache;return e}var Xr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Vr=/\\(\\)?/g,Zr=Kr(function(n){var e=[];return n.charCodeAt(0)===46&&e.push(""),n.replace(Xr,function(r,t,i,a){e.push(i?a.replace(Vr,"$1"):t||r)}),e});function $e(n){return n==null?"":Ce(n)}function cn(n,e){return x(n)?n:$n(n,e)?[n]:Zr($e(n))}var Jr=1/0;function Z(n){if(typeof n=="string"||$(n))return n;var e=n+"";return e=="0"&&1/n==-Jr?"-0":e}function hn(n,e){e=cn(e,n);for(var r=0,t=e.length;n!=null&&r0&&r(u)?e>1?ln(u,e-1,r,t,i):Sn(i,u):t||(i[i.length]=u)}return i}function G(n){var e=n==null?0:n.length;return e?ln(n,1):[]}function nt(n){return lr(vr(n,void 0,G),n+"")}function et(n,e,r,t){var i=-1,a=n==null?0:n.length;for(t&&a&&(r=n[++i]);++iu))return!1;var f=a.get(n),d=a.get(e);if(f&&d)return f==e&&d==n;var h=-1,l=!0,g=r&xi?new W:void 0;for(a.set(n,e),a.set(e,n);++h2?e[2]:void 0;for(i&&on(e[0],e[1],i)&&(t=1);++r-1?i[a?e[o]:o]:void 0}}var ha=Math.max;function la(n,e,r){var t=n==null?0:n.length;if(!t)return-1;var i=r==null?0:Gr(r);return i<0&&(i=ha(t+i,0)),Pe(n,C(e),i)}var kn=ca(la);function Ke(n,e){var r=-1,t=fn(n)?Array(n.length):[];return vn(n,function(i,a,o){t[++r]=e(i,a,o)}),t}function E(n,e){var r=x(n)?M:Ke;return r(n,C(e))}function va(n,e){return n==null?n:Oe(n,Gn(e),X)}function ga(n,e){return n&&Dn(n,Gn(e))}function pa(n,e){return n>e}var ba=Object.prototype,wa=ba.hasOwnProperty;function ma(n,e){return n!=null&&wa.call(n,e)}function b(n,e){return n!=null&&qe(n,e,ma)}function _a(n,e){return M(e,function(r){return n[r]})}function N(n){return n==null?[]:_a(n,T(n))}function y(n){return n===void 0}function Xe(n,e){return ne||a&&o&&s&&!u&&!f||t&&o&&s||!r&&s||!i)return 1;if(!t&&!a&&!f&&n=u)return s;var f=r[t];return s*(f=="desc"?-1:1)}}return n.index-e.index}function Aa(n,e,r){e.length?e=M(e,function(a){return x(a)?function(o){return hn(o,a.length===1?a[0]:a)}:a}):e=[V];var t=-1;e=M(e,Cn(C));var i=Ke(n,function(a,o,u){var s=M(e,function(f){return f(a)});return{criteria:s,index:++t,value:a}});return xa(i,function(a,o){return La(a,o,r)})}function Na(n,e){return ya(n,e,function(r,t){return We(n,t)})}var sn=nt(function(n,e){return n==null?{}:Na(n,e)}),Oa=Math.ceil,Ca=Math.max;function Ia(n,e,r,t){for(var i=-1,a=Ca(Oa((e-n)/(r||1)),0),o=Array(a);a--;)o[t?a:++i]=n,n+=r;return o}function Pa(n){return function(e,r,t){return t&&typeof t!="number"&&on(e,r,t)&&(r=t=void 0),e=rn(e),r===void 0?(r=e,e=0):r=rn(r),t=t===void 0?e1&&on(n,e[0],e[1])?e=[]:r>2&&on(e[0],e[1],e[2])&&(e=[e[0]]),Aa(n,ln(e,1),[])}),Sa=1/0,Ra=bn&&1/Mn(new bn([,-0]))[1]==Sa?function(n){return new bn(n)}:kr,Ma=200;function Fa(n,e,r){var t=-1,i=Hr,a=n.length,o=!0,u=[],s=u;if(r)o=!1,i=fa;else if(a>=Ma){var f=e?null:Ra(n);if(f)return Mn(f);o=!1,i=Be,s=new W}else s=e?[]:u;n:for(;++t1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return b(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=P,this._children[e]={},this._children[P][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return b(this._nodes,e)}removeNode(e){var r=this;if(b(this._nodes,e)){var t=function(i){r.removeEdge(r._edgeObjs[i])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c(this.children(e),function(i){r.setParent(i)}),delete this._children[e]),c(T(this._in[e]),t),delete this._in[e],delete this._preds[e],c(T(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(y(r))r=P;else{r+="";for(var t=r;!y(t);t=this.parent(t))if(t===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==P)return r}}children(e){if(y(e)&&(e=P),this._isCompound){var r=this._children[e];if(r)return T(r)}else{if(e===P)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return T(r)}successors(e){var r=this._sucs[e];if(r)return T(r)}neighbors(e){var r=this.predecessors(e);if(r)return Da(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var t=this;c(this._nodes,function(o,u){e(u)&&r.setNode(u,o)}),c(this._edgeObjs,function(o){r.hasNode(o.v)&&r.hasNode(o.w)&&r.setEdge(o,t.edge(o))});var i={};function a(o){var u=t.parent(o);return u===void 0||r.hasNode(u)?(i[o]=u,u):u in i?i[u]:a(u)}return this._isCompound&&c(r.nodes(),function(o){r.setParent(o,a(o))}),r}setDefaultEdgeLabel(e){return Xn(e)||(e=B(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return N(this._edgeObjs)}setPath(e,r){var t=this,i=arguments;return J(e,function(a,o){return i.length>1?t.setEdge(a,o,r):t.setEdge(a,o),o}),this}setEdge(){var e,r,t,i,a=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(e=o.v,r=o.w,t=o.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=o,r=arguments[1],t=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,y(t)||(t=""+t);var u=Y(this._isDirected,e,r,t);if(b(this._edgeLabels,u))return a&&(this._edgeLabels[u]=i),this;if(!y(t)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[u]=a?i:this._defaultEdgeLabelFn(e,r,t);var s=Ua(this._isDirected,e,r,t);return e=s.v,r=s.w,Object.freeze(s),this._edgeObjs[u]=s,he(this._preds[r],e),he(this._sucs[e],r),this._in[r][u]=s,this._out[e][u]=s,this._edgeCount++,this}edge(e,r,t){var i=arguments.length===1?mn(this._isDirected,arguments[0]):Y(this._isDirected,e,r,t);return this._edgeLabels[i]}hasEdge(e,r,t){var i=arguments.length===1?mn(this._isDirected,arguments[0]):Y(this._isDirected,e,r,t);return b(this._edgeLabels,i)}removeEdge(e,r,t){var i=arguments.length===1?mn(this._isDirected,arguments[0]):Y(this._isDirected,e,r,t),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],le(this._preds[r],e),le(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var t=this._in[e];if(t){var i=N(t);return r?A(i,function(a){return a.v===r}):i}}outEdges(e,r){var t=this._out[e];if(t){var i=N(t);return r?A(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var t=this.inEdges(e,r);if(t)return t.concat(this.outEdges(e,r))}}L.prototype._nodeCount=0;L.prototype._edgeCount=0;function he(n,e){n[e]?n[e]++:n[e]=1}function le(n,e){--n[e]||delete n[e]}function Y(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}return i+ce+a+ce+(y(t)?Ya:t)}function Ua(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}var u={v:i,w:a};return t&&(u.name=t),u}function mn(n,e){return Y(n,e.v,e.w,e.name)}class Ha{constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return ve(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&ve(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,t=r._prev;t!==r;)e.push(JSON.stringify(t,qa)),t=t._prev;return"["+e.join(", ")+"]"}}function ve(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function qa(n,e){if(n!=="_next"&&n!=="_prev")return e}var Wa=B(1);function ja(n,e){if(n.nodeCount()<=1)return[];var r=Xa(n,e||Wa),t=Ka(r.graph,r.buckets,r.zeroIdx);return G(E(t,function(i){return n.outEdges(i.v,i.w)}))}function Ka(n,e,r){for(var t=[],i=e[e.length-1],a=e[0],o;n.nodeCount();){for(;o=a.dequeue();)_n(n,e,r,o);for(;o=i.dequeue();)_n(n,e,r,o);if(n.nodeCount()){for(var u=e.length-2;u>0;--u)if(o=e[u].dequeue(),o){t=t.concat(_n(n,e,r,o,!0));break}}}return t}function _n(n,e,r,t,i){var a=i?[]:void 0;return c(n.inEdges(t.v),function(o){var u=n.edge(o),s=n.node(o.v);i&&a.push({v:o.v,w:o.w}),s.out-=u,On(e,r,s)}),c(n.outEdges(t.v),function(o){var u=n.edge(o),s=o.w,f=n.node(s);f.in-=u,On(e,r,f)}),n.removeNode(t.v),a}function Xa(n,e){var r=new L,t=0,i=0;c(n.nodes(),function(u){r.setNode(u,{v:u,in:0,out:0})}),c(n.edges(),function(u){var s=r.edge(u.v,u.w)||0,f=e(u),d=s+f;r.setEdge(u.v,u.w,d),i=Math.max(i,r.node(u.v).out+=f),t=Math.max(t,r.node(u.w).in+=f)});var a=D(i+t+3).map(function(){return new Ha}),o=t+1;return c(r.nodes(),function(u){On(a,o,r.node(u))}),{graph:r,buckets:a,zeroIdx:o}}function On(n,e,r){r.out?r.in?n[r.out-r.in+e].enqueue(r):n[n.length-1].enqueue(r):n[0].enqueue(r)}function Va(n){var e=n.graph().acyclicer==="greedy"?ja(n,r(n)):Za(n);c(e,function(t){var i=n.edge(t);n.removeEdge(t),i.forwardName=t.name,i.reversed=!0,n.setEdge(t.w,t.v,i,Un("rev"))});function r(t){return function(i){return t.edge(i).weight}}}function Za(n){var e=[],r={},t={};function i(a){b(t,a)||(t[a]=!0,r[a]=!0,c(n.outEdges(a),function(o){b(r,o.w)?e.push(o):i(o.w)}),delete r[a])}return c(n.nodes(),i),e}function Ja(n){c(n.edges(),function(e){var r=n.edge(e);if(r.reversed){n.removeEdge(e);var t=r.forwardName;delete r.reversed,delete r.forwardName,n.setEdge(e.w,e.v,r,t)}})}function k(n,e,r,t){var i;do i=Un(t);while(n.hasNode(i));return r.dummy=e,n.setNode(i,r),i}function Qa(n){var e=new L().setGraph(n.graph());return c(n.nodes(),function(r){e.setNode(r,n.node(r))}),c(n.edges(),function(r){var t=e.edge(r.v,r.w)||{weight:0,minlen:1},i=n.edge(r);e.setEdge(r.v,r.w,{weight:t.weight+i.weight,minlen:Math.max(t.minlen,i.minlen)})}),e}function Ve(n){var e=new L({multigraph:n.isMultigraph()}).setGraph(n.graph());return c(n.nodes(),function(r){n.children(r).length||e.setNode(r,n.node(r))}),c(n.edges(),function(r){e.setEdge(r,n.edge(r))}),e}function ge(n,e){var r=n.x,t=n.y,i=e.x-r,a=e.y-t,o=n.width/2,u=n.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var s,f;return Math.abs(a)*o>Math.abs(i)*u?(a<0&&(u=-u),s=u*i/a,f=u):(i<0&&(o=-o),s=o,f=o*a/i),{x:r+s,y:t+f}}function pn(n){var e=E(D(Ze(n)+1),function(){return[]});return c(n.nodes(),function(r){var t=n.node(r),i=t.rank;y(i)||(e[i][t.order]=r)}),e}function za(n){var e=j(E(n.nodes(),function(r){return n.node(r).rank}));c(n.nodes(),function(r){var t=n.node(r);b(t,"rank")&&(t.rank-=e)})}function no(n){var e=j(E(n.nodes(),function(a){return n.node(a).rank})),r=[];c(n.nodes(),function(a){var o=n.node(a).rank-e;r[o]||(r[o]=[]),r[o].push(a)});var t=0,i=n.graph().nodeRankFactor;c(r,function(a,o){y(a)&&o%i!==0?--t:t&&c(a,function(u){n.node(u).rank+=t})})}function pe(n,e,r,t){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=t),k(n,"border",i,e)}function Ze(n){return S(E(n.nodes(),function(e){var r=n.node(e).rank;if(!y(r))return r}))}function eo(n,e){var r={lhs:[],rhs:[]};return c(n,function(t){e(t)?r.lhs.push(t):r.rhs.push(t)}),r}function ro(n,e){var r=de();try{return e()}finally{console.log(n+" time: "+(de()-r)+"ms")}}function to(n,e){return e()}function io(n){function e(r){var t=n.children(r),i=n.node(r);if(t.length&&c(t,e),b(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,o=i.maxRank+1;ao.lim&&(u=o,s=!0);var f=A(e.edges(),function(d){return s===me(n,n.node(d.v),u)&&s!==me(n,n.node(d.w),u)});return Yn(f,function(d){return K(e,d)})}function ar(n,e,r,t){var i=r.v,a=r.w;n.removeEdge(i,a),n.setEdge(t.v,t.w,{}),Wn(n),qn(n,e),_o(n,e)}function _o(n,e){var r=kn(n.nodes(),function(i){return!e.node(i).parent}),t=wo(n,r);t=t.slice(1),c(t,function(i){var a=n.node(i).parent,o=e.edge(i,a),u=!1;o||(o=e.edge(a,i),u=!0),e.node(i).rank=e.node(a).rank+(u?o.minlen:-o.minlen)})}function Eo(n,e,r){return n.hasEdge(e,r)}function me(n,e,r){return r.low<=e.lim&&e.lim<=r.lim}function yo(n){switch(n.graph().ranker){case"network-simplex":_e(n);break;case"tight-tree":To(n);break;case"longest-path":xo(n);break;default:_e(n)}}var xo=Hn;function To(n){Hn(n),Qe(n)}function _e(n){R(n)}function Lo(n){var e=k(n,"root",{},"_root"),r=Ao(n),t=S(N(r))-1,i=2*t+1;n.graph().nestingRoot=e,c(n.edges(),function(o){n.edge(o).minlen*=i});var a=No(n)+1;c(n.children(),function(o){or(n,e,i,a,t,r,o)}),n.graph().nodeRankFactor=i}function or(n,e,r,t,i,a,o){var u=n.children(o);if(!u.length){o!==e&&n.setEdge(e,o,{weight:0,minlen:r});return}var s=pe(n,"_bt"),f=pe(n,"_bb"),d=n.node(o);n.setParent(s,o),d.borderTop=s,n.setParent(f,o),d.borderBottom=f,c(u,function(h){or(n,e,r,t,i,a,h);var l=n.node(h),g=l.borderTop?l.borderTop:h,v=l.borderBottom?l.borderBottom:h,p=l.borderTop?t:2*t,m=g!==v?1:i-a[o]+1;n.setEdge(s,g,{weight:p,minlen:m,nestingEdge:!0}),n.setEdge(v,f,{weight:p,minlen:m,nestingEdge:!0})}),n.parent(o)||n.setEdge(e,s,{weight:0,minlen:i+a[o]})}function Ao(n){var e={};function r(t,i){var a=n.children(t);a&&a.length&&c(a,function(o){r(o,i+1)}),e[t]=i}return c(n.children(),function(t){r(t,1)}),e}function No(n){return J(n.edges(),function(e,r){return e+n.edge(r).weight},0)}function Oo(n){var e=n.graph();n.removeNode(e.nestingRoot),delete e.nestingRoot,c(n.edges(),function(r){var t=n.edge(r);t.nestingEdge&&n.removeEdge(r)})}function Co(n,e,r){var t={},i;c(r,function(a){for(var o=n.parent(a),u,s;o;){if(u=n.parent(o),u?(s=t[u],t[u]=o):(s=i,i=o),s&&s!==o){e.setEdge(s,o);return}o=u}})}function Io(n,e,r){var t=Po(n),i=new L({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(a){return n.node(a)});return c(n.nodes(),function(a){var o=n.node(a),u=n.parent(a);(o.rank===e||o.minRank<=e&&e<=o.maxRank)&&(i.setNode(a),i.setParent(a,u||t),c(n[r](a),function(s){var f=s.v===a?s.w:s.v,d=i.edge(f,a),h=y(d)?0:d.weight;i.setEdge(f,a,{weight:n.edge(s).weight+h})}),b(o,"minRank")&&i.setNode(a,{borderLeft:o.borderLeft[e],borderRight:o.borderRight[e]}))}),i}function Po(n){for(var e;n.hasNode(e=Un("_root")););return e}function $o(n,e){for(var r=0,t=1;t0;)d%2&&(h+=u[d+1]),d=d-1>>1,u[d]+=f.weight;s+=f.weight*h})),s}function Ro(n){var e={},r=A(n.nodes(),function(u){return!n.children(u).length}),t=S(E(r,function(u){return n.node(u).rank})),i=E(D(t+1),function(){return[]});function a(u){if(!b(e,u)){e[u]=!0;var s=n.node(u);i[s.rank].push(u),c(n.successors(u),a)}}var o=Q(r,function(u){return n.node(u).rank});return c(o,a),i}function Mo(n,e){return E(e,function(r){var t=n.inEdges(r);if(t.length){var i=J(t,function(a,o){var u=n.edge(o),s=n.node(o.v);return{sum:a.sum+u.weight*s.order,weight:a.weight+u.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}function Fo(n,e){var r={};c(n,function(i,a){var o=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};y(i.barycenter)||(o.barycenter=i.barycenter,o.weight=i.weight)}),c(e.edges(),function(i){var a=r[i.v],o=r[i.w];!y(a)&&!y(o)&&(o.indegree++,a.out.push(r[i.w]))});var t=A(r,function(i){return!i.indegree});return Do(t)}function Do(n){var e=[];function r(a){return function(o){o.merged||(y(o.barycenter)||y(a.barycenter)||o.barycenter>=a.barycenter)&&Go(a,o)}}function t(a){return function(o){o.in.push(a),--o.indegree===0&&n.push(o)}}for(;n.length;){var i=n.pop();e.push(i),c(i.in.reverse(),r(i)),c(i.out,t(i))}return E(A(e,function(a){return!a.merged}),function(a){return sn(a,["vs","i","barycenter","weight"])})}function Go(n,e){var r=0,t=0;n.weight&&(r+=n.barycenter*n.weight,t+=n.weight),e.weight&&(r+=e.barycenter*e.weight,t+=e.weight),n.vs=e.vs.concat(n.vs),n.barycenter=r/t,n.weight=t,n.i=Math.min(e.i,n.i),e.merged=!0}function ko(n,e){var r=eo(n,function(d){return b(d,"barycenter")}),t=r.lhs,i=Q(r.rhs,function(d){return-d.i}),a=[],o=0,u=0,s=0;t.sort(Bo(!!e)),s=Ee(a,i,s),c(t,function(d){s+=d.vs.length,a.push(d.vs),o+=d.barycenter*d.weight,u+=d.weight,s=Ee(a,i,s)});var f={vs:G(a)};return u&&(f.barycenter=o/u,f.weight=u),f}function Ee(n,e,r){for(var t;e.length&&(t=un(e)).i<=r;)e.pop(),n.push(t.vs),r++;return r}function Bo(n){return function(e,r){return e.barycenterr.barycenter?1:n?r.i-e.i:e.i-r.i}}function ur(n,e,r,t){var i=n.children(e),a=n.node(e),o=a?a.borderLeft:void 0,u=a?a.borderRight:void 0,s={};o&&(i=A(i,function(v){return v!==o&&v!==u}));var f=Mo(n,i);c(f,function(v){if(n.children(v.v).length){var p=ur(n,v.v,r,t);s[v.v]=p,b(p,"barycenter")&&Uo(v,p)}});var d=Fo(f,r);Yo(d,s);var h=ko(d,t);if(o&&(h.vs=G([o,h.vs,u]),n.predecessors(o).length)){var l=n.node(n.predecessors(o)[0]),g=n.node(n.predecessors(u)[0]);b(h,"barycenter")||(h.barycenter=0,h.weight=0),h.barycenter=(h.barycenter*h.weight+l.order+g.order)/(h.weight+2),h.weight+=2}return h}function Yo(n,e){c(n,function(r){r.vs=G(r.vs.map(function(t){return e[t]?e[t].vs:t}))})}function Uo(n,e){y(n.barycenter)?(n.barycenter=e.barycenter,n.weight=e.weight):(n.barycenter=(n.barycenter*n.weight+e.barycenter*e.weight)/(n.weight+e.weight),n.weight+=e.weight)}function Ho(n){var e=Ze(n),r=ye(n,D(1,e+1),"inEdges"),t=ye(n,D(e-1,-1,-1),"outEdges"),i=Ro(n);xe(n,i);for(var a=Number.POSITIVE_INFINITY,o,u=0,s=0;s<4;++u,++s){qo(u%2?r:t,u%4>=2),i=pn(n);var f=$o(n,i);fo||u>e[s].lim));for(f=s,s=t;(s=n.parent(s))!==f;)a.push(s);return{path:i.concat(a.reverse()),lca:f}}function Ko(n){var e={},r=0;function t(i){var a=r;c(n.children(i),t),e[i]={low:a,lim:r++}}return c(n.children(),t),e}function Xo(n,e){var r={};function t(i,a){var o=0,u=0,s=i.length,f=un(a);return c(a,function(d,h){var l=Zo(n,d),g=l?n.node(l).order:s;(l||d===f)&&(c(a.slice(u,h+1),function(v){c(n.predecessors(v),function(p){var m=n.node(p),_=m.order;(_f)&&sr(r,l,d)})})}function i(a,o){var u=-1,s,f=0;return c(o,function(d,h){if(n.node(d).dummy==="border"){var l=n.predecessors(d);l.length&&(s=n.node(l[0]).order,t(o,f,h,u,s),f=h,u=s)}t(o,f,o.length,s,a.length)}),o}return J(e,i),r}function Zo(n,e){if(n.node(e).dummy)return kn(n.predecessors(e),function(r){return n.node(r).dummy})}function sr(n,e,r){if(e>r){var t=e;e=r,r=t}var i=n[e];i||(n[e]=i={}),i[r]=!0}function Jo(n,e,r){if(e>r){var t=e;e=r,r=t}return b(n[e],r)}function Qo(n,e,r,t){var i={},a={},o={};return c(e,function(u){c(u,function(s,f){i[s]=s,a[s]=s,o[s]=f})}),c(e,function(u){var s=-1;c(u,function(f){var d=t(f);if(d.length){d=Q(d,function(p){return o[p]});for(var h=(d.length-1)/2,l=Math.floor(h),g=Math.ceil(h);l<=g;++l){var v=d[l];a[f]===f&&s-1}function T(n){return fn(n)?dr(n):cr(n)}var qr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Wr=/^\w*$/;function $n(n,e){if(x(n))return!1;var r=typeof n;return r=="number"||r=="symbol"||r=="boolean"||n==null||$(n)?!0:Wr.test(n)||!qr.test(n)||e!=null&&n in Object(e)}var jr=500;function Kr(n){var e=hr(n,function(t){return r.size===jr&&r.clear(),t}),r=e.cache;return e}var Xr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Vr=/\\(\\)?/g,Zr=Kr(function(n){var e=[];return n.charCodeAt(0)===46&&e.push(""),n.replace(Xr,function(r,t,i,a){e.push(i?a.replace(Vr,"$1"):t||r)}),e});function $e(n){return n==null?"":Ce(n)}function cn(n,e){return x(n)?n:$n(n,e)?[n]:Zr($e(n))}var Jr=1/0;function Z(n){if(typeof n=="string"||$(n))return n;var e=n+"";return e=="0"&&1/n==-Jr?"-0":e}function hn(n,e){e=cn(e,n);for(var r=0,t=e.length;n!=null&&r0&&r(u)?e>1?ln(u,e-1,r,t,i):Sn(i,u):t||(i[i.length]=u)}return i}function G(n){var e=n==null?0:n.length;return e?ln(n,1):[]}function nt(n){return lr(vr(n,void 0,G),n+"")}function et(n,e,r,t){var i=-1,a=n==null?0:n.length;for(t&&a&&(r=n[++i]);++iu))return!1;var f=a.get(n),d=a.get(e);if(f&&d)return f==e&&d==n;var h=-1,l=!0,g=r&xi?new W:void 0;for(a.set(n,e),a.set(e,n);++h2?e[2]:void 0;for(i&&on(e[0],e[1],i)&&(t=1);++r-1?i[a?e[o]:o]:void 0}}var ha=Math.max;function la(n,e,r){var t=n==null?0:n.length;if(!t)return-1;var i=r==null?0:Gr(r);return i<0&&(i=ha(t+i,0)),Pe(n,C(e),i)}var kn=ca(la);function Ke(n,e){var r=-1,t=fn(n)?Array(n.length):[];return vn(n,function(i,a,o){t[++r]=e(i,a,o)}),t}function E(n,e){var r=x(n)?M:Ke;return r(n,C(e))}function va(n,e){return n==null?n:Oe(n,Gn(e),X)}function ga(n,e){return n&&Dn(n,Gn(e))}function pa(n,e){return n>e}var ba=Object.prototype,wa=ba.hasOwnProperty;function ma(n,e){return n!=null&&wa.call(n,e)}function b(n,e){return n!=null&&qe(n,e,ma)}function _a(n,e){return M(e,function(r){return n[r]})}function N(n){return n==null?[]:_a(n,T(n))}function y(n){return n===void 0}function Xe(n,e){return ne||a&&o&&s&&!u&&!f||t&&o&&s||!r&&s||!i)return 1;if(!t&&!a&&!f&&n=u)return s;var f=r[t];return s*(f=="desc"?-1:1)}}return n.index-e.index}function Aa(n,e,r){e.length?e=M(e,function(a){return x(a)?function(o){return hn(o,a.length===1?a[0]:a)}:a}):e=[V];var t=-1;e=M(e,Cn(C));var i=Ke(n,function(a,o,u){var s=M(e,function(f){return f(a)});return{criteria:s,index:++t,value:a}});return xa(i,function(a,o){return La(a,o,r)})}function Na(n,e){return ya(n,e,function(r,t){return We(n,t)})}var sn=nt(function(n,e){return n==null?{}:Na(n,e)}),Oa=Math.ceil,Ca=Math.max;function Ia(n,e,r,t){for(var i=-1,a=Ca(Oa((e-n)/(r||1)),0),o=Array(a);a--;)o[t?a:++i]=n,n+=r;return o}function Pa(n){return function(e,r,t){return t&&typeof t!="number"&&on(e,r,t)&&(r=t=void 0),e=rn(e),r===void 0?(r=e,e=0):r=rn(r),t=t===void 0?e1&&on(n,e[0],e[1])?e=[]:r>2&&on(e[0],e[1],e[2])&&(e=[e[0]]),Aa(n,ln(e,1),[])}),Sa=1/0,Ra=bn&&1/Mn(new bn([,-0]))[1]==Sa?function(n){return new bn(n)}:kr,Ma=200;function Fa(n,e,r){var t=-1,i=Hr,a=n.length,o=!0,u=[],s=u;if(r)o=!1,i=fa;else if(a>=Ma){var f=e?null:Ra(n);if(f)return Mn(f);o=!1,i=Be,s=new W}else s=e?[]:u;n:for(;++t1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return b(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=P,this._children[e]={},this._children[P][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return b(this._nodes,e)}removeNode(e){var r=this;if(b(this._nodes,e)){var t=function(i){r.removeEdge(r._edgeObjs[i])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c(this.children(e),function(i){r.setParent(i)}),delete this._children[e]),c(T(this._in[e]),t),delete this._in[e],delete this._preds[e],c(T(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(y(r))r=P;else{r+="";for(var t=r;!y(t);t=this.parent(t))if(t===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==P)return r}}children(e){if(y(e)&&(e=P),this._isCompound){var r=this._children[e];if(r)return T(r)}else{if(e===P)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return T(r)}successors(e){var r=this._sucs[e];if(r)return T(r)}neighbors(e){var r=this.predecessors(e);if(r)return Da(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var t=this;c(this._nodes,function(o,u){e(u)&&r.setNode(u,o)}),c(this._edgeObjs,function(o){r.hasNode(o.v)&&r.hasNode(o.w)&&r.setEdge(o,t.edge(o))});var i={};function a(o){var u=t.parent(o);return u===void 0||r.hasNode(u)?(i[o]=u,u):u in i?i[u]:a(u)}return this._isCompound&&c(r.nodes(),function(o){r.setParent(o,a(o))}),r}setDefaultEdgeLabel(e){return Xn(e)||(e=B(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return N(this._edgeObjs)}setPath(e,r){var t=this,i=arguments;return J(e,function(a,o){return i.length>1?t.setEdge(a,o,r):t.setEdge(a,o),o}),this}setEdge(){var e,r,t,i,a=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(e=o.v,r=o.w,t=o.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=o,r=arguments[1],t=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,y(t)||(t=""+t);var u=Y(this._isDirected,e,r,t);if(b(this._edgeLabels,u))return a&&(this._edgeLabels[u]=i),this;if(!y(t)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[u]=a?i:this._defaultEdgeLabelFn(e,r,t);var s=Ua(this._isDirected,e,r,t);return e=s.v,r=s.w,Object.freeze(s),this._edgeObjs[u]=s,he(this._preds[r],e),he(this._sucs[e],r),this._in[r][u]=s,this._out[e][u]=s,this._edgeCount++,this}edge(e,r,t){var i=arguments.length===1?mn(this._isDirected,arguments[0]):Y(this._isDirected,e,r,t);return this._edgeLabels[i]}hasEdge(e,r,t){var i=arguments.length===1?mn(this._isDirected,arguments[0]):Y(this._isDirected,e,r,t);return b(this._edgeLabels,i)}removeEdge(e,r,t){var i=arguments.length===1?mn(this._isDirected,arguments[0]):Y(this._isDirected,e,r,t),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],le(this._preds[r],e),le(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var t=this._in[e];if(t){var i=N(t);return r?A(i,function(a){return a.v===r}):i}}outEdges(e,r){var t=this._out[e];if(t){var i=N(t);return r?A(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var t=this.inEdges(e,r);if(t)return t.concat(this.outEdges(e,r))}}L.prototype._nodeCount=0;L.prototype._edgeCount=0;function he(n,e){n[e]?n[e]++:n[e]=1}function le(n,e){--n[e]||delete n[e]}function Y(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}return i+ce+a+ce+(y(t)?Ya:t)}function Ua(n,e,r,t){var i=""+e,a=""+r;if(!n&&i>a){var o=i;i=a,a=o}var u={v:i,w:a};return t&&(u.name=t),u}function mn(n,e){return Y(n,e.v,e.w,e.name)}class Ha{constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return ve(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&ve(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,t=r._prev;t!==r;)e.push(JSON.stringify(t,qa)),t=t._prev;return"["+e.join(", ")+"]"}}function ve(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function qa(n,e){if(n!=="_next"&&n!=="_prev")return e}var Wa=B(1);function ja(n,e){if(n.nodeCount()<=1)return[];var r=Xa(n,e||Wa),t=Ka(r.graph,r.buckets,r.zeroIdx);return G(E(t,function(i){return n.outEdges(i.v,i.w)}))}function Ka(n,e,r){for(var t=[],i=e[e.length-1],a=e[0],o;n.nodeCount();){for(;o=a.dequeue();)_n(n,e,r,o);for(;o=i.dequeue();)_n(n,e,r,o);if(n.nodeCount()){for(var u=e.length-2;u>0;--u)if(o=e[u].dequeue(),o){t=t.concat(_n(n,e,r,o,!0));break}}}return t}function _n(n,e,r,t,i){var a=i?[]:void 0;return c(n.inEdges(t.v),function(o){var u=n.edge(o),s=n.node(o.v);i&&a.push({v:o.v,w:o.w}),s.out-=u,On(e,r,s)}),c(n.outEdges(t.v),function(o){var u=n.edge(o),s=o.w,f=n.node(s);f.in-=u,On(e,r,f)}),n.removeNode(t.v),a}function Xa(n,e){var r=new L,t=0,i=0;c(n.nodes(),function(u){r.setNode(u,{v:u,in:0,out:0})}),c(n.edges(),function(u){var s=r.edge(u.v,u.w)||0,f=e(u),d=s+f;r.setEdge(u.v,u.w,d),i=Math.max(i,r.node(u.v).out+=f),t=Math.max(t,r.node(u.w).in+=f)});var a=D(i+t+3).map(function(){return new Ha}),o=t+1;return c(r.nodes(),function(u){On(a,o,r.node(u))}),{graph:r,buckets:a,zeroIdx:o}}function On(n,e,r){r.out?r.in?n[r.out-r.in+e].enqueue(r):n[n.length-1].enqueue(r):n[0].enqueue(r)}function Va(n){var e=n.graph().acyclicer==="greedy"?ja(n,r(n)):Za(n);c(e,function(t){var i=n.edge(t);n.removeEdge(t),i.forwardName=t.name,i.reversed=!0,n.setEdge(t.w,t.v,i,Un("rev"))});function r(t){return function(i){return t.edge(i).weight}}}function Za(n){var e=[],r={},t={};function i(a){b(t,a)||(t[a]=!0,r[a]=!0,c(n.outEdges(a),function(o){b(r,o.w)?e.push(o):i(o.w)}),delete r[a])}return c(n.nodes(),i),e}function Ja(n){c(n.edges(),function(e){var r=n.edge(e);if(r.reversed){n.removeEdge(e);var t=r.forwardName;delete r.reversed,delete r.forwardName,n.setEdge(e.w,e.v,r,t)}})}function k(n,e,r,t){var i;do i=Un(t);while(n.hasNode(i));return r.dummy=e,n.setNode(i,r),i}function Qa(n){var e=new L().setGraph(n.graph());return c(n.nodes(),function(r){e.setNode(r,n.node(r))}),c(n.edges(),function(r){var t=e.edge(r.v,r.w)||{weight:0,minlen:1},i=n.edge(r);e.setEdge(r.v,r.w,{weight:t.weight+i.weight,minlen:Math.max(t.minlen,i.minlen)})}),e}function Ve(n){var e=new L({multigraph:n.isMultigraph()}).setGraph(n.graph());return c(n.nodes(),function(r){n.children(r).length||e.setNode(r,n.node(r))}),c(n.edges(),function(r){e.setEdge(r,n.edge(r))}),e}function ge(n,e){var r=n.x,t=n.y,i=e.x-r,a=e.y-t,o=n.width/2,u=n.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var s,f;return Math.abs(a)*o>Math.abs(i)*u?(a<0&&(u=-u),s=u*i/a,f=u):(i<0&&(o=-o),s=o,f=o*a/i),{x:r+s,y:t+f}}function pn(n){var e=E(D(Ze(n)+1),function(){return[]});return c(n.nodes(),function(r){var t=n.node(r),i=t.rank;y(i)||(e[i][t.order]=r)}),e}function za(n){var e=j(E(n.nodes(),function(r){return n.node(r).rank}));c(n.nodes(),function(r){var t=n.node(r);b(t,"rank")&&(t.rank-=e)})}function no(n){var e=j(E(n.nodes(),function(a){return n.node(a).rank})),r=[];c(n.nodes(),function(a){var o=n.node(a).rank-e;r[o]||(r[o]=[]),r[o].push(a)});var t=0,i=n.graph().nodeRankFactor;c(r,function(a,o){y(a)&&o%i!==0?--t:t&&c(a,function(u){n.node(u).rank+=t})})}function pe(n,e,r,t){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=t),k(n,"border",i,e)}function Ze(n){return S(E(n.nodes(),function(e){var r=n.node(e).rank;if(!y(r))return r}))}function eo(n,e){var r={lhs:[],rhs:[]};return c(n,function(t){e(t)?r.lhs.push(t):r.rhs.push(t)}),r}function ro(n,e){var r=de();try{return e()}finally{console.log(n+" time: "+(de()-r)+"ms")}}function to(n,e){return e()}function io(n){function e(r){var t=n.children(r),i=n.node(r);if(t.length&&c(t,e),b(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,o=i.maxRank+1;ao.lim&&(u=o,s=!0);var f=A(e.edges(),function(d){return s===me(n,n.node(d.v),u)&&s!==me(n,n.node(d.w),u)});return Yn(f,function(d){return K(e,d)})}function ar(n,e,r,t){var i=r.v,a=r.w;n.removeEdge(i,a),n.setEdge(t.v,t.w,{}),Wn(n),qn(n,e),_o(n,e)}function _o(n,e){var r=kn(n.nodes(),function(i){return!e.node(i).parent}),t=wo(n,r);t=t.slice(1),c(t,function(i){var a=n.node(i).parent,o=e.edge(i,a),u=!1;o||(o=e.edge(a,i),u=!0),e.node(i).rank=e.node(a).rank+(u?o.minlen:-o.minlen)})}function Eo(n,e,r){return n.hasEdge(e,r)}function me(n,e,r){return r.low<=e.lim&&e.lim<=r.lim}function yo(n){switch(n.graph().ranker){case"network-simplex":_e(n);break;case"tight-tree":To(n);break;case"longest-path":xo(n);break;default:_e(n)}}var xo=Hn;function To(n){Hn(n),Qe(n)}function _e(n){R(n)}function Lo(n){var e=k(n,"root",{},"_root"),r=Ao(n),t=S(N(r))-1,i=2*t+1;n.graph().nestingRoot=e,c(n.edges(),function(o){n.edge(o).minlen*=i});var a=No(n)+1;c(n.children(),function(o){or(n,e,i,a,t,r,o)}),n.graph().nodeRankFactor=i}function or(n,e,r,t,i,a,o){var u=n.children(o);if(!u.length){o!==e&&n.setEdge(e,o,{weight:0,minlen:r});return}var s=pe(n,"_bt"),f=pe(n,"_bb"),d=n.node(o);n.setParent(s,o),d.borderTop=s,n.setParent(f,o),d.borderBottom=f,c(u,function(h){or(n,e,r,t,i,a,h);var l=n.node(h),g=l.borderTop?l.borderTop:h,v=l.borderBottom?l.borderBottom:h,p=l.borderTop?t:2*t,m=g!==v?1:i-a[o]+1;n.setEdge(s,g,{weight:p,minlen:m,nestingEdge:!0}),n.setEdge(v,f,{weight:p,minlen:m,nestingEdge:!0})}),n.parent(o)||n.setEdge(e,s,{weight:0,minlen:i+a[o]})}function Ao(n){var e={};function r(t,i){var a=n.children(t);a&&a.length&&c(a,function(o){r(o,i+1)}),e[t]=i}return c(n.children(),function(t){r(t,1)}),e}function No(n){return J(n.edges(),function(e,r){return e+n.edge(r).weight},0)}function Oo(n){var e=n.graph();n.removeNode(e.nestingRoot),delete e.nestingRoot,c(n.edges(),function(r){var t=n.edge(r);t.nestingEdge&&n.removeEdge(r)})}function Co(n,e,r){var t={},i;c(r,function(a){for(var o=n.parent(a),u,s;o;){if(u=n.parent(o),u?(s=t[u],t[u]=o):(s=i,i=o),s&&s!==o){e.setEdge(s,o);return}o=u}})}function Io(n,e,r){var t=Po(n),i=new L({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(a){return n.node(a)});return c(n.nodes(),function(a){var o=n.node(a),u=n.parent(a);(o.rank===e||o.minRank<=e&&e<=o.maxRank)&&(i.setNode(a),i.setParent(a,u||t),c(n[r](a),function(s){var f=s.v===a?s.w:s.v,d=i.edge(f,a),h=y(d)?0:d.weight;i.setEdge(f,a,{weight:n.edge(s).weight+h})}),b(o,"minRank")&&i.setNode(a,{borderLeft:o.borderLeft[e],borderRight:o.borderRight[e]}))}),i}function Po(n){for(var e;n.hasNode(e=Un("_root")););return e}function $o(n,e){for(var r=0,t=1;t0;)d%2&&(h+=u[d+1]),d=d-1>>1,u[d]+=f.weight;s+=f.weight*h})),s}function Ro(n){var e={},r=A(n.nodes(),function(u){return!n.children(u).length}),t=S(E(r,function(u){return n.node(u).rank})),i=E(D(t+1),function(){return[]});function a(u){if(!b(e,u)){e[u]=!0;var s=n.node(u);i[s.rank].push(u),c(n.successors(u),a)}}var o=Q(r,function(u){return n.node(u).rank});return c(o,a),i}function Mo(n,e){return E(e,function(r){var t=n.inEdges(r);if(t.length){var i=J(t,function(a,o){var u=n.edge(o),s=n.node(o.v);return{sum:a.sum+u.weight*s.order,weight:a.weight+u.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}function Fo(n,e){var r={};c(n,function(i,a){var o=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};y(i.barycenter)||(o.barycenter=i.barycenter,o.weight=i.weight)}),c(e.edges(),function(i){var a=r[i.v],o=r[i.w];!y(a)&&!y(o)&&(o.indegree++,a.out.push(r[i.w]))});var t=A(r,function(i){return!i.indegree});return Do(t)}function Do(n){var e=[];function r(a){return function(o){o.merged||(y(o.barycenter)||y(a.barycenter)||o.barycenter>=a.barycenter)&&Go(a,o)}}function t(a){return function(o){o.in.push(a),--o.indegree===0&&n.push(o)}}for(;n.length;){var i=n.pop();e.push(i),c(i.in.reverse(),r(i)),c(i.out,t(i))}return E(A(e,function(a){return!a.merged}),function(a){return sn(a,["vs","i","barycenter","weight"])})}function Go(n,e){var r=0,t=0;n.weight&&(r+=n.barycenter*n.weight,t+=n.weight),e.weight&&(r+=e.barycenter*e.weight,t+=e.weight),n.vs=e.vs.concat(n.vs),n.barycenter=r/t,n.weight=t,n.i=Math.min(e.i,n.i),e.merged=!0}function ko(n,e){var r=eo(n,function(d){return b(d,"barycenter")}),t=r.lhs,i=Q(r.rhs,function(d){return-d.i}),a=[],o=0,u=0,s=0;t.sort(Bo(!!e)),s=Ee(a,i,s),c(t,function(d){s+=d.vs.length,a.push(d.vs),o+=d.barycenter*d.weight,u+=d.weight,s=Ee(a,i,s)});var f={vs:G(a)};return u&&(f.barycenter=o/u,f.weight=u),f}function Ee(n,e,r){for(var t;e.length&&(t=un(e)).i<=r;)e.pop(),n.push(t.vs),r++;return r}function Bo(n){return function(e,r){return e.barycenterr.barycenter?1:n?r.i-e.i:e.i-r.i}}function ur(n,e,r,t){var i=n.children(e),a=n.node(e),o=a?a.borderLeft:void 0,u=a?a.borderRight:void 0,s={};o&&(i=A(i,function(v){return v!==o&&v!==u}));var f=Mo(n,i);c(f,function(v){if(n.children(v.v).length){var p=ur(n,v.v,r,t);s[v.v]=p,b(p,"barycenter")&&Uo(v,p)}});var d=Fo(f,r);Yo(d,s);var h=ko(d,t);if(o&&(h.vs=G([o,h.vs,u]),n.predecessors(o).length)){var l=n.node(n.predecessors(o)[0]),g=n.node(n.predecessors(u)[0]);b(h,"barycenter")||(h.barycenter=0,h.weight=0),h.barycenter=(h.barycenter*h.weight+l.order+g.order)/(h.weight+2),h.weight+=2}return h}function Yo(n,e){c(n,function(r){r.vs=G(r.vs.map(function(t){return e[t]?e[t].vs:t}))})}function Uo(n,e){y(n.barycenter)?(n.barycenter=e.barycenter,n.weight=e.weight):(n.barycenter=(n.barycenter*n.weight+e.barycenter*e.weight)/(n.weight+e.weight),n.weight+=e.weight)}function Ho(n){var e=Ze(n),r=ye(n,D(1,e+1),"inEdges"),t=ye(n,D(e-1,-1,-1),"outEdges"),i=Ro(n);xe(n,i);for(var a=Number.POSITIVE_INFINITY,o,u=0,s=0;s<4;++u,++s){qo(u%2?r:t,u%4>=2),i=pn(n);var f=$o(n,i);fo||u>e[s].lim));for(f=s,s=t;(s=n.parent(s))!==f;)a.push(s);return{path:i.concat(a.reverse()),lca:f}}function Ko(n){var e={},r=0;function t(i){var a=r;c(n.children(i),t),e[i]={low:a,lim:r++}}return c(n.children(),t),e}function Xo(n,e){var r={};function t(i,a){var o=0,u=0,s=i.length,f=un(a);return c(a,function(d,h){var l=Zo(n,d),g=l?n.node(l).order:s;(l||d===f)&&(c(a.slice(u,h+1),function(v){c(n.predecessors(v),function(p){var m=n.node(p),_=m.order;(_f)&&sr(r,l,d)})})}function i(a,o){var u=-1,s,f=0;return c(o,function(d,h){if(n.node(d).dummy==="border"){var l=n.predecessors(d);l.length&&(s=n.node(l[0]).order,t(o,f,h,u,s),f=h,u=s)}t(o,f,o.length,s,a.length)}),o}return J(e,i),r}function Zo(n,e){if(n.node(e).dummy)return kn(n.predecessors(e),function(r){return n.node(r).dummy})}function sr(n,e,r){if(e>r){var t=e;e=r,r=t}var i=n[e];i||(n[e]=i={}),i[r]=!0}function Jo(n,e,r){if(e>r){var t=e;e=r,r=t}return b(n[e],r)}function Qo(n,e,r,t){var i={},a={},o={};return c(e,function(u){c(u,function(s,f){i[s]=s,a[s]=s,o[s]=f})}),c(e,function(u){var s=-1;c(u,function(f){var d=t(f);if(d.length){d=Q(d,function(p){return o[p]});for(var h=(d.length-1)/2,l=Math.floor(h),g=Math.ceil(h);l<=g;++l){var v=d[l];a[f]===f&&st?1:n>=t?0:NaN}function hn(n,t){return n==null||t==null?NaN:tn?1:t>=n?0:NaN}function _(n){let t,e,r;n.length!==2?(t=$,e=(u,c)=>$(n(u),c),r=(u,c)=>n(u)-c):(t=n===$||n===hn?n:mn,e=n,r=n);function i(u,c,o=0,s=u.length){if(o>>1;e(u[h],c)<0?o=h+1:s=h}while(o>>1;e(u[h],c)<=0?o=h+1:s=h}while(oo&&r(u[h-1],c)>-r(u[h],c)?h-1:h}return{left:i,center:a,right:f}}function mn(){return 0}function ln(n){return n===null?NaN:+n}const sn=_($),dn=sn.right;_(ln).center;const gn=Math.sqrt(50),yn=Math.sqrt(10),Mn=Math.sqrt(2);function E(n,t,e){const r=(t-n)/Math.max(0,e),i=Math.floor(Math.log10(r)),f=r/Math.pow(10,i),a=f>=gn?10:f>=yn?5:f>=Mn?2:1;let u,c,o;return i<0?(o=Math.pow(10,-i)/a,u=Math.round(n*o),c=Math.round(t*o),u/ot&&--c,o=-o):(o=Math.pow(10,i)*a,u=Math.round(n/o),c=Math.round(t/o),u*ot&&--c),c0))return[];if(n===t)return[n];const r=t=i))return[];const u=f-i+1,c=new Array(u);if(r)if(a<0)for(let o=0;o=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)}function R(n,t){if((e=(n=t?n.toExponential(t-1):n.toExponential()).indexOf("e"))<0)return null;var e,r=n.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+n.slice(e+1)]}function v(n){return n=R(Math.abs(n)),n?n[1]:NaN}function jn(n,t){return function(e,r){for(var i=e.length,f=[],a=0,u=n[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),f.push(e.substring(i-=u,i+u)),!((c+=u+1)>r));)u=n[a=(a+1)%n.length];return f.reverse().join(t)}}function Pn(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}var zn=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function D(n){if(!(t=zn.exec(n)))throw new Error("invalid format: "+n);var t;return new G({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}D.prototype=G.prototype;function G(n){this.fill=n.fill===void 0?" ":n.fill+"",this.align=n.align===void 0?">":n.align+"",this.sign=n.sign===void 0?"-":n.sign+"",this.symbol=n.symbol===void 0?"":n.symbol+"",this.zero=!!n.zero,this.width=n.width===void 0?void 0:+n.width,this.comma=!!n.comma,this.precision=n.precision===void 0?void 0:+n.precision,this.trim=!!n.trim,this.type=n.type===void 0?"":n.type+""}G.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Fn(n){n:for(var t=n.length,e=1,r=-1,i;e0&&(r=0);break}return r>0?n.slice(0,r)+n.slice(i+1):n}var nn;function $n(n,t){var e=R(n,t);if(!e)return n+"";var r=e[0],i=e[1],f=i-(nn=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return f===a?r:f>a?r+new Array(f-a+1).join("0"):f>0?r.slice(0,f)+"."+r.slice(f):"0."+new Array(1-f).join("0")+R(n,Math.max(0,t+f-1))[0]}function Y(n,t){var e=R(n,t);if(!e)return n+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Z={"%":(n,t)=>(n*100).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:bn,e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>Y(n*100,t),r:Y,s:$n,X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function J(n){return n}var K=Array.prototype.map,Q=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function En(n){var t=n.grouping===void 0||n.thousands===void 0?J:jn(K.call(n.grouping,Number),n.thousands+""),e=n.currency===void 0?"":n.currency[0]+"",r=n.currency===void 0?"":n.currency[1]+"",i=n.decimal===void 0?".":n.decimal+"",f=n.numerals===void 0?J:Pn(K.call(n.numerals,String)),a=n.percent===void 0?"%":n.percent+"",u=n.minus===void 0?"−":n.minus+"",c=n.nan===void 0?"NaN":n.nan+"";function o(h){h=D(h);var l=h.fill,p=h.align,y=h.sign,S=h.symbol,k=h.zero,b=h.width,T=h.comma,w=h.precision,B=h.trim,d=h.type;d==="n"?(T=!0,d="g"):Z[d]||(w===void 0&&(w=12),B=!0,d="g"),(k||l==="0"&&p==="=")&&(k=!0,l="0",p="=");var en=S==="$"?e:S==="#"&&/[boxX]/.test(d)?"0"+d.toLowerCase():"",on=S==="$"?r:/[%p]/.test(d)?a:"",O=Z[d],an=/[defgprs%]/.test(d);w=w===void 0?6:/[gprs]/.test(d)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function V(m){var N=en,g=on,x,X,j;if(d==="c")g=O(m)+g,m="";else{m=+m;var P=m<0||1/m<0;if(m=isNaN(m)?c:O(Math.abs(m),w),B&&(m=Fn(m)),P&&+m==0&&y!=="+"&&(P=!1),N=(P?y==="("?y:u:y==="-"||y==="("?"":y)+N,g=(d==="s"?Q[8+nn/3]:"")+g+(P&&y==="("?")":""),an){for(x=-1,X=m.length;++xj||j>57){g=(j===46?i+m.slice(x+1):m.slice(x))+g,m=m.slice(0,x);break}}}T&&!k&&(m=t(m,1/0));var z=N.length+m.length+g.length,M=z>1)+N+m+g+M.slice(z);break;default:m=M+N+m+g;break}return f(m)}return V.toString=function(){return h+""},V}function s(h,l){var p=o((h=D(h),h.type="f",h)),y=Math.max(-8,Math.min(8,Math.floor(v(l)/3)))*3,S=Math.pow(10,-y),k=Q[8+y/3];return function(b){return p(S*b)+k}}return{format:o,formatPrefix:s}}var F,tn,rn;Rn({thousands:",",grouping:[3],currency:["$",""]});function Rn(n){return F=En(n),tn=F.format,rn=F.formatPrefix,F}function Dn(n){return Math.max(0,-v(Math.abs(n)))}function Tn(n,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(v(t)/3)))*3-v(Math.abs(n)))}function In(n,t){return n=Math.abs(n),t=Math.abs(t)-n,Math.max(0,v(t)-v(n))+1}function Ln(n){return function(){return n}}function qn(n){return+n}var W=[0,1];function A(n){return n}function q(n,t){return(t-=n=+n)?function(e){return(e-n)/t}:Ln(isNaN(t)?NaN:.5)}function Cn(n,t){var e;return n>t&&(e=n,n=t,t=e),function(r){return Math.max(n,Math.min(t,r))}}function Gn(n,t,e){var r=n[0],i=n[1],f=t[0],a=t[1];return i2?Bn:Gn,c=o=null,h}function h(l){return l==null||isNaN(l=+l)?f:(c||(c=u(n.map(r),t,e)))(r(a(l)))}return h.invert=function(l){return a(i((o||(o=u(t,n.map(r),I)))(l)))},h.domain=function(l){return arguments.length?(n=Array.from(l,qn),s()):n.slice()},h.range=function(l){return arguments.length?(t=Array.from(l),s()):t.slice()},h.rangeRound=function(l){return t=Array.from(l),e=Sn,s()},h.clamp=function(l){return arguments.length?(a=l?!0:A,s()):a!==A},h.interpolate=function(l){return arguments.length?(e=l,s()):e},h.unknown=function(l){return arguments.length?(f=l,h):f},function(l,p){return r=l,i=p,s()}}function Xn(){return Vn()(A,A)}function Hn(n,t,e,r){var i=wn(n,t,e),f;switch(r=D(r??",f"),r.type){case"s":{var a=Math.max(Math.abs(n),Math.abs(t));return r.precision==null&&!isNaN(f=Tn(i,a))&&(r.precision=f),rn(r,a)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(f=In(i,Math.max(Math.abs(n),Math.abs(t))))&&(r.precision=f-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(f=Dn(i))&&(r.precision=f-(r.type==="%")*2);break}}return tn(r)}function Un(n){var t=n.domain;return n.ticks=function(e){var r=t();return pn(r[0],r[r.length-1],e??10)},n.tickFormat=function(e,r){var i=t();return Hn(i[0],i[i.length-1],e??10,r)},n.nice=function(e){e==null&&(e=10);var r=t(),i=0,f=r.length-1,a=r[i],u=r[f],c,o,s=10;for(u0;){if(o=L(a,u,e),o===c)return r[i]=a,r[f]=u,t(r);if(o>0)a=Math.floor(a/o)*o,u=Math.ceil(u/o)*o;else if(o<0)a=Math.ceil(a*o)/o,u=Math.floor(u*o)/o;else break;c=o}return n},n}function Yn(){var n=Xn();return n.copy=function(){return On(n,Yn())},cn.apply(n,arguments),Un(n)}export{On as a,_ as b,Xn as c,Yn as l,wn as t}; +import{aD as un,aE as I,aF as H,aG as U,aH as fn}from"./mermaid-934d9bea.JP-6_YN_.js";import{i as cn}from"./init.Hi12RPRh.js";function $(n,t){return n==null||t==null?NaN:nt?1:n>=t?0:NaN}function hn(n,t){return n==null||t==null?NaN:tn?1:t>=n?0:NaN}function _(n){let t,e,r;n.length!==2?(t=$,e=(u,c)=>$(n(u),c),r=(u,c)=>n(u)-c):(t=n===$||n===hn?n:mn,e=n,r=n);function i(u,c,o=0,s=u.length){if(o>>1;e(u[h],c)<0?o=h+1:s=h}while(o>>1;e(u[h],c)<=0?o=h+1:s=h}while(oo&&r(u[h-1],c)>-r(u[h],c)?h-1:h}return{left:i,center:a,right:f}}function mn(){return 0}function ln(n){return n===null?NaN:+n}const sn=_($),dn=sn.right;_(ln).center;const gn=Math.sqrt(50),yn=Math.sqrt(10),Mn=Math.sqrt(2);function E(n,t,e){const r=(t-n)/Math.max(0,e),i=Math.floor(Math.log10(r)),f=r/Math.pow(10,i),a=f>=gn?10:f>=yn?5:f>=Mn?2:1;let u,c,o;return i<0?(o=Math.pow(10,-i)/a,u=Math.round(n*o),c=Math.round(t*o),u/ot&&--c,o=-o):(o=Math.pow(10,i)*a,u=Math.round(n/o),c=Math.round(t/o),u*ot&&--c),c0))return[];if(n===t)return[n];const r=t=i))return[];const u=f-i+1,c=new Array(u);if(r)if(a<0)for(let o=0;o=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)}function R(n,t){if((e=(n=t?n.toExponential(t-1):n.toExponential()).indexOf("e"))<0)return null;var e,r=n.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+n.slice(e+1)]}function v(n){return n=R(Math.abs(n)),n?n[1]:NaN}function jn(n,t){return function(e,r){for(var i=e.length,f=[],a=0,u=n[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),f.push(e.substring(i-=u,i+u)),!((c+=u+1)>r));)u=n[a=(a+1)%n.length];return f.reverse().join(t)}}function Pn(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}var zn=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function D(n){if(!(t=zn.exec(n)))throw new Error("invalid format: "+n);var t;return new G({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}D.prototype=G.prototype;function G(n){this.fill=n.fill===void 0?" ":n.fill+"",this.align=n.align===void 0?">":n.align+"",this.sign=n.sign===void 0?"-":n.sign+"",this.symbol=n.symbol===void 0?"":n.symbol+"",this.zero=!!n.zero,this.width=n.width===void 0?void 0:+n.width,this.comma=!!n.comma,this.precision=n.precision===void 0?void 0:+n.precision,this.trim=!!n.trim,this.type=n.type===void 0?"":n.type+""}G.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Fn(n){n:for(var t=n.length,e=1,r=-1,i;e0&&(r=0);break}return r>0?n.slice(0,r)+n.slice(i+1):n}var nn;function $n(n,t){var e=R(n,t);if(!e)return n+"";var r=e[0],i=e[1],f=i-(nn=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return f===a?r:f>a?r+new Array(f-a+1).join("0"):f>0?r.slice(0,f)+"."+r.slice(f):"0."+new Array(1-f).join("0")+R(n,Math.max(0,t+f-1))[0]}function Y(n,t){var e=R(n,t);if(!e)return n+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Z={"%":(n,t)=>(n*100).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:bn,e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>Y(n*100,t),r:Y,s:$n,X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function J(n){return n}var K=Array.prototype.map,Q=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function En(n){var t=n.grouping===void 0||n.thousands===void 0?J:jn(K.call(n.grouping,Number),n.thousands+""),e=n.currency===void 0?"":n.currency[0]+"",r=n.currency===void 0?"":n.currency[1]+"",i=n.decimal===void 0?".":n.decimal+"",f=n.numerals===void 0?J:Pn(K.call(n.numerals,String)),a=n.percent===void 0?"%":n.percent+"",u=n.minus===void 0?"−":n.minus+"",c=n.nan===void 0?"NaN":n.nan+"";function o(h){h=D(h);var l=h.fill,p=h.align,y=h.sign,S=h.symbol,k=h.zero,b=h.width,T=h.comma,w=h.precision,B=h.trim,d=h.type;d==="n"?(T=!0,d="g"):Z[d]||(w===void 0&&(w=12),B=!0,d="g"),(k||l==="0"&&p==="=")&&(k=!0,l="0",p="=");var en=S==="$"?e:S==="#"&&/[boxX]/.test(d)?"0"+d.toLowerCase():"",on=S==="$"?r:/[%p]/.test(d)?a:"",O=Z[d],an=/[defgprs%]/.test(d);w=w===void 0?6:/[gprs]/.test(d)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function V(m){var N=en,g=on,x,X,j;if(d==="c")g=O(m)+g,m="";else{m=+m;var P=m<0||1/m<0;if(m=isNaN(m)?c:O(Math.abs(m),w),B&&(m=Fn(m)),P&&+m==0&&y!=="+"&&(P=!1),N=(P?y==="("?y:u:y==="-"||y==="("?"":y)+N,g=(d==="s"?Q[8+nn/3]:"")+g+(P&&y==="("?")":""),an){for(x=-1,X=m.length;++xj||j>57){g=(j===46?i+m.slice(x+1):m.slice(x))+g,m=m.slice(0,x);break}}}T&&!k&&(m=t(m,1/0));var z=N.length+m.length+g.length,M=z>1)+N+m+g+M.slice(z);break;default:m=M+N+m+g;break}return f(m)}return V.toString=function(){return h+""},V}function s(h,l){var p=o((h=D(h),h.type="f",h)),y=Math.max(-8,Math.min(8,Math.floor(v(l)/3)))*3,S=Math.pow(10,-y),k=Q[8+y/3];return function(b){return p(S*b)+k}}return{format:o,formatPrefix:s}}var F,tn,rn;Rn({thousands:",",grouping:[3],currency:["$",""]});function Rn(n){return F=En(n),tn=F.format,rn=F.formatPrefix,F}function Dn(n){return Math.max(0,-v(Math.abs(n)))}function Tn(n,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(v(t)/3)))*3-v(Math.abs(n)))}function In(n,t){return n=Math.abs(n),t=Math.abs(t)-n,Math.max(0,v(t)-v(n))+1}function Ln(n){return function(){return n}}function qn(n){return+n}var W=[0,1];function A(n){return n}function q(n,t){return(t-=n=+n)?function(e){return(e-n)/t}:Ln(isNaN(t)?NaN:.5)}function Cn(n,t){var e;return n>t&&(e=n,n=t,t=e),function(r){return Math.max(n,Math.min(t,r))}}function Gn(n,t,e){var r=n[0],i=n[1],f=t[0],a=t[1];return i2?Bn:Gn,c=o=null,h}function h(l){return l==null||isNaN(l=+l)?f:(c||(c=u(n.map(r),t,e)))(r(a(l)))}return h.invert=function(l){return a(i((o||(o=u(t,n.map(r),I)))(l)))},h.domain=function(l){return arguments.length?(n=Array.from(l,qn),s()):n.slice()},h.range=function(l){return arguments.length?(t=Array.from(l),s()):t.slice()},h.rangeRound=function(l){return t=Array.from(l),e=Sn,s()},h.clamp=function(l){return arguments.length?(a=l?!0:A,s()):a!==A},h.interpolate=function(l){return arguments.length?(e=l,s()):e},h.unknown=function(l){return arguments.length?(f=l,h):f},function(l,p){return r=l,i=p,s()}}function Xn(){return Vn()(A,A)}function Hn(n,t,e,r){var i=wn(n,t,e),f;switch(r=D(r??",f"),r.type){case"s":{var a=Math.max(Math.abs(n),Math.abs(t));return r.precision==null&&!isNaN(f=Tn(i,a))&&(r.precision=f),rn(r,a)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(f=In(i,Math.max(Math.abs(n),Math.abs(t))))&&(r.precision=f-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(f=Dn(i))&&(r.precision=f-(r.type==="%")*2);break}}return tn(r)}function Un(n){var t=n.domain;return n.ticks=function(e){var r=t();return pn(r[0],r[r.length-1],e??10)},n.tickFormat=function(e,r){var i=t();return Hn(i[0],i[i.length-1],e??10,r)},n.nice=function(e){e==null&&(e=10);var r=t(),i=0,f=r.length-1,a=r[i],u=r[f],c,o,s=10;for(u0;){if(o=L(a,u,e),o===c)return r[i]=a,r[f]=u,t(r);if(o>0)a=Math.floor(a/o)*o,u=Math.ceil(u/o)*o;else if(o<0)a=Math.ceil(a*o)/o,u=Math.floor(u*o)/o;else break;c=o}return n},n}function Yn(){var n=Xn();return n.copy=function(){return On(n,Yn())},cn.apply(n,arguments),Un(n)}export{On as a,_ as b,Xn as c,Yn as l,wn as t}; diff --git a/_nuxt/mermaid-934d9bea.GjCu814R.js b/_nuxt/mermaid-934d9bea.JP-6_YN_.js similarity index 98% rename from _nuxt/mermaid-934d9bea.GjCu814R.js rename to _nuxt/mermaid-934d9bea.JP-6_YN_.js index f55811e147..f15fad62c4 100644 --- a/_nuxt/mermaid-934d9bea.GjCu814R.js +++ b/_nuxt/mermaid-934d9bea.JP-6_YN_.js @@ -1,4 +1,4 @@ -import{_ as Z}from"./entry.TEDHt2QA.js";import{c as lh,g as hh}from"./_commonjsHelpers.5-cIlDoe.js";function ch(t){for(var e=[],i=1;i=v?M:""+Array(v+1-E.length).join(C)+M},H={s:z,z:function(M){var v=-M.utcOffset(),C=Math.abs(v),E=Math.floor(C/60),x=C%60;return(v<=0?"+":"-")+z(E,2,"0")+":"+z(x,2,"0")},m:function M(v,C){if(v.date()1)return M(b[0])}else{var j=v.name;X[j]=v,x=j}return!E&&x&&(Y=x),x||!E&&Y},K=function(M,v){if(W(M))return M.clone();var C=typeof v=="object"?v:{};return C.date=M,C.args=arguments,new Ft(C)},D=H;D.l=Nt,D.i=W,D.w=function(M,v){return K(M,{locale:v.$L,utc:v.$u,x:v.$x,$offset:v.$offset})};var Ft=function(){function M(C){this.$L=Nt(C.locale,null,!0),this.parse(C)}var v=M.prototype;return v.parse=function(C){this.$d=function(E){var x=E.date,I=E.utc;if(x===null)return new Date(NaN);if(D.u(x))return new Date;if(x instanceof Date)return new Date(x);if(typeof x=="string"&&!/Z$/i.test(x)){var b=x.match(S);if(b){var j=b[2]-1||0,R=(b[7]||"0").substring(0,3);return I?new Date(Date.UTC(b[1],j,b[3]||1,b[4]||0,b[5]||0,b[6]||0,R)):new Date(b[1],j,b[3]||1,b[4]||0,b[5]||0,b[6]||0,R)}}return new Date(x)}(C),this.$x=C.x||{},this.init()},v.init=function(){var C=this.$d;this.$y=C.getFullYear(),this.$M=C.getMonth(),this.$D=C.getDate(),this.$W=C.getDay(),this.$H=C.getHours(),this.$m=C.getMinutes(),this.$s=C.getSeconds(),this.$ms=C.getMilliseconds()},v.$utils=function(){return D},v.isValid=function(){return this.$d.toString()!==k},v.isSame=function(C,E){var x=K(C);return this.startOf(E)<=x&&x<=this.endOf(E)},v.isAfter=function(C,E){return K(C)-1}function l(u){var f=u.replace(n,"");return f.replace(i,function(c,d){return String.fromCharCode(d)})}function h(u){if(!u)return t.BLANK_URL;var f=l(u).replace(r,"").replace(n,"").trim();if(!f)return t.BLANK_URL;if(a(f))return f;var c=f.match(o);if(!c)return f;var d=c[0];return e.test(d)?t.BLANK_URL:f}t.sanitizeUrl=h})(Ms);var dh={value:()=>{}};function Is(){for(var t=0,e=arguments.length,i={},r;t=0&&(r=i.slice(n+1),i=i.slice(0,n)),i&&!e.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:r}})}Oi.prototype=Is.prototype={constructor:Oi,on:function(t,e){var i=this._,r=ph(t+"",i),n,o=-1,s=r.length;if(arguments.length<2){for(;++o0)for(var i=new Array(n),r=0,n,o;r=0&&(e=t.slice(0,i))!=="xmlns"&&(t=t.slice(i+1)),To.hasOwnProperty(e)?{space:To[e],local:t}:t}function mh(t){return function(){var e=this.ownerDocument,i=this.namespaceURI;return i===Qr&&e.documentElement.namespaceURI===Qr?e.createElement(t):e.createElementNS(i,t)}}function _h(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function $s(t){var e=cr(t);return(e.local?_h:mh)(e)}function yh(){}function Tn(t){return t==null?yh:function(){return this.querySelector(t)}}function Ch(t){typeof t!="function"&&(t=Tn(t));for(var e=this._groups,i=e.length,r=new Array(i),n=0;n=z&&(z=T+1);!(Y=S[z])&&++z<_;);H._next=Y||null}}return s=new Ct(s,r),s._enter=a,s._exit=l,s}function Ph(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function qh(){return new Ct(this._exit||this._groups.map(Ps),this._parents)}function zh(t,e,i){var r=this.enter(),n=this,o=this.exit();return typeof t=="function"?(r=t(r),r&&(r=r.selection())):r=r.append(t+""),e!=null&&(n=e(n),n&&(n=n.selection())),i==null?o.remove():i(o),r&&n?r.merge(n).order():n}function Wh(t){for(var e=t.selection?t.selection():t,i=this._groups,r=e._groups,n=i.length,o=r.length,s=Math.min(n,o),a=new Array(n),l=0;l=0;)(s=r[n])&&(o&&s.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(s,o),o=s);return this}function jh(t){t||(t=Uh);function e(f,c){return f&&c?t(f.__data__,c.__data__):!f-!c}for(var i=this._groups,r=i.length,n=new Array(r),o=0;oe?1:t>=e?0:NaN}function Yh(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function Vh(){return Array.from(this)}function Gh(){for(var t=this._groups,e=0,i=t.length;e1?this.each((e==null?oc:typeof e=="function"?ac:sc)(t,e,i??"")):Ee(this.node(),t)}function Ee(t,e){return t.style.getPropertyValue(e)||qs(t).getComputedStyle(t,null).getPropertyValue(e)}function hc(t){return function(){delete this[t]}}function cc(t,e){return function(){this[t]=e}}function uc(t,e){return function(){var i=e.apply(this,arguments);i==null?delete this[t]:this[t]=i}}function fc(t,e){return arguments.length>1?this.each((e==null?hc:typeof e=="function"?uc:cc)(t,e)):this.node()[t]}function zs(t){return t.trim().split(/^|\s+/)}function vn(t){return t.classList||new Ws(t)}function Ws(t){this._node=t,this._names=zs(t.getAttribute("class")||"")}Ws.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function Hs(t,e){for(var i=vn(t),r=-1,n=e.length;++r=0&&(i=e.slice(r+1),e=e.slice(0,r)),{type:e,name:i}})}function qc(t){return function(){var e=this.__on;if(e){for(var i=0,r=-1,n=e.length,o;i>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):i===8?ki(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):i===4?ki(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Xc.exec(t))?new gt(e[1],e[2],e[3],1):(e=Kc.exec(t))?new gt(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Zc.exec(t))?ki(e[1],e[2],e[3],e[4]):(e=Jc.exec(t))?ki(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=Qc.exec(t))?Fo(e[1],e[2]/100,e[3]/100,1):(e=tu.exec(t))?Fo(e[1],e[2]/100,e[3]/100,e[4]):vo.hasOwnProperty(t)?wo(vo[t]):t==="transparent"?new gt(NaN,NaN,NaN,0):null}function wo(t){return new gt(t>>16&255,t>>8&255,t&255,1)}function ki(t,e,i,r){return r<=0&&(t=e=i=NaN),new gt(t,e,i,r)}function ru(t){return t instanceof gi||(t=si(t)),t?(t=t.rgb(),new gt(t.r,t.g,t.b,t.opacity)):new gt}function tn(t,e,i,r){return arguments.length===1?ru(t):new gt(t,e,i,r??1)}function gt(t,e,i,r){this.r=+t,this.g=+e,this.b=+i,this.opacity=+r}kn(gt,tn,Vs(gi,{brighter(t){return t=t==null?Wi:Math.pow(Wi,t),new gt(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?ni:Math.pow(ni,t),new gt(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new gt(ue(this.r),ue(this.g),ue(this.b),Hi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Bo,formatHex:Bo,formatHex8:nu,formatRgb:Ao,toString:Ao}));function Bo(){return`#${he(this.r)}${he(this.g)}${he(this.b)}`}function nu(){return`#${he(this.r)}${he(this.g)}${he(this.b)}${he((isNaN(this.opacity)?1:this.opacity)*255)}`}function Ao(){const t=Hi(this.opacity);return`${t===1?"rgb(":"rgba("}${ue(this.r)}, ${ue(this.g)}, ${ue(this.b)}${t===1?")":`, ${t})`}`}function Hi(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ue(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function he(t){return t=ue(t),(t<16?"0":"")+t.toString(16)}function Fo(t,e,i,r){return r<=0?t=e=i=NaN:i<=0||i>=1?t=e=NaN:e<=0&&(t=NaN),new St(t,e,i,r)}function Gs(t){if(t instanceof St)return new St(t.h,t.s,t.l,t.opacity);if(t instanceof gi||(t=si(t)),!t)return new St;if(t instanceof St)return t;t=t.rgb();var e=t.r/255,i=t.g/255,r=t.b/255,n=Math.min(e,i,r),o=Math.max(e,i,r),s=NaN,a=o-n,l=(o+n)/2;return a?(e===o?s=(i-r)/a+(i0&&l<1?0:s,new St(s,a,l,t.opacity)}function ou(t,e,i,r){return arguments.length===1?Gs(t):new St(t,e,i,r??1)}function St(t,e,i,r){this.h=+t,this.s=+e,this.l=+i,this.opacity=+r}kn(St,ou,Vs(gi,{brighter(t){return t=t==null?Wi:Math.pow(Wi,t),new St(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?ni:Math.pow(ni,t),new St(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,i=this.l,r=i+(i<.5?i:1-i)*e,n=2*i-r;return new gt(Nr(t>=240?t-240:t+120,n,r),Nr(t,n,r),Nr(t<120?t+240:t-120,n,r),this.opacity)},clamp(){return new St(Lo(this.h),Si(this.s),Si(this.l),Hi(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Hi(this.opacity);return`${t===1?"hsl(":"hsla("}${Lo(this.h)}, ${Si(this.s)*100}%, ${Si(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Lo(t){return t=(t||0)%360,t<0?t+360:t}function Si(t){return Math.max(0,Math.min(1,t||0))}function Nr(t,e,i){return(t<60?e+(i-e)*t/60:t<180?i:t<240?e+(i-e)*(240-t)/60:e)*255}const Sn=t=>()=>t;function Xs(t,e){return function(i){return t+i*e}}function su(t,e,i){return t=Math.pow(t,i),e=Math.pow(e,i)-t,i=1/i,function(r){return Math.pow(t+r*e,i)}}function pb(t,e){var i=e-t;return i?Xs(t,i>180||i<-180?i-360*Math.round(i/360):i):Sn(isNaN(t)?e:t)}function au(t){return(t=+t)==1?Ks:function(e,i){return i-e?su(e,i,t):Sn(isNaN(e)?i:e)}}function Ks(t,e){var i=e-t;return i?Xs(t,i):Sn(isNaN(t)?e:t)}const Eo=function t(e){var i=au(e);function r(n,o){var s=i((n=tn(n)).r,(o=tn(o)).r),a=i(n.g,o.g),l=i(n.b,o.b),h=Ks(n.opacity,o.opacity);return function(u){return n.r=s(u),n.g=a(u),n.b=l(u),n.opacity=h(u),n+""}}return r.gamma=t,r}(1);function te(t,e){return t=+t,e=+e,function(i){return t*(1-i)+e*i}}var en=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Rr=new RegExp(en.source,"g");function lu(t){return function(){return t}}function hu(t){return function(e){return t(e)+""}}function cu(t,e){var i=en.lastIndex=Rr.lastIndex=0,r,n,o,s=-1,a=[],l=[];for(t=t+"",e=e+"";(r=en.exec(t))&&(n=Rr.exec(e));)(o=n.index)>i&&(o=e.slice(i,o),a[s]?a[s]+=o:a[++s]=o),(r=r[0])===(n=n[0])?a[s]?a[s]+=n:a[++s]=n:(a[++s]=null,l.push({i:s,x:te(r,n)})),i=Rr.lastIndex;return i180?u+=360:u-h>180&&(h+=360),c.push({i:f.push(n(f)+"rotate(",null,r)-2,x:te(h,u)})):u&&f.push(n(f)+"rotate("+u+r)}function a(h,u,f,c){h!==u?c.push({i:f.push(n(f)+"skewX(",null,r)-2,x:te(h,u)}):u&&f.push(n(f)+"skewX("+u+r)}function l(h,u,f,c,d,_){if(h!==f||u!==c){var k=d.push(n(d)+"scale(",null,",",null,")");_.push({i:k-4,x:te(h,f)},{i:k-2,x:te(u,c)})}else(f!==1||c!==1)&&d.push(n(d)+"scale("+f+","+c+")")}return function(h,u){var f=[],c=[];return h=t(h),u=t(u),o(h.translateX,h.translateY,u.translateX,u.translateY,f,c),s(h.rotate,u.rotate,f,c),a(h.skewX,u.skewX,f,c),l(h.scaleX,h.scaleY,u.scaleX,u.scaleY,f,c),h=u=null,function(d){for(var _=-1,k=c.length,S;++_=0&&t._call.call(void 0,e),t=t._next;--Oe}function Mo(){pe=(Ui=ai.now())+ur,Oe=Ge=0;try{mu()}finally{Oe=0,yu(),pe=0}}function _u(){var t=ai.now(),e=t-Ui;e>Qs&&(ur-=e,Ui=t)}function yu(){for(var t,e=ji,i,r=1/0;e;)e._call?(r>e._time&&(r=e._time),t=e,e=e._next):(i=e._next,e._next=null,e=t?t._next=i:ji=i);Xe=t,nn(r)}function nn(t){if(!Oe){Ge&&(Ge=clearTimeout(Ge));var e=t-pe;e>24?(t<1/0&&(Ge=setTimeout(Mo,t-ai.now()-ur)),He&&(He=clearInterval(He))):(He||(Ui=ai.now(),He=setInterval(_u,Qs)),Oe=1,ta(Mo))}}function Io(t,e,i){var r=new Yi;return e=e==null?0:+e,r.restart(n=>{r.stop(),t(n+e)},e,i),r}var Cu=Is("start","end","cancel","interrupt"),xu=[],ia=0,$o=1,on=2,Mi=3,Do=4,sn=5,Ii=6;function fr(t,e,i,r,n,o){var s=t.__transition;if(!s)t.__transition={};else if(i in s)return;bu(t,i,{name:e,index:r,group:n,on:Cu,tween:xu,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:ia})}function Bn(t,e){var i=At(t,e);if(i.state>ia)throw new Error("too late; already scheduled");return i}function $t(t,e){var i=At(t,e);if(i.state>Mi)throw new Error("too late; already running");return i}function At(t,e){var i=t.__transition;if(!i||!(i=i[e]))throw new Error("transition not found");return i}function bu(t,e,i){var r=t.__transition,n;r[e]=i,i.timer=ea(o,0,i.time);function o(h){i.state=$o,i.timer.restart(s,i.delay,i.time),i.delay<=h&&s(h-i.delay)}function s(h){var u,f,c,d;if(i.state!==$o)return l();for(u in r)if(d=r[u],d.name===i.name){if(d.state===Mi)return Io(s);d.state===Do?(d.state=Ii,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete r[u]):+uon&&r.state=0&&(e=e.slice(0,i)),!e||e==="start"})}function Ju(t,e,i){var r,n,o=Zu(e)?Bn:$t;return function(){var s=o(this,t),a=s.on;a!==r&&(n=(r=a).copy()).on(e,i),s.on=n}}function Qu(t,e){var i=this._id;return arguments.length<2?At(this.node(),i).on.on(t):this.each(Ju(i,t,e))}function tf(t){return function(){var e=this.parentNode;for(var i in this.__transition)if(+i!==t)return;e&&e.removeChild(this)}}function ef(){return this.on("end.remove",tf(this._id))}function rf(t){var e=this._name,i=this._id;typeof t!="function"&&(t=Tn(t));for(var r=this._groups,n=r.length,o=new Array(n),s=0;s1?0:t<-1?Fn:Math.acos(t)}function kb(t){return t>=1?Ro:t<=-1?-Ro:Math.asin(t)}function sa(t){this._context=t}sa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}}};function Af(t){return new sa(t)}class aa{constructor(e,i){this._context=e,this._x=i}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,i){switch(e=+e,i=+i,this._point){case 0:{this._point=1,this._line?this._context.lineTo(e,i):this._context.moveTo(e,i);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,i,e,i):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+i)/2,e,this._y0,e,i);break}}this._x0=e,this._y0=i}}function Ff(t){return new aa(t,!0)}function Lf(t){return new aa(t,!1)}function ie(){}function Vi(t,e,i){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+i)/6)}function dr(t){this._context=t}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Vi(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Vi(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};function Ef(t){return new dr(t)}function la(t){this._context=t}la.prototype={areaStart:ie,areaEnd:ie,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:Vi(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};function Of(t){return new la(t)}function ha(t){this._context=t}ha.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var i=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(i,r):this._context.moveTo(i,r);break;case 3:this._point=4;default:Vi(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};function Mf(t){return new ha(t)}function ca(t,e){this._basis=new dr(t),this._beta=e}ca.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,i=t.length-1;if(i>0)for(var r=t[0],n=e[0],o=t[i]-r,s=e[i]-n,a=-1,l;++a<=i;)l=a/i,this._basis.point(this._beta*t[a]+(1-this._beta)*(r+l*o),this._beta*e[a]+(1-this._beta)*(n+l*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const If=function t(e){function i(r){return e===1?new dr(r):new ca(r,e)}return i.beta=function(r){return t(+r)},i}(.85);function Gi(t,e,i){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-i),t._x2,t._y2)}function Ln(t,e){this._context=t,this._k=(1-e)/6}Ln.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Gi(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:Gi(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const $f=function t(e){function i(r){return new Ln(r,e)}return i.tension=function(r){return t(+r)},i}(0);function En(t,e){this._context=t,this._k=(1-e)/6}En.prototype={areaStart:ie,areaEnd:ie,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Gi(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Df=function t(e){function i(r){return new En(r,e)}return i.tension=function(r){return t(+r)},i}(0);function On(t,e){this._context=t,this._k=(1-e)/6}On.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Gi(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Nf=function t(e){function i(r){return new On(r,e)}return i.tension=function(r){return t(+r)},i}(0);function Mn(t,e,i){var r=t._x1,n=t._y1,o=t._x2,s=t._y2;if(t._l01_a>No){var a=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*a-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,n=(n*a-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>No){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,u=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*h+t._x1*t._l23_2a-e*t._l12_2a)/u,s=(s*h+t._y1*t._l23_2a-i*t._l12_2a)/u}t._context.bezierCurveTo(r,n,o,s,t._x2,t._y2)}function ua(t,e){this._context=t,this._alpha=e}ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var i=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(i*i+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Mn(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Rf=function t(e){function i(r){return e?new ua(r,e):new Ln(r,0)}return i.alpha=function(r){return t(+r)},i}(.5);function fa(t,e){this._context=t,this._alpha=e}fa.prototype={areaStart:ie,areaEnd:ie,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,e){if(t=+t,e=+e,this._point){var i=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(i*i+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Mn(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Pf=function t(e){function i(r){return e?new fa(r,e):new En(r,0)}return i.alpha=function(r){return t(+r)},i}(.5);function da(t,e){this._context=t,this._alpha=e}da.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var i=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(i*i+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Mn(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const qf=function t(e){function i(r){return e?new da(r,e):new On(r,0)}return i.alpha=function(r){return t(+r)},i}(.5);function pa(t){this._context=t}pa.prototype={areaStart:ie,areaEnd:ie,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}};function zf(t){return new pa(t)}function Po(t){return t<0?-1:1}function qo(t,e,i){var r=t._x1-t._x0,n=e-t._x1,o=(t._y1-t._y0)/(r||n<0&&-0),s=(i-t._y1)/(n||r<0&&-0),a=(o*n+s*r)/(r+n);return(Po(o)+Po(s))*Math.min(Math.abs(o),Math.abs(s),.5*Math.abs(a))||0}function zo(t,e){var i=t._x1-t._x0;return i?(3*(t._y1-t._y0)/i-e)/2:e}function Pr(t,e,i){var r=t._x0,n=t._y0,o=t._x1,s=t._y1,a=(o-r)/3;t._context.bezierCurveTo(r+a,n+a*e,o-a,s-a*i,o,s)}function Xi(t){this._context=t}Xi.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Pr(this,this._t0,zo(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){var i=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,Pr(this,zo(this,i=qo(this,t,e)),i);break;default:Pr(this,this._t0,i=qo(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=i}}};function ga(t){this._context=new ma(t)}(ga.prototype=Object.create(Xi.prototype)).point=function(t,e){Xi.prototype.point.call(this,e,t)};function ma(t){this._context=t}ma.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,i,r,n,o){this._context.bezierCurveTo(e,t,r,i,o,n)}};function Wf(t){return new Xi(t)}function Hf(t){return new ga(t)}function _a(t){this._context=t}_a.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,e=this._y,i=t.length;if(i)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),i===2)this._context.lineTo(t[1],e[1]);else for(var r=Wo(t),n=Wo(e),o=0,s=1;s=0;--e)n[e]=(s[e]-n[e+1])/o[e];for(o[i-1]=(t[i]+n[i-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var i=this._x*(1-this._t)+t*this._t;this._context.lineTo(i,this._y),this._context.lineTo(i,e)}break}}this._x=t,this._y=e}};function Uf(t){return new pr(t,.5)}function Yf(t){return new pr(t,0)}function Vf(t){return new pr(t,1)}function Ke(t,e,i){this.k=t,this.x=e,this.y=i}Ke.prototype={constructor:Ke,scale:function(t){return t===1?this:new Ke(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Ke(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};Ke.prototype;/*! @license DOMPurify 3.0.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.6/LICENSE */const{entries:ya,setPrototypeOf:Ho,isFrozen:Gf,getPrototypeOf:Xf,getOwnPropertyDescriptor:Ca}=Object;let{freeze:ct,seal:Bt,create:xa}=Object,{apply:an,construct:ln}=typeof Reflect<"u"&&Reflect;ct||(ct=function(e){return e});Bt||(Bt=function(e){return e});an||(an=function(e,i,r){return e.apply(i,r)});ln||(ln=function(e,i){return new e(...i)});const Bi=Tt(Array.prototype.forEach),jo=Tt(Array.prototype.pop),je=Tt(Array.prototype.push),$i=Tt(String.prototype.toLowerCase),qr=Tt(String.prototype.toString),Kf=Tt(String.prototype.match),Ue=Tt(String.prototype.replace),Zf=Tt(String.prototype.indexOf),Jf=Tt(String.prototype.trim),yt=Tt(RegExp.prototype.test),Ye=Qf(TypeError);function Tt(t){return function(e){for(var i=arguments.length,r=new Array(i>1?i-1:0),n=1;n2&&arguments[2]!==void 0?arguments[2]:$i;Ho&&Ho(t,null);let r=e.length;for(;r--;){let n=e[r];if(typeof n=="string"){const o=i(n);o!==n&&(Gf(e)||(e[r]=o),n=o)}t[n]=!0}return t}function Se(t){const e=xa(null);for(const[i,r]of ya(t))Ca(t,i)!==void 0&&(e[i]=r);return e}function Ai(t,e){for(;t!==null;){const r=Ca(t,e);if(r){if(r.get)return Tt(r.get);if(typeof r.value=="function")return Tt(r.value)}t=Xf(t)}function i(r){return console.warn("fallback value for",r),null}return i}const Uo=ct(["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","section","select","shadow","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"]),zr=ct(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Wr=ct(["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"]),td=ct(["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"]),Hr=ct(["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"]),ed=ct(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Yo=ct(["#text"]),Vo=ct(["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","face","for","headers","height","hidden","high","href","hreflang","id","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","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns","slot"]),jr=ct(["accent-height","accumulate","additive","alignment-baseline","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","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","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","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","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","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"]),Go=ct(["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"]),Fi=ct(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),id=Bt(/\{\{[\w\W]*|[\w\W]*\}\}/gm),rd=Bt(/<%[\w\W]*|[\w\W]*%>/gm),nd=Bt(/\${[\w\W]*}/gm),od=Bt(/^data-[\-\w.\u00B7-\uFFFF]/),sd=Bt(/^aria-[\-\w]+$/),ba=Bt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ad=Bt(/^(?:\w+script|data):/i),ld=Bt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ta=Bt(/^html$/i);var Xo=Object.freeze({__proto__:null,MUSTACHE_EXPR:id,ERB_EXPR:rd,TMPLIT_EXPR:nd,DATA_ATTR:od,ARIA_ATTR:sd,IS_ALLOWED_URI:ba,IS_SCRIPT_OR_DATA:ad,ATTR_WHITESPACE:ld,DOCTYPE_NAME:Ta});const hd=function(){return typeof window>"u"?null:window},cd=function(e,i){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null;const n="data-tt-policy-suffix";i&&i.hasAttribute(n)&&(r=i.getAttribute(n));const o="dompurify"+(r?"#"+r:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}};function va(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:hd();const e=B=>va(B);if(e.version="3.0.6",e.removed=[],!t||!t.document||t.document.nodeType!==9)return e.isSupported=!1,e;let{document:i}=t;const r=i,n=r.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:h,NamedNodeMap:u=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:f,DOMParser:c,trustedTypes:d}=t,_=l.prototype,k=Ai(_,"cloneNode"),S=Ai(_,"nextSibling"),P=Ai(_,"childNodes"),T=Ai(_,"parentNode");if(typeof s=="function"){const B=i.createElement("template");B.content&&B.content.ownerDocument&&(i=B.content.ownerDocument)}let z,H="";const{implementation:Y,createNodeIterator:X,createDocumentFragment:W,getElementsByTagName:Nt}=i,{importNode:K}=r;let D={};e.isSupported=typeof ya=="function"&&typeof T=="function"&&Y&&Y.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:Ft,ERB_EXPR:Rt,TMPLIT_EXPR:M,DATA_ATTR:v,ARIA_ATTR:C,IS_SCRIPT_OR_DATA:E,ATTR_WHITESPACE:x}=Xo;let{IS_ALLOWED_URI:I}=Xo,b=null;const j=N({},[...Uo,...zr,...Wr,...Hr,...Yo]);let R=null;const V=N({},[...Vo,...jr,...Go,...Fi]);let q=Object.seal(xa(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}})),ut=null,_t=null,Zt=!0,Pt=!0,qt=!1,et=!0,at=!1,kt=!1,Jt=!1,Fr=!1,xe=!1,Ci=!1,xi=!1,io=!0,ro=!1;const Ql="user-content-";let Lr=!0,ze=!1,be={},Te=null;const no=N({},["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 oo=null;const so=N({},["audio","video","img","source","image","track"]);let Er=null;const ao=N({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),bi="http://www.w3.org/1998/Math/MathML",Ti="http://www.w3.org/2000/svg",zt="http://www.w3.org/1999/xhtml";let ve=zt,Or=!1,Mr=null;const th=N({},[bi,Ti,zt],qr);let oe=null;const eh=["application/xhtml+xml","text/html"],ih="text/html";let tt=null,ke=null;const rh=i.createElement("form"),lo=function(p){return p instanceof RegExp||p instanceof Function},Ir=function(){let p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ke&&ke===p)){if((!p||typeof p!="object")&&(p={}),p=Se(p),oe=eh.indexOf(p.PARSER_MEDIA_TYPE)===-1?oe=ih:oe=p.PARSER_MEDIA_TYPE,tt=oe==="application/xhtml+xml"?qr:$i,b="ALLOWED_TAGS"in p?N({},p.ALLOWED_TAGS,tt):j,R="ALLOWED_ATTR"in p?N({},p.ALLOWED_ATTR,tt):V,Mr="ALLOWED_NAMESPACES"in p?N({},p.ALLOWED_NAMESPACES,qr):th,Er="ADD_URI_SAFE_ATTR"in p?N(Se(ao),p.ADD_URI_SAFE_ATTR,tt):ao,oo="ADD_DATA_URI_TAGS"in p?N(Se(so),p.ADD_DATA_URI_TAGS,tt):so,Te="FORBID_CONTENTS"in p?N({},p.FORBID_CONTENTS,tt):no,ut="FORBID_TAGS"in p?N({},p.FORBID_TAGS,tt):{},_t="FORBID_ATTR"in p?N({},p.FORBID_ATTR,tt):{},be="USE_PROFILES"in p?p.USE_PROFILES:!1,Zt=p.ALLOW_ARIA_ATTR!==!1,Pt=p.ALLOW_DATA_ATTR!==!1,qt=p.ALLOW_UNKNOWN_PROTOCOLS||!1,et=p.ALLOW_SELF_CLOSE_IN_ATTR!==!1,at=p.SAFE_FOR_TEMPLATES||!1,kt=p.WHOLE_DOCUMENT||!1,xe=p.RETURN_DOM||!1,Ci=p.RETURN_DOM_FRAGMENT||!1,xi=p.RETURN_TRUSTED_TYPE||!1,Fr=p.FORCE_BODY||!1,io=p.SANITIZE_DOM!==!1,ro=p.SANITIZE_NAMED_PROPS||!1,Lr=p.KEEP_CONTENT!==!1,ze=p.IN_PLACE||!1,I=p.ALLOWED_URI_REGEXP||ba,ve=p.NAMESPACE||zt,q=p.CUSTOM_ELEMENT_HANDLING||{},p.CUSTOM_ELEMENT_HANDLING&&lo(p.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(q.tagNameCheck=p.CUSTOM_ELEMENT_HANDLING.tagNameCheck),p.CUSTOM_ELEMENT_HANDLING&&lo(p.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(q.attributeNameCheck=p.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),p.CUSTOM_ELEMENT_HANDLING&&typeof p.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(q.allowCustomizedBuiltInElements=p.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),at&&(Pt=!1),Ci&&(xe=!0),be&&(b=N({},[...Yo]),R=[],be.html===!0&&(N(b,Uo),N(R,Vo)),be.svg===!0&&(N(b,zr),N(R,jr),N(R,Fi)),be.svgFilters===!0&&(N(b,Wr),N(R,jr),N(R,Fi)),be.mathMl===!0&&(N(b,Hr),N(R,Go),N(R,Fi))),p.ADD_TAGS&&(b===j&&(b=Se(b)),N(b,p.ADD_TAGS,tt)),p.ADD_ATTR&&(R===V&&(R=Se(R)),N(R,p.ADD_ATTR,tt)),p.ADD_URI_SAFE_ATTR&&N(Er,p.ADD_URI_SAFE_ATTR,tt),p.FORBID_CONTENTS&&(Te===no&&(Te=Se(Te)),N(Te,p.FORBID_CONTENTS,tt)),Lr&&(b["#text"]=!0),kt&&N(b,["html","head","body"]),b.table&&(N(b,["tbody"]),delete ut.tbody),p.TRUSTED_TYPES_POLICY){if(typeof p.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ye('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof p.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ye('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');z=p.TRUSTED_TYPES_POLICY,H=z.createHTML("")}else z===void 0&&(z=cd(d,n)),z!==null&&typeof H=="string"&&(H=z.createHTML(""));ct&&ct(p),ke=p}},ho=N({},["mi","mo","mn","ms","mtext"]),co=N({},["foreignobject","desc","title","annotation-xml"]),nh=N({},["title","style","font","a","script"]),vi=N({},zr);N(vi,Wr),N(vi,td);const $r=N({},Hr);N($r,ed);const oh=function(p){let m=T(p);(!m||!m.tagName)&&(m={namespaceURI:ve,tagName:"template"});const w=$i(p.tagName),U=$i(m.tagName);return Mr[p.namespaceURI]?p.namespaceURI===Ti?m.namespaceURI===zt?w==="svg":m.namespaceURI===bi?w==="svg"&&(U==="annotation-xml"||ho[U]):!!vi[w]:p.namespaceURI===bi?m.namespaceURI===zt?w==="math":m.namespaceURI===Ti?w==="math"&&co[U]:!!$r[w]:p.namespaceURI===zt?m.namespaceURI===Ti&&!co[U]||m.namespaceURI===bi&&!ho[U]?!1:!$r[w]&&(nh[w]||!vi[w]):!!(oe==="application/xhtml+xml"&&Mr[p.namespaceURI]):!1},se=function(p){je(e.removed,{element:p});try{p.parentNode.removeChild(p)}catch{p.remove()}},Dr=function(p,m){try{je(e.removed,{attribute:m.getAttributeNode(p),from:m})}catch{je(e.removed,{attribute:null,from:m})}if(m.removeAttribute(p),p==="is"&&!R[p])if(xe||Ci)try{se(m)}catch{}else try{m.setAttribute(p,"")}catch{}},uo=function(p){let m=null,w=null;if(Fr)p=""+p;else{const rt=Kf(p,/^[\r\n\t ]+/);w=rt&&rt[0]}oe==="application/xhtml+xml"&&ve===zt&&(p=''+p+"");const U=z?z.createHTML(p):p;if(ve===zt)try{m=new c().parseFromString(U,oe)}catch{}if(!m||!m.documentElement){m=Y.createDocument(ve,"template",null);try{m.documentElement.innerHTML=Or?H:U}catch{}}const it=m.body||m.documentElement;return p&&w&&it.insertBefore(i.createTextNode(w),it.childNodes[0]||null),ve===zt?Nt.call(m,kt?"html":"body")[0]:kt?m.documentElement:it},fo=function(p){return X.call(p.ownerDocument||p,p,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT,null)},sh=function(p){return p instanceof f&&(typeof p.nodeName!="string"||typeof p.textContent!="string"||typeof p.removeChild!="function"||!(p.attributes instanceof u)||typeof p.removeAttribute!="function"||typeof p.setAttribute!="function"||typeof p.namespaceURI!="string"||typeof p.insertBefore!="function"||typeof p.hasChildNodes!="function")},po=function(p){return typeof a=="function"&&p instanceof a},Wt=function(p,m,w){D[p]&&Bi(D[p],U=>{U.call(e,m,w,ke)})},go=function(p){let m=null;if(Wt("beforeSanitizeElements",p,null),sh(p))return se(p),!0;const w=tt(p.nodeName);if(Wt("uponSanitizeElement",p,{tagName:w,allowedTags:b}),p.hasChildNodes()&&!po(p.firstElementChild)&&yt(/<[/\w]/g,p.innerHTML)&&yt(/<[/\w]/g,p.textContent))return se(p),!0;if(!b[w]||ut[w]){if(!ut[w]&&_o(w)&&(q.tagNameCheck instanceof RegExp&&yt(q.tagNameCheck,w)||q.tagNameCheck instanceof Function&&q.tagNameCheck(w)))return!1;if(Lr&&!Te[w]){const U=T(p)||p.parentNode,it=P(p)||p.childNodes;if(it&&U){const rt=it.length;for(let ft=rt-1;ft>=0;--ft)U.insertBefore(k(it[ft],!0),S(p))}}return se(p),!0}return p instanceof l&&!oh(p)||(w==="noscript"||w==="noembed"||w==="noframes")&&yt(/<\/no(script|embed|frames)/i,p.innerHTML)?(se(p),!0):(at&&p.nodeType===3&&(m=p.textContent,Bi([Ft,Rt,M],U=>{m=Ue(m,U," ")}),p.textContent!==m&&(je(e.removed,{element:p.cloneNode()}),p.textContent=m)),Wt("afterSanitizeElements",p,null),!1)},mo=function(p,m,w){if(io&&(m==="id"||m==="name")&&(w in i||w in rh))return!1;if(!(Pt&&!_t[m]&&yt(v,m))){if(!(Zt&&yt(C,m))){if(!R[m]||_t[m]){if(!(_o(p)&&(q.tagNameCheck instanceof RegExp&&yt(q.tagNameCheck,p)||q.tagNameCheck instanceof Function&&q.tagNameCheck(p))&&(q.attributeNameCheck instanceof RegExp&&yt(q.attributeNameCheck,m)||q.attributeNameCheck instanceof Function&&q.attributeNameCheck(m))||m==="is"&&q.allowCustomizedBuiltInElements&&(q.tagNameCheck instanceof RegExp&&yt(q.tagNameCheck,w)||q.tagNameCheck instanceof Function&&q.tagNameCheck(w))))return!1}else if(!Er[m]){if(!yt(I,Ue(w,x,""))){if(!((m==="src"||m==="xlink:href"||m==="href")&&p!=="script"&&Zf(w,"data:")===0&&oo[p])){if(!(qt&&!yt(E,Ue(w,x,"")))){if(w)return!1}}}}}}return!0},_o=function(p){return p.indexOf("-")>0},yo=function(p){Wt("beforeSanitizeAttributes",p,null);const{attributes:m}=p;if(!m)return;const w={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:R};let U=m.length;for(;U--;){const it=m[U],{name:rt,namespaceURI:ft,value:ae}=it,We=tt(rt);let dt=rt==="value"?ae:Jf(ae);if(w.attrName=We,w.attrValue=dt,w.keepAttr=!0,w.forceKeepAttr=void 0,Wt("uponSanitizeAttribute",p,w),dt=w.attrValue,w.forceKeepAttr||(Dr(rt,p),!w.keepAttr))continue;if(!et&&yt(/\/>/i,dt)){Dr(rt,p);continue}at&&Bi([Ft,Rt,M],xo=>{dt=Ue(dt,xo," ")});const Co=tt(p.nodeName);if(mo(Co,We,dt)){if(ro&&(We==="id"||We==="name")&&(Dr(rt,p),dt=Ql+dt),z&&typeof d=="object"&&typeof d.getAttributeType=="function"&&!ft)switch(d.getAttributeType(Co,We)){case"TrustedHTML":{dt=z.createHTML(dt);break}case"TrustedScriptURL":{dt=z.createScriptURL(dt);break}}try{ft?p.setAttributeNS(ft,rt,dt):p.setAttribute(rt,dt),jo(e.removed)}catch{}}}Wt("afterSanitizeAttributes",p,null)},ah=function B(p){let m=null;const w=fo(p);for(Wt("beforeSanitizeShadowDOM",p,null);m=w.nextNode();)Wt("uponSanitizeShadowNode",m,null),!go(m)&&(m.content instanceof o&&B(m.content),yo(m));Wt("afterSanitizeShadowDOM",p,null)};return e.sanitize=function(B){let p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},m=null,w=null,U=null,it=null;if(Or=!B,Or&&(B=""),typeof B!="string"&&!po(B))if(typeof B.toString=="function"){if(B=B.toString(),typeof B!="string")throw Ye("dirty is not a string, aborting")}else throw Ye("toString is not a function");if(!e.isSupported)return B;if(Jt||Ir(p),e.removed=[],typeof B=="string"&&(ze=!1),ze){if(B.nodeName){const ae=tt(B.nodeName);if(!b[ae]||ut[ae])throw Ye("root node is forbidden and cannot be sanitized in-place")}}else if(B instanceof a)m=uo(""),w=m.ownerDocument.importNode(B,!0),w.nodeType===1&&w.nodeName==="BODY"||w.nodeName==="HTML"?m=w:m.appendChild(w);else{if(!xe&&!at&&!kt&&B.indexOf("<")===-1)return z&&xi?z.createHTML(B):B;if(m=uo(B),!m)return xe?null:xi?H:""}m&&Fr&&se(m.firstChild);const rt=fo(ze?B:m);for(;U=rt.nextNode();)go(U)||(U.content instanceof o&&ah(U.content),yo(U));if(ze)return B;if(xe){if(Ci)for(it=W.call(m.ownerDocument);m.firstChild;)it.appendChild(m.firstChild);else it=m;return(R.shadowroot||R.shadowrootmode)&&(it=K.call(r,it,!0)),it}let ft=kt?m.outerHTML:m.innerHTML;return kt&&b["!doctype"]&&m.ownerDocument&&m.ownerDocument.doctype&&m.ownerDocument.doctype.name&&yt(Ta,m.ownerDocument.doctype.name)&&(ft=" `+ft),at&&Bi([Ft,Rt,M],ae=>{ft=Ue(ft,ae," ")}),z&&xi?z.createHTML(ft):ft},e.setConfig=function(){let B=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ir(B),Jt=!0},e.clearConfig=function(){ke=null,Jt=!1},e.isValidAttribute=function(B,p,m){ke||Ir({});const w=tt(B),U=tt(p);return mo(w,U,m)},e.addHook=function(B,p){typeof p=="function"&&(D[B]=D[B]||[],je(D[B],p))},e.removeHook=function(B){if(D[B])return jo(D[B])},e.removeHooks=function(B){D[B]&&(D[B]=[])},e.removeAllHooks=function(){D={}},e}var Ki=va();const Di={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,i)=>(i<0&&(i+=1),i>1&&(i-=1),i<1/6?t+(e-t)*6*i:i<1/2?e:i<2/3?t+(e-t)*(2/3-i)*6:t),hsl2rgb:({h:t,s:e,l:i},r)=>{if(!e)return i*2.55;t/=360,e/=100,i/=100;const n=i<.5?i*(1+e):i+e-i*e,o=2*i-n;switch(r){case"r":return Di.hue2rgb(o,n,t+1/3)*255;case"g":return Di.hue2rgb(o,n,t)*255;case"b":return Di.hue2rgb(o,n,t-1/3)*255}},rgb2hsl:({r:t,g:e,b:i},r)=>{t/=255,e/=255,i/=255;const n=Math.max(t,e,i),o=Math.min(t,e,i),s=(n+o)/2;if(r==="l")return s*100;if(n===o)return 0;const a=n-o,l=s>.5?a/(2-n-o):a/(n+o);if(r==="s")return l*100;switch(n){case t:return((e-i)/a+(ee>i?Math.min(e,Math.max(i,t)):Math.min(i,Math.max(e,t)),round:t=>Math.round(t*1e10)/1e10},fd=ud,dd={dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}},pd=dd,$={channel:Di,lang:fd,unit:pd},Qt={};for(let t=0;t<=255;t++)Qt[t]=$.unit.dec2hex(t);const nt={ALL:0,RGB:1,HSL:2};class gd{constructor(){this.type=nt.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=nt.ALL}is(e){return this.type===e}}class md{constructor(e,i){this.color=i,this.changed=!1,this.data=e,this.type=new gd}set(e,i){return this.color=i,this.changed=!1,this.data=e,this.type.type=nt.ALL,this}_ensureHSL(){const e=this.data,{h:i,s:r,l:n}=e;i===void 0&&(e.h=$.channel.rgb2hsl(e,"h")),r===void 0&&(e.s=$.channel.rgb2hsl(e,"s")),n===void 0&&(e.l=$.channel.rgb2hsl(e,"l"))}_ensureRGB(){const e=this.data,{r:i,g:r,b:n}=e;i===void 0&&(e.r=$.channel.hsl2rgb(e,"r")),r===void 0&&(e.g=$.channel.hsl2rgb(e,"g")),n===void 0&&(e.b=$.channel.hsl2rgb(e,"b"))}get r(){const e=this.data,i=e.r;return!this.type.is(nt.HSL)&&i!==void 0?i:(this._ensureHSL(),$.channel.hsl2rgb(e,"r"))}get g(){const e=this.data,i=e.g;return!this.type.is(nt.HSL)&&i!==void 0?i:(this._ensureHSL(),$.channel.hsl2rgb(e,"g"))}get b(){const e=this.data,i=e.b;return!this.type.is(nt.HSL)&&i!==void 0?i:(this._ensureHSL(),$.channel.hsl2rgb(e,"b"))}get h(){const e=this.data,i=e.h;return!this.type.is(nt.RGB)&&i!==void 0?i:(this._ensureRGB(),$.channel.rgb2hsl(e,"h"))}get s(){const e=this.data,i=e.s;return!this.type.is(nt.RGB)&&i!==void 0?i:(this._ensureRGB(),$.channel.rgb2hsl(e,"s"))}get l(){const e=this.data,i=e.l;return!this.type.is(nt.RGB)&&i!==void 0?i:(this._ensureRGB(),$.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(nt.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(nt.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(nt.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(nt.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(nt.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(nt.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}}const _d=md,gr=new _d({r:0,g:0,b:0,a:0},"transparent"),Le={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(t.charCodeAt(0)!==35)return;const e=t.match(Le.re);if(!e)return;const i=e[1],r=parseInt(i,16),n=i.length,o=n%4===0,s=n>4,a=s?1:17,l=s?8:4,h=o?0:-1,u=s?255:15;return gr.set({r:(r>>l*(h+3)&u)*a,g:(r>>l*(h+2)&u)*a,b:(r>>l*(h+1)&u)*a,a:o?(r&u)*a/255:1},t)},stringify:t=>{const{r:e,g:i,b:r,a:n}=t;return n<1?`#${Qt[Math.round(e)]}${Qt[Math.round(i)]}${Qt[Math.round(r)]}${Qt[Math.round(n*255)]}`:`#${Qt[Math.round(e)]}${Qt[Math.round(i)]}${Qt[Math.round(r)]}`}},ce={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{const e=t.match(ce.hueRe);if(e){const[,i,r]=e;switch(r){case"grad":return $.channel.clamp.h(parseFloat(i)*.9);case"rad":return $.channel.clamp.h(parseFloat(i)*180/Math.PI);case"turn":return $.channel.clamp.h(parseFloat(i)*360)}}return $.channel.clamp.h(parseFloat(t))},parse:t=>{const e=t.charCodeAt(0);if(e!==104&&e!==72)return;const i=t.match(ce.re);if(!i)return;const[,r,n,o,s,a]=i;return gr.set({h:ce._hue2deg(r),s:$.channel.clamp.s(parseFloat(n)),l:$.channel.clamp.l(parseFloat(o)),a:s?$.channel.clamp.a(a?parseFloat(s)/100:parseFloat(s)):1},t)},stringify:t=>{const{h:e,s:i,l:r,a:n}=t;return n<1?`hsla(${$.lang.round(e)}, ${$.lang.round(i)}%, ${$.lang.round(r)}%, ${n})`:`hsl(${$.lang.round(e)}, ${$.lang.round(i)}%, ${$.lang.round(r)}%)`}},Je={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();const e=Je.colors[t];if(e)return Le.parse(e)},stringify:t=>{const e=Le.stringify(t);for(const i in Je.colors)if(Je.colors[i]===e)return i}},Ze={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{const e=t.charCodeAt(0);if(e!==114&&e!==82)return;const i=t.match(Ze.re);if(!i)return;const[,r,n,o,s,a,l,h,u]=i;return gr.set({r:$.channel.clamp.r(n?parseFloat(r)*2.55:parseFloat(r)),g:$.channel.clamp.g(s?parseFloat(o)*2.55:parseFloat(o)),b:$.channel.clamp.b(l?parseFloat(a)*2.55:parseFloat(a)),a:h?$.channel.clamp.a(u?parseFloat(h)/100:parseFloat(h)):1},t)},stringify:t=>{const{r:e,g:i,b:r,a:n}=t;return n<1?`rgba(${$.lang.round(e)}, ${$.lang.round(i)}, ${$.lang.round(r)}, ${$.lang.round(n)})`:`rgb(${$.lang.round(e)}, ${$.lang.round(i)}, ${$.lang.round(r)})`}},Ot={format:{keyword:Je,hex:Le,rgb:Ze,rgba:Ze,hsl:ce,hsla:ce},parse:t=>{if(typeof t!="string")return t;const e=Le.parse(t)||Ze.parse(t)||ce.parse(t)||Je.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(nt.HSL)||t.data.r===void 0?ce.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Ze.stringify(t):Le.stringify(t)},ka=(t,e)=>{const i=Ot.parse(t);for(const r in e)i[r]=$.channel.clamp[r](e[r]);return Ot.stringify(i)},Qe=(t,e,i=0,r=1)=>{if(typeof t!="number")return ka(t,{a:e});const n=gr.set({r:$.channel.clamp.r(t),g:$.channel.clamp.g(e),b:$.channel.clamp.b(i),a:$.channel.clamp.a(r)});return Ot.stringify(n)},yd=t=>{const{r:e,g:i,b:r}=Ot.parse(t),n=.2126*$.channel.toLinear(e)+.7152*$.channel.toLinear(i)+.0722*$.channel.toLinear(r);return $.lang.round(n)},Cd=t=>yd(t)>=.5,xd=Cd,mi=t=>!xd(t),Sa=(t,e,i)=>{const r=Ot.parse(t),n=r[e],o=$.channel.clamp[e](n+i);return n!==o&&(r[e]=o),Ot.stringify(r)},A=(t,e)=>Sa(t,"l",e),O=(t,e)=>Sa(t,"l",-e),g=(t,e)=>{const i=Ot.parse(t),r={};for(const n in e)e[n]&&(r[n]=i[n]+e[n]);return ka(t,r)},bd=(t,e,i=50)=>{const{r,g:n,b:o,a:s}=Ot.parse(t),{r:a,g:l,b:h,a:u}=Ot.parse(e),f=i/100,c=f*2-1,d=s-u,k=((c*d===-1?c:(c+d)/(1+c*d))+1)/2,S=1-k,P=r*k+a*S,T=n*k+l*S,z=o*k+h*S,H=s*f+u*(1-f);return Qe(P,T,z,H)},y=(t,e=100)=>{const i=Ot.parse(t);return i.r=255-i.r,i.g=255-i.g,i.b=255-i.b,bd(i,t,e)};var wa=typeof global=="object"&&global&&global.Object===Object&&global,Td=typeof self=="object"&&self&&self.Object===Object&&self,Dt=wa||Td||Function("return this")(),Zi=Dt.Symbol,Ba=Object.prototype,vd=Ba.hasOwnProperty,kd=Ba.toString,Ve=Zi?Zi.toStringTag:void 0;function Sd(t){var e=vd.call(t,Ve),i=t[Ve];try{t[Ve]=void 0;var r=!0}catch{}var n=kd.call(t);return r&&(e?t[Ve]=i:delete t[Ve]),n}var wd=Object.prototype,Bd=wd.toString;function Ad(t){return Bd.call(t)}var Fd="[object Null]",Ld="[object Undefined]",Ko=Zi?Zi.toStringTag:void 0;function Re(t){return t==null?t===void 0?Ld:Fd:Ko&&Ko in Object(t)?Sd(t):Ad(t)}function _e(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var Ed="[object AsyncFunction]",Od="[object Function]",Md="[object GeneratorFunction]",Id="[object Proxy]";function In(t){if(!_e(t))return!1;var e=Re(t);return e==Od||e==Md||e==Ed||e==Id}var Ur=Dt["__core-js_shared__"],Zo=function(){var t=/[^.]+$/.exec(Ur&&Ur.keys&&Ur.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function $d(t){return!!Zo&&Zo in t}var Dd=Function.prototype,Nd=Dd.toString;function ye(t){if(t!=null){try{return Nd.call(t)}catch{}try{return t+""}catch{}}return""}var Rd=/[\\^$.*+?()[\]{}|]/g,Pd=/^\[object .+?Constructor\]$/,qd=Function.prototype,zd=Object.prototype,Wd=qd.toString,Hd=zd.hasOwnProperty,jd=RegExp("^"+Wd.call(Hd).replace(Rd,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ud(t){if(!_e(t)||$d(t))return!1;var e=In(t)?jd:Pd;return e.test(ye(t))}function Yd(t,e){return t==null?void 0:t[e]}function Ce(t,e){var i=Yd(t,e);return Ud(i)?i:void 0}var li=Ce(Object,"create");function Vd(){this.__data__=li?li(null):{},this.size=0}function Gd(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var Xd="__lodash_hash_undefined__",Kd=Object.prototype,Zd=Kd.hasOwnProperty;function Jd(t){var e=this.__data__;if(li){var i=e[t];return i===Xd?void 0:i}return Zd.call(e,t)?e[t]:void 0}var Qd=Object.prototype,tp=Qd.hasOwnProperty;function ep(t){var e=this.__data__;return li?e[t]!==void 0:tp.call(e,t)}var ip="__lodash_hash_undefined__";function rp(t,e){var i=this.__data__;return this.size+=this.has(t)?0:1,i[t]=li&&e===void 0?ip:e,this}function ge(t){var e=-1,i=t==null?0:t.length;for(this.clear();++e-1}function cp(t,e){var i=this.__data__,r=_r(i,t);return r<0?(++this.size,i.push([t,e])):i[r][1]=e,this}function Kt(t){var e=-1,i=t==null?0:t.length;for(this.clear();++e-1&&t%1==0&&t<=Pp}function xr(t){return t!=null&&Oa(t.length)&&!In(t)}function qp(t){return yi(t)&&xr(t)}function zp(){return!1}var Ma=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ns=Ma&&typeof module=="object"&&module&&!module.nodeType&&module,Wp=ns&&ns.exports===Ma,os=Wp?Dt.Buffer:void 0,Hp=os?os.isBuffer:void 0,jp=Hp||zp;const Dn=jp;var Up="[object Object]",Yp=Function.prototype,Vp=Object.prototype,Ia=Yp.toString,Gp=Vp.hasOwnProperty,Xp=Ia.call(Object);function Kp(t){if(!yi(t)||Re(t)!=Up)return!1;var e=La(t);if(e===null)return!0;var i=Gp.call(e,"constructor")&&e.constructor;return typeof i=="function"&&i instanceof i&&Ia.call(i)==Xp}var Zp="[object Arguments]",Jp="[object Array]",Qp="[object Boolean]",tg="[object Date]",eg="[object Error]",ig="[object Function]",rg="[object Map]",ng="[object Number]",og="[object Object]",sg="[object RegExp]",ag="[object Set]",lg="[object String]",hg="[object WeakMap]",cg="[object ArrayBuffer]",ug="[object DataView]",fg="[object Float32Array]",dg="[object Float64Array]",pg="[object Int8Array]",gg="[object Int16Array]",mg="[object Int32Array]",_g="[object Uint8Array]",yg="[object Uint8ClampedArray]",Cg="[object Uint16Array]",xg="[object Uint32Array]",G={};G[fg]=G[dg]=G[pg]=G[gg]=G[mg]=G[_g]=G[yg]=G[Cg]=G[xg]=!0;G[Zp]=G[Jp]=G[cg]=G[Qp]=G[ug]=G[tg]=G[eg]=G[ig]=G[rg]=G[ng]=G[og]=G[sg]=G[ag]=G[lg]=G[hg]=!1;function bg(t){return yi(t)&&Oa(t.length)&&!!G[Re(t)]}function Tg(t){return function(e){return t(e)}}var $a=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ti=$a&&typeof module=="object"&&module&&!module.nodeType&&module,vg=ti&&ti.exports===$a,Yr=vg&&wa.process,ss=function(){try{var t=ti&&ti.require&&ti.require("util").types;return t||Yr&&Yr.binding&&Yr.binding("util")}catch{}}(),as=ss&&ss.isTypedArray,kg=as?Tg(as):bg;const Nn=kg;function cn(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var Sg=Object.prototype,wg=Sg.hasOwnProperty;function Bg(t,e,i){var r=t[e];(!(wg.call(t,e)&&mr(r,i))||i===void 0&&!(e in t))&&$n(t,e,i)}function Ag(t,e,i,r){var n=!i;i||(i={});for(var o=-1,s=e.length;++o-1&&t%1==0&&t0){if(++e>=Yg)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var Kg=Xg(Ug);function Zg(t,e){return Kg(Wg(t,e,Pa),t+"")}function Jg(t,e,i){if(!_e(i))return!1;var r=typeof e;return(r=="number"?xr(i)&&Da(e,i.length):r=="string"&&e in i)?mr(i[e],t):!1}function Qg(t){return Zg(function(e,i){var r=-1,n=i.length,o=n>1?i[n-1]:void 0,s=n>2?i[2]:void 0;for(o=t.length>3&&typeof o=="function"?(n--,o):void 0,s&&Jg(i[0],i[1],s)&&(o=n<3?void 0:o,n=1),e=Object(e);++r0?ci(qe,--vt):0,Me--,J===10&&(Me=1,br--),J}function wt(){return J=vt2||un(J)>3?"":" "}function fm(t,e){for(;--e&&wt()&&!(J<48||J>102||J>57&&J<65||J>70&&J<97););return Tr(t,Ri()+(e<6&&fe()==32&&wt()==32))}function fn(t){for(;wt();)switch(J){case t:return vt;case 34:case 39:t!==34&&t!==39&&fn(J);break;case 40:t===41&&fn(t);break;case 92:wt();break}return vt}function dm(t,e){for(;wt()&&t+J!==57;)if(t+J===84&&fe()===47)break;return"/*"+Tr(e,vt-1)+"*"+Rn(t===47?t:wt())}function pm(t){for(;!un(fe());)wt();return Tr(t,vt)}function gm(t){return cm(Pi("",null,null,null,[""],t=hm(t),0,[0],t))}function Pi(t,e,i,r,n,o,s,a,l){for(var h=0,u=0,f=s,c=0,d=0,_=0,k=1,S=1,P=1,T=0,z="",H=n,Y=o,X=r,W=z;S;)switch(_=T,T=wt()){case 40:if(_!=108&&ci(W,f-1)==58){om(W+=Ni(Vr(T),"&","&\f"),"&\f",Ha(h?a[h-1]:0))!=-1&&(P=-1);break}case 34:case 39:case 91:W+=Vr(T);break;case 9:case 10:case 13:case 32:W+=um(_);break;case 92:W+=fm(Ri()-1,7);continue;case 47:switch(fe()){case 42:case 47:Li(mm(dm(wt(),Ri()),e,i,l),l);break;default:W+="/"}break;case 123*k:a[h++]=Yt(W)*P;case 125*k:case 59:case 0:switch(T){case 0:case 125:S=0;case 59+u:P==-1&&(W=Ni(W,/\f/g,"")),d>0&&Yt(W)-f&&Li(d>32?cs(W+";",r,i,f-1,l):cs(Ni(W," ","")+";",r,i,f-2,l),l);break;case 59:W+=";";default:if(Li(X=hs(W,e,i,h,u,n,a,z,H=[],Y=[],f,o),o),T===123)if(u===0)Pi(W,e,X,X,H,o,f,a,Y);else switch(c===99&&ci(W,3)===110?100:c){case 100:case 108:case 109:case 115:Pi(t,X,X,r&&Li(hs(t,X,X,0,0,n,a,z,n,H=[],f,Y),Y),n,Y,f,a,r?H:Y);break;default:Pi(W,X,X,X,[""],Y,0,a,Y)}}h=u=d=0,k=P=1,z=W="",f=s;break;case 58:f=1+Yt(W),d=_;default:if(k<1){if(T==123)--k;else if(T==125&&k++==0&&lm()==125)continue}switch(W+=Rn(T),T*k){case 38:P=u>0?1:(W+="\f",-1);break;case 44:a[h++]=(Yt(W)-1)*P,P=1;break;case 64:fe()===45&&(W+=Vr(wt())),c=fe(),u=f=Yt(z=W+=pm(Ri())),T++;break;case 45:_===45&&Yt(W)==2&&(k=0)}}return o}function hs(t,e,i,r,n,o,s,a,l,h,u,f){for(var c=n-1,d=n===0?o:[""],_=sm(d),k=0,S=0,P=0;k0?d[T]+" "+z:Ni(z,/&\f/g,d[T])))&&(l[P++]=H);return Pn(t,e,i,n===0?za:a,l,h,u,f)}function mm(t,e,i,r){return Pn(t,e,i,qa,Rn(am()),ui(t,2,-2),0,r)}function cs(t,e,i,r,n){return Pn(t,e,i,Wa,ui(t,0,r),ui(t,r+1,-1),r,n)}function dn(t,e){for(var i="",r=0;r{},debug:(...t)=>{},info:(...t)=>{},warn:(...t)=>{},error:(...t)=>{},fatal:(...t)=>{}},qn=function(t="fatal"){let e=jt.fatal;typeof t=="string"?(t=t.toLowerCase(),t in jt&&(e=jt[t])):typeof t=="number"&&(e=t),L.trace=()=>{},L.debug=()=>{},L.info=()=>{},L.warn=()=>{},L.error=()=>{},L.fatal=()=>{},e<=jt.fatal&&(L.fatal=console.error?console.error.bind(console,xt("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",xt("FATAL"))),e<=jt.error&&(L.error=console.error?console.error.bind(console,xt("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",xt("ERROR"))),e<=jt.warn&&(L.warn=console.warn?console.warn.bind(console,xt("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",xt("WARN"))),e<=jt.info&&(L.info=console.info?console.info.bind(console,xt("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",xt("INFO"))),e<=jt.debug&&(L.debug=console.debug?console.debug.bind(console,xt("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",xt("DEBUG"))),e<=jt.trace&&(L.trace=console.debug?console.debug.bind(console,xt("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",xt("TRACE")))},xt=t=>`%c${fh().format("ss.SSS")} : ${t} : `,vr=//gi,Mm=t=>t?Va(t).replace(/\\n/g,"#br#").split("#br#"):[""],Ya=t=>Ki.sanitize(t),ms=(t,e)=>{var i;if(((i=e.flowchart)==null?void 0:i.htmlLabels)!==!1){const r=e.securityLevel;r==="antiscript"||r==="strict"?t=Ya(t):r!=="loose"&&(t=Va(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=Nm(t))}return t},fi=(t,e)=>t&&(e.dompurifyConfig?t=Ki.sanitize(ms(t,e),e.dompurifyConfig).toString():t=Ki.sanitize(ms(t,e),{FORBID_TAGS:["style"]}).toString(),t),Im=(t,e)=>typeof t=="string"?fi(t,e):t.flat().map(i=>fi(i,e)),$m=t=>vr.test(t),Dm=t=>t.split(vr),Nm=t=>t.replace(/#br#/g,"
"),Va=t=>t.replace(vr,"#br#"),Rm=t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/\(/g,"\\("),e=e.replaceAll(/\)/g,"\\)")),e},Ga=t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),Pm=function(...t){const e=t.filter(i=>!isNaN(i));return Math.max(...e)},qm=function(...t){const e=t.filter(i=>!isNaN(i));return Math.min(...e)},Sb=function(t){const e=t.split(/(,)/),i=[];for(let r=0;r0&&r+1Math.max(0,t.split(e).length-1),zm=(t,e)=>{const i=yn(t,"~"),r=yn(e,"~");return i===1&&r===1},Wm=t=>{const e=yn(t,"~");let i=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),i=!0);const r=[...t];let n=r.indexOf("~"),o=r.lastIndexOf("~");for(;n!==-1&&o!==-1&&n!==o;)r[n]="<",r[o]=">",n=r.indexOf("~"),o=r.lastIndexOf("~");return i&&r.unshift("~"),r.join("")},zn={getRows:Mm,sanitizeText:fi,sanitizeTextOrArray:Im,hasBreaks:$m,splitBreaks:Dm,lineBreakRegex:vr,removeScript:Ya,getUrl:Rm,evaluate:Ga,getMax:Pm,getMin:qm},ht=(t,e)=>e?g(t,{s:-40,l:10}):g(t,{s:-40,l:-10}),kr="#ffffff",Sr="#f2f2f2";let Hm=class{constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){var e,i,r,n,o,s,a,l,h,u,f;if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||g(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||g(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||ht(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||ht(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||ht(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||ht(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||y(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||y(this.tertiaryColor),this.lineColor=this.lineColor||y(this.background),this.arrowheadColor=this.arrowheadColor||y(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?O(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||"grey",this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||O(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||y(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||A(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||g(this.primaryColor,{h:30}),this.cScale4=this.cScale4||g(this.primaryColor,{h:60}),this.cScale5=this.cScale5||g(this.primaryColor,{h:90}),this.cScale6=this.cScale6||g(this.primaryColor,{h:120}),this.cScale7=this.cScale7||g(this.primaryColor,{h:150}),this.cScale8=this.cScale8||g(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||g(this.primaryColor,{h:270}),this.cScale10=this.cScale10||g(this.primaryColor,{h:300}),this.cScale11=this.cScale11||g(this.primaryColor,{h:330}),this.darkMode)for(let d=0;d{this[r]=e[r]}),this.updateColors(),i.forEach(r=>{this[r]=e[r]})}};const jm=t=>{const e=new Hm;return e.calculate(t),e};let Um=class{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=A(this.primaryColor,16),this.tertiaryColor=g(this.primaryColor,{h:-160}),this.primaryBorderColor=y(this.background),this.secondaryBorderColor=ht(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ht(this.tertiaryColor,this.darkMode),this.primaryTextColor=y(this.primaryColor),this.secondaryTextColor=y(this.secondaryColor),this.tertiaryTextColor=y(this.tertiaryColor),this.lineColor=y(this.background),this.textColor=y(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=A(y("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=Qe(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=O("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=O(this.sectionBkgColor,10),this.taskBorderColor=Qe(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Qe(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){var e,i,r,n,o,s,a,l,h,u,f;this.secondBkg=A(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=A(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.mainContrastColor,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=A(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=g(this.primaryColor,{h:64}),this.fillType3=g(this.secondaryColor,{h:64}),this.fillType4=g(this.primaryColor,{h:-64}),this.fillType5=g(this.secondaryColor,{h:-64}),this.fillType6=g(this.primaryColor,{h:128}),this.fillType7=g(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||g(this.primaryColor,{h:30}),this.cScale4=this.cScale4||g(this.primaryColor,{h:60}),this.cScale5=this.cScale5||g(this.primaryColor,{h:90}),this.cScale6=this.cScale6||g(this.primaryColor,{h:120}),this.cScale7=this.cScale7||g(this.primaryColor,{h:150}),this.cScale8=this.cScale8||g(this.primaryColor,{h:210}),this.cScale9=this.cScale9||g(this.primaryColor,{h:270}),this.cScale10=this.cScale10||g(this.primaryColor,{h:300}),this.cScale11=this.cScale11||g(this.primaryColor,{h:330});for(let c=0;c{this[r]=e[r]}),this.updateColors(),i.forEach(r=>{this[r]=e[r]})}};const Ym=t=>{const e=new Um;return e.calculate(t),e};let Vm=class{constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=g(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=g(this.primaryColor,{h:-160}),this.primaryBorderColor=ht(this.primaryColor,this.darkMode),this.secondaryBorderColor=ht(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ht(this.tertiaryColor,this.darkMode),this.primaryTextColor=y(this.primaryColor),this.secondaryTextColor=y(this.secondaryColor),this.tertiaryTextColor=y(this.tertiaryColor),this.lineColor=y(this.background),this.textColor=y(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#e8e8e8",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=Qe(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){var e,i,r,n,o,s,a,l,h,u,f;this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||g(this.primaryColor,{h:30}),this.cScale4=this.cScale4||g(this.primaryColor,{h:60}),this.cScale5=this.cScale5||g(this.primaryColor,{h:90}),this.cScale6=this.cScale6||g(this.primaryColor,{h:120}),this.cScale7=this.cScale7||g(this.primaryColor,{h:150}),this.cScale8=this.cScale8||g(this.primaryColor,{h:210}),this.cScale9=this.cScale9||g(this.primaryColor,{h:270}),this.cScale10=this.cScale10||g(this.primaryColor,{h:300}),this.cScale11=this.cScale11||g(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||O(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||O(this.tertiaryColor,40);for(let c=0;c{this[r]=e[r]}),this.updateColors(),i.forEach(r=>{this[r]=e[r]})}};const Gm=t=>{const e=new Vm;return e.calculate(t),e};let Xm=class{constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=A("#cde498",10),this.primaryBorderColor=ht(this.primaryColor,this.darkMode),this.secondaryBorderColor=ht(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ht(this.tertiaryColor,this.darkMode),this.primaryTextColor=y(this.primaryColor),this.secondaryTextColor=y(this.secondaryColor),this.tertiaryTextColor=y(this.primaryColor),this.lineColor=y(this.background),this.textColor=y(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){var e,i,r,n,o,s,a,l,h,u,f;this.actorBorder=O(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||g(this.primaryColor,{h:30}),this.cScale4=this.cScale4||g(this.primaryColor,{h:60}),this.cScale5=this.cScale5||g(this.primaryColor,{h:90}),this.cScale6=this.cScale6||g(this.primaryColor,{h:120}),this.cScale7=this.cScale7||g(this.primaryColor,{h:150}),this.cScale8=this.cScale8||g(this.primaryColor,{h:210}),this.cScale9=this.cScale9||g(this.primaryColor,{h:270}),this.cScale10=this.cScale10||g(this.primaryColor,{h:300}),this.cScale11=this.cScale11||g(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||O(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||O(this.tertiaryColor,40);for(let c=0;c{this[r]=e[r]}),this.updateColors(),i.forEach(r=>{this[r]=e[r]})}};const Km=t=>{const e=new Xm;return e.calculate(t),e};class Zm{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=A(this.contrast,55),this.background="#ffffff",this.tertiaryColor=g(this.primaryColor,{h:-160}),this.primaryBorderColor=ht(this.primaryColor,this.darkMode),this.secondaryBorderColor=ht(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ht(this.tertiaryColor,this.darkMode),this.primaryTextColor=y(this.primaryColor),this.secondaryTextColor=y(this.secondaryColor),this.tertiaryTextColor=y(this.tertiaryColor),this.lineColor=y(this.background),this.textColor=y(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){var e,i,r,n,o,s,a,l,h,u,f;this.secondBkg=A(this.contrast,55),this.border2=this.contrast,this.actorBorder=A(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.lineColor,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let c=0;c{this[r]=e[r]}),this.updateColors(),i.forEach(r=>{this[r]=e[r]})}}const Jm=t=>{const e=new Zm;return e.calculate(t),e},Gt={base:{getThemeVariables:jm},dark:{getThemeVariables:Ym},default:{getThemeVariables:Gm},forest:{getThemeVariables:Km},neutral:{getThemeVariables:Jm}},Ut={flowchart:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},theme:"default",maxTextSize:5e4,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize"],deterministicIds:!1,fontSize:16},Xa={...Ut,deterministicIDSeed:void 0,themeCSS:void 0,themeVariables:Gt.default.getThemeVariables(),sequence:{...Ut.sequence,messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},noteFont:function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},actorFont:function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}},gantt:{...Ut.gantt,tickInterval:void 0,useWidth:void 0},c4:{...Ut.c4,useWidth:void 0,personFont:function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},external_personFont:function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},systemFont:function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},external_systemFont:function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},system_dbFont:function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},external_system_dbFont:function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},system_queueFont:function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},external_system_queueFont:function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},containerFont:function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},external_containerFont:function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},container_dbFont:function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},external_container_dbFont:function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},container_queueFont:function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},external_container_queueFont:function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},componentFont:function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},external_componentFont:function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},component_dbFont:function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},external_component_dbFont:function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},component_queueFont:function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},external_component_queueFont:function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},boundaryFont:function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}},pie:{...Ut.pie,useWidth:984},xyChart:{...Ut.xyChart,useWidth:void 0},requirement:{...Ut.requirement,useWidth:void 0},gitGraph:{...Ut.gitGraph,useMaxWidth:!1},sankey:{...Ut.sankey,useMaxWidth:!1}},Ka=(t,e="")=>Object.keys(t).reduce((i,r)=>Array.isArray(t[r])?i:typeof t[r]=="object"&&t[r]!==null?[...i,e+r,...Ka(t[r],"")]:[...i,e+r],[]),Qm=new Set(Ka(Xa,"")),t0=Xa,er=t=>{if(L.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>er(e));return}for(const e of Object.keys(t)){if(L.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!Qm.has(e)||t[e]==null){L.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){L.debug("sanitizing object",e),er(t[e]);continue}const i=["themeCSS","fontFamily","altFontFamily"];for(const r of i)e.includes(r)&&(L.debug("sanitizing css option",e),t[e]=e0(t[e]))}if(t.themeVariables)for(const e of Object.keys(t.themeVariables)){const i=t.themeVariables[e];i!=null&&i.match&&!i.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}L.debug("After sanitization",t)}},e0=t=>{let e=0,i=0;for(const r of t){if(e{for(const{id:e,detector:i,loader:r}of t)tl(e,i,r)},tl=(t,e,i)=>{Ie[t]?L.error(`Detector with key ${t} already exists`):Ie[t]={detector:e,loader:i},L.debug(`Detector with key ${t} added${i?" with loader":""}`)},r0=t=>Ie[t].loader,Cn=(t,e,{depth:i=2,clobber:r=!1}={})=>{const n={depth:i,clobber:r};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(o=>Cn(t,o,n)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(o=>{t.includes(o)||t.push(o)}),t):t===void 0||i<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(o=>{typeof e[o]=="object"&&(t[o]===void 0||typeof t[o]=="object")?(t[o]===void 0&&(t[o]=Array.isArray(e[o])?[]:{}),t[o]=Cn(t[o],e[o],{depth:i-1,clobber:r})):(r||typeof t[o]!="object"&&typeof e[o]!="object")&&(t[o]=e[o])}),t)},ot=Cn,n0="​",o0={curveBasis:Ef,curveBasisClosed:Of,curveBasisOpen:Mf,curveBumpX:Ff,curveBumpY:Lf,curveBundle:If,curveCardinalClosed:Df,curveCardinalOpen:Nf,curveCardinal:$f,curveCatmullRomClosed:Pf,curveCatmullRomOpen:qf,curveCatmullRom:Rf,curveLinear:Af,curveLinearClosed:zf,curveMonotoneX:Wf,curveMonotoneY:Hf,curveNatural:jf,curveStep:Uf,curveStepAfter:Vf,curveStepBefore:Yf},s0=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,a0=function(t,e){const i=el(t,/(?:init\b)|(?:initialize\b)/);let r={};if(Array.isArray(i)){const s=i.map(a=>a.args);er(s),r=ot(r,[...s])}else r=i.args;if(!r)return;let n=wr(t,e);const o="config";return r[o]!==void 0&&(n==="flowchart-v2"&&(n="flowchart"),r[n]=r[o],delete r[o]),r},el=function(t,e=null){try{const i=new RegExp(`[%]{2}(?![{]${s0.source})(?=[}][%]{2}).* -`,"ig");t=t.trim().replace(i,"").replace(/'/gm,'"'),L.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let r;const n=[];for(;(r=ei.exec(t))!==null;)if(r.index===ei.lastIndex&&ei.lastIndex++,r&&!e||e&&r[1]&&r[1].match(e)||e&&r[2]&&r[2].match(e)){const o=r[1]?r[1]:r[2],s=r[3]?r[3].trim():r[4]?JSON.parse(r[4].trim()):null;n.push({type:o,args:s})}return n.length===0?{type:t,args:null}:n.length===1?n[0]:n}catch(i){return L.error(`ERROR: ${i.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},l0=function(t){return t.replace(ei,"")},h0=function(t,e){for(const[i,r]of e.entries())if(r.match(t))return i;return-1};function c0(t,e){if(!t)return e;const i=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return o0[i]??e}function u0(t,e){const i=t.trim();if(i)return e.securityLevel!=="loose"?Ms.sanitizeUrl(i):i}const f0=(t,...e)=>{const i=t.split("."),r=i.length-1,n=i[r];let o=window;for(let s=0;s{i+=il(n,e),e=n});const r=i/2;return Wn(t,r)}function p0(t){return t.length===1?t[0]:d0(t)}const _s=(t,e=2)=>{const i=Math.pow(10,e);return Math.round(t*i)/i},Wn=(t,e)=>{let i,r=e;for(const n of t){if(i){const o=il(n,i);if(o=1)return{x:n.x,y:n.y};if(s>0&&s<1)return{x:_s((1-s)*i.x+s*n.x,5),y:_s((1-s)*i.y+s*n.y,5)}}}i=n}throw new Error("Could not find a suitable point for the given distance")},g0=(t,e,i)=>{L.info(`our points ${JSON.stringify(e)}`),e[0]!==i&&(e=e.reverse());const n=Wn(e,25),o=t?10:5,s=Math.atan2(e[0].y-n.y,e[0].x-n.x),a={x:0,y:0};return a.x=Math.sin(s)*o+(e[0].x+n.x)/2,a.y=-Math.cos(s)*o+(e[0].y+n.y)/2,a};function m0(t,e,i){const r=structuredClone(i);L.info("our points",r),e!=="start_left"&&e!=="start_right"&&r.reverse();const n=25+t,o=Wn(r,n),s=10+t*.5,a=Math.atan2(r[0].y-o.y,r[0].x-o.x),l={x:0,y:0};return e==="start_left"?(l.x=Math.sin(a+Math.PI)*s+(r[0].x+o.x)/2,l.y=-Math.cos(a+Math.PI)*s+(r[0].y+o.y)/2):e==="end_right"?(l.x=Math.sin(a-Math.PI)*s+(r[0].x+o.x)/2-5,l.y=-Math.cos(a-Math.PI)*s+(r[0].y+o.y)/2-5):e==="end_left"?(l.x=Math.sin(a)*s+(r[0].x+o.x)/2-5,l.y=-Math.cos(a)*s+(r[0].y+o.y)/2-5):(l.x=Math.sin(a)*s+(r[0].x+o.x)/2,l.y=-Math.cos(a)*s+(r[0].y+o.y)/2),l}function _0(t){let e="",i="";for(const r of t)r!==void 0&&(r.startsWith("color:")||r.startsWith("text-align:")?i=i+r+";":e=e+r+";");return{style:e,labelStyle:i}}let ys=0;const y0=()=>(ys++,"id-"+Math.random().toString(36).substr(2,12)+"-"+ys);function C0(t){let e="";const i="0123456789abcdef",r=i.length;for(let n=0;nC0(t.length),b0=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},T0=function(t,e){const i=e.text.replace(zn.lineBreakRegex," "),[,r]=jn(e.fontSize),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.style("text-anchor",e.anchor),n.style("font-family",e.fontFamily),n.style("font-size",r),n.style("font-weight",e.fontWeight),n.attr("fill",e.fill),e.class!==void 0&&n.attr("class",e.class);const o=n.append("tspan");return o.attr("x",e.x+e.textMargin*2),o.attr("fill",e.fill),o.text(i),n},v0=_i((t,e,i)=>{if(!t||(i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},i),zn.lineBreakRegex.test(t)))return t;const r=t.split(" "),n=[];let o="";return r.forEach((s,a)=>{const l=ir(`${s} `,i),h=ir(o,i);if(l>e){const{hyphenatedStrings:c,remainingWord:d}=k0(s,e,"-",i);n.push(o,...c),o=d}else h+l>=e?(n.push(o),o=s):o=[o,s].filter(Boolean).join(" ");a+1===r.length&&n.push(o)}),n.filter(s=>s!=="").join(i.joinWith)},(t,e,i)=>`${t}${e}${i.fontSize}${i.fontWeight}${i.fontFamily}${i.joinWith}`),k0=_i((t,e,i="-",r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);const n=[...t],o=[];let s="";return n.forEach((a,l)=>{const h=`${s}${a}`;if(ir(h,r)>=e){const f=l+1,c=n.length===f,d=`${h}${i}`;o.push(c?h:d),s=""}else s=h}),{hyphenatedStrings:o,remainingWord:s}},(t,e,i="-",r)=>`${t}${e}${i}${r.fontSize}${r.fontWeight}${r.fontFamily}`);function S0(t,e){return Hn(t,e).height}function ir(t,e){return Hn(t,e).width}const Hn=_i((t,e)=>{const{fontSize:i=12,fontFamily:r="Arial",fontWeight:n=400}=e;if(!t)return{width:0,height:0};const[,o]=jn(i),s=["sans-serif",r],a=t.split(zn.lineBreakRegex),l=[],h=bt("body");if(!h.remove)return{width:0,height:0,lineHeight:0};const u=h.append("svg");for(const c of s){let d=0;const _={width:0,height:0,lineHeight:0};for(const k of a){const S=b0();S.text=k||n0;const P=T0(u,S).style("font-size",o).style("font-weight",n).style("font-family",c),T=(P._groups||P)[0][0].getBBox();if(T.width===0&&T.height===0)throw new Error("svg element not in render tree");_.width=Math.round(Math.max(_.width,T.width)),d=Math.round(T.height),_.height+=d,_.lineHeight=Math.round(Math.max(_.lineHeight,d))}l.push(_)}u.remove();const f=isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1;return l[f]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`);class w0{constructor(e=!1,i){this.count=0,this.count=i?i.length:0,this.next=e?()=>this.count++:()=>Date.now()}}let Ei;const B0=function(t){return Ei=Ei||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),Ei.innerHTML=t,unescape(Ei.textContent)};function rl(t){return"str"in t}const A0=(t,e,i,r)=>{var n;if(!r)return;const o=(n=t.node())==null?void 0:n.getBBox();o&&t.append("text").text(r).attr("x",o.x+o.width/2).attr("y",-i).attr("class",e)},jn=t=>{if(typeof t=="number")return[t,t+"px"];const e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]};function nl(t,e){return em({},t,e)}const ii={assignWithDepth:ot,wrapLabel:v0,calculateTextHeight:S0,calculateTextWidth:ir,calculateTextDimensions:Hn,cleanAndMerge:nl,detectInit:a0,detectDirective:el,isSubstringInArray:h0,interpolateToCurve:c0,calcLabelPosition:p0,calcCardinalityPosition:g0,calcTerminalLabelPosition:m0,formatUrl:u0,getStylesFromArray:_0,generateId:y0,random:x0,runFunc:f0,entityDecode:B0,insertTitle:A0,parseFontSize:jn,InitIDGenerator:w0},Cs="10.6.1",$e=Object.freeze(t0);let pt=ot({},$e),ol,De=[],ri=ot({},$e);const Br=(t,e)=>{let i=ot({},t),r={};for(const n of e)ll(n),r=ot(r,n);if(i=ot(i,r),r.theme&&r.theme in Gt){const n=ot({},ol),o=ot(n.themeVariables||{},r.themeVariables);i.theme&&i.theme in Gt&&(i.themeVariables=Gt[i.theme].getThemeVariables(o))}return ri=i,hl(ri),ri},F0=t=>(pt=ot({},$e),pt=ot(pt,t),t.theme&&Gt[t.theme]&&(pt.themeVariables=Gt[t.theme].getThemeVariables(t.themeVariables)),Br(pt,De),pt),L0=t=>{ol=ot({},t)},E0=t=>(pt=ot(pt,t),Br(pt,De),pt),sl=()=>ot({},pt),al=t=>(hl(t),ot(ri,t),Mt()),Mt=()=>ot({},ri),ll=t=>{t&&(["secure",...pt.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(L.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&ll(t[e])}))},O0=t=>{er(t),t.fontFamily&&(!t.themeVariables||!t.themeVariables.fontFamily)&&(t.themeVariables={fontFamily:t.fontFamily}),De.push(t),Br(pt,De)},rr=(t=pt)=>{De=[],Br(t,De)},M0={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},xs={},I0=t=>{xs[t]||(L.warn(M0[t]),xs[t]=!0)},hl=t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&I0("LAZY_LOAD_DEPRECATED")},cl="c4",$0=t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),D0=async()=>{const{diagram:t}=await Z(()=>import("./c4Diagram-817c8e44.vJjV7vYn.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url);return{id:cl,diagram:t}},N0={id:cl,detector:$0,loader:D0},R0=N0,ul="flowchart",P0=(t,e)=>{var i,r;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-wrapper"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)},q0=async()=>{const{diagram:t}=await Z(()=>import("./flowDiagram-61eb444c.aopSxhPZ.js"),__vite__mapDeps([5,6,7,8,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:ul,diagram:t}},z0={id:ul,detector:P0,loader:q0},W0=z0,fl="flowchart-v2",H0=(t,e)=>{var i,r,n;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-d3"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)&&((n=e==null?void 0:e.flowchart)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)},j0=async()=>{const{diagram:t}=await Z(()=>import("./flowDiagram-v2-2f8f667a.ToNiPqRe.js"),__vite__mapDeps([15,6,8,7,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:fl,diagram:t}},U0={id:fl,detector:H0,loader:j0},Y0=U0,dl="er",V0=t=>/^\s*erDiagram/.test(t),G0=async()=>{const{diagram:t}=await Z(()=>import("./erDiagram-9cfc3649.ybN3qirZ.js"),__vite__mapDeps([16,7,12,13,14,2,3,4]),import.meta.url);return{id:dl,diagram:t}},X0={id:dl,detector:V0,loader:G0},K0=X0,pl="gitGraph",Z0=t=>/^\s*gitGraph/.test(t),J0=async()=>{const{diagram:t}=await Z(()=>import("./gitGraphDiagram-6b463803.hIPJn7TU.js"),__vite__mapDeps([17,2,3,4]),import.meta.url);return{id:pl,diagram:t}},Q0={id:pl,detector:Z0,loader:J0},t_=Q0,gl="gantt",e_=t=>/^\s*gantt/.test(t),i_=async()=>{const{diagram:t}=await Z(()=>import("./ganttDiagram-db6931fb.ot2isyFg.js"),__vite__mapDeps([18,4,19,20,2,3]),import.meta.url);return{id:gl,diagram:t}},r_={id:gl,detector:e_,loader:i_},n_=r_,ml="info",o_=t=>/^\s*info/.test(t),s_=async()=>{const{diagram:t}=await Z(()=>import("./infoDiagram-a336098b.Wd5ZJWUl.js"),__vite__mapDeps([21,2,3,4]),import.meta.url);return{id:ml,diagram:t}},a_={id:ml,detector:o_,loader:s_},_l="pie",l_=t=>/^\s*pie/.test(t),h_=async()=>{const{diagram:t}=await Z(()=>import("./pieDiagram-a5166659.vvnns6bg.js"),__vite__mapDeps([22,23,14,24,20,13,2,3,4]),import.meta.url);return{id:_l,diagram:t}},c_={id:_l,detector:l_,loader:h_},yl="quadrantChart",u_=t=>/^\s*quadrantChart/.test(t),f_=async()=>{const{diagram:t}=await Z(()=>import("./quadrantDiagram-6c355bbc.KS07axX9.js"),__vite__mapDeps([25,19,20,2,3,4]),import.meta.url);return{id:yl,diagram:t}},d_={id:yl,detector:u_,loader:f_},p_=d_,Cl="xychart",g_=t=>/^\s*xychart-beta/.test(t),m_=async()=>{const{diagram:t}=await Z(()=>import("./xychartDiagram-f746c04c.1ExPLvQf.js"),__vite__mapDeps([26,11,20,24,19,12,13,14,2,3,4]),import.meta.url);return{id:Cl,diagram:t}},__={id:Cl,detector:g_,loader:m_},y_=__,xl="requirement",C_=t=>/^\s*requirement(Diagram)?/.test(t),x_=async()=>{const{diagram:t}=await Z(()=>import("./requirementDiagram-4038b16c.0PbzK17N.js"),__vite__mapDeps([27,7,12,13,14,2,3,4]),import.meta.url);return{id:xl,diagram:t}},b_={id:xl,detector:C_,loader:x_},T_=b_,bl="sequence",v_=t=>/^\s*sequenceDiagram/.test(t),k_=async()=>{const{diagram:t}=await Z(()=>import("./sequenceDiagram-465a088a.d3gG14vX.js"),__vite__mapDeps([28,1,2,3,4]),import.meta.url);return{id:bl,diagram:t}},S_={id:bl,detector:v_,loader:k_},w_=S_,Tl="class",B_=(t,e)=>{var i;return((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t)},A_=async()=>{const{diagram:t}=await Z(()=>import("./classDiagram-48ab76fb.5c6TuKe5.js"),__vite__mapDeps([29,30,7,12,13,14,2,3,4]),import.meta.url);return{id:Tl,diagram:t}},F_={id:Tl,detector:B_,loader:A_},L_=F_,vl="classDiagram",E_=(t,e)=>{var i;return/^\s*classDiagram/.test(t)&&((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t)},O_=async()=>{const{diagram:t}=await Z(()=>import("./classDiagram-v2-8ecb0bfc.5G0StPuQ.js"),__vite__mapDeps([31,30,7,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:vl,diagram:t}},M_={id:vl,detector:E_,loader:O_},I_=M_,kl="state",$_=(t,e)=>{var i;return((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t)},D_=async()=>{const{diagram:t}=await Z(()=>import("./stateDiagram-b620d43f.f7RfdstU.js"),__vite__mapDeps([32,33,7,12,13,14,2,3,4]),import.meta.url);return{id:kl,diagram:t}},N_={id:kl,detector:$_,loader:D_},R_=N_,Sl="stateDiagram",P_=(t,e)=>{var i;return!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper")},q_=async()=>{const{diagram:t}=await Z(()=>import("./stateDiagram-v2-2671c3d1.QaAPyhc0.js"),__vite__mapDeps([34,33,7,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:Sl,diagram:t}},z_={id:Sl,detector:P_,loader:q_},W_=z_,wl="journey",H_=t=>/^\s*journey/.test(t),j_=async()=>{const{diagram:t}=await Z(()=>import("./journeyDiagram-deae3313.TSLs3n0V.js"),__vite__mapDeps([35,1,23,14,2,3,4]),import.meta.url);return{id:wl,diagram:t}},U_={id:wl,detector:H_,loader:j_},Y_=U_,V_=function(t,e){for(let i of e)t.attr(i[0],i[1])},G_=function(t,e,i){let r=new Map;return i?(r.set("width","100%"),r.set("style",`max-width: ${e}px;`)):(r.set("height",t),r.set("width",e)),r},Bl=function(t,e,i,r){const n=G_(e,i,r);V_(t,n)},X_=function(t,e,i,r){const n=e.node().getBBox(),o=n.width,s=n.height;L.info(`SVG bounds: ${o}x${s}`,n);let a=0,l=0;L.info(`Graph bounds: ${a}x${l}`,t),a=o+i*2,l=s+i*2,L.info(`Calculated bounds: ${a}x${l}`),Bl(e,l,a,r);const h=`${n.x-i} ${n.y-i} ${n.width+2*i} ${n.height+2*i}`;e.attr("viewBox",h)},qi={},K_=(t,e,i)=>{let r="";return t in qi&&qi[t]?r=qi[t](i):L.warn(`No theme found for ${t}`),` & { +`,"ig");t=t.trim().replace(i,"").replace(/'/gm,'"'),L.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let r;const n=[];for(;(r=ei.exec(t))!==null;)if(r.index===ei.lastIndex&&ei.lastIndex++,r&&!e||e&&r[1]&&r[1].match(e)||e&&r[2]&&r[2].match(e)){const o=r[1]?r[1]:r[2],s=r[3]?r[3].trim():r[4]?JSON.parse(r[4].trim()):null;n.push({type:o,args:s})}return n.length===0?{type:t,args:null}:n.length===1?n[0]:n}catch(i){return L.error(`ERROR: ${i.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},l0=function(t){return t.replace(ei,"")},h0=function(t,e){for(const[i,r]of e.entries())if(r.match(t))return i;return-1};function c0(t,e){if(!t)return e;const i=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return o0[i]??e}function u0(t,e){const i=t.trim();if(i)return e.securityLevel!=="loose"?Ms.sanitizeUrl(i):i}const f0=(t,...e)=>{const i=t.split("."),r=i.length-1,n=i[r];let o=window;for(let s=0;s{i+=il(n,e),e=n});const r=i/2;return Wn(t,r)}function p0(t){return t.length===1?t[0]:d0(t)}const _s=(t,e=2)=>{const i=Math.pow(10,e);return Math.round(t*i)/i},Wn=(t,e)=>{let i,r=e;for(const n of t){if(i){const o=il(n,i);if(o=1)return{x:n.x,y:n.y};if(s>0&&s<1)return{x:_s((1-s)*i.x+s*n.x,5),y:_s((1-s)*i.y+s*n.y,5)}}}i=n}throw new Error("Could not find a suitable point for the given distance")},g0=(t,e,i)=>{L.info(`our points ${JSON.stringify(e)}`),e[0]!==i&&(e=e.reverse());const n=Wn(e,25),o=t?10:5,s=Math.atan2(e[0].y-n.y,e[0].x-n.x),a={x:0,y:0};return a.x=Math.sin(s)*o+(e[0].x+n.x)/2,a.y=-Math.cos(s)*o+(e[0].y+n.y)/2,a};function m0(t,e,i){const r=structuredClone(i);L.info("our points",r),e!=="start_left"&&e!=="start_right"&&r.reverse();const n=25+t,o=Wn(r,n),s=10+t*.5,a=Math.atan2(r[0].y-o.y,r[0].x-o.x),l={x:0,y:0};return e==="start_left"?(l.x=Math.sin(a+Math.PI)*s+(r[0].x+o.x)/2,l.y=-Math.cos(a+Math.PI)*s+(r[0].y+o.y)/2):e==="end_right"?(l.x=Math.sin(a-Math.PI)*s+(r[0].x+o.x)/2-5,l.y=-Math.cos(a-Math.PI)*s+(r[0].y+o.y)/2-5):e==="end_left"?(l.x=Math.sin(a)*s+(r[0].x+o.x)/2-5,l.y=-Math.cos(a)*s+(r[0].y+o.y)/2-5):(l.x=Math.sin(a)*s+(r[0].x+o.x)/2,l.y=-Math.cos(a)*s+(r[0].y+o.y)/2),l}function _0(t){let e="",i="";for(const r of t)r!==void 0&&(r.startsWith("color:")||r.startsWith("text-align:")?i=i+r+";":e=e+r+";");return{style:e,labelStyle:i}}let ys=0;const y0=()=>(ys++,"id-"+Math.random().toString(36).substr(2,12)+"-"+ys);function C0(t){let e="";const i="0123456789abcdef",r=i.length;for(let n=0;nC0(t.length),b0=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},T0=function(t,e){const i=e.text.replace(zn.lineBreakRegex," "),[,r]=jn(e.fontSize),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.style("text-anchor",e.anchor),n.style("font-family",e.fontFamily),n.style("font-size",r),n.style("font-weight",e.fontWeight),n.attr("fill",e.fill),e.class!==void 0&&n.attr("class",e.class);const o=n.append("tspan");return o.attr("x",e.x+e.textMargin*2),o.attr("fill",e.fill),o.text(i),n},v0=_i((t,e,i)=>{if(!t||(i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},i),zn.lineBreakRegex.test(t)))return t;const r=t.split(" "),n=[];let o="";return r.forEach((s,a)=>{const l=ir(`${s} `,i),h=ir(o,i);if(l>e){const{hyphenatedStrings:c,remainingWord:d}=k0(s,e,"-",i);n.push(o,...c),o=d}else h+l>=e?(n.push(o),o=s):o=[o,s].filter(Boolean).join(" ");a+1===r.length&&n.push(o)}),n.filter(s=>s!=="").join(i.joinWith)},(t,e,i)=>`${t}${e}${i.fontSize}${i.fontWeight}${i.fontFamily}${i.joinWith}`),k0=_i((t,e,i="-",r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);const n=[...t],o=[];let s="";return n.forEach((a,l)=>{const h=`${s}${a}`;if(ir(h,r)>=e){const f=l+1,c=n.length===f,d=`${h}${i}`;o.push(c?h:d),s=""}else s=h}),{hyphenatedStrings:o,remainingWord:s}},(t,e,i="-",r)=>`${t}${e}${i}${r.fontSize}${r.fontWeight}${r.fontFamily}`);function S0(t,e){return Hn(t,e).height}function ir(t,e){return Hn(t,e).width}const Hn=_i((t,e)=>{const{fontSize:i=12,fontFamily:r="Arial",fontWeight:n=400}=e;if(!t)return{width:0,height:0};const[,o]=jn(i),s=["sans-serif",r],a=t.split(zn.lineBreakRegex),l=[],h=bt("body");if(!h.remove)return{width:0,height:0,lineHeight:0};const u=h.append("svg");for(const c of s){let d=0;const _={width:0,height:0,lineHeight:0};for(const k of a){const S=b0();S.text=k||n0;const P=T0(u,S).style("font-size",o).style("font-weight",n).style("font-family",c),T=(P._groups||P)[0][0].getBBox();if(T.width===0&&T.height===0)throw new Error("svg element not in render tree");_.width=Math.round(Math.max(_.width,T.width)),d=Math.round(T.height),_.height+=d,_.lineHeight=Math.round(Math.max(_.lineHeight,d))}l.push(_)}u.remove();const f=isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1;return l[f]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`);class w0{constructor(e=!1,i){this.count=0,this.count=i?i.length:0,this.next=e?()=>this.count++:()=>Date.now()}}let Ei;const B0=function(t){return Ei=Ei||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),Ei.innerHTML=t,unescape(Ei.textContent)};function rl(t){return"str"in t}const A0=(t,e,i,r)=>{var n;if(!r)return;const o=(n=t.node())==null?void 0:n.getBBox();o&&t.append("text").text(r).attr("x",o.x+o.width/2).attr("y",-i).attr("class",e)},jn=t=>{if(typeof t=="number")return[t,t+"px"];const e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]};function nl(t,e){return em({},t,e)}const ii={assignWithDepth:ot,wrapLabel:v0,calculateTextHeight:S0,calculateTextWidth:ir,calculateTextDimensions:Hn,cleanAndMerge:nl,detectInit:a0,detectDirective:el,isSubstringInArray:h0,interpolateToCurve:c0,calcLabelPosition:p0,calcCardinalityPosition:g0,calcTerminalLabelPosition:m0,formatUrl:u0,getStylesFromArray:_0,generateId:y0,random:x0,runFunc:f0,entityDecode:B0,insertTitle:A0,parseFontSize:jn,InitIDGenerator:w0},Cs="10.6.1",$e=Object.freeze(t0);let pt=ot({},$e),ol,De=[],ri=ot({},$e);const Br=(t,e)=>{let i=ot({},t),r={};for(const n of e)ll(n),r=ot(r,n);if(i=ot(i,r),r.theme&&r.theme in Gt){const n=ot({},ol),o=ot(n.themeVariables||{},r.themeVariables);i.theme&&i.theme in Gt&&(i.themeVariables=Gt[i.theme].getThemeVariables(o))}return ri=i,hl(ri),ri},F0=t=>(pt=ot({},$e),pt=ot(pt,t),t.theme&&Gt[t.theme]&&(pt.themeVariables=Gt[t.theme].getThemeVariables(t.themeVariables)),Br(pt,De),pt),L0=t=>{ol=ot({},t)},E0=t=>(pt=ot(pt,t),Br(pt,De),pt),sl=()=>ot({},pt),al=t=>(hl(t),ot(ri,t),Mt()),Mt=()=>ot({},ri),ll=t=>{t&&(["secure",...pt.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(L.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&ll(t[e])}))},O0=t=>{er(t),t.fontFamily&&(!t.themeVariables||!t.themeVariables.fontFamily)&&(t.themeVariables={fontFamily:t.fontFamily}),De.push(t),Br(pt,De)},rr=(t=pt)=>{De=[],Br(t,De)},M0={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},xs={},I0=t=>{xs[t]||(L.warn(M0[t]),xs[t]=!0)},hl=t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&I0("LAZY_LOAD_DEPRECATED")},cl="c4",$0=t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),D0=async()=>{const{diagram:t}=await Z(()=>import("./c4Diagram-817c8e44.wHCOifDg.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url);return{id:cl,diagram:t}},N0={id:cl,detector:$0,loader:D0},R0=N0,ul="flowchart",P0=(t,e)=>{var i,r;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-wrapper"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)},q0=async()=>{const{diagram:t}=await Z(()=>import("./flowDiagram-61eb444c.8YXXN8fx.js"),__vite__mapDeps([5,6,7,8,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:ul,diagram:t}},z0={id:ul,detector:P0,loader:q0},W0=z0,fl="flowchart-v2",H0=(t,e)=>{var i,r,n;return((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="dagre-d3"||((r=e==null?void 0:e.flowchart)==null?void 0:r.defaultRenderer)==="elk"?!1:/^\s*graph/.test(t)&&((n=e==null?void 0:e.flowchart)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)},j0=async()=>{const{diagram:t}=await Z(()=>import("./flowDiagram-v2-2f8f667a.ExBBvo5t.js"),__vite__mapDeps([15,6,8,7,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:fl,diagram:t}},U0={id:fl,detector:H0,loader:j0},Y0=U0,dl="er",V0=t=>/^\s*erDiagram/.test(t),G0=async()=>{const{diagram:t}=await Z(()=>import("./erDiagram-9cfc3649.yGBXaBAo.js"),__vite__mapDeps([16,7,12,13,14,2,3,4]),import.meta.url);return{id:dl,diagram:t}},X0={id:dl,detector:V0,loader:G0},K0=X0,pl="gitGraph",Z0=t=>/^\s*gitGraph/.test(t),J0=async()=>{const{diagram:t}=await Z(()=>import("./gitGraphDiagram-6b463803.AWiJsDP2.js"),__vite__mapDeps([17,2,3,4]),import.meta.url);return{id:pl,diagram:t}},Q0={id:pl,detector:Z0,loader:J0},t_=Q0,gl="gantt",e_=t=>/^\s*gantt/.test(t),i_=async()=>{const{diagram:t}=await Z(()=>import("./ganttDiagram-db6931fb.epajDFpi.js"),__vite__mapDeps([18,4,19,20,2,3]),import.meta.url);return{id:gl,diagram:t}},r_={id:gl,detector:e_,loader:i_},n_=r_,ml="info",o_=t=>/^\s*info/.test(t),s_=async()=>{const{diagram:t}=await Z(()=>import("./infoDiagram-a336098b.RVDuPuO8.js"),__vite__mapDeps([21,2,3,4]),import.meta.url);return{id:ml,diagram:t}},a_={id:ml,detector:o_,loader:s_},_l="pie",l_=t=>/^\s*pie/.test(t),h_=async()=>{const{diagram:t}=await Z(()=>import("./pieDiagram-a5166659.mSSO3U9_.js"),__vite__mapDeps([22,23,14,24,20,13,2,3,4]),import.meta.url);return{id:_l,diagram:t}},c_={id:_l,detector:l_,loader:h_},yl="quadrantChart",u_=t=>/^\s*quadrantChart/.test(t),f_=async()=>{const{diagram:t}=await Z(()=>import("./quadrantDiagram-6c355bbc.Z0DFXh7Q.js"),__vite__mapDeps([25,19,20,2,3,4]),import.meta.url);return{id:yl,diagram:t}},d_={id:yl,detector:u_,loader:f_},p_=d_,Cl="xychart",g_=t=>/^\s*xychart-beta/.test(t),m_=async()=>{const{diagram:t}=await Z(()=>import("./xychartDiagram-f746c04c.nQAhD605.js"),__vite__mapDeps([26,11,20,24,19,12,13,14,2,3,4]),import.meta.url);return{id:Cl,diagram:t}},__={id:Cl,detector:g_,loader:m_},y_=__,xl="requirement",C_=t=>/^\s*requirement(Diagram)?/.test(t),x_=async()=>{const{diagram:t}=await Z(()=>import("./requirementDiagram-4038b16c.19aSfqcm.js"),__vite__mapDeps([27,7,12,13,14,2,3,4]),import.meta.url);return{id:xl,diagram:t}},b_={id:xl,detector:C_,loader:x_},T_=b_,bl="sequence",v_=t=>/^\s*sequenceDiagram/.test(t),k_=async()=>{const{diagram:t}=await Z(()=>import("./sequenceDiagram-465a088a.8KDelGu_.js"),__vite__mapDeps([28,1,2,3,4]),import.meta.url);return{id:bl,diagram:t}},S_={id:bl,detector:v_,loader:k_},w_=S_,Tl="class",B_=(t,e)=>{var i;return((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t)},A_=async()=>{const{diagram:t}=await Z(()=>import("./classDiagram-48ab76fb.IXDIkmEp.js"),__vite__mapDeps([29,30,7,12,13,14,2,3,4]),import.meta.url);return{id:Tl,diagram:t}},F_={id:Tl,detector:B_,loader:A_},L_=F_,vl="classDiagram",E_=(t,e)=>{var i;return/^\s*classDiagram/.test(t)&&((i=e==null?void 0:e.class)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t)},O_=async()=>{const{diagram:t}=await Z(()=>import("./classDiagram-v2-8ecb0bfc.eoEwq_qQ.js"),__vite__mapDeps([31,30,7,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:vl,diagram:t}},M_={id:vl,detector:E_,loader:O_},I_=M_,kl="state",$_=(t,e)=>{var i;return((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t)},D_=async()=>{const{diagram:t}=await Z(()=>import("./stateDiagram-b620d43f.cfadEOEs.js"),__vite__mapDeps([32,33,7,12,13,14,2,3,4]),import.meta.url);return{id:kl,diagram:t}},N_={id:kl,detector:$_,loader:D_},R_=N_,Sl="stateDiagram",P_=(t,e)=>{var i;return!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&((i=e==null?void 0:e.state)==null?void 0:i.defaultRenderer)==="dagre-wrapper")},q_=async()=>{const{diagram:t}=await Z(()=>import("./stateDiagram-v2-2671c3d1.mHpKQIIc.js"),__vite__mapDeps([34,33,7,9,10,11,12,13,14,2,3,4]),import.meta.url);return{id:Sl,diagram:t}},z_={id:Sl,detector:P_,loader:q_},W_=z_,wl="journey",H_=t=>/^\s*journey/.test(t),j_=async()=>{const{diagram:t}=await Z(()=>import("./journeyDiagram-deae3313.2mgkPFCP.js"),__vite__mapDeps([35,1,23,14,2,3,4]),import.meta.url);return{id:wl,diagram:t}},U_={id:wl,detector:H_,loader:j_},Y_=U_,V_=function(t,e){for(let i of e)t.attr(i[0],i[1])},G_=function(t,e,i){let r=new Map;return i?(r.set("width","100%"),r.set("style",`max-width: ${e}px;`)):(r.set("height",t),r.set("width",e)),r},Bl=function(t,e,i,r){const n=G_(e,i,r);V_(t,n)},X_=function(t,e,i,r){const n=e.node().getBBox(),o=n.width,s=n.height;L.info(`SVG bounds: ${o}x${s}`,n);let a=0,l=0;L.info(`Graph bounds: ${a}x${l}`,t),a=o+i*2,l=s+i*2,L.info(`Calculated bounds: ${a}x${l}`),Bl(e,l,a,r);const h=`${n.x-i} ${n.y-i} ${n.width+2*i} ${n.height+2*i}`;e.attr("viewBox",h)},qi={},K_=(t,e,i)=>{let r="";return t in qi&&qi[t]?r=qi[t](i):L.warn(`No theme found for ${t}`),` & { font-family: ${i.fontFamily}; font-size: ${i.fontSize}; fill: ${i.textColor} @@ -57,7 +57,7 @@ import{_ as Z}from"./entry.TEDHt2QA.js";import{c as lh,g as hh}from"./_commonjsH ${e} `},Z_=(t,e)=>{e!==void 0&&(qi[t]=e)},J_=K_;let Un="",Yn="",Vn="";const Gn=t=>fi(t,Mt()),Q_=()=>{Un="",Vn="",Yn=""},ty=t=>{Un=Gn(t).replace(/^\s+/g,"")},ey=()=>Un,iy=t=>{Vn=Gn(t).replace(/\n\s+/g,` `)},ry=()=>Vn,ny=t=>{Yn=Gn(t)},oy=()=>Yn,sy=Object.freeze(Object.defineProperty({__proto__:null,clear:Q_,getAccDescription:ry,getAccTitle:ey,getDiagramTitle:oy,setAccDescription:iy,setAccTitle:ty,setDiagramTitle:ny},Symbol.toStringTag,{value:"Module"})),ay=L,ly=qn,Xn=Mt,Lb=al,Eb=$e,hy=t=>fi(t,Xn()),cy=X_,uy=()=>sy,nr={},or=(t,e,i)=>{var r;if(nr[t])throw new Error(`Diagram ${t} already registered.`);nr[t]=e,i&&tl(t,i),Z_(t,e.styles),(r=e.injectUtils)==null||r.call(e,ay,ly,Xn,hy,cy,uy(),()=>{})},Kn=t=>{if(t in nr)return nr[t];throw new fy(t)};class fy extends Error{constructor(e){super(`Diagram ${e} not found.`)}}const dy=t=>{var e;const{securityLevel:i}=Xn();let r=bt("body");if(i==="sandbox"){const s=((e=bt(`#i${t}`).node())==null?void 0:e.contentDocument)??document;r=bt(s.body)}return r.select(`#${t}`)},py=(t,e,i)=>{L.debug(`renering svg for syntax error -`);const r=dy(e);r.attr("viewBox","0 0 2412 512"),Bl(r,100,512,!0);const n=r.append("g");n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${i}`)},Al={draw:py},gy=Al,my={db:{},renderer:Al,parser:{parser:{yy:{}},parse:()=>{}}},_y=my,Fl="flowchart-elk",yy=(t,e)=>{var i;return!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="elk")},Cy=async()=>{const{diagram:t}=await Z(()=>import("./flowchart-elk-definition-e097735e.HZ7cBKko.js"),__vite__mapDeps([36,6,10,11,12,13,14,4,2,3]),import.meta.url);return{id:Fl,diagram:t}},xy={id:Fl,detector:yy,loader:Cy},by=xy,Ll="timeline",Ty=t=>/^\s*timeline/.test(t),vy=async()=>{const{diagram:t}=await Z(()=>import("./timeline-definition-732a2638.ldnpttiB.js"),__vite__mapDeps([37,23,14,2,3,4]),import.meta.url);return{id:Ll,diagram:t}},ky={id:Ll,detector:Ty,loader:vy},Sy=ky,El="mindmap",wy=t=>/^\s*mindmap/.test(t),By=async()=>{const{diagram:t}=await Z(()=>import("./mindmap-definition-617cf8dd.0-YEhKQm.js"),__vite__mapDeps([38,11,4,2,3]),import.meta.url);return{id:El,diagram:t}},Ay={id:El,detector:wy,loader:By},Fy=Ay,Ol="sankey",Ly=t=>/^\s*sankey-beta/.test(t),Ey=async()=>{const{diagram:t}=await Z(()=>import("./sankeyDiagram-6db3d513.6LfS3rRU.js"),__vite__mapDeps([39,24,20,2,3,4]),import.meta.url);return{id:Ol,diagram:t}},Oy={id:Ol,detector:Ly,loader:Ey},My=Oy;let bs=!1;const Zn=()=>{bs||(bs=!0,or("error",_y,t=>t.toLowerCase().trim()==="error"),or("---",{db:{clear:()=>{}},styles:{},renderer:{draw:()=>{}},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},t=>t.toLowerCase().trimStart().startsWith("---")),Qa(R0,I_,L_,K0,n_,a_,c_,T_,w_,by,Y0,W0,Fy,Sy,t_,W_,R_,Y_,p_,My,y_))};class Ml{constructor(e,i={}){this.text=e,this.metadata=i,this.type="graph",this.text+=` +`);const r=dy(e);r.attr("viewBox","0 0 2412 512"),Bl(r,100,512,!0);const n=r.append("g");n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${i}`)},Al={draw:py},gy=Al,my={db:{},renderer:Al,parser:{parser:{yy:{}},parse:()=>{}}},_y=my,Fl="flowchart-elk",yy=(t,e)=>{var i;return!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&((i=e==null?void 0:e.flowchart)==null?void 0:i.defaultRenderer)==="elk")},Cy=async()=>{const{diagram:t}=await Z(()=>import("./flowchart-elk-definition-e097735e.Fftys7wX.js"),__vite__mapDeps([36,6,10,11,12,13,14,4,2,3]),import.meta.url);return{id:Fl,diagram:t}},xy={id:Fl,detector:yy,loader:Cy},by=xy,Ll="timeline",Ty=t=>/^\s*timeline/.test(t),vy=async()=>{const{diagram:t}=await Z(()=>import("./timeline-definition-732a2638.y_BGnUBk.js"),__vite__mapDeps([37,23,14,2,3,4]),import.meta.url);return{id:Ll,diagram:t}},ky={id:Ll,detector:Ty,loader:vy},Sy=ky,El="mindmap",wy=t=>/^\s*mindmap/.test(t),By=async()=>{const{diagram:t}=await Z(()=>import("./mindmap-definition-617cf8dd.Lp42xUpv.js"),__vite__mapDeps([38,11,4,2,3]),import.meta.url);return{id:El,diagram:t}},Ay={id:El,detector:wy,loader:By},Fy=Ay,Ol="sankey",Ly=t=>/^\s*sankey-beta/.test(t),Ey=async()=>{const{diagram:t}=await Z(()=>import("./sankeyDiagram-6db3d513.jZmDBXiW.js"),__vite__mapDeps([39,24,20,2,3,4]),import.meta.url);return{id:Ol,diagram:t}},Oy={id:Ol,detector:Ly,loader:Ey},My=Oy;let bs=!1;const Zn=()=>{bs||(bs=!0,or("error",_y,t=>t.toLowerCase().trim()==="error"),or("---",{db:{clear:()=>{}},styles:{},renderer:{draw:()=>{}},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},t=>t.toLowerCase().trimStart().startsWith("---")),Qa(R0,I_,L_,K0,n_,a_,c_,T_,w_,by,Y0,W0,Fy,Sy,t_,W_,R_,Y_,p_,My,y_))};class Ml{constructor(e,i={}){this.text=e,this.metadata=i,this.type="graph",this.text+=` `;const r=Mt();try{this.type=wr(e,r)}catch(o){this.type="error",this.detectError=o}const n=Kn(this.type);L.debug("Type "+this.type),this.db=n.db,this.renderer=n.renderer,this.parser=n.parser,this.parser.parser.yy=this.db,this.init=n.init,this.parse()}parse(){var e,i,r,n,o;if(this.detectError)throw this.detectError;(i=(e=this.db).clear)==null||i.call(e);const s=Mt();(r=this.init)==null||r.call(this,s),this.metadata.title&&((o=(n=this.db).setDiagramTitle)==null||o.call(n,this.metadata.title)),this.parser.parse(this.text)}async render(e,i){await this.renderer.draw(this.text,e,i,this)}getParser(){return this.parser}getType(){return this.type}}const Jn=async(t,e={})=>{const i=wr(t,Mt());try{Kn(i)}catch{const n=r0(i);if(!n)throw new Ja(`Diagram ${i} not found.`);const{id:o,diagram:s}=await n();or(o,s)}return new Ml(t,e)};let xn=[];const Ob=t=>{xn.push(t)},Iy=()=>{xn.forEach(t=>{t()}),xn=[]},$y="graphics-document document";function Dy(t,e){t.attr("role",$y),e!==""&&t.attr("aria-roledescription",e)}function Ny(t,e,i,r){if(t.insert!==void 0){if(i){const n=`chart-desc-${r}`;t.attr("aria-describedby",n),t.insert("desc",":first-child").attr("id",n).text(i)}if(e){const n=`chart-title-${r}`;t.attr("aria-labelledby",n),t.insert("title",":first-child").attr("id",n).text(e)}}}const Ry=t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart();/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Il(t){return typeof t>"u"||t===null}function Py(t){return typeof t=="object"&&t!==null}function qy(t){return Array.isArray(t)?t:Il(t)?[]:[t]}function zy(t,e){var i,r,n,o;if(e)for(o=Object.keys(e),i=0,r=o.length;ia&&(o=" ... ",e=r-a+o.length),i-r>a&&(s=" ...",i=r+a-s.length),{str:o+t.slice(e,i).replace(/\t/g,"→")+s,pos:r-e+o.length}}function Kr(t,e){return lt.repeat(" ",e-t.length)+t}function Ky(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var i=/\r?\n|\r|\0/g,r=[0],n=[],o,s=-1;o=i.exec(t.buffer);)n.push(o.index),r.push(o.index+o[0].length),t.position<=o.index&&s<0&&(s=r.length-2);s<0&&(s=r.length-1);var a="",l,h,u=Math.min(t.line+e.linesAfter,n.length).toString().length,f=e.maxLength-(e.indent+u+3);for(l=1;l<=e.linesBefore&&!(s-l<0);l++)h=Xr(t.buffer,r[s-l],n[s-l],t.position-(r[s]-r[s-l]),f),a=lt.repeat(" ",e.indent)+Kr((t.line-l+1).toString(),u)+" | "+h.str+` @@ -86,7 +86,7 @@ ${t.themeCSS}`),t.fontFamily!==void 0&&(r+=` */window.addEventListener("load",Kl,!1)}const cb=function(t){It.parseError=t},hr=[];let Jr=!1;const Zl=async()=>{if(!Jr){for(Jr=!0;hr.length>0;){const t=hr.shift();if(t)try{await t()}catch(e){L.error("Error executing queue",e)}}Jr=!1}},ub=async(t,e)=>new Promise((i,r)=>{const n=()=>new Promise((o,s)=>{me.parse(t,e).then(a=>{o(a),i(a)},a=>{var l;L.error("Error parsing",a),(l=It.parseError)==null||l.call(It,a),s(a),r(a)})});hr.push(n),Zl().catch(r)}),Jl=(t,e,i)=>new Promise((r,n)=>{const o=()=>new Promise((s,a)=>{me.render(t,e,i).then(l=>{s(l),r(l)},l=>{var h;L.error("Error parsing",l),(h=It.parseError)==null||h.call(It,l),a(l),n(l)})});hr.push(o),Zl().catch(n)}),It={startOnLoad:!0,mermaidAPI:me,parse:ub,render:Jl,init:lb,run:Gl,registerExternalDiagrams:hb,initialize:Xl,parseError:void 0,contentLoaded:Kl,setParseErrorHandler:cb,detectType:wr};export{ne as $,Q_ as A,yi as B,Re as C,tr as D,_e as E,xr as F,Ig as G,bm as H,_i as I,Qi as J,Kg as K,Wg as L,Ag as M,Na as N,La as O,Ap as P,Fp as Q,Am as R,Zi as S,ss as T,Tg as U,Lp as V,Dn as W,Bp as X,Ip as Y,Pe as Z,Bg as _,ry as a,Ob as a$,mr as a0,es as a1,Nn as a2,Oa as a3,Da as a4,Pa as a5,Sp as a6,Dt as a7,Zg as a8,Jg as a9,Ks as aA,pb as aB,fh as aC,Sn as aD,te as aE,si as aF,Eo as aG,cu as aH,dy as aI,Tb as aJ,t0 as aK,nl as aL,jn as aM,Fn as aN,_b as aO,xb as aP,Ro as aQ,No as aR,bb as aS,Cb as aT,gb as aU,mb as aV,kb as aW,vb as aX,yb as aY,Gm as aZ,Mt as a_,$n as aa,mn as ab,qp as ac,Hg as ad,In as ae,Gr as af,em as ag,Ct as ah,Ys as ai,xh as aj,$ as ak,Ot as al,Kp as am,Qe as an,Kx as ao,Ef as ap,ch as aq,Lb as ar,Sb as as,cy as at,x0 as au,kn as av,Vs as aw,gt as ax,gi as ay,ru as az,iy as b,n0 as b0,y0 as b1,sy as b2,mi as b3,A as b4,O as b5,Xn as c,fi as d,ot as e,ir as f,ey as g,bt as h,Bl as i,zn as j,S0 as k,L as l,It as m,Ms as n,vr as o,Af as p,_0 as q,Ga as r,ty as s,c0 as t,X_ as u,Eb as v,v0 as w,ny as x,oy as y,ii as z}; function __vite__mapDeps(indexes) { if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["./c4Diagram-817c8e44.vJjV7vYn.js","./svgDrawCommon-ad5ef572.up_fh1Ps.js","./entry.TEDHt2QA.js","./entry.vYS37YVg.css","./_commonjsHelpers.5-cIlDoe.js","./flowDiagram-61eb444c.aopSxhPZ.js","./flowDb-170db09d.Pq8ih4By.js","./layout.cBG5TzxH.js","./styles-b966c4ae.IjxwHMVL.js","./index-67a42d7d.xm4RvesR.js","./edges-80f1ebb6.h90W1bSR.js","./createText-aebacdfe.b7sMoTCr.js","./line.yVnlcbB_.js","./array.Nw74a44z.js","./path.aUcfwwLI.js","./flowDiagram-v2-2f8f667a.ToNiPqRe.js","./erDiagram-9cfc3649.ybN3qirZ.js","./gitGraphDiagram-6b463803.hIPJn7TU.js","./ganttDiagram-db6931fb.ot2isyFg.js","./linear.vSTMcYPd.js","./init.Hi12RPRh.js","./infoDiagram-a336098b.Wd5ZJWUl.js","./pieDiagram-a5166659.vvnns6bg.js","./arc.flIDfKC7.js","./ordinal.d2xiFBCc.js","./quadrantDiagram-6c355bbc.KS07axX9.js","./xychartDiagram-f746c04c.1ExPLvQf.js","./requirementDiagram-4038b16c.0PbzK17N.js","./sequenceDiagram-465a088a.d3gG14vX.js","./classDiagram-48ab76fb.5c6TuKe5.js","./styles-4ba6ed67.fA2HbVXa.js","./classDiagram-v2-8ecb0bfc.5G0StPuQ.js","./stateDiagram-b620d43f.f7RfdstU.js","./styles-bbc3fe3b.3MtlFjLb.js","./stateDiagram-v2-2671c3d1.QaAPyhc0.js","./journeyDiagram-deae3313.TSLs3n0V.js","./flowchart-elk-definition-e097735e.HZ7cBKko.js","./timeline-definition-732a2638.ldnpttiB.js","./mindmap-definition-617cf8dd.0-YEhKQm.js","./sankeyDiagram-6db3d513.6LfS3rRU.js"] + __vite__mapDeps.viteFileDeps = ["./c4Diagram-817c8e44.wHCOifDg.js","./svgDrawCommon-ad5ef572.X8xX495e.js","./entry.2w2g1VWZ.js","./entry.vYS37YVg.css","./_commonjsHelpers.5-cIlDoe.js","./flowDiagram-61eb444c.8YXXN8fx.js","./flowDb-170db09d.zcb_9fvH.js","./layout.v3y_H6P2.js","./styles-b966c4ae.XG1tK9wD.js","./index-67a42d7d.k58ohfnG.js","./edges-80f1ebb6.gtortKGL.js","./createText-aebacdfe.QPUQ3eAz.js","./line.uArpYtMu.js","./array.Nw74a44z.js","./path.aUcfwwLI.js","./flowDiagram-v2-2f8f667a.ExBBvo5t.js","./erDiagram-9cfc3649.yGBXaBAo.js","./gitGraphDiagram-6b463803.AWiJsDP2.js","./ganttDiagram-db6931fb.epajDFpi.js","./linear.znFunSuN.js","./init.Hi12RPRh.js","./infoDiagram-a336098b.RVDuPuO8.js","./pieDiagram-a5166659.mSSO3U9_.js","./arc.kghs0U58.js","./ordinal.d2xiFBCc.js","./quadrantDiagram-6c355bbc.Z0DFXh7Q.js","./xychartDiagram-f746c04c.nQAhD605.js","./requirementDiagram-4038b16c.19aSfqcm.js","./sequenceDiagram-465a088a.8KDelGu_.js","./classDiagram-48ab76fb.IXDIkmEp.js","./styles-4ba6ed67.oBMPGM8a.js","./classDiagram-v2-8ecb0bfc.eoEwq_qQ.js","./stateDiagram-b620d43f.cfadEOEs.js","./styles-bbc3fe3b.uGyWsvZU.js","./stateDiagram-v2-2671c3d1.mHpKQIIc.js","./journeyDiagram-deae3313.2mgkPFCP.js","./flowchart-elk-definition-e097735e.Fftys7wX.js","./timeline-definition-732a2638.y_BGnUBk.js","./mindmap-definition-617cf8dd.Lp42xUpv.js","./sankeyDiagram-6db3d513.jZmDBXiW.js"] } return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) } \ No newline at end of file diff --git a/_nuxt/mindmap-definition-617cf8dd.0-YEhKQm.js b/_nuxt/mindmap-definition-617cf8dd.Lp42xUpv.js similarity index 99% rename from _nuxt/mindmap-definition-617cf8dd.0-YEhKQm.js rename to _nuxt/mindmap-definition-617cf8dd.Lp42xUpv.js index 4cefbddde2..c4ba5d4b56 100644 --- a/_nuxt/mindmap-definition-617cf8dd.0-YEhKQm.js +++ b/_nuxt/mindmap-definition-617cf8dd.Lp42xUpv.js @@ -1,4 +1,4 @@ -import{d as bp,c as nn,l as qr,h as ei,u as Ep,b3 as wp,b4 as xp,b5 as Tp}from"./mermaid-934d9bea.GjCu814R.js";import{c as Cp}from"./createText-aebacdfe.b7sMoTCr.js";import{c as Ca,g as Vu}from"./_commonjsHelpers.5-cIlDoe.js";import"./entry.TEDHt2QA.js";var _u={exports:{}};(function(pe,fe){(function(ee,ce){pe.exports=ce()})(Ca,function(){function ee(t){"@babel/helpers - typeof";return ee=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ee(t)}function ce(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function H(t,e){for(var r=0;rt.length)&&(e=t.length);for(var r=0,a=new Array(e);rt.length)&&(e=t.length);for(var r=0,a=new Array(e);r"u"?null:window,V=D?D.navigator:null;D&&D.document;var _=ee(""),Q=ee({}),ne=ee(function(){}),ue=typeof HTMLElement>"u"?"undefined":ee(HTMLElement),J=function(e){return e&&e.instanceString&&Y(e.instanceString)?e.instanceString():null},j=function(e){return e!=null&&ee(e)==_},Y=function(e){return e!=null&&ee(e)===ne},te=function(e){return!ge(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},L=function(e){return e!=null&&ee(e)===Q&&!te(e)&&e.constructor===Object},$=function(e){return e!=null&&ee(e)===Q},k=function(e){return e!=null&&ee(e)===ee(1)&&!isNaN(e)},q=function(e){return k(e)&&Math.floor(e)===e},he=function(e){if(ue!=="undefined")return e!=null&&e instanceof HTMLElement},ge=function(e){return Ae(e)||Ne(e)},Ae=function(e){return J(e)==="collection"&&e._private.single},Ne=function(e){return J(e)==="collection"&&!e._private.single},_e=function(e){return J(e)==="core"},tt=function(e){return J(e)==="stylesheet"},ct=function(e){return J(e)==="event"},Pe=function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},$e=function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},Xe=function(e){return L(e)&&k(e.x1)&&k(e.x2)&&k(e.y1)&&k(e.y2)},rt=function(e){return $(e)&&Y(e.then)},lt=function(){return V&&V.userAgent.match(/msie|trident|edge/i)},nt=function(e,r){r||(r=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var i=[],s=0;sr?1:0},Ju=function(e,r){return-1*Ji(e,r)},Ue=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r1&&(y-=1),y<1/6?d+(g-d)*6*y:y<1/2?g:y<2/3?d+(g-d)*(2/3-y)*6:d}var h=new RegExp("^"+on+"$").exec(e);if(h){if(a=parseInt(h[1]),a<0?a=(360- -1*a%360)%360:a>360&&(a=a%360),a/=360,n=parseFloat(h[2]),n<0||n>100||(n=n/100,i=parseFloat(h[3]),i<0||i>100)||(i=i/100,s=h[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(n===0)o=l=u=Math.round(i*255);else{var c=i<.5?i*(1+n):i+n-i*n,v=2*i-c;o=Math.round(255*f(v,c,a+1/3)),l=Math.round(255*f(v,c,a)),u=Math.round(255*f(v,c,a-1/3))}r=[o,l,u,s]}return r},tl=function(e){var r,a=new RegExp("^"+vr+"$").exec(e);if(a){r=[];for(var n=[],i=1;i<=3;i++){var s=a[i];if(s[s.length-1]==="%"&&(n[i]=!0),s=parseFloat(s),n[i]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var o=n[1]||n[2]||n[3],l=n[1]&&n[2]&&n[3];if(o&&!l)return;var u=a[4];if(u!==void 0){if(u=parseFloat(u),u<0||u>1)return;r.push(u)}}return r},rl=function(e){return nl[e.toLowerCase()]},al=function(e){return(te(e)?e:null)||rl(e)||ju(e)||tl(e)||el(e)},nl={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},ji=function(e){for(var r=e.map,a=e.keys,n=a.length,i=0;i=e||w<0||h&&I>=i}function p(){var A=ti();if(y(A))return m(A);o=setTimeout(p,g(A))}function m(A){return o=void 0,c&&a?v(A):(a=n=void 0,s)}function b(){o!==void 0&&clearTimeout(o),u=0,a=l=n=o=void 0}function E(){return o===void 0?s:m(ti())}function M(){var A=ti(),w=y(A);if(a=arguments,n=this,l=A,w){if(o===void 0)return d(l);if(h)return clearTimeout(o),o=setTimeout(p,e),v(l)}return o===void 0&&(o=setTimeout(p,e)),s}return M.cancel=b,M.flush=E,M}var ln=_l,ri=D?D.performance:null,ss=ri&&ri.now?function(){return ri.now()}:function(){return Date.now()},Ul=function(){if(D){if(D.requestAnimationFrame)return function(t){D.requestAnimationFrame(t)};if(D.mozRequestAnimationFrame)return function(t){D.mozRequestAnimationFrame(t)};if(D.webkitRequestAnimationFrame)return function(t){D.webkitRequestAnimationFrame(t)};if(D.msRequestAnimationFrame)return function(t){D.msRequestAnimationFrame(t)}}return function(t){t&&setTimeout(function(){t(ss())},1e3/60)}}(),fn=function(e){return Ul(e)},dr=ss,Qr=9261,os=65599,Oa=5381,us=function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Qr,a=r,n;n=e.next(),!n.done;)a=a*os+n.value|0;return a},Na=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Qr;return r*os+e|0},Ma=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Oa;return(r<<5)+r+e|0},Yl=function(e,r){return e*2097152+r},Er=function(e){return e[0]*2097152+e[1]},hn=function(e,r){return[Na(e[0],r[0]),Ma(e[1],r[1])]},Hl=function(e,r){var a={value:0,done:!1},n=0,i=e.length,s={next:function(){return n=0&&!(e[n]===r&&(e.splice(n,1),a));n--);},ii=function(e){e.splice(0,e.length)},Jl=function(e,r){for(var a=0;a"u"?"undefined":ee(Set))!==ef?Set:tf,vn=function(e,r){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!_e(e)){xt("An element must have a core reference and parameters set");return}var n=r.group;if(n==null&&(r.data&&r.data.source!=null&&r.data.target!=null?n="edges":n="nodes"),n!=="nodes"&&n!=="edges"){xt("An element must be of type `nodes` or `edges`; you specified `"+n+"`");return}this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:n,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?n==="edges":!!r.pannable,active:!1,classes:new Jr,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(i.position.x==null&&(i.position.x=0),i.position.y==null&&(i.position.y=0),r.renderedPosition){var s=r.renderedPosition,o=e.pan(),l=e.zoom();i.position={x:(s.x-o.x)/l,y:(s.y-o.y)/l}}var u=[];te(r.classes)?u=r.classes:j(r.classes)&&(u=r.classes.split(/\s+/));for(var f=0,h=u.length;fm?1:0},f=function(p,m,b,E,M){var A;if(b==null&&(b=0),M==null&&(M=a),b<0)throw new Error("lo must be non-negative");for(E==null&&(E=p.length);bB;0<=B?C++:C--)I.push(C);return I}).apply(this).reverse(),w=[],E=0,M=A.length;EF;0<=F?++I:--I)R.push(s(p,b));return R},g=function(p,m,b,E){var M,A,w;for(E==null&&(E=a),M=p[b];b>m;){if(w=b-1>>1,A=p[w],E(M,A)<0){p[b]=A,b=w;continue}break}return p[b]=M},y=function(p,m,b){var E,M,A,w,I;for(b==null&&(b=a),M=p.length,I=m,A=p[m],E=2*m+1;E0;){var A=m.pop(),w=y(A),I=A.id();if(c[I]=w,w!==1/0)for(var C=A.neighborhood().intersect(d),B=0;B0)for(ie.unshift(Z);h[de];){var se=h[de];ie.unshift(se.edge),ie.unshift(se.node),oe=se.node,de=oe.id()}return o.spawn(ie)}}}},sf={kruskal:function(e){e=e||function(b){return 1};for(var r=this.byGroup(),a=r.nodes,n=r.edges,i=a.length,s=new Array(i),o=a,l=function(E){for(var M=0;M0;){if(M(),w++,E===f){for(var I=[],C=i,B=f,F=p[B];I.unshift(C),F!=null&&I.unshift(F),C=y[B],C!=null;)B=C.id(),F=p[B];return{found:!0,distance:h[E],path:this.spawn(I),steps:w}}v[E]=!0;for(var R=b._private.edges,X=0;XF&&(d[B]=F,m[B]=C,b[B]=M),!i){var R=C*f+I;!i&&d[R]>F&&(d[R]=F,m[R]=I,b[R]=M)}}}for(var X=0;X1&&arguments[1]!==void 0?arguments[1]:s,et=b(ke),We=[],Ye=et;;){if(Ye==null)return r.spawn();var Se=m(Ye),N=Se.edge,le=Se.pred;if(We.unshift(Ye[0]),Ye.same(Ge)&&We.length>0)break;N!=null&&We.unshift(N),Ye=le}return l.spawn(We)},A=0;A=0;f--){var h=u[f],c=h[1],v=h[2];(r[c]===o&&r[v]===l||r[c]===l&&r[v]===o)&&u.splice(f,1)}for(var d=0;dn;){var i=Math.floor(Math.random()*r.length);r=df(i,e,r),a--}return r},gf={kargerStein:function(){var e=this,r=this.byGroup(),a=r.nodes,n=r.edges;n.unmergeBy(function(ie){return ie.isLoop()});var i=a.length,s=n.length,o=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),l=Math.floor(i/vf);if(i<2){xt("At least 2 nodes are required for Karger-Stein algorithm");return}for(var u=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=1/0,i=r;i1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=-1/0,i=r;i1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=0,i=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;n?e=e.slice(r,a):(a0&&e.splice(0,r));for(var o=0,l=e.length-1;l>=0;l--){var u=e[l];s?isFinite(u)||(e[l]=-1/0,o++):e.splice(l,1)}i&&e.sort(function(c,v){return c-v});var f=e.length,h=Math.floor(f/2);return f%2!==0?e[h+1+o]:(e[h-1+o]+e[h+o])/2},wf=function(e){return Math.PI*e/180},gn=function(e,r){return Math.atan2(r,e)-Math.PI/2},oi=Math.log2||function(t){return Math.log(t)/Math.log(2)},ms=function(e){return e>0?1:e<0?-1:0},Pr=function(e,r){return Math.sqrt(Br(e,r))},Br=function(e,r){var a=r.x-e.x,n=r.y-e.y;return a*a+n*n},xf=function(e){for(var r=e.length,a=0,n=0;n=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},Cf=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},Df=function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},Sf=function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},Lf=function(e,r,a){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,a),e.y2=Math.max(e.y2,a),e.h=e.y2-e.y1},pn=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},ui=function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],a,n,i,s;if(r.length===1)a=n=i=s=r[0];else if(r.length===2)a=i=r[0],s=n=r[1];else if(r.length===4){var o=x(r,4);a=o[0],n=o[1],i=o[2],s=o[3]}return e.x1-=s,e.x2+=n,e.y1-=a,e.y2+=i,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},bs=function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},li=function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},ta=function(e,r,a){return e.x1<=r&&r<=e.x2&&e.y1<=a&&a<=e.y2},Af=function(e,r){return ta(e,r.x,r.y)},Es=function(e,r){return ta(e,r.x1,r.y1)&&ta(e,r.x2,r.y2)},ws=function(e,r,a,n,i,s,o){var l=Fa(i,s),u=i/2,f=s/2,h;{var c=a-u+l-o,v=n-f-o,d=a+u-l+o,g=v;if(h=Tr(e,r,a,n,c,v,d,g,!1),h.length>0)return h}{var y=a+u+o,p=n-f+l-o,m=y,b=n+f-l+o;if(h=Tr(e,r,a,n,y,p,m,b,!1),h.length>0)return h}{var E=a-u+l-o,M=n+f+o,A=a+u-l+o,w=M;if(h=Tr(e,r,a,n,E,M,A,w,!1),h.length>0)return h}{var I=a-u-o,C=n-f+l-o,B=I,F=n+f-l+o;if(h=Tr(e,r,a,n,I,C,B,F,!1),h.length>0)return h}var R;{var X=a-u+l,z=n-f+l;if(R=Pa(e,r,a,n,X,z,l+o),R.length>0&&R[0]<=X&&R[1]<=z)return[R[0],R[1]]}{var re=a+u-l,W=n-f+l;if(R=Pa(e,r,a,n,re,W,l+o),R.length>0&&R[0]>=re&&R[1]<=W)return[R[0],R[1]]}{var Z=a+u-l,ie=n+f-l;if(R=Pa(e,r,a,n,Z,ie,l+o),R.length>0&&R[0]>=Z&&R[1]>=ie)return[R[0],R[1]]}{var oe=a-u+l,de=n+f-l;if(R=Pa(e,r,a,n,oe,de,l+o),R.length>0&&R[0]<=oe&&R[1]>=de)return[R[0],R[1]]}return[]},Of=function(e,r,a,n,i,s,o){var l=o,u=Math.min(a,i),f=Math.max(a,i),h=Math.min(n,s),c=Math.max(n,s);return u-l<=e&&e<=f+l&&h-l<=r&&r<=c+l},Nf=function(e,r,a,n,i,s,o,l,u){var f={x1:Math.min(a,o,i)-u,x2:Math.max(a,o,i)+u,y1:Math.min(n,l,s)-u,y2:Math.max(n,l,s)+u};return!(ef.x2||rf.y2)},Mf=function(e,r,a,n){a-=n;var i=r*r-4*e*a;if(i<0)return[];var s=Math.sqrt(i),o=2*e,l=(-r+s)/o,u=(-r-s)/o;return[l,u]},If=function(e,r,a,n,i){var s=1e-5;e===0&&(e=s),r/=e,a/=e,n/=e;var o,l,u,f,h,c,v,d;if(l=(3*a-r*r)/9,u=-(27*n)+r*(9*a-2*(r*r)),u/=54,o=l*l*l+u*u,i[1]=0,v=r/3,o>0){h=u+Math.sqrt(o),h=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),c=u-Math.sqrt(o),c=c<0?-Math.pow(-c,1/3):Math.pow(c,1/3),i[0]=-v+h+c,v+=(h+c)/2,i[4]=i[2]=-v,v=Math.sqrt(3)*(-c+h)/2,i[3]=v,i[5]=-v;return}if(i[5]=i[3]=0,o===0){d=u<0?-Math.pow(-u,1/3):Math.pow(u,1/3),i[0]=-v+2*d,i[4]=i[2]=-(d+v);return}l=-l,f=l*l*l,f=Math.acos(u/Math.sqrt(f)),d=2*Math.sqrt(l),i[0]=-v+d*Math.cos(f/3),i[2]=-v+d*Math.cos((f+2*Math.PI)/3),i[4]=-v+d*Math.cos((f+4*Math.PI)/3)},Rf=function(e,r,a,n,i,s,o,l){var u=1*a*a-4*a*i+2*a*o+4*i*i-4*i*o+o*o+n*n-4*n*s+2*n*l+4*s*s-4*s*l+l*l,f=1*9*a*i-3*a*a-3*a*o-6*i*i+3*i*o+9*n*s-3*n*n-3*n*l-6*s*s+3*s*l,h=1*3*a*a-6*a*i+a*o-a*e+2*i*i+2*i*e-o*e+3*n*n-6*n*s+n*l-n*r+2*s*s+2*s*r-l*r,c=1*a*i-a*a+a*e-i*e+n*s-n*n+n*r-s*r,v=[];If(u,f,h,c,v);for(var d=1e-7,g=[],y=0;y<6;y+=2)Math.abs(v[y+1])=0&&v[y]<=1&&g.push(v[y]);g.push(1),g.push(0);for(var p=-1,m,b,E,M=0;M=0?Eu?(e-i)*(e-i)+(r-s)*(r-s):f-c},Yt=function(e,r,a){for(var n,i,s,o,l,u=0,f=0;f=e&&e>=s||n<=e&&e<=s)l=(e-n)/(s-n)*(o-i)+i,l>r&&u++;else continue;return u%2!==0},gr=function(e,r,a,n,i,s,o,l,u){var f=new Array(a.length),h;l[0]!=null?(h=Math.atan(l[1]/l[0]),l[0]<0?h=h+Math.PI/2:h=-h-Math.PI/2):h=l;for(var c=Math.cos(-h),v=Math.sin(-h),d=0;d0){var y=Ts(f,-u);g=xs(y)}else g=f;return Yt(e,r,g)},Pf=function(e,r,a,n,i,s,o){for(var l=new Array(a.length),u=s/2,f=o/2,h=ci(s,o),c=h*h,v=0;v=0&&y<=1&&m.push(y),p>=0&&p<=1&&m.push(p),m.length===0)return[];var b=m[0]*l[0]+e,E=m[0]*l[1]+r;if(m.length>1){if(m[0]==m[1])return[b,E];var M=m[1]*l[0]+e,A=m[1]*l[1]+r;return[b,E,M,A]}else return[b,E]},fi=function(e,r,a){return r<=e&&e<=a||a<=e&&e<=r?e:e<=r&&r<=a||a<=r&&r<=e?r:a},Tr=function(e,r,a,n,i,s,o,l,u){var f=e-i,h=a-e,c=o-i,v=r-s,d=n-r,g=l-s,y=c*v-g*f,p=h*v-d*f,m=g*h-c*d;if(m!==0){var b=y/m,E=p/m,M=.001,A=0-M,w=1+M;return A<=b&&b<=w&&A<=E&&E<=w?[e+b*h,r+b*d]:u?[e+b*h,r+b*d]:[]}else return y===0||p===0?fi(e,a,o)===o?[o,l]:fi(e,a,i)===i?[i,s]:fi(i,o,a)===a?[a,n]:[]:[]},Ba=function(e,r,a,n,i,s,o,l){var u=[],f,h=new Array(a.length),c=!0;s==null&&(c=!1);var v;if(c){for(var d=0;d0){var g=Ts(h,-l);v=xs(g)}else v=h}else v=a;for(var y,p,m,b,E=0;E2){for(var W=[u[0],u[1]],Z=Math.pow(W[0]-e,2)+Math.pow(W[1]-r,2),ie=1;ief&&(f=E)},get:function(b){return u[b]}},c=0;c0?W=re.edgesTo(z)[0]:W=z.edgesTo(re)[0];var Z=n(W);z=z.id(),I[z]>I[R]+Z&&(I[z]=I[R]+Z,C.nodes.indexOf(z)<0?C.push(z):C.updateItem(z),w[z]=0,A[z]=[]),I[z]==I[R]+Z&&(w[z]=w[z]+w[R],A[z].push(R))}else for(var ie=0;ie0;){for(var ve=M.pop(),we=0;we0&&o.push(a[l]);o.length!==0&&i.push(n.collection(o))}return i},Qf=function(e,r){for(var a=0;a5&&arguments[5]!==void 0?arguments[5]:eh,o=n,l,u,f=0;f=2?za(e,r,a,0,Is,th):za(e,r,a,0,Ms)},squaredEuclidean:function(e,r,a){return za(e,r,a,0,Is)},manhattan:function(e,r,a){return za(e,r,a,0,Ms)},max:function(e,r,a){return za(e,r,a,-1/0,rh)}};na["squared-euclidean"]=na.squaredEuclidean,na.squaredeuclidean=na.squaredEuclidean;function mn(t,e,r,a,n,i){var s;return Y(t)?s=t:s=na[t]||na.euclidean,e===0&&Y(t)?s(n,i):s(e,r,a,n,i)}var ah=Lt({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),gi=function(e){return ah(e)},bn=function(e,r,a,n,i){var s=i!=="kMedoids",o=s?function(h){return a[h]}:function(h){return n[h](a)},l=function(c){return n[c](r)},u=a,f=r;return mn(e,n.length,o,l,u,f)},pi=function(e,r,a){for(var n=a.length,i=new Array(n),s=new Array(n),o=new Array(r),l=null,u=0;ua)return!1}return!0},sh=function(e,r,a){for(var n=0;no&&(o=r[u][f],l=f);i[l].push(e[u])}for(var h=0;h=i.threshold||i.mode==="dendrogram"&&e.length===1)return!1;var d=r[s],g=r[n[s]],y;i.mode==="dendrogram"?y={left:d,right:g,key:d.key}:y={value:d.value.concat(g.value),key:d.key},e[d.index]=y,e.splice(g.index,1),r[d.key]=y;for(var p=0;pa[g.key][m.key]&&(l=a[g.key][m.key])):i.linkage==="max"?(l=a[d.key][m.key],a[d.key][m.key]0&&n.push(i);return n},$s=function(e,r,a){for(var n=[],i=0;io&&(s=u,o=r[i*e+u])}s>0&&n.push(s)}for(var f=0;fu&&(l=f,u=h)}a[i]=s[l]}return n=$s(e,r,a),n},Vs=function(e){for(var r=this.cy(),a=this.nodes(),n=Eh(e),i={},s=0;s=F?(R=F,F=z,X=re):z>R&&(R=z);for(var W=0;W0?1:0;w[C%n.minIterations*o+ve]=we,se+=we}if(se>0&&(C>=n.minIterations-1||C==n.maxIterations-1)){for(var Te=0,Ee=0;Ee1||A>1)&&(o=!0),h[b]=[],m.outgoers().forEach(function(I){I.isEdge()&&h[b].push(I.id())})}else c[b]=[void 0,m.target().id()]}):s.forEach(function(m){var b=m.id();if(m.isNode()){var E=m.degree(!0);E%2&&(l?u?o=!0:u=b:l=b),h[b]=[],m.connectedEdges().forEach(function(M){return h[b].push(M.id())})}else c[b]=[m.source().id(),m.target().id()]});var v={found:!1,trail:void 0};if(o)return v;if(u&&l)if(i){if(f&&u!=f)return v;f=u}else{if(f&&u!=f&&l!=f)return v;f||(f=u)}else f||(f=s[0].id());var d=function(b){for(var E=b,M=[b],A,w,I;h[E].length;)A=h[E].shift(),w=c[A][0],I=c[A][1],E!=I?(h[I]=h[I].filter(function(C){return C!=A}),E=I):!i&&E!=w&&(h[w]=h[w].filter(function(C){return C!=A}),E=w),M.unshift(A),M.unshift(E);return M},g=[],y=[];for(y=d(f);y.length!=1;)h[y[0]].length==0?(g.unshift(s.getElementById(y.shift())),g.unshift(s.getElementById(y.shift()))):y=d(y.shift()).concat(y);g.unshift(s.getElementById(y.shift()));for(var p in h)if(h[p].length)return v;return v.found=!0,v.trail=this.spawn(g,!0),v}},wn=function(){var e=this,r={},a=0,n=0,i=[],s=[],o={},l=function(c,v){for(var d=s.length-1,g=[],y=e.spawn();s[d].x!=c||s[d].y!=v;)g.push(s.pop().edge),d--;g.push(s.pop().edge),g.forEach(function(p){var m=p.connectedNodes().intersection(e);y.merge(p),m.forEach(function(b){var E=b.id(),M=b.connectedEdges().intersection(e);y.merge(b),r[E].cutVertex?y.merge(M.filter(function(A){return A.isLoop()})):y.merge(M)})}),i.push(y)},u=function h(c,v,d){c===d&&(n+=1),r[v]={id:a,low:a++,cutVertex:!1};var g=e.getElementById(v).connectedEdges().intersection(e);if(g.size()===0)i.push(e.spawn(e.getElementById(v)));else{var y,p,m,b;g.forEach(function(E){y=E.source().id(),p=E.target().id(),m=y===v?p:y,m!==d&&(b=E.id(),o[b]||(o[b]=!0,s.push({x:v,y:m,edge:E})),m in r?r[v].low=Math.min(r[v].low,r[m].id):(h(c,m,v),r[v].low=Math.min(r[v].low,r[m].low),r[v].id<=r[m].low&&(r[v].cutVertex=!0,l(v,m))))})}};e.forEach(function(h){if(h.isNode()){var c=h.id();c in r||(n=0,u(c,c),r[c].cutVertex=n>1)}});var f=Object.keys(r).filter(function(h){return r[h].cutVertex}).map(function(h){return e.getElementById(h)});return{cut:e.spawn(f),components:i}},Ah={hopcroftTarjanBiconnected:wn,htbc:wn,htb:wn,hopcroftTarjanBiconnectedComponents:wn},xn=function(){var e=this,r={},a=0,n=[],i=[],s=e.spawn(e),o=function l(u){i.push(u),r[u]={index:a,low:a++,explored:!1};var f=e.getElementById(u).connectedEdges().intersection(e);if(f.forEach(function(g){var y=g.target().id();y!==u&&(y in r||l(y),r[y].explored||(r[u].low=Math.min(r[u].low,r[y].low)))}),r[u].index===r[u].low){for(var h=e.spawn();;){var c=i.pop();if(h.merge(e.getElementById(c)),r[c].low=r[u].index,r[c].explored=!0,c===u)break}var v=h.edgesWith(h),d=h.merge(v);n.push(d),s=s.difference(d)}};return e.forEach(function(l){if(l.isNode()){var u=l.id();u in r||o(u)}}),{cut:s,components:n}},Oh={tarjanStronglyConnected:xn,tsc:xn,tscc:xn,tarjanStronglyConnectedComponents:xn},_s={};[Ia,nf,sf,uf,ff,cf,gf,$f,ra,aa,di,jf,ch,mh,Dh,Lh,Ah,Oh].forEach(function(t){Ue(_s,t)});/*! Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) diff --git a/_nuxt/page.SQcsTZUr.js b/_nuxt/page.6f8lq27m.js similarity index 90% rename from _nuxt/page.SQcsTZUr.js rename to _nuxt/page.6f8lq27m.js index eec4e04c85..e39ef299ed 100644 --- a/_nuxt/page.SQcsTZUr.js +++ b/_nuxt/page.6f8lq27m.js @@ -1 +1 @@ -import{d as r,aw as p,E as l,c as i,g as _,w as u,L as n,aA as f,b as m,e as h,ad as x,k as g}from"./entry.TEDHt2QA.js";const k={class:"page-layout"},v=r({__name:"page",setup(w){const{config:e}=p();return l({link:{rel:"search",type:"application/opensearchdescription+xml",href:"opensearch.xml"}}),(d,B)=>{var a,s,t,o;const c=f;return m(),i("div",k,[_(c,{fluid:(s=(a=n(e))==null?void 0:a.main)==null?void 0:s.fluid,padded:(o=(t=n(e))==null?void 0:t.main)==null?void 0:o.padded},{default:u(()=>[h("article",null,[x(d.$slots,"default",{},void 0,!0)])]),_:3},8,["fluid","padded"])])}}}),y=g(v,[["__scopeId","data-v-5f91769d"]]);export{y as default}; +import{d as r,aw as p,E as l,c as i,g as _,w as u,L as n,aA as f,b as m,e as h,ad as x,k as g}from"./entry.2w2g1VWZ.js";const k={class:"page-layout"},v=r({__name:"page",setup(w){const{config:e}=p();return l({link:{rel:"search",type:"application/opensearchdescription+xml",href:"opensearch.xml"}}),(d,B)=>{var a,s,t,o;const c=f;return m(),i("div",k,[_(c,{fluid:(s=(a=n(e))==null?void 0:a.main)==null?void 0:s.fluid,padded:(o=(t=n(e))==null?void 0:t.main)==null?void 0:o.padded},{default:u(()=>[h("article",null,[x(d.$slots,"default",{},void 0,!0)])]),_:3},8,["fluid","padded"])])}}}),y=g(v,[["__scopeId","data-v-5f91769d"]]);export{y as default}; diff --git a/_nuxt/pieDiagram-a5166659.vvnns6bg.js b/_nuxt/pieDiagram-a5166659.mSSO3U9_.js similarity index 98% rename from _nuxt/pieDiagram-a5166659.vvnns6bg.js rename to _nuxt/pieDiagram-a5166659.mSSO3U9_.js index 19a86520a9..56d727c4c5 100644 --- a/_nuxt/pieDiagram-a5166659.vvnns6bg.js +++ b/_nuxt/pieDiagram-a5166659.mSSO3U9_.js @@ -1,4 +1,4 @@ -import{aJ as q,aK as at,x as lt,y as ot,s as ct,g as ht,b as ut,a as yt,A as ft,d as pt,c as et,l as it,aL as gt,aI as dt,i as mt,aM as _t}from"./mermaid-934d9bea.GjCu814R.js";import{a as tt}from"./arc.flIDfKC7.js";import{o as vt}from"./ordinal.d2xiFBCc.js";import{a as xt}from"./array.Nw74a44z.js";import{c as F}from"./path.aUcfwwLI.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./init.Hi12RPRh.js";function kt(e,u){return ue?1:u>=e?0:NaN}function bt(e){return e}function St(){var e=bt,u=kt,$=null,f=F(0),b=F(q),A=F(0);function c(r){var l,g=(r=xt(r)).length,S,w,O=0,m=new Array(g),k=new Array(g),_=+f.apply(this,arguments),h=Math.min(q,Math.max(-q,b.apply(this,arguments)-_)),T,I=Math.min(Math.abs(h)/g,A.apply(this,arguments)),p=I*(h<0?-1:1),t;for(l=0;l0&&(O+=t);for(u!=null?m.sort(function(i,n){return u(k[i],k[n])}):$!=null&&m.sort(function(i,n){return $(r[i],r[n])}),l=0,w=O?(h-g*p)/O:0;l0?t*w:0)+p,k[S]={data:r[S],index:l,value:t,startAngle:_,endAngle:T,padAngle:I};return k}return c.value=function(r){return arguments.length?(e=typeof r=="function"?r:F(+r),c):e},c.sortValues=function(r){return arguments.length?(u=r,$=null,c):u},c.sort=function(r){return arguments.length?($=r,u=null,c):$},c.startAngle=function(r){return arguments.length?(f=typeof r=="function"?r:F(+r),c):f},c.endAngle=function(r){return arguments.length?(b=typeof r=="function"?r:F(+r),c):b},c.padAngle=function(r){return arguments.length?(A=typeof r=="function"?r:F(+r),c):A},c}var H=function(){var e=function(p,t,i,n){for(i=i||{},n=p.length;n--;i[p[n]]=t);return i},u=[1,3],$=[1,4],f=[1,5],b=[1,6],A=[1,10,12,14,16,18,19,20,21,22],c=[2,4],r=[1,5,10,12,14,16,18,19,20,21,22],l=[20,21,22],g=[2,7],S=[1,12],w=[1,13],O=[1,14],m=[1,15],k=[1,16],_=[1,17],h={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",10:"txt",11:"value",12:"title",13:"title_value",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"section",20:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(t,i,n,a,o,s,P){var v=s.length-1;switch(o){case 3:a.setShowData(!0);break;case 6:this.$=s[v-1];break;case 8:a.addSection(s[v-1],a.cleanupValue(s[v]));break;case 9:this.$=s[v].trim(),a.setDiagramTitle(this.$);break;case 10:this.$=s[v].trim(),a.setAccTitle(this.$);break;case 11:case 12:this.$=s[v].trim(),a.setAccDescription(this.$);break;case 13:a.addSection(s[v].substr(8)),this.$=s[v].substr(8);break}},table:[{3:1,4:2,5:u,20:$,21:f,22:b},{1:[3]},{3:7,4:2,5:u,20:$,21:f,22:b},e(A,c,{6:8,7:[1,9]}),e(r,[2,14]),e(r,[2,15]),e(r,[2,16]),{1:[2,1]},e(l,g,{8:10,9:11,1:[2,2],10:S,12:w,14:O,16:m,18:k,19:_}),e(A,c,{6:18}),e(A,[2,5]),{4:19,20:$,21:f,22:b},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},e(l,[2,12]),e(l,[2,13]),e(l,g,{8:10,9:11,1:[2,3],10:S,12:w,14:O,16:m,18:k,19:_}),e(A,[2,6]),e(l,[2,8]),e(l,[2,9]),e(l,[2,10]),e(l,[2,11])],defaultActions:{7:[2,1]},parseError:function(t,i){if(i.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=i,n}},parse:function(t){var i=this,n=[0],a=[],o=[null],s=[],P=this.table,v="",d=0,V=0,z=2,M=1,B=s.slice.call(arguments,1),y=Object.create(this.lexer),L={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(L.yy[Y]=this.yy[Y]);y.setInput(t,L.yy),L.yy.lexer=y,L.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var J=y.yylloc;s.push(J);var st=y.options&&y.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function rt(){var C;return C=a.pop()||y.lex()||M,typeof C!="number"&&(C instanceof Array&&(a=C,C=a.pop()),C=i.symbols_[C]||C),C}for(var x,N,E,K,R={},j,D,X,W;;){if(N=n[n.length-1],this.defaultActions[N]?E=this.defaultActions[N]:((x===null||typeof x>"u")&&(x=rt()),E=P[N]&&P[N][x]),typeof E>"u"||!E.length||!E[0]){var Z="";W=[];for(j in P[N])this.terminals_[j]&&j>z&&W.push("'"+this.terminals_[j]+"'");y.showPosition?Z="Parse error on line "+(d+1)+`: +import{aJ as q,aK as at,x as lt,y as ot,s as ct,g as ht,b as ut,a as yt,A as ft,d as pt,c as et,l as it,aL as gt,aI as dt,i as mt,aM as _t}from"./mermaid-934d9bea.JP-6_YN_.js";import{a as tt}from"./arc.kghs0U58.js";import{o as vt}from"./ordinal.d2xiFBCc.js";import{a as xt}from"./array.Nw74a44z.js";import{c as F}from"./path.aUcfwwLI.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./init.Hi12RPRh.js";function kt(e,u){return ue?1:u>=e?0:NaN}function bt(e){return e}function St(){var e=bt,u=kt,$=null,f=F(0),b=F(q),A=F(0);function c(r){var l,g=(r=xt(r)).length,S,w,O=0,m=new Array(g),k=new Array(g),_=+f.apply(this,arguments),h=Math.min(q,Math.max(-q,b.apply(this,arguments)-_)),T,I=Math.min(Math.abs(h)/g,A.apply(this,arguments)),p=I*(h<0?-1:1),t;for(l=0;l0&&(O+=t);for(u!=null?m.sort(function(i,n){return u(k[i],k[n])}):$!=null&&m.sort(function(i,n){return $(r[i],r[n])}),l=0,w=O?(h-g*p)/O:0;l0?t*w:0)+p,k[S]={data:r[S],index:l,value:t,startAngle:_,endAngle:T,padAngle:I};return k}return c.value=function(r){return arguments.length?(e=typeof r=="function"?r:F(+r),c):e},c.sortValues=function(r){return arguments.length?(u=r,$=null,c):u},c.sort=function(r){return arguments.length?($=r,u=null,c):$},c.startAngle=function(r){return arguments.length?(f=typeof r=="function"?r:F(+r),c):f},c.endAngle=function(r){return arguments.length?(b=typeof r=="function"?r:F(+r),c):b},c.padAngle=function(r){return arguments.length?(A=typeof r=="function"?r:F(+r),c):A},c}var H=function(){var e=function(p,t,i,n){for(i=i||{},n=p.length;n--;i[p[n]]=t);return i},u=[1,3],$=[1,4],f=[1,5],b=[1,6],A=[1,10,12,14,16,18,19,20,21,22],c=[2,4],r=[1,5,10,12,14,16,18,19,20,21,22],l=[20,21,22],g=[2,7],S=[1,12],w=[1,13],O=[1,14],m=[1,15],k=[1,16],_=[1,17],h={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",10:"txt",11:"value",12:"title",13:"title_value",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"section",20:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(t,i,n,a,o,s,P){var v=s.length-1;switch(o){case 3:a.setShowData(!0);break;case 6:this.$=s[v-1];break;case 8:a.addSection(s[v-1],a.cleanupValue(s[v]));break;case 9:this.$=s[v].trim(),a.setDiagramTitle(this.$);break;case 10:this.$=s[v].trim(),a.setAccTitle(this.$);break;case 11:case 12:this.$=s[v].trim(),a.setAccDescription(this.$);break;case 13:a.addSection(s[v].substr(8)),this.$=s[v].substr(8);break}},table:[{3:1,4:2,5:u,20:$,21:f,22:b},{1:[3]},{3:7,4:2,5:u,20:$,21:f,22:b},e(A,c,{6:8,7:[1,9]}),e(r,[2,14]),e(r,[2,15]),e(r,[2,16]),{1:[2,1]},e(l,g,{8:10,9:11,1:[2,2],10:S,12:w,14:O,16:m,18:k,19:_}),e(A,c,{6:18}),e(A,[2,5]),{4:19,20:$,21:f,22:b},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},e(l,[2,12]),e(l,[2,13]),e(l,g,{8:10,9:11,1:[2,3],10:S,12:w,14:O,16:m,18:k,19:_}),e(A,[2,6]),e(l,[2,8]),e(l,[2,9]),e(l,[2,10]),e(l,[2,11])],defaultActions:{7:[2,1]},parseError:function(t,i){if(i.recoverable)this.trace(t);else{var n=new Error(t);throw n.hash=i,n}},parse:function(t){var i=this,n=[0],a=[],o=[null],s=[],P=this.table,v="",d=0,V=0,z=2,M=1,B=s.slice.call(arguments,1),y=Object.create(this.lexer),L={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(L.yy[Y]=this.yy[Y]);y.setInput(t,L.yy),L.yy.lexer=y,L.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var J=y.yylloc;s.push(J);var st=y.options&&y.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function rt(){var C;return C=a.pop()||y.lex()||M,typeof C!="number"&&(C instanceof Array&&(a=C,C=a.pop()),C=i.symbols_[C]||C),C}for(var x,N,E,K,R={},j,D,X,W;;){if(N=n[n.length-1],this.defaultActions[N]?E=this.defaultActions[N]:((x===null||typeof x>"u")&&(x=rt()),E=P[N]&&P[N][x]),typeof E>"u"||!E.length||!E[0]){var Z="";W=[];for(j in P[N])this.terminals_[j]&&j>z&&W.push("'"+this.terminals_[j]+"'");y.showPosition?Z="Parse error on line "+(d+1)+`: `+y.showPosition()+` Expecting `+W.join(", ")+", got '"+(this.terminals_[x]||x)+"'":Z="Parse error on line "+(d+1)+": Unexpected "+(x==M?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(Z,{text:y.match,token:this.terminals_[x]||x,line:y.yylineno,loc:J,expected:W})}if(E[0]instanceof Array&&E.length>1)throw new Error("Parse Error: multiple actions possible at state: "+N+", token: "+x);switch(E[0]){case 1:n.push(x),o.push(y.yytext),s.push(y.yylloc),n.push(E[1]),x=null,V=y.yyleng,v=y.yytext,d=y.yylineno,J=y.yylloc;break;case 2:if(D=this.productions_[E[1]][1],R.$=o[o.length-D],R._$={first_line:s[s.length-(D||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(D||1)].first_column,last_column:s[s.length-1].last_column},st&&(R._$.range=[s[s.length-(D||1)].range[0],s[s.length-1].range[1]]),K=this.performAction.apply(R,[v,V,d,L.yy,E[1],o,s].concat(B)),typeof K<"u")return K;D&&(n=n.slice(0,-1*D*2),o=o.slice(0,-1*D),s=s.slice(0,-1*D)),n.push(this.productions_[E[1]][0]),o.push(R.$),s.push(R._$),X=P[n[n.length-2]][n[n.length-1]],n.push(X);break;case 3:return!0}}return!0}},T=function(){var p={EOF:1,parseError:function(i,n){if(this.yy.parser)this.yy.parser.parseError(i,n);else throw new Error(i)},setInput:function(t,i){return this.yy=i||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var i=t.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var i=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var o=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===a.length?this.yylloc.first_column:0)+a[a.length-n.length].length-n[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[o[0],o[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),i=new Array(t.length+1).join("-");return t+this.upcomingInput()+` diff --git a/_nuxt/quadrantDiagram-6c355bbc.KS07axX9.js b/_nuxt/quadrantDiagram-6c355bbc.Z0DFXh7Q.js similarity index 99% rename from _nuxt/quadrantDiagram-6c355bbc.KS07axX9.js rename to _nuxt/quadrantDiagram-6c355bbc.Z0DFXh7Q.js index 1032784c7e..539acd2d99 100644 --- a/_nuxt/quadrantDiagram-6c355bbc.KS07axX9.js +++ b/_nuxt/quadrantDiagram-6c355bbc.Z0DFXh7Q.js @@ -1,4 +1,4 @@ -import{aZ as vt,c as yt,aK as D,l as ot,s as Lt,g as Ct,x as zt,y as bt,a as Et,b as Dt,A as It,h as gt,i as Bt,d as wt}from"./mermaid-934d9bea.GjCu814R.js";import{l as _t}from"./linear.vSTMcYPd.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./init.Hi12RPRh.js";var pt=function(){var e=function(K,n,r,l){for(r=r||{},l=K.length;l--;r[K[l]]=n);return r},s=[1,3],h=[1,4],x=[1,5],f=[1,6],d=[1,7],c=[1,5,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],g=[1,5,6,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],i=[32,33,34],y=[2,7],p=[1,13],B=[1,17],N=[1,18],V=[1,19],I=[1,20],b=[1,21],M=[1,22],X=[1,23],C=[1,24],it=[1,25],at=[1,26],nt=[1,27],U=[1,30],Q=[1,31],T=[1,32],_=[1,33],m=[1,34],t=[1,35],A=[1,36],S=[1,37],k=[1,38],F=[1,39],P=[1,40],v=[1,41],L=[1,42],O=[1,57],Y=[1,58],z=[5,22,26,32,33,34,40,41,42,43,44,45,46,47,48,49,50,51],ht={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,QUADRANT:6,document:7,line:8,statement:9,axisDetails:10,quadrantDetails:11,points:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,text:21,point_start:22,point_x:23,point_y:24,"X-AXIS":25,"AXIS-TEXT-DELIMITER":26,"Y-AXIS":27,QUADRANT_1:28,QUADRANT_2:29,QUADRANT_3:30,QUADRANT_4:31,NEWLINE:32,SEMI:33,EOF:34,alphaNumToken:35,textNoTagsToken:36,STR:37,MD_STR:38,alphaNum:39,PUNCTUATION:40,AMP:41,NUM:42,ALPHA:43,COMMA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,UNDERSCORE:50,MINUS:51,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",6:"QUADRANT",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",22:"point_start",23:"point_x",24:"point_y",25:"X-AXIS",26:"AXIS-TEXT-DELIMITER",27:"Y-AXIS",28:"QUADRANT_1",29:"QUADRANT_2",30:"QUADRANT_3",31:"QUADRANT_4",32:"NEWLINE",33:"SEMI",34:"EOF",37:"STR",38:"MD_STR",40:"PUNCTUATION",41:"AMP",42:"NUM",43:"ALPHA",44:"COMMA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"UNDERSCORE",51:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[9,0],[9,2],[9,1],[9,1],[9,1],[9,2],[9,2],[9,2],[9,1],[9,1],[12,4],[10,4],[10,3],[10,2],[10,4],[10,3],[10,2],[11,2],[11,2],[11,2],[11,2],[4,1],[4,1],[4,1],[21,1],[21,2],[21,1],[21,1],[39,1],[39,2],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[36,1],[36,1],[36,1]],performAction:function(n,r,l,o,q,a,et){var u=a.length-1;switch(q){case 12:this.$=a[u].trim(),o.setDiagramTitle(this.$);break;case 13:this.$=a[u].trim(),o.setAccTitle(this.$);break;case 14:case 15:this.$=a[u].trim(),o.setAccDescription(this.$);break;case 16:o.addSection(a[u].substr(8)),this.$=a[u].substr(8);break;case 17:o.addPoint(a[u-3],a[u-1],a[u]);break;case 18:o.setXAxisLeftText(a[u-2]),o.setXAxisRightText(a[u]);break;case 19:a[u-1].text+=" ⟶ ",o.setXAxisLeftText(a[u-1]);break;case 20:o.setXAxisLeftText(a[u]);break;case 21:o.setYAxisBottomText(a[u-2]),o.setYAxisTopText(a[u]);break;case 22:a[u-1].text+=" ⟶ ",o.setYAxisBottomText(a[u-1]);break;case 23:o.setYAxisBottomText(a[u]);break;case 24:o.setQuadrant1Text(a[u]);break;case 25:o.setQuadrant2Text(a[u]);break;case 26:o.setQuadrant3Text(a[u]);break;case 27:o.setQuadrant4Text(a[u]);break;case 31:this.$={text:a[u],type:"text"};break;case 32:this.$={text:a[u-1].text+""+a[u],type:a[u-1].type};break;case 33:this.$={text:a[u],type:"text"};break;case 34:this.$={text:a[u],type:"markdown"};break;case 35:this.$=a[u];break;case 36:this.$=a[u-1]+""+a[u];break}},table:[{3:1,4:2,5:s,6:h,32:x,33:f,34:d},{1:[3]},{3:8,4:2,5:s,6:h,32:x,33:f,34:d},{3:9,4:2,5:s,6:h,32:x,33:f,34:d},e(c,[2,4],{7:10}),e(g,[2,28]),e(g,[2,29]),e(g,[2,30]),{1:[2,1]},{1:[2,2]},e(i,y,{8:11,9:12,10:14,11:15,12:16,21:28,35:29,1:[2,3],5:p,13:B,15:N,17:V,19:I,20:b,25:M,27:X,28:C,29:it,30:at,31:nt,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),e(c,[2,5]),{4:43,32:x,33:f,34:d},e(i,y,{10:14,11:15,12:16,21:28,35:29,9:44,5:p,13:B,15:N,17:V,19:I,20:b,25:M,27:X,28:C,29:it,30:at,31:nt,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),e(i,[2,9]),e(i,[2,10]),e(i,[2,11]),{14:[1,45]},{16:[1,46]},{18:[1,47]},e(i,[2,15]),e(i,[2,16]),{21:48,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:49,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:50,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:51,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:52,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:53,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{5:O,22:[1,54],35:56,36:55,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y},e(z,[2,31]),e(z,[2,33]),e(z,[2,34]),e(z,[2,37]),e(z,[2,38]),e(z,[2,39]),e(z,[2,40]),e(z,[2,41]),e(z,[2,42]),e(z,[2,43]),e(z,[2,44]),e(z,[2,45]),e(z,[2,46]),e(z,[2,47]),e(c,[2,6]),e(i,[2,8]),e(i,[2,12]),e(i,[2,13]),e(i,[2,14]),e(i,[2,20],{36:55,35:56,5:O,26:[1,59],40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,23],{36:55,35:56,5:O,26:[1,60],40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,24],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,25],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,26],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,27],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),{23:[1,61]},e(z,[2,32]),e(z,[2,48]),e(z,[2,49]),e(z,[2,50]),e(i,[2,19],{35:29,21:62,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),e(i,[2,22],{35:29,21:63,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),{24:[1,64]},e(i,[2,18],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,21],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,17])],defaultActions:{8:[2,1],9:[2,2]},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var l=new Error(n);throw l.hash=r,l}},parse:function(n){var r=this,l=[0],o=[],q=[null],a=[],et=this.table,u="",st=0,qt=0,St=2,Tt=1,kt=a.slice.call(arguments,1),E=Object.create(this.lexer),Z={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(Z.yy[dt]=this.yy[dt]);E.setInput(n,Z.yy),Z.yy.lexer=E,Z.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var ut=E.yylloc;a.push(ut);var Ft=E.options&&E.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pt(){var j;return j=o.pop()||E.lex()||Tt,typeof j!="number"&&(j instanceof Array&&(o=j,j=o.pop()),j=r.symbols_[j]||j),j}for(var W,J,H,xt,tt={},rt,$,mt,lt;;){if(J=l[l.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((W===null||typeof W>"u")&&(W=Pt()),H=et[J]&&et[J][W]),typeof H>"u"||!H.length||!H[0]){var ft="";lt=[];for(rt in et[J])this.terminals_[rt]&&rt>St&<.push("'"+this.terminals_[rt]+"'");E.showPosition?ft="Parse error on line "+(st+1)+`: +import{aZ as vt,c as yt,aK as D,l as ot,s as Lt,g as Ct,x as zt,y as bt,a as Et,b as Dt,A as It,h as gt,i as Bt,d as wt}from"./mermaid-934d9bea.JP-6_YN_.js";import{l as _t}from"./linear.znFunSuN.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./init.Hi12RPRh.js";var pt=function(){var e=function(K,n,r,l){for(r=r||{},l=K.length;l--;r[K[l]]=n);return r},s=[1,3],h=[1,4],x=[1,5],f=[1,6],d=[1,7],c=[1,5,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],g=[1,5,6,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],i=[32,33,34],y=[2,7],p=[1,13],B=[1,17],N=[1,18],V=[1,19],I=[1,20],b=[1,21],M=[1,22],X=[1,23],C=[1,24],it=[1,25],at=[1,26],nt=[1,27],U=[1,30],Q=[1,31],T=[1,32],_=[1,33],m=[1,34],t=[1,35],A=[1,36],S=[1,37],k=[1,38],F=[1,39],P=[1,40],v=[1,41],L=[1,42],O=[1,57],Y=[1,58],z=[5,22,26,32,33,34,40,41,42,43,44,45,46,47,48,49,50,51],ht={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,QUADRANT:6,document:7,line:8,statement:9,axisDetails:10,quadrantDetails:11,points:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,text:21,point_start:22,point_x:23,point_y:24,"X-AXIS":25,"AXIS-TEXT-DELIMITER":26,"Y-AXIS":27,QUADRANT_1:28,QUADRANT_2:29,QUADRANT_3:30,QUADRANT_4:31,NEWLINE:32,SEMI:33,EOF:34,alphaNumToken:35,textNoTagsToken:36,STR:37,MD_STR:38,alphaNum:39,PUNCTUATION:40,AMP:41,NUM:42,ALPHA:43,COMMA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,UNDERSCORE:50,MINUS:51,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",6:"QUADRANT",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",22:"point_start",23:"point_x",24:"point_y",25:"X-AXIS",26:"AXIS-TEXT-DELIMITER",27:"Y-AXIS",28:"QUADRANT_1",29:"QUADRANT_2",30:"QUADRANT_3",31:"QUADRANT_4",32:"NEWLINE",33:"SEMI",34:"EOF",37:"STR",38:"MD_STR",40:"PUNCTUATION",41:"AMP",42:"NUM",43:"ALPHA",44:"COMMA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"UNDERSCORE",51:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[9,0],[9,2],[9,1],[9,1],[9,1],[9,2],[9,2],[9,2],[9,1],[9,1],[12,4],[10,4],[10,3],[10,2],[10,4],[10,3],[10,2],[11,2],[11,2],[11,2],[11,2],[4,1],[4,1],[4,1],[21,1],[21,2],[21,1],[21,1],[39,1],[39,2],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[36,1],[36,1],[36,1]],performAction:function(n,r,l,o,q,a,et){var u=a.length-1;switch(q){case 12:this.$=a[u].trim(),o.setDiagramTitle(this.$);break;case 13:this.$=a[u].trim(),o.setAccTitle(this.$);break;case 14:case 15:this.$=a[u].trim(),o.setAccDescription(this.$);break;case 16:o.addSection(a[u].substr(8)),this.$=a[u].substr(8);break;case 17:o.addPoint(a[u-3],a[u-1],a[u]);break;case 18:o.setXAxisLeftText(a[u-2]),o.setXAxisRightText(a[u]);break;case 19:a[u-1].text+=" ⟶ ",o.setXAxisLeftText(a[u-1]);break;case 20:o.setXAxisLeftText(a[u]);break;case 21:o.setYAxisBottomText(a[u-2]),o.setYAxisTopText(a[u]);break;case 22:a[u-1].text+=" ⟶ ",o.setYAxisBottomText(a[u-1]);break;case 23:o.setYAxisBottomText(a[u]);break;case 24:o.setQuadrant1Text(a[u]);break;case 25:o.setQuadrant2Text(a[u]);break;case 26:o.setQuadrant3Text(a[u]);break;case 27:o.setQuadrant4Text(a[u]);break;case 31:this.$={text:a[u],type:"text"};break;case 32:this.$={text:a[u-1].text+""+a[u],type:a[u-1].type};break;case 33:this.$={text:a[u],type:"text"};break;case 34:this.$={text:a[u],type:"markdown"};break;case 35:this.$=a[u];break;case 36:this.$=a[u-1]+""+a[u];break}},table:[{3:1,4:2,5:s,6:h,32:x,33:f,34:d},{1:[3]},{3:8,4:2,5:s,6:h,32:x,33:f,34:d},{3:9,4:2,5:s,6:h,32:x,33:f,34:d},e(c,[2,4],{7:10}),e(g,[2,28]),e(g,[2,29]),e(g,[2,30]),{1:[2,1]},{1:[2,2]},e(i,y,{8:11,9:12,10:14,11:15,12:16,21:28,35:29,1:[2,3],5:p,13:B,15:N,17:V,19:I,20:b,25:M,27:X,28:C,29:it,30:at,31:nt,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),e(c,[2,5]),{4:43,32:x,33:f,34:d},e(i,y,{10:14,11:15,12:16,21:28,35:29,9:44,5:p,13:B,15:N,17:V,19:I,20:b,25:M,27:X,28:C,29:it,30:at,31:nt,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),e(i,[2,9]),e(i,[2,10]),e(i,[2,11]),{14:[1,45]},{16:[1,46]},{18:[1,47]},e(i,[2,15]),e(i,[2,16]),{21:48,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:49,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:50,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:51,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:52,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{21:53,35:29,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L},{5:O,22:[1,54],35:56,36:55,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y},e(z,[2,31]),e(z,[2,33]),e(z,[2,34]),e(z,[2,37]),e(z,[2,38]),e(z,[2,39]),e(z,[2,40]),e(z,[2,41]),e(z,[2,42]),e(z,[2,43]),e(z,[2,44]),e(z,[2,45]),e(z,[2,46]),e(z,[2,47]),e(c,[2,6]),e(i,[2,8]),e(i,[2,12]),e(i,[2,13]),e(i,[2,14]),e(i,[2,20],{36:55,35:56,5:O,26:[1,59],40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,23],{36:55,35:56,5:O,26:[1,60],40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,24],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,25],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,26],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,27],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),{23:[1,61]},e(z,[2,32]),e(z,[2,48]),e(z,[2,49]),e(z,[2,50]),e(i,[2,19],{35:29,21:62,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),e(i,[2,22],{35:29,21:63,37:U,38:Q,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L}),{24:[1,64]},e(i,[2,18],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,21],{36:55,35:56,5:O,40:T,41:_,42:m,43:t,44:A,45:S,46:k,47:F,48:P,49:v,50:L,51:Y}),e(i,[2,17])],defaultActions:{8:[2,1],9:[2,2]},parseError:function(n,r){if(r.recoverable)this.trace(n);else{var l=new Error(n);throw l.hash=r,l}},parse:function(n){var r=this,l=[0],o=[],q=[null],a=[],et=this.table,u="",st=0,qt=0,St=2,Tt=1,kt=a.slice.call(arguments,1),E=Object.create(this.lexer),Z={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(Z.yy[dt]=this.yy[dt]);E.setInput(n,Z.yy),Z.yy.lexer=E,Z.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var ut=E.yylloc;a.push(ut);var Ft=E.options&&E.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pt(){var j;return j=o.pop()||E.lex()||Tt,typeof j!="number"&&(j instanceof Array&&(o=j,j=o.pop()),j=r.symbols_[j]||j),j}for(var W,J,H,xt,tt={},rt,$,mt,lt;;){if(J=l[l.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((W===null||typeof W>"u")&&(W=Pt()),H=et[J]&&et[J][W]),typeof H>"u"||!H.length||!H[0]){var ft="";lt=[];for(rt in et[J])this.terminals_[rt]&&rt>St&<.push("'"+this.terminals_[rt]+"'");E.showPosition?ft="Parse error on line "+(st+1)+`: `+E.showPosition()+` Expecting `+lt.join(", ")+", got '"+(this.terminals_[W]||W)+"'":ft="Parse error on line "+(st+1)+": Unexpected "+(W==Tt?"end of input":"'"+(this.terminals_[W]||W)+"'"),this.parseError(ft,{text:E.match,token:this.terminals_[W]||W,line:E.yylineno,loc:ut,expected:lt})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+W);switch(H[0]){case 1:l.push(W),q.push(E.yytext),a.push(E.yylloc),l.push(H[1]),W=null,qt=E.yyleng,u=E.yytext,st=E.yylineno,ut=E.yylloc;break;case 2:if($=this.productions_[H[1]][1],tt.$=q[q.length-$],tt._$={first_line:a[a.length-($||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-($||1)].first_column,last_column:a[a.length-1].last_column},Ft&&(tt._$.range=[a[a.length-($||1)].range[0],a[a.length-1].range[1]]),xt=this.performAction.apply(tt,[u,qt,st,Z.yy,H[1],q,a].concat(kt)),typeof xt<"u")return xt;$&&(l=l.slice(0,-1*$*2),q=q.slice(0,-1*$),a=a.slice(0,-1*$)),l.push(this.productions_[H[1]][0]),q.push(tt.$),a.push(tt._$),mt=et[l[l.length-2]][l[l.length-1]],l.push(mt);break;case 3:return!0}}return!0}},At=function(){var K={EOF:1,parseError:function(r,l){if(this.yy.parser)this.yy.parser.parseError(r,l);else throw new Error(r)},setInput:function(n,r){return this.yy=r||this.yy||{},this._input=n,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var r=n.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var r=n.length,l=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var o=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===o.length?this.yylloc.first_column:0)+o[o.length-l.length].length-l[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[q[0],q[0]+this.yyleng-r]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),r=new Array(n.length+1).join("-");return n+this.upcomingInput()+` diff --git a/_nuxt/requirementDiagram-4038b16c.0PbzK17N.js b/_nuxt/requirementDiagram-4038b16c.19aSfqcm.js similarity index 99% rename from _nuxt/requirementDiagram-4038b16c.0PbzK17N.js rename to _nuxt/requirementDiagram-4038b16c.19aSfqcm.js index d6d834ac11..7481533f60 100644 --- a/_nuxt/requirementDiagram-4038b16c.0PbzK17N.js +++ b/_nuxt/requirementDiagram-4038b16c.19aSfqcm.js @@ -1,4 +1,4 @@ -import{c as Te,s as Ce,g as Fe,b as Me,a as De,l as Ne,A as Pe,h as oe,i as Ye,j as ke}from"./mermaid-934d9bea.GjCu814R.js";import{G as Ue,l as Be}from"./layout.cBG5TzxH.js";import{l as Qe}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";var ce=function(){var e=function(V,i,r,a){for(r=r||{},a=V.length;a--;r[V[a]]=i);return r},t=[1,3],l=[1,4],c=[1,5],u=[1,6],d=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],p=[1,18],h=[2,7],o=[1,22],g=[1,23],R=[1,24],A=[1,25],T=[1,26],N=[1,27],v=[1,20],k=[1,28],x=[1,29],F=[62,63],de=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],pe=[1,47],fe=[1,48],ye=[1,49],_e=[1,50],ge=[1,51],Ee=[1,52],Re=[1,53],O=[53,54],M=[1,64],D=[1,60],P=[1,61],Y=[1,62],U=[1,63],B=[1,65],j=[1,69],z=[1,70],X=[1,67],J=[1,68],m=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],ie={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:function(i,r,a,n,f,s,W){var _=s.length-1;switch(f){case 4:this.$=s[_].trim(),n.setAccTitle(this.$);break;case 5:case 6:this.$=s[_].trim(),n.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:n.addRequirement(s[_-3],s[_-4]);break;case 14:n.setNewReqId(s[_-2]);break;case 15:n.setNewReqText(s[_-2]);break;case 16:n.setNewReqRisk(s[_-2]);break;case 17:n.setNewReqVerifyMethod(s[_-2]);break;case 20:this.$=n.RequirementType.REQUIREMENT;break;case 21:this.$=n.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=n.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=n.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=n.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=n.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=n.RiskLevel.LOW_RISK;break;case 27:this.$=n.RiskLevel.MED_RISK;break;case 28:this.$=n.RiskLevel.HIGH_RISK;break;case 29:this.$=n.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=n.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=n.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=n.VerifyType.VERIFY_TEST;break;case 33:n.addElement(s[_-3]);break;case 34:n.setNewElementType(s[_-2]);break;case 35:n.setNewElementDocRef(s[_-2]);break;case 38:n.addRelationship(s[_-2],s[_],s[_-4]);break;case 39:n.addRelationship(s[_-2],s[_-4],s[_]);break;case 40:this.$=n.Relationships.CONTAINS;break;case 41:this.$=n.Relationships.COPIES;break;case 42:this.$=n.Relationships.DERIVES;break;case 43:this.$=n.Relationships.SATISFIES;break;case 44:this.$=n.Relationships.VERIFIES;break;case 45:this.$=n.Relationships.REFINES;break;case 46:this.$=n.Relationships.TRACES;break}},table:[{3:1,4:2,6:t,9:l,11:c,13:u},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:l,11:c,13:u},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(d,[2,6]),{3:12,4:2,6:t,9:l,11:c,13:u},{1:[2,2]},{4:17,5:p,7:13,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},e(d,[2,4]),e(d,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:p,7:31,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:32,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:33,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:34,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:35,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},e(F,[2,20]),e(F,[2,21]),e(F,[2,22]),e(F,[2,23]),e(F,[2,24]),e(F,[2,25]),e(de,[2,49]),e(de,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:pe,56:fe,57:ye,58:_e,59:ge,60:Ee,61:Re},{52:54,55:pe,56:fe,57:ye,58:_e,59:ge,60:Ee,61:Re},{5:[1,55]},{5:[1,56]},{53:[1,57]},e(O,[2,40]),e(O,[2,41]),e(O,[2,42]),e(O,[2,43]),e(O,[2,44]),e(O,[2,45]),e(O,[2,46]),{54:[1,58]},{5:M,20:59,21:D,24:P,26:Y,28:U,30:B},{5:j,30:z,46:66,47:X,49:J},{23:71,62:k,63:x},{23:72,62:k,63:x},e(m,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:M,20:77,21:D,24:P,26:Y,28:U,30:B},e(m,[2,19]),e(m,[2,33]),{22:[1,78]},{22:[1,79]},{5:j,30:z,46:80,47:X,49:J},e(m,[2,37]),e(m,[2,38]),e(m,[2,39]),{23:81,62:k,63:x},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},e(m,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},e(m,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:M,20:106,21:D,24:P,26:Y,28:U,30:B},{5:M,20:107,21:D,24:P,26:Y,28:U,30:B},{5:M,20:108,21:D,24:P,26:Y,28:U,30:B},{5:M,20:109,21:D,24:P,26:Y,28:U,30:B},{5:j,30:z,46:110,47:X,49:J},{5:j,30:z,46:111,47:X,49:J},e(m,[2,14]),e(m,[2,15]),e(m,[2,16]),e(m,[2,17]),e(m,[2,34]),e(m,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:function(i,r){if(r.recoverable)this.trace(i);else{var a=new Error(i);throw a.hash=r,a}},parse:function(i){var r=this,a=[0],n=[],f=[null],s=[],W=this.table,_="",Z=0,me=0,Ve=2,Ie=1,qe=s.slice.call(arguments,1),E=Object.create(this.lexer),L={yy:{}};for(var re in this.yy)Object.prototype.hasOwnProperty.call(this.yy,re)&&(L.yy[re]=this.yy[re]);E.setInput(i,L.yy),L.yy.lexer=E,L.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var se=E.yylloc;s.push(se);var Oe=E.options&&E.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Le(){var $;return $=n.pop()||E.lex()||Ie,typeof $!="number"&&($ instanceof Array&&(n=$,$=n.pop()),$=r.symbols_[$]||$),$}for(var I,C,S,ae,Q={},ee,w,be,te;;){if(C=a[a.length-1],this.defaultActions[C]?S=this.defaultActions[C]:((I===null||typeof I>"u")&&(I=Le()),S=W[C]&&W[C][I]),typeof S>"u"||!S.length||!S[0]){var le="";te=[];for(ee in W[C])this.terminals_[ee]&&ee>Ve&&te.push("'"+this.terminals_[ee]+"'");E.showPosition?le="Parse error on line "+(Z+1)+`: +import{c as Te,s as Ce,g as Fe,b as Me,a as De,l as Ne,A as Pe,h as oe,i as Ye,j as ke}from"./mermaid-934d9bea.JP-6_YN_.js";import{G as Ue,l as Be}from"./layout.v3y_H6P2.js";import{l as Qe}from"./line.uArpYtMu.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";var ce=function(){var e=function(V,i,r,a){for(r=r||{},a=V.length;a--;r[V[a]]=i);return r},t=[1,3],l=[1,4],c=[1,5],u=[1,6],d=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],p=[1,18],h=[2,7],o=[1,22],g=[1,23],R=[1,24],A=[1,25],T=[1,26],N=[1,27],v=[1,20],k=[1,28],x=[1,29],F=[62,63],de=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],pe=[1,47],fe=[1,48],ye=[1,49],_e=[1,50],ge=[1,51],Ee=[1,52],Re=[1,53],O=[53,54],M=[1,64],D=[1,60],P=[1,61],Y=[1,62],U=[1,63],B=[1,65],j=[1,69],z=[1,70],X=[1,67],J=[1,68],m=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],ie={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:function(i,r,a,n,f,s,W){var _=s.length-1;switch(f){case 4:this.$=s[_].trim(),n.setAccTitle(this.$);break;case 5:case 6:this.$=s[_].trim(),n.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:n.addRequirement(s[_-3],s[_-4]);break;case 14:n.setNewReqId(s[_-2]);break;case 15:n.setNewReqText(s[_-2]);break;case 16:n.setNewReqRisk(s[_-2]);break;case 17:n.setNewReqVerifyMethod(s[_-2]);break;case 20:this.$=n.RequirementType.REQUIREMENT;break;case 21:this.$=n.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=n.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=n.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=n.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=n.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=n.RiskLevel.LOW_RISK;break;case 27:this.$=n.RiskLevel.MED_RISK;break;case 28:this.$=n.RiskLevel.HIGH_RISK;break;case 29:this.$=n.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=n.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=n.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=n.VerifyType.VERIFY_TEST;break;case 33:n.addElement(s[_-3]);break;case 34:n.setNewElementType(s[_-2]);break;case 35:n.setNewElementDocRef(s[_-2]);break;case 38:n.addRelationship(s[_-2],s[_],s[_-4]);break;case 39:n.addRelationship(s[_-2],s[_-4],s[_]);break;case 40:this.$=n.Relationships.CONTAINS;break;case 41:this.$=n.Relationships.COPIES;break;case 42:this.$=n.Relationships.DERIVES;break;case 43:this.$=n.Relationships.SATISFIES;break;case 44:this.$=n.Relationships.VERIFIES;break;case 45:this.$=n.Relationships.REFINES;break;case 46:this.$=n.Relationships.TRACES;break}},table:[{3:1,4:2,6:t,9:l,11:c,13:u},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:l,11:c,13:u},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(d,[2,6]),{3:12,4:2,6:t,9:l,11:c,13:u},{1:[2,2]},{4:17,5:p,7:13,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},e(d,[2,4]),e(d,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:p,7:31,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:32,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:33,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:34,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{4:17,5:p,7:35,8:h,9:l,11:c,13:u,14:14,15:15,16:16,17:19,23:21,31:o,32:g,33:R,34:A,35:T,36:N,44:v,62:k,63:x},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},e(F,[2,20]),e(F,[2,21]),e(F,[2,22]),e(F,[2,23]),e(F,[2,24]),e(F,[2,25]),e(de,[2,49]),e(de,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:pe,56:fe,57:ye,58:_e,59:ge,60:Ee,61:Re},{52:54,55:pe,56:fe,57:ye,58:_e,59:ge,60:Ee,61:Re},{5:[1,55]},{5:[1,56]},{53:[1,57]},e(O,[2,40]),e(O,[2,41]),e(O,[2,42]),e(O,[2,43]),e(O,[2,44]),e(O,[2,45]),e(O,[2,46]),{54:[1,58]},{5:M,20:59,21:D,24:P,26:Y,28:U,30:B},{5:j,30:z,46:66,47:X,49:J},{23:71,62:k,63:x},{23:72,62:k,63:x},e(m,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:M,20:77,21:D,24:P,26:Y,28:U,30:B},e(m,[2,19]),e(m,[2,33]),{22:[1,78]},{22:[1,79]},{5:j,30:z,46:80,47:X,49:J},e(m,[2,37]),e(m,[2,38]),e(m,[2,39]),{23:81,62:k,63:x},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},e(m,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},e(m,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:M,20:106,21:D,24:P,26:Y,28:U,30:B},{5:M,20:107,21:D,24:P,26:Y,28:U,30:B},{5:M,20:108,21:D,24:P,26:Y,28:U,30:B},{5:M,20:109,21:D,24:P,26:Y,28:U,30:B},{5:j,30:z,46:110,47:X,49:J},{5:j,30:z,46:111,47:X,49:J},e(m,[2,14]),e(m,[2,15]),e(m,[2,16]),e(m,[2,17]),e(m,[2,34]),e(m,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:function(i,r){if(r.recoverable)this.trace(i);else{var a=new Error(i);throw a.hash=r,a}},parse:function(i){var r=this,a=[0],n=[],f=[null],s=[],W=this.table,_="",Z=0,me=0,Ve=2,Ie=1,qe=s.slice.call(arguments,1),E=Object.create(this.lexer),L={yy:{}};for(var re in this.yy)Object.prototype.hasOwnProperty.call(this.yy,re)&&(L.yy[re]=this.yy[re]);E.setInput(i,L.yy),L.yy.lexer=E,L.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var se=E.yylloc;s.push(se);var Oe=E.options&&E.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Le(){var $;return $=n.pop()||E.lex()||Ie,typeof $!="number"&&($ instanceof Array&&(n=$,$=n.pop()),$=r.symbols_[$]||$),$}for(var I,C,S,ae,Q={},ee,w,be,te;;){if(C=a[a.length-1],this.defaultActions[C]?S=this.defaultActions[C]:((I===null||typeof I>"u")&&(I=Le()),S=W[C]&&W[C][I]),typeof S>"u"||!S.length||!S[0]){var le="";te=[];for(ee in W[C])this.terminals_[ee]&&ee>Ve&&te.push("'"+this.terminals_[ee]+"'");E.showPosition?le="Parse error on line "+(Z+1)+`: `+E.showPosition()+` Expecting `+te.join(", ")+", got '"+(this.terminals_[I]||I)+"'":le="Parse error on line "+(Z+1)+": Unexpected "+(I==Ie?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(le,{text:E.match,token:this.terminals_[I]||I,line:E.yylineno,loc:se,expected:te})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+C+", token: "+I);switch(S[0]){case 1:a.push(I),f.push(E.yytext),s.push(E.yylloc),a.push(S[1]),I=null,me=E.yyleng,_=E.yytext,Z=E.yylineno,se=E.yylloc;break;case 2:if(w=this.productions_[S[1]][1],Q.$=f[f.length-w],Q._$={first_line:s[s.length-(w||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(w||1)].first_column,last_column:s[s.length-1].last_column},Oe&&(Q._$.range=[s[s.length-(w||1)].range[0],s[s.length-1].range[1]]),ae=this.performAction.apply(Q,[_,me,Z,L.yy,S[1],f,s].concat(qe)),typeof ae<"u")return ae;w&&(a=a.slice(0,-1*w*2),f=f.slice(0,-1*w),s=s.slice(0,-1*w)),a.push(this.productions_[S[1]][0]),f.push(Q.$),s.push(Q._$),be=W[a[a.length-2]][a[a.length-1]],a.push(be);break;case 3:return!0}}return!0}},$e=function(){var V={EOF:1,parseError:function(r,a){if(this.yy.parser)this.yy.parser.parseError(r,a);else throw new Error(r)},setInput:function(i,r){return this.yy=r||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var r=i.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},unput:function(i){var r=i.length,a=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var f=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===n.length?this.yylloc.first_column:0)+n[n.length-a.length].length-a[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[f[0],f[0]+this.yyleng-r]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(i){this.unput(this.match.slice(i))},pastInput:function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var i=this.pastInput(),r=new Array(i.length+1).join("-");return i+this.upcomingInput()+` diff --git a/_nuxt/sankeyDiagram-6db3d513.6LfS3rRU.js b/_nuxt/sankeyDiagram-6db3d513.jZmDBXiW.js similarity index 99% rename from _nuxt/sankeyDiagram-6db3d513.6LfS3rRU.js rename to _nuxt/sankeyDiagram-6db3d513.jZmDBXiW.js index 8764967bcd..8f48a20e68 100644 --- a/_nuxt/sankeyDiagram-6db3d513.6LfS3rRU.js +++ b/_nuxt/sankeyDiagram-6db3d513.jZmDBXiW.js @@ -1,4 +1,4 @@ -import{c as rt,g as mt,s as _t,a as kt,b as xt,y as vt,x as bt,A as wt,j as St,v as Lt,h as Y,i as Et}from"./mermaid-934d9bea.GjCu814R.js";import{o as At}from"./ordinal.d2xiFBCc.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./init.Hi12RPRh.js";function Tt(t){for(var n=t.length/6|0,i=new Array(n),l=0;l=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i=u)&&(i=u)}return i}function yt(t,n){let i;if(n===void 0)for(const l of t)l!=null&&(i>l||i===void 0&&l>=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i>u||i===void 0&&u>=u)&&(i=u)}return i}function Z(t,n){let i=0;if(n===void 0)for(let l of t)(l=+l)&&(i+=l);else{let l=-1;for(let u of t)(u=+n(u,++l,t))&&(i+=u)}return i}function Nt(t){return t.target.depth}function Pt(t){return t.depth}function Ct(t,n){return n-1-t.height}function dt(t,n){return t.sourceLinks.length?t.depth:n-1}function It(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?yt(t.sourceLinks,Nt)-1:0}function G(t){return function(){return t}}function lt(t,n){return H(t.source,n.source)||t.index-n.index}function at(t,n){return H(t.target,n.target)||t.index-n.index}function H(t,n){return t.y0-n.y0}function J(t){return t.value}function Ot(t){return t.index}function $t(t){return t.nodes}function zt(t){return t.links}function ct(t,n){const i=t.get(n);if(!i)throw new Error("missing: "+n);return i}function ut({nodes:t}){for(const n of t){let i=n.y0,l=i;for(const u of n.sourceLinks)u.y0=i+u.width/2,i+=u.width;for(const u of n.targetLinks)u.y1=l+u.width/2,l+=u.width}}function jt(){let t=0,n=0,i=1,l=1,u=24,k=8,g,m=Ot,s=dt,o,c,p=$t,b=zt,y=6;function x(){const e={nodes:p.apply(null,arguments),links:b.apply(null,arguments)};return E(e),L(e),A(e),N(e),S(e),ut(e),e}x.update=function(e){return ut(e),e},x.nodeId=function(e){return arguments.length?(m=typeof e=="function"?e:G(e),x):m},x.nodeAlign=function(e){return arguments.length?(s=typeof e=="function"?e:G(e),x):s},x.nodeSort=function(e){return arguments.length?(o=e,x):o},x.nodeWidth=function(e){return arguments.length?(u=+e,x):u},x.nodePadding=function(e){return arguments.length?(k=g=+e,x):k},x.nodes=function(e){return arguments.length?(p=typeof e=="function"?e:G(e),x):p},x.links=function(e){return arguments.length?(b=typeof e=="function"?e:G(e),x):b},x.linkSort=function(e){return arguments.length?(c=e,x):c},x.size=function(e){return arguments.length?(t=n=0,i=+e[0],l=+e[1],x):[i-t,l-n]},x.extent=function(e){return arguments.length?(t=+e[0][0],i=+e[1][0],n=+e[0][1],l=+e[1][1],x):[[t,n],[i,l]]},x.iterations=function(e){return arguments.length?(y=+e,x):y};function E({nodes:e,links:f}){for(const[h,r]of e.entries())r.index=h,r.sourceLinks=[],r.targetLinks=[];const a=new Map(e.map((h,r)=>[m(h,r,e),h]));for(const[h,r]of f.entries()){r.index=h;let{source:_,target:v}=r;typeof _!="object"&&(_=r.source=ct(a,_)),typeof v!="object"&&(v=r.target=ct(a,v)),_.sourceLinks.push(r),v.targetLinks.push(r)}if(c!=null)for(const{sourceLinks:h,targetLinks:r}of e)h.sort(c),r.sort(c)}function L({nodes:e}){for(const f of e)f.value=f.fixedValue===void 0?Math.max(Z(f.sourceLinks,J),Z(f.targetLinks,J)):f.fixedValue}function A({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const _ of a){_.depth=r;for(const{target:v}of _.sourceLinks)h.add(v)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function N({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const _ of a){_.height=r;for(const{source:v}of _.targetLinks)h.add(v)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function I({nodes:e}){const f=ot(e,r=>r.depth)+1,a=(i-t-u)/(f-1),h=new Array(f);for(const r of e){const _=Math.max(0,Math.min(f-1,Math.floor(s.call(null,r,f))));r.layer=_,r.x0=t+_*a,r.x1=r.x0+u,h[_]?h[_].push(r):h[_]=[r]}if(o)for(const r of h)r.sort(o);return h}function z(e){const f=yt(e,a=>(l-n-(a.length-1)*g)/Z(a,J));for(const a of e){let h=n;for(const r of a){r.y0=h,r.y1=h+r.value*f,h=r.y1+g;for(const _ of r.sourceLinks)_.width=_.value*f}h=(l-h+g)/(a.length+1);for(let r=0;ra.length)-1)),z(f);for(let a=0;a0))continue;let V=(U/j-v.y0)*f;v.y0+=V,v.y1+=V,w(v)}o===void 0&&_.sort(H),P(_,a)}}function $(e,f,a){for(let h=e.length,r=h-2;r>=0;--r){const _=e[r];for(const v of _){let U=0,j=0;for(const{target:W,value:K}of v.sourceLinks){let F=K*(W.layer-v.layer);U+=R(v,W)*F,j+=F}if(!(j>0))continue;let V=(U/j-v.y0)*f;v.y0+=V,v.y1+=V,w(v)}o===void 0&&_.sort(H),P(_,a)}}function P(e,f){const a=e.length>>1,h=e[a];d(e,h.y0-g,a-1,f),C(e,h.y1+g,a+1,f),d(e,l,e.length-1,f),C(e,n,0,f)}function C(e,f,a,h){for(;a1e-6&&(r.y0+=_,r.y1+=_),f=r.y1+g}}function d(e,f,a,h){for(;a>=0;--a){const r=e[a],_=(r.y1-f)*h;_>1e-6&&(r.y0-=_,r.y1-=_),f=r.y0-g}}function w({sourceLinks:e,targetLinks:f}){if(c===void 0){for(const{source:{sourceLinks:a}}of f)a.sort(at);for(const{target:{targetLinks:a}}of e)a.sort(lt)}}function O(e){if(c===void 0)for(const{sourceLinks:f,targetLinks:a}of e)f.sort(at),a.sort(lt)}function T(e,f){let a=e.y0-(e.sourceLinks.length-1)*g/2;for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a+=r+g}for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a-=r}return a}function R(e,f){let a=f.y0-(f.targetLinks.length-1)*g/2;for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a+=r+g}for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a-=r}return a}return x}var tt=Math.PI,et=2*tt,D=1e-6,Dt=et-D;function nt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function gt(){return new nt}nt.prototype=gt.prototype={constructor:nt,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,i,l){this._+="Q"+ +t+","+ +n+","+(this._x1=+i)+","+(this._y1=+l)},bezierCurveTo:function(t,n,i,l,u,k){this._+="C"+ +t+","+ +n+","+ +i+","+ +l+","+(this._x1=+u)+","+(this._y1=+k)},arcTo:function(t,n,i,l,u){t=+t,n=+n,i=+i,l=+l,u=+u;var k=this._x1,g=this._y1,m=i-t,s=l-n,o=k-t,c=g-n,p=o*o+c*c;if(u<0)throw new Error("negative radius: "+u);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(p>D)if(!(Math.abs(c*m-s*o)>D)||!u)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var b=i-k,y=l-g,x=m*m+s*s,E=b*b+y*y,L=Math.sqrt(x),A=Math.sqrt(p),N=u*Math.tan((tt-Math.acos((x+p-E)/(2*L*A)))/2),I=N/A,z=N/L;Math.abs(I-1)>D&&(this._+="L"+(t+I*o)+","+(n+I*c)),this._+="A"+u+","+u+",0,0,"+ +(c*b>o*y)+","+(this._x1=t+z*m)+","+(this._y1=n+z*s)}},arc:function(t,n,i,l,u,k){t=+t,n=+n,i=+i,k=!!k;var g=i*Math.cos(l),m=i*Math.sin(l),s=t+g,o=n+m,c=1^k,p=k?l-u:u-l;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+s+","+o:(Math.abs(this._x1-s)>D||Math.abs(this._y1-o)>D)&&(this._+="L"+s+","+o),i&&(p<0&&(p=p%et+et),p>Dt?this._+="A"+i+","+i+",0,1,"+c+","+(t-g)+","+(n-m)+"A"+i+","+i+",0,1,"+c+","+(this._x1=s)+","+(this._y1=o):p>D&&(this._+="A"+i+","+i+",0,"+ +(p>=tt)+","+c+","+(this._x1=t+i*Math.cos(u))+","+(this._y1=n+i*Math.sin(u))))},rect:function(t,n,i,l){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +i+"v"+ +l+"h"+-i+"Z"},toString:function(){return this._}};function ht(t){return function(){return t}}function Bt(t){return t[0]}function Rt(t){return t[1]}var Ut=Array.prototype.slice;function Vt(t){return t.source}function Wt(t){return t.target}function Ft(t){var n=Vt,i=Wt,l=Bt,u=Rt,k=null;function g(){var m,s=Ut.call(arguments),o=n.apply(this,s),c=i.apply(this,s);if(k||(k=m=gt()),t(k,+l.apply(this,(s[0]=o,s)),+u.apply(this,s),+l.apply(this,(s[0]=c,s)),+u.apply(this,s)),m)return k=null,m+""||null}return g.source=function(m){return arguments.length?(n=m,g):n},g.target=function(m){return arguments.length?(i=m,g):i},g.x=function(m){return arguments.length?(l=typeof m=="function"?m:ht(+m),g):l},g.y=function(m){return arguments.length?(u=typeof m=="function"?m:ht(+m),g):u},g.context=function(m){return arguments.length?(k=m??null,g):k},g}function Yt(t,n,i,l,u){t.moveTo(n,i),t.bezierCurveTo(n=(n+l)/2,i,n,u,l,u)}function Gt(){return Ft(Yt)}function Ht(t){return[t.source.x1,t.y0]}function Xt(t){return[t.target.x0,t.y1]}function qt(){return Gt().source(Ht).target(Xt)}var it=function(){var t=function(m,s,o,c){for(o=o||{},c=m.length;c--;o[m[c]]=s);return o},n=[1,9],i=[1,10],l=[1,5,10,12],u={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(s,o,c,p,b,y,x){var E=y.length-1;switch(b){case 7:const L=p.findOrCreateNode(y[E-4].trim().replaceAll('""','"')),A=p.findOrCreateNode(y[E-2].trim().replaceAll('""','"')),N=parseFloat(y[E].trim());p.addLink(L,A,N);break;case 8:case 9:case 11:this.$=y[E];break;case 10:this.$=y[E-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:i},{1:[2,6],7:11,10:[1,12]},t(i,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(l,[2,8]),t(l,[2,9]),{19:[1,16]},t(l,[2,11]),{1:[2,1]},{1:[2,5]},t(i,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:i},{15:18,16:7,17:8,18:n,20:i},{18:[1,19]},t(i,[2,3]),{12:[1,20]},t(l,[2,10]),{15:21,16:7,17:8,18:n,20:i},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(s,o){if(o.recoverable)this.trace(s);else{var c=new Error(s);throw c.hash=o,c}},parse:function(s){var o=this,c=[0],p=[],b=[null],y=[],x=this.table,E="",L=0,A=0,N=2,I=1,z=y.slice.call(arguments,1),S=Object.create(this.lexer),M={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(M.yy[$]=this.yy[$]);S.setInput(s,M.yy),M.yy.lexer=S,M.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var P=S.yylloc;y.push(P);var C=S.options&&S.options.ranges;typeof M.yy.parseError=="function"?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function d(){var v;return v=p.pop()||S.lex()||I,typeof v!="number"&&(v instanceof Array&&(p=v,v=p.pop()),v=o.symbols_[v]||v),v}for(var w,O,T,R,e={},f,a,h,r;;){if(O=c[c.length-1],this.defaultActions[O]?T=this.defaultActions[O]:((w===null||typeof w>"u")&&(w=d()),T=x[O]&&x[O][w]),typeof T>"u"||!T.length||!T[0]){var _="";r=[];for(f in x[O])this.terminals_[f]&&f>N&&r.push("'"+this.terminals_[f]+"'");S.showPosition?_="Parse error on line "+(L+1)+`: +import{c as rt,g as mt,s as _t,a as kt,b as xt,y as vt,x as bt,A as wt,j as St,v as Lt,h as Y,i as Et}from"./mermaid-934d9bea.JP-6_YN_.js";import{o as At}from"./ordinal.d2xiFBCc.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./init.Hi12RPRh.js";function Tt(t){for(var n=t.length/6|0,i=new Array(n),l=0;l=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i=u)&&(i=u)}return i}function yt(t,n){let i;if(n===void 0)for(const l of t)l!=null&&(i>l||i===void 0&&l>=l)&&(i=l);else{let l=-1;for(let u of t)(u=n(u,++l,t))!=null&&(i>u||i===void 0&&u>=u)&&(i=u)}return i}function Z(t,n){let i=0;if(n===void 0)for(let l of t)(l=+l)&&(i+=l);else{let l=-1;for(let u of t)(u=+n(u,++l,t))&&(i+=u)}return i}function Nt(t){return t.target.depth}function Pt(t){return t.depth}function Ct(t,n){return n-1-t.height}function dt(t,n){return t.sourceLinks.length?t.depth:n-1}function It(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?yt(t.sourceLinks,Nt)-1:0}function G(t){return function(){return t}}function lt(t,n){return H(t.source,n.source)||t.index-n.index}function at(t,n){return H(t.target,n.target)||t.index-n.index}function H(t,n){return t.y0-n.y0}function J(t){return t.value}function Ot(t){return t.index}function $t(t){return t.nodes}function zt(t){return t.links}function ct(t,n){const i=t.get(n);if(!i)throw new Error("missing: "+n);return i}function ut({nodes:t}){for(const n of t){let i=n.y0,l=i;for(const u of n.sourceLinks)u.y0=i+u.width/2,i+=u.width;for(const u of n.targetLinks)u.y1=l+u.width/2,l+=u.width}}function jt(){let t=0,n=0,i=1,l=1,u=24,k=8,g,m=Ot,s=dt,o,c,p=$t,b=zt,y=6;function x(){const e={nodes:p.apply(null,arguments),links:b.apply(null,arguments)};return E(e),L(e),A(e),N(e),S(e),ut(e),e}x.update=function(e){return ut(e),e},x.nodeId=function(e){return arguments.length?(m=typeof e=="function"?e:G(e),x):m},x.nodeAlign=function(e){return arguments.length?(s=typeof e=="function"?e:G(e),x):s},x.nodeSort=function(e){return arguments.length?(o=e,x):o},x.nodeWidth=function(e){return arguments.length?(u=+e,x):u},x.nodePadding=function(e){return arguments.length?(k=g=+e,x):k},x.nodes=function(e){return arguments.length?(p=typeof e=="function"?e:G(e),x):p},x.links=function(e){return arguments.length?(b=typeof e=="function"?e:G(e),x):b},x.linkSort=function(e){return arguments.length?(c=e,x):c},x.size=function(e){return arguments.length?(t=n=0,i=+e[0],l=+e[1],x):[i-t,l-n]},x.extent=function(e){return arguments.length?(t=+e[0][0],i=+e[1][0],n=+e[0][1],l=+e[1][1],x):[[t,n],[i,l]]},x.iterations=function(e){return arguments.length?(y=+e,x):y};function E({nodes:e,links:f}){for(const[h,r]of e.entries())r.index=h,r.sourceLinks=[],r.targetLinks=[];const a=new Map(e.map((h,r)=>[m(h,r,e),h]));for(const[h,r]of f.entries()){r.index=h;let{source:_,target:v}=r;typeof _!="object"&&(_=r.source=ct(a,_)),typeof v!="object"&&(v=r.target=ct(a,v)),_.sourceLinks.push(r),v.targetLinks.push(r)}if(c!=null)for(const{sourceLinks:h,targetLinks:r}of e)h.sort(c),r.sort(c)}function L({nodes:e}){for(const f of e)f.value=f.fixedValue===void 0?Math.max(Z(f.sourceLinks,J),Z(f.targetLinks,J)):f.fixedValue}function A({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const _ of a){_.depth=r;for(const{target:v}of _.sourceLinks)h.add(v)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function N({nodes:e}){const f=e.length;let a=new Set(e),h=new Set,r=0;for(;a.size;){for(const _ of a){_.height=r;for(const{source:v}of _.targetLinks)h.add(v)}if(++r>f)throw new Error("circular link");a=h,h=new Set}}function I({nodes:e}){const f=ot(e,r=>r.depth)+1,a=(i-t-u)/(f-1),h=new Array(f);for(const r of e){const _=Math.max(0,Math.min(f-1,Math.floor(s.call(null,r,f))));r.layer=_,r.x0=t+_*a,r.x1=r.x0+u,h[_]?h[_].push(r):h[_]=[r]}if(o)for(const r of h)r.sort(o);return h}function z(e){const f=yt(e,a=>(l-n-(a.length-1)*g)/Z(a,J));for(const a of e){let h=n;for(const r of a){r.y0=h,r.y1=h+r.value*f,h=r.y1+g;for(const _ of r.sourceLinks)_.width=_.value*f}h=(l-h+g)/(a.length+1);for(let r=0;ra.length)-1)),z(f);for(let a=0;a0))continue;let V=(U/j-v.y0)*f;v.y0+=V,v.y1+=V,w(v)}o===void 0&&_.sort(H),P(_,a)}}function $(e,f,a){for(let h=e.length,r=h-2;r>=0;--r){const _=e[r];for(const v of _){let U=0,j=0;for(const{target:W,value:K}of v.sourceLinks){let F=K*(W.layer-v.layer);U+=R(v,W)*F,j+=F}if(!(j>0))continue;let V=(U/j-v.y0)*f;v.y0+=V,v.y1+=V,w(v)}o===void 0&&_.sort(H),P(_,a)}}function P(e,f){const a=e.length>>1,h=e[a];d(e,h.y0-g,a-1,f),C(e,h.y1+g,a+1,f),d(e,l,e.length-1,f),C(e,n,0,f)}function C(e,f,a,h){for(;a1e-6&&(r.y0+=_,r.y1+=_),f=r.y1+g}}function d(e,f,a,h){for(;a>=0;--a){const r=e[a],_=(r.y1-f)*h;_>1e-6&&(r.y0-=_,r.y1-=_),f=r.y0-g}}function w({sourceLinks:e,targetLinks:f}){if(c===void 0){for(const{source:{sourceLinks:a}}of f)a.sort(at);for(const{target:{targetLinks:a}}of e)a.sort(lt)}}function O(e){if(c===void 0)for(const{sourceLinks:f,targetLinks:a}of e)f.sort(at),a.sort(lt)}function T(e,f){let a=e.y0-(e.sourceLinks.length-1)*g/2;for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a+=r+g}for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a-=r}return a}function R(e,f){let a=f.y0-(f.targetLinks.length-1)*g/2;for(const{source:h,width:r}of f.targetLinks){if(h===e)break;a+=r+g}for(const{target:h,width:r}of e.sourceLinks){if(h===f)break;a-=r}return a}return x}var tt=Math.PI,et=2*tt,D=1e-6,Dt=et-D;function nt(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function gt(){return new nt}nt.prototype=gt.prototype={constructor:nt,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,i,l){this._+="Q"+ +t+","+ +n+","+(this._x1=+i)+","+(this._y1=+l)},bezierCurveTo:function(t,n,i,l,u,k){this._+="C"+ +t+","+ +n+","+ +i+","+ +l+","+(this._x1=+u)+","+(this._y1=+k)},arcTo:function(t,n,i,l,u){t=+t,n=+n,i=+i,l=+l,u=+u;var k=this._x1,g=this._y1,m=i-t,s=l-n,o=k-t,c=g-n,p=o*o+c*c;if(u<0)throw new Error("negative radius: "+u);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(p>D)if(!(Math.abs(c*m-s*o)>D)||!u)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var b=i-k,y=l-g,x=m*m+s*s,E=b*b+y*y,L=Math.sqrt(x),A=Math.sqrt(p),N=u*Math.tan((tt-Math.acos((x+p-E)/(2*L*A)))/2),I=N/A,z=N/L;Math.abs(I-1)>D&&(this._+="L"+(t+I*o)+","+(n+I*c)),this._+="A"+u+","+u+",0,0,"+ +(c*b>o*y)+","+(this._x1=t+z*m)+","+(this._y1=n+z*s)}},arc:function(t,n,i,l,u,k){t=+t,n=+n,i=+i,k=!!k;var g=i*Math.cos(l),m=i*Math.sin(l),s=t+g,o=n+m,c=1^k,p=k?l-u:u-l;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+s+","+o:(Math.abs(this._x1-s)>D||Math.abs(this._y1-o)>D)&&(this._+="L"+s+","+o),i&&(p<0&&(p=p%et+et),p>Dt?this._+="A"+i+","+i+",0,1,"+c+","+(t-g)+","+(n-m)+"A"+i+","+i+",0,1,"+c+","+(this._x1=s)+","+(this._y1=o):p>D&&(this._+="A"+i+","+i+",0,"+ +(p>=tt)+","+c+","+(this._x1=t+i*Math.cos(u))+","+(this._y1=n+i*Math.sin(u))))},rect:function(t,n,i,l){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +i+"v"+ +l+"h"+-i+"Z"},toString:function(){return this._}};function ht(t){return function(){return t}}function Bt(t){return t[0]}function Rt(t){return t[1]}var Ut=Array.prototype.slice;function Vt(t){return t.source}function Wt(t){return t.target}function Ft(t){var n=Vt,i=Wt,l=Bt,u=Rt,k=null;function g(){var m,s=Ut.call(arguments),o=n.apply(this,s),c=i.apply(this,s);if(k||(k=m=gt()),t(k,+l.apply(this,(s[0]=o,s)),+u.apply(this,s),+l.apply(this,(s[0]=c,s)),+u.apply(this,s)),m)return k=null,m+""||null}return g.source=function(m){return arguments.length?(n=m,g):n},g.target=function(m){return arguments.length?(i=m,g):i},g.x=function(m){return arguments.length?(l=typeof m=="function"?m:ht(+m),g):l},g.y=function(m){return arguments.length?(u=typeof m=="function"?m:ht(+m),g):u},g.context=function(m){return arguments.length?(k=m??null,g):k},g}function Yt(t,n,i,l,u){t.moveTo(n,i),t.bezierCurveTo(n=(n+l)/2,i,n,u,l,u)}function Gt(){return Ft(Yt)}function Ht(t){return[t.source.x1,t.y0]}function Xt(t){return[t.target.x0,t.y1]}function qt(){return Gt().source(Ht).target(Xt)}var it=function(){var t=function(m,s,o,c){for(o=o||{},c=m.length;c--;o[m[c]]=s);return o},n=[1,9],i=[1,10],l=[1,5,10,12],u={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(s,o,c,p,b,y,x){var E=y.length-1;switch(b){case 7:const L=p.findOrCreateNode(y[E-4].trim().replaceAll('""','"')),A=p.findOrCreateNode(y[E-2].trim().replaceAll('""','"')),N=parseFloat(y[E].trim());p.addLink(L,A,N);break;case 8:case 9:case 11:this.$=y[E];break;case 10:this.$=y[E-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:i},{1:[2,6],7:11,10:[1,12]},t(i,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(l,[2,8]),t(l,[2,9]),{19:[1,16]},t(l,[2,11]),{1:[2,1]},{1:[2,5]},t(i,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:i},{15:18,16:7,17:8,18:n,20:i},{18:[1,19]},t(i,[2,3]),{12:[1,20]},t(l,[2,10]),{15:21,16:7,17:8,18:n,20:i},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(s,o){if(o.recoverable)this.trace(s);else{var c=new Error(s);throw c.hash=o,c}},parse:function(s){var o=this,c=[0],p=[],b=[null],y=[],x=this.table,E="",L=0,A=0,N=2,I=1,z=y.slice.call(arguments,1),S=Object.create(this.lexer),M={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(M.yy[$]=this.yy[$]);S.setInput(s,M.yy),M.yy.lexer=S,M.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var P=S.yylloc;y.push(P);var C=S.options&&S.options.ranges;typeof M.yy.parseError=="function"?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function d(){var v;return v=p.pop()||S.lex()||I,typeof v!="number"&&(v instanceof Array&&(p=v,v=p.pop()),v=o.symbols_[v]||v),v}for(var w,O,T,R,e={},f,a,h,r;;){if(O=c[c.length-1],this.defaultActions[O]?T=this.defaultActions[O]:((w===null||typeof w>"u")&&(w=d()),T=x[O]&&x[O][w]),typeof T>"u"||!T.length||!T[0]){var _="";r=[];for(f in x[O])this.terminals_[f]&&f>N&&r.push("'"+this.terminals_[f]+"'");S.showPosition?_="Parse error on line "+(L+1)+`: `+S.showPosition()+` Expecting `+r.join(", ")+", got '"+(this.terminals_[w]||w)+"'":_="Parse error on line "+(L+1)+": Unexpected "+(w==I?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(_,{text:S.match,token:this.terminals_[w]||w,line:S.yylineno,loc:P,expected:r})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+w);switch(T[0]){case 1:c.push(w),b.push(S.yytext),y.push(S.yylloc),c.push(T[1]),w=null,A=S.yyleng,E=S.yytext,L=S.yylineno,P=S.yylloc;break;case 2:if(a=this.productions_[T[1]][1],e.$=b[b.length-a],e._$={first_line:y[y.length-(a||1)].first_line,last_line:y[y.length-1].last_line,first_column:y[y.length-(a||1)].first_column,last_column:y[y.length-1].last_column},C&&(e._$.range=[y[y.length-(a||1)].range[0],y[y.length-1].range[1]]),R=this.performAction.apply(e,[E,A,L,M.yy,T[1],b,y].concat(z)),typeof R<"u")return R;a&&(c=c.slice(0,-1*a*2),b=b.slice(0,-1*a),y=y.slice(0,-1*a)),c.push(this.productions_[T[1]][0]),b.push(e.$),y.push(e._$),h=x[c[c.length-2]][c[c.length-1]],c.push(h);break;case 3:return!0}}return!0}},k=function(){var m={EOF:1,parseError:function(o,c){if(this.yy.parser)this.yy.parser.parseError(o,c);else throw new Error(o)},setInput:function(s,o){return this.yy=o||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var o=s.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},unput:function(s){var o=s.length,c=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var p=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===p.length?this.yylloc.first_column:0)+p[p.length-c.length].length-c[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(s){this.unput(this.match.slice(s))},pastInput:function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var s=this.pastInput(),o=new Array(s.length+1).join("-");return s+this.upcomingInput()+` diff --git a/_nuxt/sequenceDiagram-465a088a.d3gG14vX.js b/_nuxt/sequenceDiagram-465a088a.8KDelGu_.js similarity index 99% rename from _nuxt/sequenceDiagram-465a088a.d3gG14vX.js rename to _nuxt/sequenceDiagram-465a088a.8KDelGu_.js index d1b30c31c7..e2052e6494 100644 --- a/_nuxt/sequenceDiagram-465a088a.d3gG14vX.js +++ b/_nuxt/sequenceDiagram-465a088a.8KDelGu_.js @@ -1,4 +1,4 @@ -import{g as ke,y as Le,x as Ie,c as dt,s as ae,b as Ae,a as Ne,A as Se,l as U,d as Mt,j as w,e as Me,h as St,i as Re,z as O,n as re,aM as oe,a$ as De,b0 as Ve}from"./mermaid-934d9bea.GjCu814R.js";import{d as Ce,a as Oe,g as Rt,b as Be,c as Ye,e as Gt}from"./svgDrawCommon-ad5ef572.up_fh1Ps.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";var qt=function(){var t=function(ht,m,_,k){for(_=_||{},k=ht.length;k--;_[ht[k]]=m);return _},e=[1,2],o=[1,3],i=[1,4],s=[2,4],n=[1,9],c=[1,11],h=[1,13],p=[1,14],a=[1,16],x=[1,17],E=[1,18],u=[1,24],g=[1,25],b=[1,26],P=[1,27],I=[1,28],R=[1,29],N=[1,30],F=[1,31],S=[1,32],tt=[1,33],W=[1,34],K=[1,35],Z=[1,36],q=[1,37],Y=[1,38],C=[1,39],G=[1,41],z=[1,42],X=[1,43],Q=[1,44],j=[1,45],y=[1,46],v=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],L=[4,5,16,50,52,53],pt=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],et=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],A=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],$t=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],lt=[68,69,70],nt=[1,120],Ct={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,DOTTED_ARROW:74,SOLID_CROSS:75,DOTTED_CROSS:76,SOLID_POINT:77,DOTTED_POINT:78,TXT:79,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"DOTTED_ARROW",75:"SOLID_CROSS",76:"DOTTED_CROSS",77:"SOLID_POINT",78:"DOTTED_POINT",79:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:function(m,_,k,T,M,l,vt){var d=l.length-1;switch(M){case 3:return T.apply(l[d]),l[d];case 4:case 9:this.$=[];break;case 5:case 10:l[d-1].push(l[d]),this.$=l[d-1];break;case 6:case 7:case 11:case 12:this.$=l[d];break;case 8:case 13:this.$=[];break;case 15:l[d].type="createParticipant",this.$=l[d];break;case 16:l[d-1].unshift({type:"boxStart",boxData:T.parseBoxData(l[d-2])}),l[d-1].push({type:"boxEnd",boxText:l[d-2]}),this.$=l[d-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(l[d-2]),sequenceIndexStep:Number(l[d-1]),sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(l[d-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:T.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:l[d-1]};break;case 23:this.$={type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:l[d-1]};break;case 29:T.setDiagramTitle(l[d].substring(6)),this.$=l[d].substring(6);break;case 30:T.setDiagramTitle(l[d].substring(7)),this.$=l[d].substring(7);break;case 31:this.$=l[d].trim(),T.setAccTitle(this.$);break;case 32:case 33:this.$=l[d].trim(),T.setAccDescription(this.$);break;case 34:l[d-1].unshift({type:"loopStart",loopText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.LOOP_START}),l[d-1].push({type:"loopEnd",loopText:l[d-2],signalType:T.LINETYPE.LOOP_END}),this.$=l[d-1];break;case 35:l[d-1].unshift({type:"rectStart",color:T.parseMessage(l[d-2]),signalType:T.LINETYPE.RECT_START}),l[d-1].push({type:"rectEnd",color:T.parseMessage(l[d-2]),signalType:T.LINETYPE.RECT_END}),this.$=l[d-1];break;case 36:l[d-1].unshift({type:"optStart",optText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.OPT_START}),l[d-1].push({type:"optEnd",optText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.OPT_END}),this.$=l[d-1];break;case 37:l[d-1].unshift({type:"altStart",altText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.ALT_START}),l[d-1].push({type:"altEnd",signalType:T.LINETYPE.ALT_END}),this.$=l[d-1];break;case 38:l[d-1].unshift({type:"parStart",parText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.PAR_START}),l[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=l[d-1];break;case 39:l[d-1].unshift({type:"parStart",parText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.PAR_OVER_START}),l[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=l[d-1];break;case 40:l[d-1].unshift({type:"criticalStart",criticalText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.CRITICAL_START}),l[d-1].push({type:"criticalEnd",signalType:T.LINETYPE.CRITICAL_END}),this.$=l[d-1];break;case 41:l[d-1].unshift({type:"breakStart",breakText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.BREAK_START}),l[d-1].push({type:"breakEnd",optText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.BREAK_END}),this.$=l[d-1];break;case 43:this.$=l[d-3].concat([{type:"option",optionText:T.parseMessage(l[d-1]),signalType:T.LINETYPE.CRITICAL_OPTION},l[d]]);break;case 45:this.$=l[d-3].concat([{type:"and",parText:T.parseMessage(l[d-1]),signalType:T.LINETYPE.PAR_AND},l[d]]);break;case 47:this.$=l[d-3].concat([{type:"else",altText:T.parseMessage(l[d-1]),signalType:T.LINETYPE.ALT_ELSE},l[d]]);break;case 48:l[d-3].draw="participant",l[d-3].type="addParticipant",l[d-3].description=T.parseMessage(l[d-1]),this.$=l[d-3];break;case 49:l[d-1].draw="participant",l[d-1].type="addParticipant",this.$=l[d-1];break;case 50:l[d-3].draw="actor",l[d-3].type="addParticipant",l[d-3].description=T.parseMessage(l[d-1]),this.$=l[d-3];break;case 51:l[d-1].draw="actor",l[d-1].type="addParticipant",this.$=l[d-1];break;case 52:l[d-1].type="destroyParticipant",this.$=l[d-1];break;case 53:this.$=[l[d-1],{type:"addNote",placement:l[d-2],actor:l[d-1].actor,text:l[d]}];break;case 54:l[d-2]=[].concat(l[d-1],l[d-1]).slice(0,2),l[d-2][0]=l[d-2][0].actor,l[d-2][1]=l[d-2][1].actor,this.$=[l[d-1],{type:"addNote",placement:T.PLACEMENT.OVER,actor:l[d-2].slice(0,2),text:l[d]}];break;case 55:this.$=[l[d-1],{type:"addLinks",actor:l[d-1].actor,text:l[d]}];break;case 56:this.$=[l[d-1],{type:"addALink",actor:l[d-1].actor,text:l[d]}];break;case 57:this.$=[l[d-1],{type:"addProperties",actor:l[d-1].actor,text:l[d]}];break;case 58:this.$=[l[d-1],{type:"addDetails",actor:l[d-1].actor,text:l[d]}];break;case 61:this.$=[l[d-2],l[d]];break;case 62:this.$=l[d];break;case 63:this.$=T.PLACEMENT.LEFTOF;break;case 64:this.$=T.PLACEMENT.RIGHTOF;break;case 65:this.$=[l[d-4],l[d-1],{type:"addMessage",from:l[d-4].actor,to:l[d-1].actor,signalType:l[d-3],msg:l[d],activate:!0},{type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:l[d-1]}];break;case 66:this.$=[l[d-4],l[d-1],{type:"addMessage",from:l[d-4].actor,to:l[d-1].actor,signalType:l[d-3],msg:l[d]},{type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:l[d-4]}];break;case 67:this.$=[l[d-3],l[d-1],{type:"addMessage",from:l[d-3].actor,to:l[d-1].actor,signalType:l[d-2],msg:l[d]}];break;case 68:this.$={type:"addParticipant",actor:l[d]};break;case 69:this.$=T.LINETYPE.SOLID_OPEN;break;case 70:this.$=T.LINETYPE.DOTTED_OPEN;break;case 71:this.$=T.LINETYPE.SOLID;break;case 72:this.$=T.LINETYPE.DOTTED;break;case 73:this.$=T.LINETYPE.SOLID_CROSS;break;case 74:this.$=T.LINETYPE.DOTTED_CROSS;break;case 75:this.$=T.LINETYPE.SOLID_POINT;break;case 76:this.$=T.LINETYPE.DOTTED_POINT;break;case 77:this.$=T.parseMessage(l[d].trim().substring(1));break}},table:[{3:1,4:e,5:o,6:i},{1:[3]},{3:5,4:e,5:o,6:i},{3:6,4:e,5:o,6:i},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],s,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:n,5:c,8:8,9:10,12:12,13:h,14:p,17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},t(v,[2,5]),{9:47,12:12,13:h,14:p,17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},t(v,[2,7]),t(v,[2,8]),t(v,[2,14]),{12:48,50:q,52:Y,53:C},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:y},{22:55,70:y},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(v,[2,29]),t(v,[2,30]),{32:[1,61]},{34:[1,62]},t(v,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:y},{22:72,70:y},{22:73,70:y},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82]},{55:83,57:[1,84],65:[1,85],66:[1,86]},{22:87,70:y},{22:88,70:y},{22:89,70:y},{22:90,70:y},t([5,51,64,71,72,73,74,75,76,77,78,79],[2,68]),t(v,[2,6]),t(v,[2,15]),t(L,[2,9],{10:91}),t(v,[2,17]),{5:[1,93],19:[1,92]},{5:[1,94]},t(v,[2,21]),{5:[1,95]},{5:[1,96]},t(v,[2,24]),t(v,[2,25]),t(v,[2,26]),t(v,[2,27]),t(v,[2,28]),t(v,[2,31]),t(v,[2,32]),t(pt,s,{7:97}),t(pt,s,{7:98}),t(pt,s,{7:99}),t(et,s,{40:100,7:101}),t(A,s,{42:102,7:103}),t(A,s,{7:103,42:104}),t($t,s,{45:105,7:106}),t(pt,s,{7:107}),{5:[1,109],51:[1,108]},{5:[1,111],51:[1,110]},{5:[1,112]},{22:115,68:[1,113],69:[1,114],70:y},t(lt,[2,69]),t(lt,[2,70]),t(lt,[2,71]),t(lt,[2,72]),t(lt,[2,73]),t(lt,[2,74]),t(lt,[2,75]),t(lt,[2,76]),{22:116,70:y},{22:118,58:117,70:y},{70:[2,63]},{70:[2,64]},{56:119,79:nt},{56:121,79:nt},{56:122,79:nt},{56:123,79:nt},{4:[1,126],5:[1,128],11:125,12:127,16:[1,124],50:q,52:Y,53:C},{5:[1,129]},t(v,[2,19]),t(v,[2,20]),t(v,[2,22]),t(v,[2,23]),{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,130],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,131],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,132],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{16:[1,133]},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[2,46],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,49:[1,134],50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{16:[1,135]},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[2,44],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,48:[1,136],50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{16:[1,137]},{16:[1,138]},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[2,42],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,47:[1,139],50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,140],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{15:[1,141]},t(v,[2,49]),{15:[1,142]},t(v,[2,51]),t(v,[2,52]),{22:143,70:y},{22:144,70:y},{56:145,79:nt},{56:146,79:nt},{56:147,79:nt},{64:[1,148],79:[2,62]},{5:[2,55]},{5:[2,77]},{5:[2,56]},{5:[2,57]},{5:[2,58]},t(v,[2,16]),t(L,[2,10]),{12:149,50:q,52:Y,53:C},t(L,[2,12]),t(L,[2,13]),t(v,[2,18]),t(v,[2,34]),t(v,[2,35]),t(v,[2,36]),t(v,[2,37]),{15:[1,150]},t(v,[2,38]),{15:[1,151]},t(v,[2,39]),t(v,[2,40]),{15:[1,152]},t(v,[2,41]),{5:[1,153]},{5:[1,154]},{56:155,79:nt},{56:156,79:nt},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:157,70:y},t(L,[2,11]),t(et,s,{7:101,40:158}),t(A,s,{7:103,42:159}),t($t,s,{7:106,45:160}),t(v,[2,48]),t(v,[2,50]),{5:[2,65]},{5:[2,66]},{79:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],85:[2,63],86:[2,64],119:[2,55],120:[2,77],121:[2,56],122:[2,57],123:[2,58],145:[2,67],146:[2,53],147:[2,54],155:[2,65],156:[2,66],157:[2,61],158:[2,47],159:[2,45],160:[2,43]},parseError:function(m,_){if(_.recoverable)this.trace(m);else{var k=new Error(m);throw k.hash=_,k}},parse:function(m){var _=this,k=[0],T=[],M=[null],l=[],vt=this.table,d="",It=0,te=0,we=2,ee=1,ve=l.slice.call(arguments,1),B=Object.create(this.lexer),ut={yy:{}};for(var Bt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Bt)&&(ut.yy[Bt]=this.yy[Bt]);B.setInput(m,ut.yy),ut.yy.lexer=B,ut.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var Yt=B.yylloc;l.push(Yt);var _e=B.options&&B.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pe(){var rt;return rt=T.pop()||B.lex()||ee,typeof rt!="number"&&(rt instanceof Array&&(T=rt,rt=T.pop()),rt=_.symbols_[rt]||rt),rt}for(var H,ft,$,Ft,yt={},At,at,ie,Nt;;){if(ft=k[k.length-1],this.defaultActions[ft]?$=this.defaultActions[ft]:((H===null||typeof H>"u")&&(H=Pe()),$=vt[ft]&&vt[ft][H]),typeof $>"u"||!$.length||!$[0]){var Wt="";Nt=[];for(At in vt[ft])this.terminals_[At]&&At>we&&Nt.push("'"+this.terminals_[At]+"'");B.showPosition?Wt="Parse error on line "+(It+1)+`: +import{g as ke,y as Le,x as Ie,c as dt,s as ae,b as Ae,a as Ne,A as Se,l as U,d as Mt,j as w,e as Me,h as St,i as Re,z as O,n as re,aM as oe,a$ as De,b0 as Ve}from"./mermaid-934d9bea.JP-6_YN_.js";import{d as Ce,a as Oe,g as Rt,b as Be,c as Ye,e as Gt}from"./svgDrawCommon-ad5ef572.X8xX495e.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";var qt=function(){var t=function(ht,m,_,k){for(_=_||{},k=ht.length;k--;_[ht[k]]=m);return _},e=[1,2],o=[1,3],i=[1,4],s=[2,4],n=[1,9],c=[1,11],h=[1,13],p=[1,14],a=[1,16],x=[1,17],E=[1,18],u=[1,24],g=[1,25],b=[1,26],P=[1,27],I=[1,28],R=[1,29],N=[1,30],F=[1,31],S=[1,32],tt=[1,33],W=[1,34],K=[1,35],Z=[1,36],q=[1,37],Y=[1,38],C=[1,39],G=[1,41],z=[1,42],X=[1,43],Q=[1,44],j=[1,45],y=[1,46],v=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],L=[4,5,16,50,52,53],pt=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],et=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],A=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],$t=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],lt=[68,69,70],nt=[1,120],Ct={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,DOTTED_ARROW:74,SOLID_CROSS:75,DOTTED_CROSS:76,SOLID_POINT:77,DOTTED_POINT:78,TXT:79,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"DOTTED_ARROW",75:"SOLID_CROSS",76:"DOTTED_CROSS",77:"SOLID_POINT",78:"DOTTED_POINT",79:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:function(m,_,k,T,M,l,vt){var d=l.length-1;switch(M){case 3:return T.apply(l[d]),l[d];case 4:case 9:this.$=[];break;case 5:case 10:l[d-1].push(l[d]),this.$=l[d-1];break;case 6:case 7:case 11:case 12:this.$=l[d];break;case 8:case 13:this.$=[];break;case 15:l[d].type="createParticipant",this.$=l[d];break;case 16:l[d-1].unshift({type:"boxStart",boxData:T.parseBoxData(l[d-2])}),l[d-1].push({type:"boxEnd",boxText:l[d-2]}),this.$=l[d-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(l[d-2]),sequenceIndexStep:Number(l[d-1]),sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(l[d-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:T.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:T.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:l[d-1]};break;case 23:this.$={type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:l[d-1]};break;case 29:T.setDiagramTitle(l[d].substring(6)),this.$=l[d].substring(6);break;case 30:T.setDiagramTitle(l[d].substring(7)),this.$=l[d].substring(7);break;case 31:this.$=l[d].trim(),T.setAccTitle(this.$);break;case 32:case 33:this.$=l[d].trim(),T.setAccDescription(this.$);break;case 34:l[d-1].unshift({type:"loopStart",loopText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.LOOP_START}),l[d-1].push({type:"loopEnd",loopText:l[d-2],signalType:T.LINETYPE.LOOP_END}),this.$=l[d-1];break;case 35:l[d-1].unshift({type:"rectStart",color:T.parseMessage(l[d-2]),signalType:T.LINETYPE.RECT_START}),l[d-1].push({type:"rectEnd",color:T.parseMessage(l[d-2]),signalType:T.LINETYPE.RECT_END}),this.$=l[d-1];break;case 36:l[d-1].unshift({type:"optStart",optText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.OPT_START}),l[d-1].push({type:"optEnd",optText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.OPT_END}),this.$=l[d-1];break;case 37:l[d-1].unshift({type:"altStart",altText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.ALT_START}),l[d-1].push({type:"altEnd",signalType:T.LINETYPE.ALT_END}),this.$=l[d-1];break;case 38:l[d-1].unshift({type:"parStart",parText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.PAR_START}),l[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=l[d-1];break;case 39:l[d-1].unshift({type:"parStart",parText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.PAR_OVER_START}),l[d-1].push({type:"parEnd",signalType:T.LINETYPE.PAR_END}),this.$=l[d-1];break;case 40:l[d-1].unshift({type:"criticalStart",criticalText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.CRITICAL_START}),l[d-1].push({type:"criticalEnd",signalType:T.LINETYPE.CRITICAL_END}),this.$=l[d-1];break;case 41:l[d-1].unshift({type:"breakStart",breakText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.BREAK_START}),l[d-1].push({type:"breakEnd",optText:T.parseMessage(l[d-2]),signalType:T.LINETYPE.BREAK_END}),this.$=l[d-1];break;case 43:this.$=l[d-3].concat([{type:"option",optionText:T.parseMessage(l[d-1]),signalType:T.LINETYPE.CRITICAL_OPTION},l[d]]);break;case 45:this.$=l[d-3].concat([{type:"and",parText:T.parseMessage(l[d-1]),signalType:T.LINETYPE.PAR_AND},l[d]]);break;case 47:this.$=l[d-3].concat([{type:"else",altText:T.parseMessage(l[d-1]),signalType:T.LINETYPE.ALT_ELSE},l[d]]);break;case 48:l[d-3].draw="participant",l[d-3].type="addParticipant",l[d-3].description=T.parseMessage(l[d-1]),this.$=l[d-3];break;case 49:l[d-1].draw="participant",l[d-1].type="addParticipant",this.$=l[d-1];break;case 50:l[d-3].draw="actor",l[d-3].type="addParticipant",l[d-3].description=T.parseMessage(l[d-1]),this.$=l[d-3];break;case 51:l[d-1].draw="actor",l[d-1].type="addParticipant",this.$=l[d-1];break;case 52:l[d-1].type="destroyParticipant",this.$=l[d-1];break;case 53:this.$=[l[d-1],{type:"addNote",placement:l[d-2],actor:l[d-1].actor,text:l[d]}];break;case 54:l[d-2]=[].concat(l[d-1],l[d-1]).slice(0,2),l[d-2][0]=l[d-2][0].actor,l[d-2][1]=l[d-2][1].actor,this.$=[l[d-1],{type:"addNote",placement:T.PLACEMENT.OVER,actor:l[d-2].slice(0,2),text:l[d]}];break;case 55:this.$=[l[d-1],{type:"addLinks",actor:l[d-1].actor,text:l[d]}];break;case 56:this.$=[l[d-1],{type:"addALink",actor:l[d-1].actor,text:l[d]}];break;case 57:this.$=[l[d-1],{type:"addProperties",actor:l[d-1].actor,text:l[d]}];break;case 58:this.$=[l[d-1],{type:"addDetails",actor:l[d-1].actor,text:l[d]}];break;case 61:this.$=[l[d-2],l[d]];break;case 62:this.$=l[d];break;case 63:this.$=T.PLACEMENT.LEFTOF;break;case 64:this.$=T.PLACEMENT.RIGHTOF;break;case 65:this.$=[l[d-4],l[d-1],{type:"addMessage",from:l[d-4].actor,to:l[d-1].actor,signalType:l[d-3],msg:l[d],activate:!0},{type:"activeStart",signalType:T.LINETYPE.ACTIVE_START,actor:l[d-1]}];break;case 66:this.$=[l[d-4],l[d-1],{type:"addMessage",from:l[d-4].actor,to:l[d-1].actor,signalType:l[d-3],msg:l[d]},{type:"activeEnd",signalType:T.LINETYPE.ACTIVE_END,actor:l[d-4]}];break;case 67:this.$=[l[d-3],l[d-1],{type:"addMessage",from:l[d-3].actor,to:l[d-1].actor,signalType:l[d-2],msg:l[d]}];break;case 68:this.$={type:"addParticipant",actor:l[d]};break;case 69:this.$=T.LINETYPE.SOLID_OPEN;break;case 70:this.$=T.LINETYPE.DOTTED_OPEN;break;case 71:this.$=T.LINETYPE.SOLID;break;case 72:this.$=T.LINETYPE.DOTTED;break;case 73:this.$=T.LINETYPE.SOLID_CROSS;break;case 74:this.$=T.LINETYPE.DOTTED_CROSS;break;case 75:this.$=T.LINETYPE.SOLID_POINT;break;case 76:this.$=T.LINETYPE.DOTTED_POINT;break;case 77:this.$=T.parseMessage(l[d].trim().substring(1));break}},table:[{3:1,4:e,5:o,6:i},{1:[3]},{3:5,4:e,5:o,6:i},{3:6,4:e,5:o,6:i},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],s,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:n,5:c,8:8,9:10,12:12,13:h,14:p,17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},t(v,[2,5]),{9:47,12:12,13:h,14:p,17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},t(v,[2,7]),t(v,[2,8]),t(v,[2,14]),{12:48,50:q,52:Y,53:C},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:y},{22:55,70:y},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(v,[2,29]),t(v,[2,30]),{32:[1,61]},{34:[1,62]},t(v,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:y},{22:72,70:y},{22:73,70:y},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82]},{55:83,57:[1,84],65:[1,85],66:[1,86]},{22:87,70:y},{22:88,70:y},{22:89,70:y},{22:90,70:y},t([5,51,64,71,72,73,74,75,76,77,78,79],[2,68]),t(v,[2,6]),t(v,[2,15]),t(L,[2,9],{10:91}),t(v,[2,17]),{5:[1,93],19:[1,92]},{5:[1,94]},t(v,[2,21]),{5:[1,95]},{5:[1,96]},t(v,[2,24]),t(v,[2,25]),t(v,[2,26]),t(v,[2,27]),t(v,[2,28]),t(v,[2,31]),t(v,[2,32]),t(pt,s,{7:97}),t(pt,s,{7:98}),t(pt,s,{7:99}),t(et,s,{40:100,7:101}),t(A,s,{42:102,7:103}),t(A,s,{7:103,42:104}),t($t,s,{45:105,7:106}),t(pt,s,{7:107}),{5:[1,109],51:[1,108]},{5:[1,111],51:[1,110]},{5:[1,112]},{22:115,68:[1,113],69:[1,114],70:y},t(lt,[2,69]),t(lt,[2,70]),t(lt,[2,71]),t(lt,[2,72]),t(lt,[2,73]),t(lt,[2,74]),t(lt,[2,75]),t(lt,[2,76]),{22:116,70:y},{22:118,58:117,70:y},{70:[2,63]},{70:[2,64]},{56:119,79:nt},{56:121,79:nt},{56:122,79:nt},{56:123,79:nt},{4:[1,126],5:[1,128],11:125,12:127,16:[1,124],50:q,52:Y,53:C},{5:[1,129]},t(v,[2,19]),t(v,[2,20]),t(v,[2,22]),t(v,[2,23]),{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,130],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,131],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,132],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{16:[1,133]},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[2,46],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,49:[1,134],50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{16:[1,135]},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[2,44],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,48:[1,136],50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{16:[1,137]},{16:[1,138]},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[2,42],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,47:[1,139],50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{4:n,5:c,8:8,9:10,12:12,13:h,14:p,16:[1,140],17:15,18:a,21:x,22:40,23:E,24:19,25:20,26:21,27:22,28:23,29:u,30:g,31:b,33:P,35:I,36:R,37:N,38:F,39:S,41:tt,43:W,44:K,46:Z,50:q,52:Y,53:C,54:G,59:z,60:X,61:Q,62:j,70:y},{15:[1,141]},t(v,[2,49]),{15:[1,142]},t(v,[2,51]),t(v,[2,52]),{22:143,70:y},{22:144,70:y},{56:145,79:nt},{56:146,79:nt},{56:147,79:nt},{64:[1,148],79:[2,62]},{5:[2,55]},{5:[2,77]},{5:[2,56]},{5:[2,57]},{5:[2,58]},t(v,[2,16]),t(L,[2,10]),{12:149,50:q,52:Y,53:C},t(L,[2,12]),t(L,[2,13]),t(v,[2,18]),t(v,[2,34]),t(v,[2,35]),t(v,[2,36]),t(v,[2,37]),{15:[1,150]},t(v,[2,38]),{15:[1,151]},t(v,[2,39]),t(v,[2,40]),{15:[1,152]},t(v,[2,41]),{5:[1,153]},{5:[1,154]},{56:155,79:nt},{56:156,79:nt},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:157,70:y},t(L,[2,11]),t(et,s,{7:101,40:158}),t(A,s,{7:103,42:159}),t($t,s,{7:106,45:160}),t(v,[2,48]),t(v,[2,50]),{5:[2,65]},{5:[2,66]},{79:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],85:[2,63],86:[2,64],119:[2,55],120:[2,77],121:[2,56],122:[2,57],123:[2,58],145:[2,67],146:[2,53],147:[2,54],155:[2,65],156:[2,66],157:[2,61],158:[2,47],159:[2,45],160:[2,43]},parseError:function(m,_){if(_.recoverable)this.trace(m);else{var k=new Error(m);throw k.hash=_,k}},parse:function(m){var _=this,k=[0],T=[],M=[null],l=[],vt=this.table,d="",It=0,te=0,we=2,ee=1,ve=l.slice.call(arguments,1),B=Object.create(this.lexer),ut={yy:{}};for(var Bt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Bt)&&(ut.yy[Bt]=this.yy[Bt]);B.setInput(m,ut.yy),ut.yy.lexer=B,ut.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var Yt=B.yylloc;l.push(Yt);var _e=B.options&&B.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pe(){var rt;return rt=T.pop()||B.lex()||ee,typeof rt!="number"&&(rt instanceof Array&&(T=rt,rt=T.pop()),rt=_.symbols_[rt]||rt),rt}for(var H,ft,$,Ft,yt={},At,at,ie,Nt;;){if(ft=k[k.length-1],this.defaultActions[ft]?$=this.defaultActions[ft]:((H===null||typeof H>"u")&&(H=Pe()),$=vt[ft]&&vt[ft][H]),typeof $>"u"||!$.length||!$[0]){var Wt="";Nt=[];for(At in vt[ft])this.terminals_[At]&&At>we&&Nt.push("'"+this.terminals_[At]+"'");B.showPosition?Wt="Parse error on line "+(It+1)+`: `+B.showPosition()+` Expecting `+Nt.join(", ")+", got '"+(this.terminals_[H]||H)+"'":Wt="Parse error on line "+(It+1)+": Unexpected "+(H==ee?"end of input":"'"+(this.terminals_[H]||H)+"'"),this.parseError(Wt,{text:B.match,token:this.terminals_[H]||H,line:B.yylineno,loc:Yt,expected:Nt})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ft+", token: "+H);switch($[0]){case 1:k.push(H),M.push(B.yytext),l.push(B.yylloc),k.push($[1]),H=null,te=B.yyleng,d=B.yytext,It=B.yylineno,Yt=B.yylloc;break;case 2:if(at=this.productions_[$[1]][1],yt.$=M[M.length-at],yt._$={first_line:l[l.length-(at||1)].first_line,last_line:l[l.length-1].last_line,first_column:l[l.length-(at||1)].first_column,last_column:l[l.length-1].last_column},_e&&(yt._$.range=[l[l.length-(at||1)].range[0],l[l.length-1].range[1]]),Ft=this.performAction.apply(yt,[d,te,It,ut.yy,$[1],M,l].concat(ve)),typeof Ft<"u")return Ft;at&&(k=k.slice(0,-1*at*2),M=M.slice(0,-1*at),l=l.slice(0,-1*at)),k.push(this.productions_[$[1]][0]),M.push(yt.$),l.push(yt._$),ie=vt[k[k.length-2]][k[k.length-1]],k.push(ie);break;case 3:return!0}}return!0}},me=function(){var ht={EOF:1,parseError:function(_,k){if(this.yy.parser)this.yy.parser.parseError(_,k);else throw new Error(_)},setInput:function(m,_){return this.yy=_||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var _=m.match(/(?:\r\n?|\n).*/g);return _?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},unput:function(m){var _=m.length,k=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-_),this.offset-=_;var T=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),k.length-1&&(this.yylineno-=k.length-1);var M=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:k?(k.length===T.length?this.yylloc.first_column:0)+T[T.length-k.length].length-k[0].length:this.yylloc.first_column-_},this.options.ranges&&(this.yylloc.range=[M[0],M[0]+this.yyleng-_]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(m){this.unput(this.match.slice(m))},pastInput:function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var m=this.pastInput(),_=new Array(m.length+1).join("-");return m+this.upcomingInput()+` diff --git a/_nuxt/stateDiagram-b620d43f.f7RfdstU.js b/_nuxt/stateDiagram-b620d43f.cfadEOEs.js similarity index 97% rename from _nuxt/stateDiagram-b620d43f.f7RfdstU.js rename to _nuxt/stateDiagram-b620d43f.cfadEOEs.js index e979bea158..6db7e6a530 100644 --- a/_nuxt/stateDiagram-b620d43f.f7RfdstU.js +++ b/_nuxt/stateDiagram-b620d43f.cfadEOEs.js @@ -1 +1 @@ -import{p as P,d as N,s as W}from"./styles-bbc3fe3b.3MtlFjLb.js";import{c as t,h as H,l as b,i as R,j as T,ap as v,z as U}from"./mermaid-934d9bea.GjCu814R.js";import{G as C,l as F}from"./layout.cBG5TzxH.js";import{l as $}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const O=e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),X=e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),J=(e,i)=>{const o=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=o.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),o},Y=(e,i)=>{const o=function(l,m,w){const E=l.append("tspan").attr("x",2*t().state.padding).text(m);w||E.attr("dy",t().state.textHeight)},s=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),g=s.height,p=e.append("text").attr("x",t().state.padding).attr("y",g+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,r=!0;i.descriptions.forEach(function(l){a||(o(p,l,r),r=!1),a=!1});const y=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+g+t().state.dividerMargin/2).attr("y2",t().state.padding+g+t().state.dividerMargin/2).attr("class","descr-divider"),x=p.node().getBBox(),d=Math.max(x.width,s.width);return y.attr("x2",d+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",d+2*t().state.padding).attr("height",x.height+g+2*t().state.padding).attr("rx",t().state.radius),e},I=(e,i,o)=>{const c=t().state.padding,s=2*t().state.padding,g=e.node().getBBox(),p=g.width,a=g.x,r=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),x=r.node().getBBox().width+s;let d=Math.max(x,p);d===p&&(d=d+s);let l;const m=e.node().getBBox();i.doc,l=a-c,x>p&&(l=(p-d)/2+c),Math.abs(a-m.x)p&&(l=a-(x-p)/2);const w=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",l).attr("y",w).attr("class",o?"alt-composit":"composit").attr("width",d).attr("height",m.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),r.attr("x",l+c),x<=p&&r.attr("x",a+(d-s)/2-x/2+c),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",m.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},_=e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),q=(e,i)=>{let o=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let s=o;o=c,c=s}return e.append("rect").style("stroke","black").style("fill","black").attr("width",o).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},Z=(e,i,o,c)=>{let s=0;const g=c.append("text");g.style("text-anchor","start"),g.attr("class","noteText");let p=e.replace(/\r\n/g,"
");p=p.replace(/\n/g,"
");const a=p.split(T.lineBreakRegex);let r=1.25*t().state.noteMargin;for(const y of a){const x=y.trim();if(x.length>0){const d=g.append("tspan");if(d.text(x),r===0){const l=d.node().getBBox();r+=l.height}s+=r,d.attr("x",i+t().state.noteMargin),d.attr("y",o+s+1.25*t().state.noteMargin)}}return{textWidth:g.node().getBBox().width,textHeight:s}},j=(e,i)=>{i.attr("class","state-note");const o=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:s,textHeight:g}=Z(e,0,0,c);return o.attr("height",g+2*t().state.noteMargin),o.attr("width",s+t().state.noteMargin*2),o},L=function(e,i){const o=i.id,c={id:o,label:i.id,width:0,height:0},s=e.append("g").attr("id",o).attr("class","stateGroup");i.type==="start"&&O(s),i.type==="end"&&_(s),(i.type==="fork"||i.type==="join")&&q(s,i),i.type==="note"&&j(i.note.text,s),i.type==="divider"&&X(s),i.type==="default"&&i.descriptions.length===0&&J(s,i),i.type==="default"&&i.descriptions.length>0&&Y(s,i);const g=s.node().getBBox();return c.width=g.width+2*t().state.padding,c.height=g.height+2*t().state.padding,c};let G=0;const K=function(e,i,o){const c=function(r){switch(r){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}};i.points=i.points.filter(r=>!Number.isNaN(r.y));const s=i.points,g=$().x(function(r){return r.x}).y(function(r){return r.y}).curve(v),p=e.append("path").attr("d",g(s)).attr("id","edge"+G).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replace(/\(/g,"\\("),a=a.replace(/\)/g,"\\)")),p.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),o.title!==void 0){const r=e.append("g").attr("class","stateLabel"),{x:y,y:x}=U.calcLabelPosition(i.points),d=T.getRows(o.title);let l=0;const m=[];let w=0,E=0;for(let u=0;u<=d.length;u++){const h=r.append("text").attr("text-anchor","middle").text(d[u]).attr("x",y).attr("y",x+l),f=h.node().getBBox();w=Math.max(w,f.width),E=Math.min(E,f.x),b.info(f.x,y,x+l),l===0&&(l=h.node().getBBox().height,b.info("Title height",l,x)),m.push(h)}let k=l*d.length;if(d.length>1){const u=(d.length-1)*l*.5;m.forEach((h,f)=>h.attr("y",x+f*l-u)),k=l*d.length}const n=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",y-w/2-t().state.padding/2).attr("y",x-k/2-t().state.padding/2-3.5).attr("width",w+t().state.padding).attr("height",k+t().state.padding),b.info(n)}G++};let B;const z={},Q=function(){},V=function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},D=function(e,i,o,c){B=t().state;const s=t().securityLevel;let g;s==="sandbox"&&(g=H("#i"+i));const p=s==="sandbox"?H(g.nodes()[0].contentDocument.body):H("body"),a=s==="sandbox"?g.nodes()[0].contentDocument:document;b.debug("Rendering diagram "+e);const r=p.select(`[id='${i}']`);V(r);const y=c.db.getRootDoc();A(y,r,void 0,!1,p,a,c);const x=B.padding,d=r.node().getBBox(),l=d.width+x*2,m=d.height+x*2,w=l*1.75;R(r,m,w,B.useMaxWidth),r.attr("viewBox",`${d.x-B.padding} ${d.y-B.padding} `+l+" "+m)},tt=e=>e?e.length*B.fontSizeFactor:1,A=(e,i,o,c,s,g,p)=>{const a=new C({compound:!0,multigraph:!0});let r,y=!0;for(r=0;r{const f=h.parentElement;let S=0,M=0;f&&(f.parentElement&&(S=f.parentElement.getBBox().width),M=parseInt(f.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",S-M-8)})):b.debug("No Node "+n+": "+JSON.stringify(a.node(n)))});let E=w.getBBox();a.edges().forEach(function(n){n!==void 0&&a.edge(n)!==void 0&&(b.debug("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(a.edge(n))),K(i,a.edge(n),a.edge(n).relation))}),E=w.getBBox();const k={id:o||"root",label:o||"root",width:0,height:0};return k.width=E.width+2*B.padding,k.height=E.height+2*B.padding,b.debug("Doc rendered",k,a),k},et={setConf:Q,draw:D},lt={parser:P,db:N,renderer:et,styles:W,init:e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,N.clear()}};export{lt as diagram}; +import{p as P,d as N,s as W}from"./styles-bbc3fe3b.uGyWsvZU.js";import{c as t,h as H,l as b,i as R,j as T,ap as v,z as U}from"./mermaid-934d9bea.JP-6_YN_.js";import{G as C,l as F}from"./layout.v3y_H6P2.js";import{l as $}from"./line.uArpYtMu.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const O=e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),X=e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),J=(e,i)=>{const o=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=o.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),o},Y=(e,i)=>{const o=function(l,m,w){const E=l.append("tspan").attr("x",2*t().state.padding).text(m);w||E.attr("dy",t().state.textHeight)},s=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),g=s.height,p=e.append("text").attr("x",t().state.padding).attr("y",g+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,r=!0;i.descriptions.forEach(function(l){a||(o(p,l,r),r=!1),a=!1});const y=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+g+t().state.dividerMargin/2).attr("y2",t().state.padding+g+t().state.dividerMargin/2).attr("class","descr-divider"),x=p.node().getBBox(),d=Math.max(x.width,s.width);return y.attr("x2",d+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",d+2*t().state.padding).attr("height",x.height+g+2*t().state.padding).attr("rx",t().state.radius),e},I=(e,i,o)=>{const c=t().state.padding,s=2*t().state.padding,g=e.node().getBBox(),p=g.width,a=g.x,r=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),x=r.node().getBBox().width+s;let d=Math.max(x,p);d===p&&(d=d+s);let l;const m=e.node().getBBox();i.doc,l=a-c,x>p&&(l=(p-d)/2+c),Math.abs(a-m.x)p&&(l=a-(x-p)/2);const w=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",l).attr("y",w).attr("class",o?"alt-composit":"composit").attr("width",d).attr("height",m.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),r.attr("x",l+c),x<=p&&r.attr("x",a+(d-s)/2-x/2+c),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",l).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",d).attr("height",m.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},_=e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),q=(e,i)=>{let o=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let s=o;o=c,c=s}return e.append("rect").style("stroke","black").style("fill","black").attr("width",o).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},Z=(e,i,o,c)=>{let s=0;const g=c.append("text");g.style("text-anchor","start"),g.attr("class","noteText");let p=e.replace(/\r\n/g,"
");p=p.replace(/\n/g,"
");const a=p.split(T.lineBreakRegex);let r=1.25*t().state.noteMargin;for(const y of a){const x=y.trim();if(x.length>0){const d=g.append("tspan");if(d.text(x),r===0){const l=d.node().getBBox();r+=l.height}s+=r,d.attr("x",i+t().state.noteMargin),d.attr("y",o+s+1.25*t().state.noteMargin)}}return{textWidth:g.node().getBBox().width,textHeight:s}},j=(e,i)=>{i.attr("class","state-note");const o=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:s,textHeight:g}=Z(e,0,0,c);return o.attr("height",g+2*t().state.noteMargin),o.attr("width",s+t().state.noteMargin*2),o},L=function(e,i){const o=i.id,c={id:o,label:i.id,width:0,height:0},s=e.append("g").attr("id",o).attr("class","stateGroup");i.type==="start"&&O(s),i.type==="end"&&_(s),(i.type==="fork"||i.type==="join")&&q(s,i),i.type==="note"&&j(i.note.text,s),i.type==="divider"&&X(s),i.type==="default"&&i.descriptions.length===0&&J(s,i),i.type==="default"&&i.descriptions.length>0&&Y(s,i);const g=s.node().getBBox();return c.width=g.width+2*t().state.padding,c.height=g.height+2*t().state.padding,c};let G=0;const K=function(e,i,o){const c=function(r){switch(r){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}};i.points=i.points.filter(r=>!Number.isNaN(r.y));const s=i.points,g=$().x(function(r){return r.x}).y(function(r){return r.y}).curve(v),p=e.append("path").attr("d",g(s)).attr("id","edge"+G).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replace(/\(/g,"\\("),a=a.replace(/\)/g,"\\)")),p.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),o.title!==void 0){const r=e.append("g").attr("class","stateLabel"),{x:y,y:x}=U.calcLabelPosition(i.points),d=T.getRows(o.title);let l=0;const m=[];let w=0,E=0;for(let u=0;u<=d.length;u++){const h=r.append("text").attr("text-anchor","middle").text(d[u]).attr("x",y).attr("y",x+l),f=h.node().getBBox();w=Math.max(w,f.width),E=Math.min(E,f.x),b.info(f.x,y,x+l),l===0&&(l=h.node().getBBox().height,b.info("Title height",l,x)),m.push(h)}let k=l*d.length;if(d.length>1){const u=(d.length-1)*l*.5;m.forEach((h,f)=>h.attr("y",x+f*l-u)),k=l*d.length}const n=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",y-w/2-t().state.padding/2).attr("y",x-k/2-t().state.padding/2-3.5).attr("width",w+t().state.padding).attr("height",k+t().state.padding),b.info(n)}G++};let B;const z={},Q=function(){},V=function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},D=function(e,i,o,c){B=t().state;const s=t().securityLevel;let g;s==="sandbox"&&(g=H("#i"+i));const p=s==="sandbox"?H(g.nodes()[0].contentDocument.body):H("body"),a=s==="sandbox"?g.nodes()[0].contentDocument:document;b.debug("Rendering diagram "+e);const r=p.select(`[id='${i}']`);V(r);const y=c.db.getRootDoc();A(y,r,void 0,!1,p,a,c);const x=B.padding,d=r.node().getBBox(),l=d.width+x*2,m=d.height+x*2,w=l*1.75;R(r,m,w,B.useMaxWidth),r.attr("viewBox",`${d.x-B.padding} ${d.y-B.padding} `+l+" "+m)},tt=e=>e?e.length*B.fontSizeFactor:1,A=(e,i,o,c,s,g,p)=>{const a=new C({compound:!0,multigraph:!0});let r,y=!0;for(r=0;r{const f=h.parentElement;let S=0,M=0;f&&(f.parentElement&&(S=f.parentElement.getBBox().width),M=parseInt(f.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",S-M-8)})):b.debug("No Node "+n+": "+JSON.stringify(a.node(n)))});let E=w.getBBox();a.edges().forEach(function(n){n!==void 0&&a.edge(n)!==void 0&&(b.debug("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(a.edge(n))),K(i,a.edge(n),a.edge(n).relation))}),E=w.getBBox();const k={id:o||"root",label:o||"root",width:0,height:0};return k.width=E.width+2*B.padding,k.height=E.height+2*B.padding,b.debug("Doc rendered",k,a),k},et={setConf:Q,draw:D},lt={parser:P,db:N,renderer:et,styles:W,init:e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,N.clear()}};export{lt as diagram}; diff --git a/_nuxt/stateDiagram-v2-2671c3d1.QaAPyhc0.js b/_nuxt/stateDiagram-v2-2671c3d1.mHpKQIIc.js similarity index 92% rename from _nuxt/stateDiagram-v2-2671c3d1.QaAPyhc0.js rename to _nuxt/stateDiagram-v2-2671c3d1.mHpKQIIc.js index 726c6d4503..db2df0c58e 100644 --- a/_nuxt/stateDiagram-v2-2671c3d1.QaAPyhc0.js +++ b/_nuxt/stateDiagram-v2-2671c3d1.mHpKQIIc.js @@ -1 +1 @@ -import{p as J,d as B,s as Q,D as H,a as X,S as Z,b as F,c as I}from"./styles-bbc3fe3b.3MtlFjLb.js";import{G as tt}from"./layout.cBG5TzxH.js";import{l as E,c as g,h as x,z as et,i as ot,j as w}from"./mermaid-934d9bea.GjCu814R.js";import{r as st}from"./index-67a42d7d.xm4RvesR.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./edges-80f1ebb6.h90W1bSR.js";import"./createText-aebacdfe.b7sMoTCr.js";import"./line.yVnlcbB_.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const h="rect",C="rectWithTitle",nt="start",it="end",ct="divider",rt="roundedWithTitle",lt="note",at="noteGroup",_="statediagram",dt="state",Et=`${_}-${dt}`,U="transition",St="note",Tt="note-edge",pt=`${U} ${Tt}`,_t=`${_}-${St}`,ut="cluster",Dt=`${_}-${ut}`,bt="cluster-alt",ft=`${_}-${bt}`,V="parent",Y="note",At="state",N="----",ht=`${N}${Y}`,M=`${N}${V}`,z="fill:none",W="fill: #333",m="c",j="text",q="normal";let y={},d=0;const yt=function(t){const n=Object.keys(t);for(const e of n)t[e]},gt=function(t,n){return n.db.extract(n.db.getRootDocV2()),n.db.getClasses()};function $t(t){return t==null?"":t.classes?t.classes.join(" "):""}function R(t="",n=0,e="",i=N){const c=e!==null&&e.length>0?`${i}${e}`:"";return`${At}-${t}${c}-${n}`}const A=(t,n,e,i,c,r)=>{const o=e.id,u=$t(i[o]);if(o!=="root"){let T=h;e.start===!0&&(T=nt),e.start===!1&&(T=it),e.type!==H&&(T=e.type),y[o]||(y[o]={id:o,shape:T,description:w.sanitizeText(o,g()),classes:`${u} ${Et}`});const s=y[o];e.description&&(Array.isArray(s.description)?(s.shape=C,s.description.push(e.description)):s.description.length>0?(s.shape=C,s.description===o?s.description=[e.description]:s.description=[s.description,e.description]):(s.shape=h,s.description=e.description),s.description=w.sanitizeTextOrArray(s.description,g())),s.description.length===1&&s.shape===C&&(s.shape=h),!s.type&&e.doc&&(E.info("Setting cluster for ",o,G(e)),s.type="group",s.dir=G(e),s.shape=e.type===X?ct:rt,s.classes=s.classes+" "+Dt+" "+(r?ft:""));const p={labelStyle:"",shape:s.shape,labelText:s.description,classes:s.classes,style:"",id:o,dir:s.dir,domId:R(o,d),type:s.type,padding:15};if(p.centerLabel=!0,e.note){const l={labelStyle:"",shape:lt,labelText:e.note.text,classes:_t,style:"",id:o+ht+"-"+d,domId:R(o,d,Y),type:s.type,padding:15},a={labelStyle:"",shape:at,labelText:e.note.text,classes:s.classes,style:"",id:o+M,domId:R(o,d,V),type:"group",padding:0};d++;const D=o+M;t.setNode(D,a),t.setNode(l.id,l),t.setNode(o,p),t.setParent(o,D),t.setParent(l.id,D);let S=o,b=l.id;e.note.position==="left of"&&(S=l.id,b=o),t.setEdge(S,b,{arrowhead:"none",arrowType:"",style:z,labelStyle:"",classes:pt,arrowheadStyle:W,labelpos:m,labelType:j,thickness:q})}else t.setNode(o,p)}n&&n.id!=="root"&&(E.trace("Setting node ",o," to be child of its parent ",n.id),t.setParent(o,n.id)),e.doc&&(E.trace("Adding nodes children "),xt(t,e,e.doc,i,c,!r))},xt=(t,n,e,i,c,r)=>{E.trace("items",e),e.forEach(o=>{switch(o.stmt){case F:A(t,n,o,i,c,r);break;case H:A(t,n,o,i,c,r);break;case Z:{A(t,n,o.state1,i,c,r),A(t,n,o.state2,i,c,r);const u={id:"edge"+d,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:z,labelStyle:"",label:w.sanitizeText(o.description,g()),arrowheadStyle:W,labelpos:m,labelType:j,thickness:q,classes:U};t.setEdge(o.state1.id,o.state2.id,u,d),d++}break}})},G=(t,n=I)=>{let e=n;if(t.doc)for(let i=0;i{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,B.clear()}};export{Ut as diagram}; +import{p as J,d as B,s as Q,D as H,a as X,S as Z,b as F,c as I}from"./styles-bbc3fe3b.uGyWsvZU.js";import{G as tt}from"./layout.v3y_H6P2.js";import{l as E,c as g,h as x,z as et,i as ot,j as w}from"./mermaid-934d9bea.JP-6_YN_.js";import{r as st}from"./index-67a42d7d.k58ohfnG.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./edges-80f1ebb6.gtortKGL.js";import"./createText-aebacdfe.QPUQ3eAz.js";import"./line.uArpYtMu.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";const h="rect",C="rectWithTitle",nt="start",it="end",ct="divider",rt="roundedWithTitle",lt="note",at="noteGroup",_="statediagram",dt="state",Et=`${_}-${dt}`,U="transition",St="note",Tt="note-edge",pt=`${U} ${Tt}`,_t=`${_}-${St}`,ut="cluster",Dt=`${_}-${ut}`,bt="cluster-alt",ft=`${_}-${bt}`,V="parent",Y="note",At="state",N="----",ht=`${N}${Y}`,M=`${N}${V}`,z="fill:none",W="fill: #333",m="c",j="text",q="normal";let y={},d=0;const yt=function(t){const n=Object.keys(t);for(const e of n)t[e]},gt=function(t,n){return n.db.extract(n.db.getRootDocV2()),n.db.getClasses()};function $t(t){return t==null?"":t.classes?t.classes.join(" "):""}function R(t="",n=0,e="",i=N){const c=e!==null&&e.length>0?`${i}${e}`:"";return`${At}-${t}${c}-${n}`}const A=(t,n,e,i,c,r)=>{const o=e.id,u=$t(i[o]);if(o!=="root"){let T=h;e.start===!0&&(T=nt),e.start===!1&&(T=it),e.type!==H&&(T=e.type),y[o]||(y[o]={id:o,shape:T,description:w.sanitizeText(o,g()),classes:`${u} ${Et}`});const s=y[o];e.description&&(Array.isArray(s.description)?(s.shape=C,s.description.push(e.description)):s.description.length>0?(s.shape=C,s.description===o?s.description=[e.description]:s.description=[s.description,e.description]):(s.shape=h,s.description=e.description),s.description=w.sanitizeTextOrArray(s.description,g())),s.description.length===1&&s.shape===C&&(s.shape=h),!s.type&&e.doc&&(E.info("Setting cluster for ",o,G(e)),s.type="group",s.dir=G(e),s.shape=e.type===X?ct:rt,s.classes=s.classes+" "+Dt+" "+(r?ft:""));const p={labelStyle:"",shape:s.shape,labelText:s.description,classes:s.classes,style:"",id:o,dir:s.dir,domId:R(o,d),type:s.type,padding:15};if(p.centerLabel=!0,e.note){const l={labelStyle:"",shape:lt,labelText:e.note.text,classes:_t,style:"",id:o+ht+"-"+d,domId:R(o,d,Y),type:s.type,padding:15},a={labelStyle:"",shape:at,labelText:e.note.text,classes:s.classes,style:"",id:o+M,domId:R(o,d,V),type:"group",padding:0};d++;const D=o+M;t.setNode(D,a),t.setNode(l.id,l),t.setNode(o,p),t.setParent(o,D),t.setParent(l.id,D);let S=o,b=l.id;e.note.position==="left of"&&(S=l.id,b=o),t.setEdge(S,b,{arrowhead:"none",arrowType:"",style:z,labelStyle:"",classes:pt,arrowheadStyle:W,labelpos:m,labelType:j,thickness:q})}else t.setNode(o,p)}n&&n.id!=="root"&&(E.trace("Setting node ",o," to be child of its parent ",n.id),t.setParent(o,n.id)),e.doc&&(E.trace("Adding nodes children "),xt(t,e,e.doc,i,c,!r))},xt=(t,n,e,i,c,r)=>{E.trace("items",e),e.forEach(o=>{switch(o.stmt){case F:A(t,n,o,i,c,r);break;case H:A(t,n,o,i,c,r);break;case Z:{A(t,n,o.state1,i,c,r),A(t,n,o.state2,i,c,r);const u={id:"edge"+d,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:z,labelStyle:"",label:w.sanitizeText(o.description,g()),arrowheadStyle:W,labelpos:m,labelType:j,thickness:q,classes:U};t.setEdge(o.state1.id,o.state2.id,u,d),d++}break}})},G=(t,n=I)=>{let e=n;if(t.doc)for(let i=0;i{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,B.clear()}};export{Ut as diagram}; diff --git a/_nuxt/styles-4ba6ed67.fA2HbVXa.js b/_nuxt/styles-4ba6ed67.oBMPGM8a.js similarity index 99% rename from _nuxt/styles-4ba6ed67.fA2HbVXa.js rename to _nuxt/styles-4ba6ed67.oBMPGM8a.js index 094806eac6..4027187910 100644 --- a/_nuxt/styles-4ba6ed67.fA2HbVXa.js +++ b/_nuxt/styles-4ba6ed67.oBMPGM8a.js @@ -1,4 +1,4 @@ -import{s as Xe,g as We,a as qe,b as He,c as F,x as Je,y as Ze,j as v,A as $e,l as et,z as Pe,h as U,d as tt,as as ye}from"./mermaid-934d9bea.GjCu814R.js";var De=function(){var e=function(L,u,a,o){for(a=a||{},o=L.length;o--;a[L[o]]=u);return a},n=[1,16],r=[1,17],h=[1,18],l=[1,37],A=[1,38],g=[1,24],D=[1,22],B=[1,23],_=[1,29],ne=[1,30],ue=[1,31],re=[1,32],ae=[1,33],le=[1,34],ce=[1,25],oe=[1,26],he=[1,27],Ae=[1,28],d=[1,42],E=[1,39],C=[1,40],m=[1,41],k=[1,43],pe=[1,9],c=[1,8,9],Y=[1,54],K=[1,55],j=[1,56],Q=[1,57],X=[1,58],fe=[1,59],de=[1,60],W=[1,8,9,38],Ne=[1,71],V=[1,8,9,12,13,21,36,38,41,58,59,60,61,62,63,64,69,71],q=[1,8,9,12,13,19,21,36,38,41,45,58,59,60,61,62,63,64,69,71,84,86,87,88,89],H=[13,84,86,87,88,89],M=[13,63,64,84,86,87,88,89],ve=[13,58,59,60,61,62,84,86,87,88,89],Ee=[1,90],Ce=[1,8,9,36,38,41],J=[1,8,9,21],me={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,cssClassStatement:27,noteStatement:28,direction:29,acc_title:30,acc_title_value:31,acc_descr:32,acc_descr_value:33,acc_descr_multiline_value:34,namespaceIdentifier:35,STRUCT_START:36,classStatements:37,STRUCT_STOP:38,NAMESPACE:39,classIdentifier:40,STYLE_SEPARATOR:41,members:42,CLASS:43,ANNOTATION_START:44,ANNOTATION_END:45,MEMBER:46,SEPARATOR:47,relation:48,NOTE_FOR:49,noteText:50,NOTE:51,direction_tb:52,direction_bt:53,direction_rl:54,direction_lr:55,relationType:56,lineType:57,AGGREGATION:58,EXTENSION:59,COMPOSITION:60,DEPENDENCY:61,LOLLIPOP:62,LINE:63,DOTTED_LINE:64,CALLBACK:65,LINK:66,LINK_TARGET:67,CLICK:68,CALLBACK_NAME:69,CALLBACK_ARGS:70,HREF:71,CSSCLASS:72,commentToken:73,textToken:74,graphCodeTokens:75,textNoTagsToken:76,TAGSTART:77,TAGEND:78,"==":79,"--":80,PCT:81,DEFAULT:82,SPACE:83,MINUS:84,keywords:85,UNICODE_TEXT:86,NUM:87,ALPHA:88,BQUOTE_STR:89,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",30:"acc_title",31:"acc_title_value",32:"acc_descr",33:"acc_descr_value",34:"acc_descr_multiline_value",36:"STRUCT_START",38:"STRUCT_STOP",39:"NAMESPACE",41:"STYLE_SEPARATOR",43:"CLASS",44:"ANNOTATION_START",45:"ANNOTATION_END",46:"MEMBER",47:"SEPARATOR",49:"NOTE_FOR",51:"NOTE",52:"direction_tb",53:"direction_bt",54:"direction_rl",55:"direction_lr",58:"AGGREGATION",59:"EXTENSION",60:"COMPOSITION",61:"DEPENDENCY",62:"LOLLIPOP",63:"LINE",64:"DOTTED_LINE",65:"CALLBACK",66:"LINK",67:"LINK_TARGET",68:"CLICK",69:"CALLBACK_NAME",70:"CALLBACK_ARGS",71:"HREF",72:"CSSCLASS",75:"graphCodeTokens",77:"TAGSTART",78:"TAGEND",79:"==",80:"--",81:"PCT",82:"DEFAULT",83:"SPACE",84:"MINUS",85:"keywords",86:"UNICODE_TEXT",87:"NUM",88:"ALPHA",89:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[35,2],[37,1],[37,2],[37,3],[23,1],[23,3],[23,4],[23,6],[40,2],[40,3],[25,4],[42,1],[42,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[28,3],[28,2],[29,1],[29,1],[29,1],[29,1],[48,3],[48,2],[48,2],[48,1],[56,1],[56,1],[56,1],[56,1],[56,1],[57,1],[57,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[73,1],[73,1],[74,1],[74,1],[74,1],[74,1],[74,1],[74,1],[74,1],[76,1],[76,1],[76,1],[76,1],[16,1],[16,1],[16,1],[16,1],[18,1],[50,1]],performAction:function(u,a,o,i,p,t,G){var s=t.length-1;switch(p){case 8:this.$=t[s-1];break;case 9:case 11:case 12:this.$=t[s];break;case 10:case 13:this.$=t[s-1]+t[s];break;case 14:case 15:this.$=t[s-1]+"~"+t[s]+"~";break;case 16:i.addRelation(t[s]);break;case 17:t[s-1].title=i.cleanupLabel(t[s]),i.addRelation(t[s-1]);break;case 26:this.$=t[s].trim(),i.setAccTitle(this.$);break;case 27:case 28:this.$=t[s].trim(),i.setAccDescription(this.$);break;case 29:i.addClassesToNamespace(t[s-3],t[s-1]);break;case 30:i.addClassesToNamespace(t[s-4],t[s-1]);break;case 31:this.$=t[s],i.addNamespace(t[s]);break;case 32:this.$=[t[s]];break;case 33:this.$=[t[s-1]];break;case 34:t[s].unshift(t[s-2]),this.$=t[s];break;case 36:i.setCssClass(t[s-2],t[s]);break;case 37:i.addMembers(t[s-3],t[s-1]);break;case 38:i.setCssClass(t[s-5],t[s-3]),i.addMembers(t[s-5],t[s-1]);break;case 39:this.$=t[s],i.addClass(t[s]);break;case 40:this.$=t[s-1],i.addClass(t[s-1]),i.setClassLabel(t[s-1],t[s]);break;case 41:i.addAnnotation(t[s],t[s-2]);break;case 42:this.$=[t[s]];break;case 43:t[s].push(t[s-1]),this.$=t[s];break;case 44:break;case 45:i.addMember(t[s-1],i.cleanupLabel(t[s]));break;case 46:break;case 47:break;case 48:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 49:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 50:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 51:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 52:i.addNote(t[s],t[s-1]);break;case 53:i.addNote(t[s]);break;case 54:i.setDirection("TB");break;case 55:i.setDirection("BT");break;case 56:i.setDirection("RL");break;case 57:i.setDirection("LR");break;case 58:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 59:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 60:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 61:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 62:this.$=i.relationType.AGGREGATION;break;case 63:this.$=i.relationType.EXTENSION;break;case 64:this.$=i.relationType.COMPOSITION;break;case 65:this.$=i.relationType.DEPENDENCY;break;case 66:this.$=i.relationType.LOLLIPOP;break;case 67:this.$=i.lineType.LINE;break;case 68:this.$=i.lineType.DOTTED_LINE;break;case 69:case 75:this.$=t[s-2],i.setClickEvent(t[s-1],t[s]);break;case 70:case 76:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 71:this.$=t[s-2],i.setLink(t[s-1],t[s]);break;case 72:this.$=t[s-3],i.setLink(t[s-2],t[s-1],t[s]);break;case 73:this.$=t[s-3],i.setLink(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 74:this.$=t[s-4],i.setLink(t[s-3],t[s-2],t[s]),i.setTooltip(t[s-3],t[s-1]);break;case 77:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1],t[s]);break;case 78:this.$=t[s-4],i.setClickEvent(t[s-3],t[s-2],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 79:this.$=t[s-3],i.setLink(t[s-2],t[s]);break;case 80:this.$=t[s-4],i.setLink(t[s-3],t[s-1],t[s]);break;case 81:this.$=t[s-4],i.setLink(t[s-3],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 82:this.$=t[s-5],i.setLink(t[s-4],t[s-2],t[s]),i.setTooltip(t[s-4],t[s-1]);break;case 83:i.setCssClass(t[s-1],t[s]);break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:35,17:19,18:36,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:n,32:r,34:h,35:20,39:l,40:21,43:A,44:g,46:D,47:B,49:_,51:ne,52:ue,53:re,54:ae,55:le,65:ce,66:oe,68:he,72:Ae,84:d,86:E,87:C,88:m,89:k},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(pe,[2,5],{8:[1,44]}),{8:[1,45]},e(c,[2,16],{21:[1,46]}),e(c,[2,18]),e(c,[2,19]),e(c,[2,20]),e(c,[2,21]),e(c,[2,22]),e(c,[2,23]),e(c,[2,24]),e(c,[2,25]),{31:[1,47]},{33:[1,48]},e(c,[2,28]),e(c,[2,44],{48:49,56:52,57:53,13:[1,50],21:[1,51],58:Y,59:K,60:j,61:Q,62:X,63:fe,64:de}),{36:[1,61]},e(W,[2,35],{36:[1,63],41:[1,62]}),e(c,[2,46]),e(c,[2,47]),{16:64,84:d,86:E,87:C,88:m},{16:35,17:65,18:36,84:d,86:E,87:C,88:m,89:k},{16:35,17:66,18:36,84:d,86:E,87:C,88:m,89:k},{16:35,17:67,18:36,84:d,86:E,87:C,88:m,89:k},{13:[1,68]},{16:35,17:69,18:36,84:d,86:E,87:C,88:m,89:k},{13:Ne,50:70},e(c,[2,54]),e(c,[2,55]),e(c,[2,56]),e(c,[2,57]),e(V,[2,11],{16:35,18:36,17:72,19:[1,73],84:d,86:E,87:C,88:m,89:k}),e(V,[2,12],{19:[1,74]}),{15:75,16:76,84:d,86:E,87:C,88:m},{16:35,17:77,18:36,84:d,86:E,87:C,88:m,89:k},e(q,[2,97]),e(q,[2,98]),e(q,[2,99]),e(q,[2,100]),e([1,8,9,12,13,19,21,36,38,41,58,59,60,61,62,63,64,69,71],[2,101]),e(pe,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,17:19,35:20,40:21,16:35,18:36,5:78,30:n,32:r,34:h,39:l,43:A,44:g,46:D,47:B,49:_,51:ne,52:ue,53:re,54:ae,55:le,65:ce,66:oe,68:he,72:Ae,84:d,86:E,87:C,88:m,89:k}),{5:79,10:5,16:35,17:19,18:36,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:n,32:r,34:h,35:20,39:l,40:21,43:A,44:g,46:D,47:B,49:_,51:ne,52:ue,53:re,54:ae,55:le,65:ce,66:oe,68:he,72:Ae,84:d,86:E,87:C,88:m,89:k},e(c,[2,17]),e(c,[2,26]),e(c,[2,27]),{13:[1,81],16:35,17:80,18:36,84:d,86:E,87:C,88:m,89:k},{48:82,56:52,57:53,58:Y,59:K,60:j,61:Q,62:X,63:fe,64:de},e(c,[2,45]),{57:83,63:fe,64:de},e(H,[2,61],{56:84,58:Y,59:K,60:j,61:Q,62:X}),e(M,[2,62]),e(M,[2,63]),e(M,[2,64]),e(M,[2,65]),e(M,[2,66]),e(ve,[2,67]),e(ve,[2,68]),{8:[1,86],23:87,37:85,40:21,43:A},{16:88,84:d,86:E,87:C,88:m},{42:89,46:Ee},{45:[1,91]},{13:[1,92]},{13:[1,93]},{69:[1,94],71:[1,95]},{16:96,84:d,86:E,87:C,88:m},{13:Ne,50:97},e(c,[2,53]),e(c,[2,102]),e(V,[2,13]),e(V,[2,14]),e(V,[2,15]),{36:[2,31]},{15:98,16:76,36:[2,9],84:d,86:E,87:C,88:m},e(Ce,[2,39],{11:99,12:[1,100]}),e(pe,[2,7]),{9:[1,101]},e(J,[2,48]),{16:35,17:102,18:36,84:d,86:E,87:C,88:m,89:k},{13:[1,104],16:35,17:103,18:36,84:d,86:E,87:C,88:m,89:k},e(H,[2,60],{56:105,58:Y,59:K,60:j,61:Q,62:X}),e(H,[2,59]),{38:[1,106]},{23:87,37:107,40:21,43:A},{8:[1,108],38:[2,32]},e(W,[2,36],{36:[1,109]}),{38:[1,110]},{38:[2,42],42:111,46:Ee},{16:35,17:112,18:36,84:d,86:E,87:C,88:m,89:k},e(c,[2,69],{13:[1,113]}),e(c,[2,71],{13:[1,115],67:[1,114]}),e(c,[2,75],{13:[1,116],70:[1,117]}),{13:[1,118]},e(c,[2,83]),e(c,[2,52]),{36:[2,10]},e(Ce,[2,40]),{13:[1,119]},{1:[2,4]},e(J,[2,50]),e(J,[2,49]),{16:35,17:120,18:36,84:d,86:E,87:C,88:m,89:k},e(H,[2,58]),e(c,[2,29]),{38:[1,121]},{23:87,37:122,38:[2,33],40:21,43:A},{42:123,46:Ee},e(W,[2,37]),{38:[2,43]},e(c,[2,41]),e(c,[2,70]),e(c,[2,72]),e(c,[2,73],{67:[1,124]}),e(c,[2,76]),e(c,[2,77],{13:[1,125]}),e(c,[2,79],{13:[1,127],67:[1,126]}),{14:[1,128]},e(J,[2,51]),e(c,[2,30]),{38:[2,34]},{38:[1,129]},e(c,[2,74]),e(c,[2,78]),e(c,[2,80]),e(c,[2,81],{67:[1,130]}),e(Ce,[2,8]),e(W,[2,38]),e(c,[2,82])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],75:[2,31],98:[2,10],101:[2,4],111:[2,43],122:[2,34]},parseError:function(u,a){if(a.recoverable)this.trace(u);else{var o=new Error(u);throw o.hash=a,o}},parse:function(u){var a=this,o=[0],i=[],p=[null],t=[],G=this.table,s="",Z=0,Le=0,Ye=2,xe=1,Ke=t.slice.call(arguments,1),b=Object.create(this.lexer),I={yy:{}};for(var ge in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ge)&&(I.yy[ge]=this.yy[ge]);b.setInput(u,I.yy),I.yy.lexer=b,I.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var ke=b.yylloc;t.push(ke);var je=b.options&&b.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Qe(){var N;return N=i.pop()||b.lex()||xe,typeof N!="number"&&(N instanceof Array&&(i=N,N=i.pop()),N=a.symbols_[N]||N),N}for(var T,O,y,Te,w={},$,S,Ie,ee;;){if(O=o[o.length-1],this.defaultActions[O]?y=this.defaultActions[O]:((T===null||typeof T>"u")&&(T=Qe()),y=G[O]&&G[O][T]),typeof y>"u"||!y.length||!y[0]){var Fe="";ee=[];for($ in G[O])this.terminals_[$]&&$>Ye&&ee.push("'"+this.terminals_[$]+"'");b.showPosition?Fe="Parse error on line "+(Z+1)+`: +import{s as Xe,g as We,a as qe,b as He,c as F,x as Je,y as Ze,j as v,A as $e,l as et,z as Pe,h as U,d as tt,as as ye}from"./mermaid-934d9bea.JP-6_YN_.js";var De=function(){var e=function(L,u,a,o){for(a=a||{},o=L.length;o--;a[L[o]]=u);return a},n=[1,16],r=[1,17],h=[1,18],l=[1,37],A=[1,38],g=[1,24],D=[1,22],B=[1,23],_=[1,29],ne=[1,30],ue=[1,31],re=[1,32],ae=[1,33],le=[1,34],ce=[1,25],oe=[1,26],he=[1,27],Ae=[1,28],d=[1,42],E=[1,39],C=[1,40],m=[1,41],k=[1,43],pe=[1,9],c=[1,8,9],Y=[1,54],K=[1,55],j=[1,56],Q=[1,57],X=[1,58],fe=[1,59],de=[1,60],W=[1,8,9,38],Ne=[1,71],V=[1,8,9,12,13,21,36,38,41,58,59,60,61,62,63,64,69,71],q=[1,8,9,12,13,19,21,36,38,41,45,58,59,60,61,62,63,64,69,71,84,86,87,88,89],H=[13,84,86,87,88,89],M=[13,63,64,84,86,87,88,89],ve=[13,58,59,60,61,62,84,86,87,88,89],Ee=[1,90],Ce=[1,8,9,36,38,41],J=[1,8,9,21],me={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,cssClassStatement:27,noteStatement:28,direction:29,acc_title:30,acc_title_value:31,acc_descr:32,acc_descr_value:33,acc_descr_multiline_value:34,namespaceIdentifier:35,STRUCT_START:36,classStatements:37,STRUCT_STOP:38,NAMESPACE:39,classIdentifier:40,STYLE_SEPARATOR:41,members:42,CLASS:43,ANNOTATION_START:44,ANNOTATION_END:45,MEMBER:46,SEPARATOR:47,relation:48,NOTE_FOR:49,noteText:50,NOTE:51,direction_tb:52,direction_bt:53,direction_rl:54,direction_lr:55,relationType:56,lineType:57,AGGREGATION:58,EXTENSION:59,COMPOSITION:60,DEPENDENCY:61,LOLLIPOP:62,LINE:63,DOTTED_LINE:64,CALLBACK:65,LINK:66,LINK_TARGET:67,CLICK:68,CALLBACK_NAME:69,CALLBACK_ARGS:70,HREF:71,CSSCLASS:72,commentToken:73,textToken:74,graphCodeTokens:75,textNoTagsToken:76,TAGSTART:77,TAGEND:78,"==":79,"--":80,PCT:81,DEFAULT:82,SPACE:83,MINUS:84,keywords:85,UNICODE_TEXT:86,NUM:87,ALPHA:88,BQUOTE_STR:89,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",30:"acc_title",31:"acc_title_value",32:"acc_descr",33:"acc_descr_value",34:"acc_descr_multiline_value",36:"STRUCT_START",38:"STRUCT_STOP",39:"NAMESPACE",41:"STYLE_SEPARATOR",43:"CLASS",44:"ANNOTATION_START",45:"ANNOTATION_END",46:"MEMBER",47:"SEPARATOR",49:"NOTE_FOR",51:"NOTE",52:"direction_tb",53:"direction_bt",54:"direction_rl",55:"direction_lr",58:"AGGREGATION",59:"EXTENSION",60:"COMPOSITION",61:"DEPENDENCY",62:"LOLLIPOP",63:"LINE",64:"DOTTED_LINE",65:"CALLBACK",66:"LINK",67:"LINK_TARGET",68:"CLICK",69:"CALLBACK_NAME",70:"CALLBACK_ARGS",71:"HREF",72:"CSSCLASS",75:"graphCodeTokens",77:"TAGSTART",78:"TAGEND",79:"==",80:"--",81:"PCT",82:"DEFAULT",83:"SPACE",84:"MINUS",85:"keywords",86:"UNICODE_TEXT",87:"NUM",88:"ALPHA",89:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[35,2],[37,1],[37,2],[37,3],[23,1],[23,3],[23,4],[23,6],[40,2],[40,3],[25,4],[42,1],[42,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[28,3],[28,2],[29,1],[29,1],[29,1],[29,1],[48,3],[48,2],[48,2],[48,1],[56,1],[56,1],[56,1],[56,1],[56,1],[57,1],[57,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[73,1],[73,1],[74,1],[74,1],[74,1],[74,1],[74,1],[74,1],[74,1],[76,1],[76,1],[76,1],[76,1],[16,1],[16,1],[16,1],[16,1],[18,1],[50,1]],performAction:function(u,a,o,i,p,t,G){var s=t.length-1;switch(p){case 8:this.$=t[s-1];break;case 9:case 11:case 12:this.$=t[s];break;case 10:case 13:this.$=t[s-1]+t[s];break;case 14:case 15:this.$=t[s-1]+"~"+t[s]+"~";break;case 16:i.addRelation(t[s]);break;case 17:t[s-1].title=i.cleanupLabel(t[s]),i.addRelation(t[s-1]);break;case 26:this.$=t[s].trim(),i.setAccTitle(this.$);break;case 27:case 28:this.$=t[s].trim(),i.setAccDescription(this.$);break;case 29:i.addClassesToNamespace(t[s-3],t[s-1]);break;case 30:i.addClassesToNamespace(t[s-4],t[s-1]);break;case 31:this.$=t[s],i.addNamespace(t[s]);break;case 32:this.$=[t[s]];break;case 33:this.$=[t[s-1]];break;case 34:t[s].unshift(t[s-2]),this.$=t[s];break;case 36:i.setCssClass(t[s-2],t[s]);break;case 37:i.addMembers(t[s-3],t[s-1]);break;case 38:i.setCssClass(t[s-5],t[s-3]),i.addMembers(t[s-5],t[s-1]);break;case 39:this.$=t[s],i.addClass(t[s]);break;case 40:this.$=t[s-1],i.addClass(t[s-1]),i.setClassLabel(t[s-1],t[s]);break;case 41:i.addAnnotation(t[s],t[s-2]);break;case 42:this.$=[t[s]];break;case 43:t[s].push(t[s-1]),this.$=t[s];break;case 44:break;case 45:i.addMember(t[s-1],i.cleanupLabel(t[s]));break;case 46:break;case 47:break;case 48:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 49:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 50:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 51:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 52:i.addNote(t[s],t[s-1]);break;case 53:i.addNote(t[s]);break;case 54:i.setDirection("TB");break;case 55:i.setDirection("BT");break;case 56:i.setDirection("RL");break;case 57:i.setDirection("LR");break;case 58:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 59:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 60:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 61:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 62:this.$=i.relationType.AGGREGATION;break;case 63:this.$=i.relationType.EXTENSION;break;case 64:this.$=i.relationType.COMPOSITION;break;case 65:this.$=i.relationType.DEPENDENCY;break;case 66:this.$=i.relationType.LOLLIPOP;break;case 67:this.$=i.lineType.LINE;break;case 68:this.$=i.lineType.DOTTED_LINE;break;case 69:case 75:this.$=t[s-2],i.setClickEvent(t[s-1],t[s]);break;case 70:case 76:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 71:this.$=t[s-2],i.setLink(t[s-1],t[s]);break;case 72:this.$=t[s-3],i.setLink(t[s-2],t[s-1],t[s]);break;case 73:this.$=t[s-3],i.setLink(t[s-2],t[s-1]),i.setTooltip(t[s-2],t[s]);break;case 74:this.$=t[s-4],i.setLink(t[s-3],t[s-2],t[s]),i.setTooltip(t[s-3],t[s-1]);break;case 77:this.$=t[s-3],i.setClickEvent(t[s-2],t[s-1],t[s]);break;case 78:this.$=t[s-4],i.setClickEvent(t[s-3],t[s-2],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 79:this.$=t[s-3],i.setLink(t[s-2],t[s]);break;case 80:this.$=t[s-4],i.setLink(t[s-3],t[s-1],t[s]);break;case 81:this.$=t[s-4],i.setLink(t[s-3],t[s-1]),i.setTooltip(t[s-3],t[s]);break;case 82:this.$=t[s-5],i.setLink(t[s-4],t[s-2],t[s]),i.setTooltip(t[s-4],t[s-1]);break;case 83:i.setCssClass(t[s-1],t[s]);break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:35,17:19,18:36,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:n,32:r,34:h,35:20,39:l,40:21,43:A,44:g,46:D,47:B,49:_,51:ne,52:ue,53:re,54:ae,55:le,65:ce,66:oe,68:he,72:Ae,84:d,86:E,87:C,88:m,89:k},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(pe,[2,5],{8:[1,44]}),{8:[1,45]},e(c,[2,16],{21:[1,46]}),e(c,[2,18]),e(c,[2,19]),e(c,[2,20]),e(c,[2,21]),e(c,[2,22]),e(c,[2,23]),e(c,[2,24]),e(c,[2,25]),{31:[1,47]},{33:[1,48]},e(c,[2,28]),e(c,[2,44],{48:49,56:52,57:53,13:[1,50],21:[1,51],58:Y,59:K,60:j,61:Q,62:X,63:fe,64:de}),{36:[1,61]},e(W,[2,35],{36:[1,63],41:[1,62]}),e(c,[2,46]),e(c,[2,47]),{16:64,84:d,86:E,87:C,88:m},{16:35,17:65,18:36,84:d,86:E,87:C,88:m,89:k},{16:35,17:66,18:36,84:d,86:E,87:C,88:m,89:k},{16:35,17:67,18:36,84:d,86:E,87:C,88:m,89:k},{13:[1,68]},{16:35,17:69,18:36,84:d,86:E,87:C,88:m,89:k},{13:Ne,50:70},e(c,[2,54]),e(c,[2,55]),e(c,[2,56]),e(c,[2,57]),e(V,[2,11],{16:35,18:36,17:72,19:[1,73],84:d,86:E,87:C,88:m,89:k}),e(V,[2,12],{19:[1,74]}),{15:75,16:76,84:d,86:E,87:C,88:m},{16:35,17:77,18:36,84:d,86:E,87:C,88:m,89:k},e(q,[2,97]),e(q,[2,98]),e(q,[2,99]),e(q,[2,100]),e([1,8,9,12,13,19,21,36,38,41,58,59,60,61,62,63,64,69,71],[2,101]),e(pe,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,17:19,35:20,40:21,16:35,18:36,5:78,30:n,32:r,34:h,39:l,43:A,44:g,46:D,47:B,49:_,51:ne,52:ue,53:re,54:ae,55:le,65:ce,66:oe,68:he,72:Ae,84:d,86:E,87:C,88:m,89:k}),{5:79,10:5,16:35,17:19,18:36,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:n,32:r,34:h,35:20,39:l,40:21,43:A,44:g,46:D,47:B,49:_,51:ne,52:ue,53:re,54:ae,55:le,65:ce,66:oe,68:he,72:Ae,84:d,86:E,87:C,88:m,89:k},e(c,[2,17]),e(c,[2,26]),e(c,[2,27]),{13:[1,81],16:35,17:80,18:36,84:d,86:E,87:C,88:m,89:k},{48:82,56:52,57:53,58:Y,59:K,60:j,61:Q,62:X,63:fe,64:de},e(c,[2,45]),{57:83,63:fe,64:de},e(H,[2,61],{56:84,58:Y,59:K,60:j,61:Q,62:X}),e(M,[2,62]),e(M,[2,63]),e(M,[2,64]),e(M,[2,65]),e(M,[2,66]),e(ve,[2,67]),e(ve,[2,68]),{8:[1,86],23:87,37:85,40:21,43:A},{16:88,84:d,86:E,87:C,88:m},{42:89,46:Ee},{45:[1,91]},{13:[1,92]},{13:[1,93]},{69:[1,94],71:[1,95]},{16:96,84:d,86:E,87:C,88:m},{13:Ne,50:97},e(c,[2,53]),e(c,[2,102]),e(V,[2,13]),e(V,[2,14]),e(V,[2,15]),{36:[2,31]},{15:98,16:76,36:[2,9],84:d,86:E,87:C,88:m},e(Ce,[2,39],{11:99,12:[1,100]}),e(pe,[2,7]),{9:[1,101]},e(J,[2,48]),{16:35,17:102,18:36,84:d,86:E,87:C,88:m,89:k},{13:[1,104],16:35,17:103,18:36,84:d,86:E,87:C,88:m,89:k},e(H,[2,60],{56:105,58:Y,59:K,60:j,61:Q,62:X}),e(H,[2,59]),{38:[1,106]},{23:87,37:107,40:21,43:A},{8:[1,108],38:[2,32]},e(W,[2,36],{36:[1,109]}),{38:[1,110]},{38:[2,42],42:111,46:Ee},{16:35,17:112,18:36,84:d,86:E,87:C,88:m,89:k},e(c,[2,69],{13:[1,113]}),e(c,[2,71],{13:[1,115],67:[1,114]}),e(c,[2,75],{13:[1,116],70:[1,117]}),{13:[1,118]},e(c,[2,83]),e(c,[2,52]),{36:[2,10]},e(Ce,[2,40]),{13:[1,119]},{1:[2,4]},e(J,[2,50]),e(J,[2,49]),{16:35,17:120,18:36,84:d,86:E,87:C,88:m,89:k},e(H,[2,58]),e(c,[2,29]),{38:[1,121]},{23:87,37:122,38:[2,33],40:21,43:A},{42:123,46:Ee},e(W,[2,37]),{38:[2,43]},e(c,[2,41]),e(c,[2,70]),e(c,[2,72]),e(c,[2,73],{67:[1,124]}),e(c,[2,76]),e(c,[2,77],{13:[1,125]}),e(c,[2,79],{13:[1,127],67:[1,126]}),{14:[1,128]},e(J,[2,51]),e(c,[2,30]),{38:[2,34]},{38:[1,129]},e(c,[2,74]),e(c,[2,78]),e(c,[2,80]),e(c,[2,81],{67:[1,130]}),e(Ce,[2,8]),e(W,[2,38]),e(c,[2,82])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],75:[2,31],98:[2,10],101:[2,4],111:[2,43],122:[2,34]},parseError:function(u,a){if(a.recoverable)this.trace(u);else{var o=new Error(u);throw o.hash=a,o}},parse:function(u){var a=this,o=[0],i=[],p=[null],t=[],G=this.table,s="",Z=0,Le=0,Ye=2,xe=1,Ke=t.slice.call(arguments,1),b=Object.create(this.lexer),I={yy:{}};for(var ge in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ge)&&(I.yy[ge]=this.yy[ge]);b.setInput(u,I.yy),I.yy.lexer=b,I.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var ke=b.yylloc;t.push(ke);var je=b.options&&b.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Qe(){var N;return N=i.pop()||b.lex()||xe,typeof N!="number"&&(N instanceof Array&&(i=N,N=i.pop()),N=a.symbols_[N]||N),N}for(var T,O,y,Te,w={},$,S,Ie,ee;;){if(O=o[o.length-1],this.defaultActions[O]?y=this.defaultActions[O]:((T===null||typeof T>"u")&&(T=Qe()),y=G[O]&&G[O][T]),typeof y>"u"||!y.length||!y[0]){var Fe="";ee=[];for($ in G[O])this.terminals_[$]&&$>Ye&&ee.push("'"+this.terminals_[$]+"'");b.showPosition?Fe="Parse error on line "+(Z+1)+`: `+b.showPosition()+` Expecting `+ee.join(", ")+", got '"+(this.terminals_[T]||T)+"'":Fe="Parse error on line "+(Z+1)+": Unexpected "+(T==xe?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(Fe,{text:b.match,token:this.terminals_[T]||T,line:b.yylineno,loc:ke,expected:ee})}if(y[0]instanceof Array&&y.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+T);switch(y[0]){case 1:o.push(T),p.push(b.yytext),t.push(b.yylloc),o.push(y[1]),T=null,Le=b.yyleng,s=b.yytext,Z=b.yylineno,ke=b.yylloc;break;case 2:if(S=this.productions_[y[1]][1],w.$=p[p.length-S],w._$={first_line:t[t.length-(S||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(S||1)].first_column,last_column:t[t.length-1].last_column},je&&(w._$.range=[t[t.length-(S||1)].range[0],t[t.length-1].range[1]]),Te=this.performAction.apply(w,[s,Le,Z,I.yy,y[1],p,t].concat(Ke)),typeof Te<"u")return Te;S&&(o=o.slice(0,-1*S*2),p=p.slice(0,-1*S),t=t.slice(0,-1*S)),o.push(this.productions_[y[1]][0]),p.push(w.$),t.push(w._$),Ie=G[o[o.length-2]][o[o.length-1]],o.push(Ie);break;case 3:return!0}}return!0}},ze=function(){var L={EOF:1,parseError:function(a,o){if(this.yy.parser)this.yy.parser.parseError(a,o);else throw new Error(a)},setInput:function(u,a){return this.yy=a||this.yy||{},this._input=u,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var a=u.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},unput:function(u){var a=u.length,o=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),o.length-1&&(this.yylineno-=o.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:o?(o.length===i.length?this.yylloc.first_column:0)+i[i.length-o.length].length-o[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(u){this.unput(this.match.slice(u))},pastInput:function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var u=this.pastInput(),a=new Array(u.length+1).join("-");return u+this.upcomingInput()+` diff --git a/_nuxt/styles-b966c4ae.IjxwHMVL.js b/_nuxt/styles-b966c4ae.XG1tK9wD.js similarity index 98% rename from _nuxt/styles-b966c4ae.IjxwHMVL.js rename to _nuxt/styles-b966c4ae.XG1tK9wD.js index 102df887cf..7076d8e9e2 100644 --- a/_nuxt/styles-b966c4ae.IjxwHMVL.js +++ b/_nuxt/styles-b966c4ae.XG1tK9wD.js @@ -1,4 +1,4 @@ -import{G as V}from"./layout.cBG5TzxH.js";import{ah as D,ai as M,aj as R,ak as j,al as F,am as U,ae as H,q as N,l as y,r as W,c as C,j as z,t as $,p as E,h as _,z as X,u as J,an as K}from"./mermaid-934d9bea.GjCu814R.js";import{r as Q}from"./index-67a42d7d.xm4RvesR.js";function Y(e){return typeof e=="string"?new D([document.querySelectorAll(e)],[document.documentElement]):new D([R(e)],M)}const Z=(e,r)=>j.lang.round(F.parse(e)[r]);function pe(e,r){return!!e.children(r).length}function be(e){return L(e.v)+":"+L(e.w)+":"+L(e.name)}var O=/:/g;function L(e){return e?String(e).replace(O,"\\:"):""}function ee(e,r){r&&e.attr("style",r)}function fe(e,r,c){r&&e.attr("class",r).attr("class",c+" "+e.attr("class"))}function ue(e,r){var c=r.graph();if(U(c)){var a=c.transition;if(H(a))return a(e)}return e}function te(e,r){var c=e.append("foreignObject").attr("width","100000"),a=c.append("xhtml:div");a.attr("xmlns","http://www.w3.org/1999/xhtml");var i=r.label;switch(typeof i){case"function":a.insert(i);break;case"object":a.insert(function(){return i});break;default:a.html(i)}ee(a,r.labelStyle),a.style("display","inline-block"),a.style("white-space","nowrap");var d=a.node().getBoundingClientRect();return c.attr("width",d.width).attr("height",d.height),c}const G={},le=function(e){const r=Object.keys(e);for(const c of r)G[c]=e[c]},q=function(e,r,c,a,i,d){const u=a.select(`[id="${c}"]`);Object.keys(e).forEach(function(p){const l=e[p];let g="default";l.classes.length>0&&(g=l.classes.join(" ")),g=g+" flowchart-label";const w=N(l.styles);let t=l.text!==void 0?l.text:l.id,s;if(y.info("vertex",l,l.labelType),l.labelType==="markdown")y.info("vertex",l,l.labelType);else if(W(C().flowchart.htmlLabels)){const m={label:t.replace(/fa[blrs]?:fa-[\w-]+/g,k=>``)};s=te(u,m).node(),s.parentNode.removeChild(s)}else{const m=i.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("style",w.labelStyle.replace("color:","fill:"));const k=t.split(z.lineBreakRegex);for(const T of k){const v=i.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","1"),v.textContent=T,m.appendChild(v)}s=m}let b=0,o="";switch(l.type){case"round":b=5,o="rect";break;case"square":o="rect";break;case"diamond":o="question";break;case"hexagon":o="hexagon";break;case"odd":o="rect_left_inv_arrow";break;case"lean_right":o="lean_right";break;case"lean_left":o="lean_left";break;case"trapezoid":o="trapezoid";break;case"inv_trapezoid":o="inv_trapezoid";break;case"odd_right":o="rect_left_inv_arrow";break;case"circle":o="circle";break;case"ellipse":o="ellipse";break;case"stadium":o="stadium";break;case"subroutine":o="subroutine";break;case"cylinder":o="cylinder";break;case"group":o="rect";break;case"doublecircle":o="doublecircle";break;default:o="rect"}r.setNode(l.id,{labelStyle:w.labelStyle,shape:o,labelText:t,labelType:l.labelType,rx:b,ry:b,class:g,style:w.style,id:l.id,link:l.link,linkTarget:l.linkTarget,tooltip:d.db.getTooltip(l.id)||"",domId:d.db.lookUpDomId(l.id),haveCallback:l.haveCallback,width:l.type==="group"?500:void 0,dir:l.dir,type:l.type,props:l.props,padding:C().flowchart.padding}),y.info("setNode",{labelStyle:w.labelStyle,labelType:l.labelType,shape:o,labelText:t,rx:b,ry:b,class:g,style:w.style,id:l.id,domId:d.db.lookUpDomId(l.id),width:l.type==="group"?500:void 0,type:l.type,dir:l.dir,props:l.props,padding:C().flowchart.padding})})},P=function(e,r,c){y.info("abc78 edges = ",e);let a=0,i={},d,u;if(e.defaultStyle!==void 0){const n=N(e.defaultStyle);d=n.style,u=n.labelStyle}e.forEach(function(n){a++;const p="L-"+n.start+"-"+n.end;i[p]===void 0?(i[p]=0,y.info("abc78 new entry",p,i[p])):(i[p]++,y.info("abc78 new entry",p,i[p]));let l=p+"-"+i[p];y.info("abc78 new link id to be used is",p,l,i[p]);const g="LS-"+n.start,w="LE-"+n.end,t={style:"",labelStyle:""};switch(t.minlen=n.length||1,n.type==="arrow_open"?t.arrowhead="none":t.arrowhead="normal",t.arrowTypeStart="arrow_open",t.arrowTypeEnd="arrow_open",n.type){case"double_arrow_cross":t.arrowTypeStart="arrow_cross";case"arrow_cross":t.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":t.arrowTypeStart="arrow_point";case"arrow_point":t.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":t.arrowTypeStart="arrow_circle";case"arrow_circle":t.arrowTypeEnd="arrow_circle";break}let s="",b="";switch(n.stroke){case"normal":s="fill:none;",d!==void 0&&(s=d),u!==void 0&&(b=u),t.thickness="normal",t.pattern="solid";break;case"dotted":t.thickness="normal",t.pattern="dotted",t.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":t.thickness="thick",t.pattern="solid",t.style="stroke-width: 3.5px;fill:none;";break;case"invisible":t.thickness="invisible",t.pattern="solid",t.style="stroke-width: 0;fill:none;";break}if(n.style!==void 0){const o=N(n.style);s=o.style,b=o.labelStyle}t.style=t.style+=s,t.labelStyle=t.labelStyle+=b,n.interpolate!==void 0?t.curve=$(n.interpolate,E):e.defaultInterpolate!==void 0?t.curve=$(e.defaultInterpolate,E):t.curve=$(G.curve,E),n.text===void 0?n.style!==void 0&&(t.arrowheadStyle="fill: #333"):(t.arrowheadStyle="fill: #333",t.labelpos="c"),t.labelType=n.labelType,t.label=n.text.replace(z.lineBreakRegex,` +import{G as V}from"./layout.v3y_H6P2.js";import{ah as D,ai as M,aj as R,ak as j,al as F,am as U,ae as H,q as N,l as y,r as W,c as C,j as z,t as $,p as E,h as _,z as X,u as J,an as K}from"./mermaid-934d9bea.JP-6_YN_.js";import{r as Q}from"./index-67a42d7d.k58ohfnG.js";function Y(e){return typeof e=="string"?new D([document.querySelectorAll(e)],[document.documentElement]):new D([R(e)],M)}const Z=(e,r)=>j.lang.round(F.parse(e)[r]);function pe(e,r){return!!e.children(r).length}function be(e){return L(e.v)+":"+L(e.w)+":"+L(e.name)}var O=/:/g;function L(e){return e?String(e).replace(O,"\\:"):""}function ee(e,r){r&&e.attr("style",r)}function fe(e,r,c){r&&e.attr("class",r).attr("class",c+" "+e.attr("class"))}function ue(e,r){var c=r.graph();if(U(c)){var a=c.transition;if(H(a))return a(e)}return e}function te(e,r){var c=e.append("foreignObject").attr("width","100000"),a=c.append("xhtml:div");a.attr("xmlns","http://www.w3.org/1999/xhtml");var i=r.label;switch(typeof i){case"function":a.insert(i);break;case"object":a.insert(function(){return i});break;default:a.html(i)}ee(a,r.labelStyle),a.style("display","inline-block"),a.style("white-space","nowrap");var d=a.node().getBoundingClientRect();return c.attr("width",d.width).attr("height",d.height),c}const G={},le=function(e){const r=Object.keys(e);for(const c of r)G[c]=e[c]},q=function(e,r,c,a,i,d){const u=a.select(`[id="${c}"]`);Object.keys(e).forEach(function(p){const l=e[p];let g="default";l.classes.length>0&&(g=l.classes.join(" ")),g=g+" flowchart-label";const w=N(l.styles);let t=l.text!==void 0?l.text:l.id,s;if(y.info("vertex",l,l.labelType),l.labelType==="markdown")y.info("vertex",l,l.labelType);else if(W(C().flowchart.htmlLabels)){const m={label:t.replace(/fa[blrs]?:fa-[\w-]+/g,k=>``)};s=te(u,m).node(),s.parentNode.removeChild(s)}else{const m=i.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("style",w.labelStyle.replace("color:","fill:"));const k=t.split(z.lineBreakRegex);for(const T of k){const v=i.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),v.setAttribute("dy","1em"),v.setAttribute("x","1"),v.textContent=T,m.appendChild(v)}s=m}let b=0,o="";switch(l.type){case"round":b=5,o="rect";break;case"square":o="rect";break;case"diamond":o="question";break;case"hexagon":o="hexagon";break;case"odd":o="rect_left_inv_arrow";break;case"lean_right":o="lean_right";break;case"lean_left":o="lean_left";break;case"trapezoid":o="trapezoid";break;case"inv_trapezoid":o="inv_trapezoid";break;case"odd_right":o="rect_left_inv_arrow";break;case"circle":o="circle";break;case"ellipse":o="ellipse";break;case"stadium":o="stadium";break;case"subroutine":o="subroutine";break;case"cylinder":o="cylinder";break;case"group":o="rect";break;case"doublecircle":o="doublecircle";break;default:o="rect"}r.setNode(l.id,{labelStyle:w.labelStyle,shape:o,labelText:t,labelType:l.labelType,rx:b,ry:b,class:g,style:w.style,id:l.id,link:l.link,linkTarget:l.linkTarget,tooltip:d.db.getTooltip(l.id)||"",domId:d.db.lookUpDomId(l.id),haveCallback:l.haveCallback,width:l.type==="group"?500:void 0,dir:l.dir,type:l.type,props:l.props,padding:C().flowchart.padding}),y.info("setNode",{labelStyle:w.labelStyle,labelType:l.labelType,shape:o,labelText:t,rx:b,ry:b,class:g,style:w.style,id:l.id,domId:d.db.lookUpDomId(l.id),width:l.type==="group"?500:void 0,type:l.type,dir:l.dir,props:l.props,padding:C().flowchart.padding})})},P=function(e,r,c){y.info("abc78 edges = ",e);let a=0,i={},d,u;if(e.defaultStyle!==void 0){const n=N(e.defaultStyle);d=n.style,u=n.labelStyle}e.forEach(function(n){a++;const p="L-"+n.start+"-"+n.end;i[p]===void 0?(i[p]=0,y.info("abc78 new entry",p,i[p])):(i[p]++,y.info("abc78 new entry",p,i[p]));let l=p+"-"+i[p];y.info("abc78 new link id to be used is",p,l,i[p]);const g="LS-"+n.start,w="LE-"+n.end,t={style:"",labelStyle:""};switch(t.minlen=n.length||1,n.type==="arrow_open"?t.arrowhead="none":t.arrowhead="normal",t.arrowTypeStart="arrow_open",t.arrowTypeEnd="arrow_open",n.type){case"double_arrow_cross":t.arrowTypeStart="arrow_cross";case"arrow_cross":t.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":t.arrowTypeStart="arrow_point";case"arrow_point":t.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":t.arrowTypeStart="arrow_circle";case"arrow_circle":t.arrowTypeEnd="arrow_circle";break}let s="",b="";switch(n.stroke){case"normal":s="fill:none;",d!==void 0&&(s=d),u!==void 0&&(b=u),t.thickness="normal",t.pattern="solid";break;case"dotted":t.thickness="normal",t.pattern="dotted",t.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":t.thickness="thick",t.pattern="solid",t.style="stroke-width: 3.5px;fill:none;";break;case"invisible":t.thickness="invisible",t.pattern="solid",t.style="stroke-width: 0;fill:none;";break}if(n.style!==void 0){const o=N(n.style);s=o.style,b=o.labelStyle}t.style=t.style+=s,t.labelStyle=t.labelStyle+=b,n.interpolate!==void 0?t.curve=$(n.interpolate,E):e.defaultInterpolate!==void 0?t.curve=$(e.defaultInterpolate,E):t.curve=$(G.curve,E),n.text===void 0?n.style!==void 0&&(t.arrowheadStyle="fill: #333"):(t.arrowheadStyle="fill: #333",t.labelpos="c"),t.labelType=n.labelType,t.label=n.text.replace(z.lineBreakRegex,` `),n.style===void 0&&(t.style=t.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),t.labelStyle=t.labelStyle.replace("color:","fill:"),t.id=l,t.classes="flowchart-link "+g+" "+w,r.setEdge(n.start,n.end,t,a)})},re=function(e,r){return r.db.getClasses()},ae=async function(e,r,c,a){y.info("Drawing flowchart");let i=a.db.getDirection();i===void 0&&(i="TD");const{securityLevel:d,flowchart:u}=C(),n=u.nodeSpacing||50,p=u.rankSpacing||50;let l;d==="sandbox"&&(l=_("#i"+r));const g=d==="sandbox"?_(l.nodes()[0].contentDocument.body):_("body"),w=d==="sandbox"?l.nodes()[0].contentDocument:document,t=new V({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:n,ranksep:p,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let s;const b=a.db.getSubGraphs();y.info("Subgraphs - ",b);for(let f=b.length-1;f>=0;f--)s=b[f],y.info("Subgraph - ",s),a.db.addVertex(s.id,{text:s.title,type:s.labelType},"group",void 0,s.classes,s.dir);const o=a.db.getVertices(),m=a.db.getEdges();y.info("Edges",m);let k=0;for(k=b.length-1;k>=0;k--){s=b[k],Y("cluster").append("text");for(let f=0;f{const c=Z,a=c(e,"r"),i=c(e,"g"),d=c(e,"b");return K(a,i,d,r)},ne=e=>`.label { font-family: ${e.fontFamily}; color: ${e.nodeTextColor||e.textColor}; diff --git a/_nuxt/styles-bbc3fe3b.3MtlFjLb.js b/_nuxt/styles-bbc3fe3b.uGyWsvZU.js similarity index 99% rename from _nuxt/styles-bbc3fe3b.3MtlFjLb.js rename to _nuxt/styles-bbc3fe3b.uGyWsvZU.js index 528d32be5e..c50ba50bc1 100644 --- a/_nuxt/styles-bbc3fe3b.3MtlFjLb.js +++ b/_nuxt/styles-bbc3fe3b.uGyWsvZU.js @@ -1,4 +1,4 @@ -import{c as Y,g as Ut,s as zt,a as Mt,b as Ht,x as Xt,y as Kt,l as D,j as ot,A as Wt,b1 as Jt}from"./mermaid-934d9bea.GjCu814R.js";var gt=function(){var t=function(C,r,n,i){for(n=n||{},i=C.length;i--;n[C[i]]=r);return n},s=[1,2],a=[1,3],h=[1,4],f=[2,4],d=[1,9],y=[1,11],k=[1,15],u=[1,16],E=[1,17],T=[1,18],R=[1,30],G=[1,19],j=[1,20],U=[1,21],z=[1,22],M=[1,23],H=[1,25],X=[1,26],K=[1,27],W=[1,28],J=[1,29],q=[1,32],Q=[1,33],Z=[1,34],tt=[1,35],w=[1,31],c=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],et=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],Dt=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],ht={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",13:"DESCR",14:"-->",15:"HIDE_EMPTY",16:"scale",17:"WIDTH",18:"COMPOSIT_STATE",19:"STRUCT_START",20:"STRUCT_STOP",21:"STATE_DESCR",22:"AS",23:"ID",24:"FORK",25:"JOIN",26:"CHOICE",27:"CONCURRENT",28:"note",30:"NOTE_TEXT",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"classDef",38:"CLASSDEF_ID",39:"CLASSDEF_STYLEOPTS",40:"DEFAULT",41:"class",42:"CLASSENTITY_IDS",43:"STYLECLASS",44:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[31,1],[31,1],[31,1],[31,1],[48,1],[48,1],[12,1],[12,1],[12,3],[12,3],[29,1],[29,1]],performAction:function(r,n,i,o,p,e,$){var l=e.length-1;switch(p){case 3:return o.setRootDoc(e[l]),e[l];case 4:this.$=[];break;case 5:e[l]!="nl"&&(e[l-1].push(e[l]),this.$=e[l-1]);break;case 6:case 7:this.$=e[l];break;case 8:this.$="nl";break;case 11:this.$=e[l];break;case 12:const B=e[l-1];B.description=o.trimColon(e[l]),this.$=B;break;case 13:this.$={stmt:"relation",state1:e[l-2],state2:e[l]};break;case 14:const ft=o.trimColon(e[l]);this.$={stmt:"relation",state1:e[l-3],state2:e[l-1],description:ft};break;case 18:this.$={stmt:"state",id:e[l-3],type:"default",description:"",doc:e[l-1]};break;case 19:var A=e[l],O=e[l-2].trim();if(e[l].match(":")){var st=e[l].split(":");A=st[0],O=[O,st[1]]}this.$={stmt:"state",id:A,type:"default",description:O};break;case 20:this.$={stmt:"state",id:e[l-3],type:"default",description:e[l-5],doc:e[l-1]};break;case 21:this.$={stmt:"state",id:e[l],type:"fork"};break;case 22:this.$={stmt:"state",id:e[l],type:"join"};break;case 23:this.$={stmt:"state",id:e[l],type:"choice"};break;case 24:this.$={stmt:"state",id:o.getDividerId(),type:"divider"};break;case 25:this.$={stmt:"state",id:e[l-1].trim(),note:{position:e[l-2].trim(),text:e[l].trim()}};break;case 28:this.$=e[l].trim(),o.setAccTitle(this.$);break;case 29:case 30:this.$=e[l].trim(),o.setAccDescription(this.$);break;case 31:case 32:this.$={stmt:"classDef",id:e[l-1].trim(),classes:e[l].trim()};break;case 33:this.$={stmt:"applyClass",id:e[l-1].trim(),styleClass:e[l].trim()};break;case 34:o.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 35:o.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 36:o.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 37:o.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 40:case 41:this.$={stmt:"state",id:e[l].trim(),type:"default",description:""};break;case 42:this.$={stmt:"state",id:e[l-2].trim(),classes:[e[l].trim()],type:"default",description:""};break;case 43:this.$={stmt:"state",id:e[l-2].trim(),classes:[e[l].trim()],type:"default",description:""};break}},table:[{3:1,4:s,5:a,6:h},{1:[3]},{3:5,4:s,5:a,6:h},{3:6,4:s,5:a,6:h},t([1,4,5,15,16,18,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],f,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:d,5:y,8:8,9:10,10:12,11:13,12:14,15:k,16:u,18:E,21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,5]),{9:36,10:12,11:13,12:14,15:k,16:u,18:E,21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,7]),t(c,[2,8]),t(c,[2,9]),t(c,[2,10]),t(c,[2,11],{13:[1,37],14:[1,38]}),t(c,[2,15]),{17:[1,39]},t(c,[2,17],{19:[1,40]}),{22:[1,41]},t(c,[2,21]),t(c,[2,22]),t(c,[2,23]),t(c,[2,24]),{29:42,30:[1,43],52:[1,44],53:[1,45]},t(c,[2,27]),{33:[1,46]},{35:[1,47]},t(c,[2,30]),{38:[1,48],40:[1,49]},{42:[1,50]},t(et,[2,40],{51:[1,51]}),t(et,[2,41],{51:[1,52]}),t(c,[2,34]),t(c,[2,35]),t(c,[2,36]),t(c,[2,37]),t(c,[2,6]),t(c,[2,12]),{12:53,23:R,50:w},t(c,[2,16]),t(Dt,f,{7:54}),{23:[1,55]},{23:[1,56]},{22:[1,57]},{23:[2,44]},{23:[2,45]},t(c,[2,28]),t(c,[2,29]),{39:[1,58]},{39:[1,59]},{43:[1,60]},{23:[1,61]},{23:[1,62]},t(c,[2,13],{13:[1,63]}),{4:d,5:y,8:8,9:10,10:12,11:13,12:14,15:k,16:u,18:E,20:[1,64],21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,19],{19:[1,65]}),{30:[1,66]},{23:[1,67]},t(c,[2,31]),t(c,[2,32]),t(c,[2,33]),t(et,[2,42]),t(et,[2,43]),t(c,[2,14]),t(c,[2,18]),t(Dt,f,{7:68}),t(c,[2,25]),t(c,[2,26]),{4:d,5:y,8:8,9:10,10:12,11:13,12:14,15:k,16:u,18:E,20:[1,69],21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,20])],defaultActions:{5:[2,1],6:[2,2],44:[2,44],45:[2,45]},parseError:function(r,n){if(n.recoverable)this.trace(r);else{var i=new Error(r);throw i.hash=n,i}},parse:function(r){var n=this,i=[0],o=[],p=[null],e=[],$=this.table,l="",A=0,O=0,st=2,B=1,ft=e.slice.call(arguments,1),S=Object.create(this.lexer),v={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(v.yy[dt]=this.yy[dt]);S.setInput(r,v.yy),v.yy.lexer=S,v.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var yt=S.yylloc;e.push(yt);var Gt=S.options&&S.options.ranges;typeof v.yy.parseError=="function"?this.parseError=v.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function jt(){var x;return x=o.pop()||S.lex()||B,typeof x!="number"&&(x instanceof Array&&(o=x,x=o.pop()),x=n.symbols_[x]||x),x}for(var _,L,m,pt,N={},it,b,Ct,rt;;){if(L=i[i.length-1],this.defaultActions[L]?m=this.defaultActions[L]:((_===null||typeof _>"u")&&(_=jt()),m=$[L]&&$[L][_]),typeof m>"u"||!m.length||!m[0]){var St="";rt=[];for(it in $[L])this.terminals_[it]&&it>st&&rt.push("'"+this.terminals_[it]+"'");S.showPosition?St="Parse error on line "+(A+1)+`: +import{c as Y,g as Ut,s as zt,a as Mt,b as Ht,x as Xt,y as Kt,l as D,j as ot,A as Wt,b1 as Jt}from"./mermaid-934d9bea.JP-6_YN_.js";var gt=function(){var t=function(C,r,n,i){for(n=n||{},i=C.length;i--;n[C[i]]=r);return n},s=[1,2],a=[1,3],h=[1,4],f=[2,4],d=[1,9],y=[1,11],k=[1,15],u=[1,16],E=[1,17],T=[1,18],R=[1,30],G=[1,19],j=[1,20],U=[1,21],z=[1,22],M=[1,23],H=[1,25],X=[1,26],K=[1,27],W=[1,28],J=[1,29],q=[1,32],Q=[1,33],Z=[1,34],tt=[1,35],w=[1,31],c=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],et=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],Dt=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],ht={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",13:"DESCR",14:"-->",15:"HIDE_EMPTY",16:"scale",17:"WIDTH",18:"COMPOSIT_STATE",19:"STRUCT_START",20:"STRUCT_STOP",21:"STATE_DESCR",22:"AS",23:"ID",24:"FORK",25:"JOIN",26:"CHOICE",27:"CONCURRENT",28:"note",30:"NOTE_TEXT",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"classDef",38:"CLASSDEF_ID",39:"CLASSDEF_STYLEOPTS",40:"DEFAULT",41:"class",42:"CLASSENTITY_IDS",43:"STYLECLASS",44:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[31,1],[31,1],[31,1],[31,1],[48,1],[48,1],[12,1],[12,1],[12,3],[12,3],[29,1],[29,1]],performAction:function(r,n,i,o,p,e,$){var l=e.length-1;switch(p){case 3:return o.setRootDoc(e[l]),e[l];case 4:this.$=[];break;case 5:e[l]!="nl"&&(e[l-1].push(e[l]),this.$=e[l-1]);break;case 6:case 7:this.$=e[l];break;case 8:this.$="nl";break;case 11:this.$=e[l];break;case 12:const B=e[l-1];B.description=o.trimColon(e[l]),this.$=B;break;case 13:this.$={stmt:"relation",state1:e[l-2],state2:e[l]};break;case 14:const ft=o.trimColon(e[l]);this.$={stmt:"relation",state1:e[l-3],state2:e[l-1],description:ft};break;case 18:this.$={stmt:"state",id:e[l-3],type:"default",description:"",doc:e[l-1]};break;case 19:var A=e[l],O=e[l-2].trim();if(e[l].match(":")){var st=e[l].split(":");A=st[0],O=[O,st[1]]}this.$={stmt:"state",id:A,type:"default",description:O};break;case 20:this.$={stmt:"state",id:e[l-3],type:"default",description:e[l-5],doc:e[l-1]};break;case 21:this.$={stmt:"state",id:e[l],type:"fork"};break;case 22:this.$={stmt:"state",id:e[l],type:"join"};break;case 23:this.$={stmt:"state",id:e[l],type:"choice"};break;case 24:this.$={stmt:"state",id:o.getDividerId(),type:"divider"};break;case 25:this.$={stmt:"state",id:e[l-1].trim(),note:{position:e[l-2].trim(),text:e[l].trim()}};break;case 28:this.$=e[l].trim(),o.setAccTitle(this.$);break;case 29:case 30:this.$=e[l].trim(),o.setAccDescription(this.$);break;case 31:case 32:this.$={stmt:"classDef",id:e[l-1].trim(),classes:e[l].trim()};break;case 33:this.$={stmt:"applyClass",id:e[l-1].trim(),styleClass:e[l].trim()};break;case 34:o.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 35:o.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 36:o.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 37:o.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 40:case 41:this.$={stmt:"state",id:e[l].trim(),type:"default",description:""};break;case 42:this.$={stmt:"state",id:e[l-2].trim(),classes:[e[l].trim()],type:"default",description:""};break;case 43:this.$={stmt:"state",id:e[l-2].trim(),classes:[e[l].trim()],type:"default",description:""};break}},table:[{3:1,4:s,5:a,6:h},{1:[3]},{3:5,4:s,5:a,6:h},{3:6,4:s,5:a,6:h},t([1,4,5,15,16,18,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],f,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:d,5:y,8:8,9:10,10:12,11:13,12:14,15:k,16:u,18:E,21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,5]),{9:36,10:12,11:13,12:14,15:k,16:u,18:E,21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,7]),t(c,[2,8]),t(c,[2,9]),t(c,[2,10]),t(c,[2,11],{13:[1,37],14:[1,38]}),t(c,[2,15]),{17:[1,39]},t(c,[2,17],{19:[1,40]}),{22:[1,41]},t(c,[2,21]),t(c,[2,22]),t(c,[2,23]),t(c,[2,24]),{29:42,30:[1,43],52:[1,44],53:[1,45]},t(c,[2,27]),{33:[1,46]},{35:[1,47]},t(c,[2,30]),{38:[1,48],40:[1,49]},{42:[1,50]},t(et,[2,40],{51:[1,51]}),t(et,[2,41],{51:[1,52]}),t(c,[2,34]),t(c,[2,35]),t(c,[2,36]),t(c,[2,37]),t(c,[2,6]),t(c,[2,12]),{12:53,23:R,50:w},t(c,[2,16]),t(Dt,f,{7:54}),{23:[1,55]},{23:[1,56]},{22:[1,57]},{23:[2,44]},{23:[2,45]},t(c,[2,28]),t(c,[2,29]),{39:[1,58]},{39:[1,59]},{43:[1,60]},{23:[1,61]},{23:[1,62]},t(c,[2,13],{13:[1,63]}),{4:d,5:y,8:8,9:10,10:12,11:13,12:14,15:k,16:u,18:E,20:[1,64],21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,19],{19:[1,65]}),{30:[1,66]},{23:[1,67]},t(c,[2,31]),t(c,[2,32]),t(c,[2,33]),t(et,[2,42]),t(et,[2,43]),t(c,[2,14]),t(c,[2,18]),t(Dt,f,{7:68}),t(c,[2,25]),t(c,[2,26]),{4:d,5:y,8:8,9:10,10:12,11:13,12:14,15:k,16:u,18:E,20:[1,69],21:T,23:R,24:G,25:j,26:U,27:z,28:M,31:24,32:H,34:X,36:K,37:W,41:J,44:q,45:Q,46:Z,47:tt,50:w},t(c,[2,20])],defaultActions:{5:[2,1],6:[2,2],44:[2,44],45:[2,45]},parseError:function(r,n){if(n.recoverable)this.trace(r);else{var i=new Error(r);throw i.hash=n,i}},parse:function(r){var n=this,i=[0],o=[],p=[null],e=[],$=this.table,l="",A=0,O=0,st=2,B=1,ft=e.slice.call(arguments,1),S=Object.create(this.lexer),v={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(v.yy[dt]=this.yy[dt]);S.setInput(r,v.yy),v.yy.lexer=S,v.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var yt=S.yylloc;e.push(yt);var Gt=S.options&&S.options.ranges;typeof v.yy.parseError=="function"?this.parseError=v.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function jt(){var x;return x=o.pop()||S.lex()||B,typeof x!="number"&&(x instanceof Array&&(o=x,x=o.pop()),x=n.symbols_[x]||x),x}for(var _,L,m,pt,N={},it,b,Ct,rt;;){if(L=i[i.length-1],this.defaultActions[L]?m=this.defaultActions[L]:((_===null||typeof _>"u")&&(_=jt()),m=$[L]&&$[L][_]),typeof m>"u"||!m.length||!m[0]){var St="";rt=[];for(it in $[L])this.terminals_[it]&&it>st&&rt.push("'"+this.terminals_[it]+"'");S.showPosition?St="Parse error on line "+(A+1)+`: `+S.showPosition()+` Expecting `+rt.join(", ")+", got '"+(this.terminals_[_]||_)+"'":St="Parse error on line "+(A+1)+": Unexpected "+(_==B?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(St,{text:S.match,token:this.terminals_[_]||_,line:S.yylineno,loc:yt,expected:rt})}if(m[0]instanceof Array&&m.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+_);switch(m[0]){case 1:i.push(_),p.push(S.yytext),e.push(S.yylloc),i.push(m[1]),_=null,O=S.yyleng,l=S.yytext,A=S.yylineno,yt=S.yylloc;break;case 2:if(b=this.productions_[m[1]][1],N.$=p[p.length-b],N._$={first_line:e[e.length-(b||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(b||1)].first_column,last_column:e[e.length-1].last_column},Gt&&(N._$.range=[e[e.length-(b||1)].range[0],e[e.length-1].range[1]]),pt=this.performAction.apply(N,[l,O,A,v.yy,m[1],p,e].concat(ft)),typeof pt<"u")return pt;b&&(i=i.slice(0,-1*b*2),p=p.slice(0,-1*b),e=e.slice(0,-1*b)),i.push(this.productions_[m[1]][0]),p.push(N.$),e.push(N._$),Ct=$[i[i.length-2]][i[i.length-1]],i.push(Ct);break;case 3:return!0}}return!0}},Yt=function(){var C={EOF:1,parseError:function(n,i){if(this.yy.parser)this.yy.parser.parseError(n,i);else throw new Error(n)},setInput:function(r,n){return this.yy=n||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var n=r.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var n=r.length,i=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var o=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===o.length?this.yylloc.first_column:0)+o[o.length-i.length].length-i[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),n=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/_nuxt/svgDrawCommon-ad5ef572.up_fh1Ps.js b/_nuxt/svgDrawCommon-ad5ef572.X8xX495e.js similarity index 95% rename from _nuxt/svgDrawCommon-ad5ef572.up_fh1Ps.js rename to _nuxt/svgDrawCommon-ad5ef572.X8xX495e.js index a861df2aaa..78877de9a6 100644 --- a/_nuxt/svgDrawCommon-ad5ef572.up_fh1Ps.js +++ b/_nuxt/svgDrawCommon-ad5ef572.X8xX495e.js @@ -1 +1 @@ -import{o,n as i}from"./mermaid-934d9bea.GjCu814R.js";const c=(s,t)=>{const r=s.append("rect");if(r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),t.rx!==void 0&&r.attr("rx",t.rx),t.ry!==void 0&&r.attr("ry",t.ry),t.attrs!==void 0)for(const e in t.attrs)r.attr(e,t.attrs[e]);return t.class!==void 0&&r.attr("class",t.class),r},x=(s,t)=>{const r={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};c(s,r).lower()},d=(s,t)=>{const r=t.text.replace(o," "),e=s.append("text");e.attr("x",t.x),e.attr("y",t.y),e.attr("class","legend"),e.style("text-anchor",t.anchor),t.class!==void 0&&e.attr("class",t.class);const n=e.append("tspan");return n.attr("x",t.x+t.textMargin*2),n.text(r),e},h=(s,t,r,e)=>{const n=s.append("image");n.attr("x",t),n.attr("y",r);const a=i.sanitizeUrl(e);n.attr("xlink:href",a)},y=(s,t,r,e)=>{const n=s.append("use");n.attr("x",t),n.attr("y",r);const a=i.sanitizeUrl(e);n.attr("xlink:href",`#${a}`)},g=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),p=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0});export{x as a,y as b,h as c,c as d,p as e,d as f,g}; +import{o,n as i}from"./mermaid-934d9bea.JP-6_YN_.js";const c=(s,t)=>{const r=s.append("rect");if(r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),t.rx!==void 0&&r.attr("rx",t.rx),t.ry!==void 0&&r.attr("ry",t.ry),t.attrs!==void 0)for(const e in t.attrs)r.attr(e,t.attrs[e]);return t.class!==void 0&&r.attr("class",t.class),r},x=(s,t)=>{const r={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};c(s,r).lower()},d=(s,t)=>{const r=t.text.replace(o," "),e=s.append("text");e.attr("x",t.x),e.attr("y",t.y),e.attr("class","legend"),e.style("text-anchor",t.anchor),t.class!==void 0&&e.attr("class",t.class);const n=e.append("tspan");return n.attr("x",t.x+t.textMargin*2),n.text(r),e},h=(s,t,r,e)=>{const n=s.append("image");n.attr("x",t),n.attr("y",r);const a=i.sanitizeUrl(e);n.attr("xlink:href",a)},y=(s,t,r,e)=>{const n=s.append("use");n.attr("x",t),n.attr("y",r);const a=i.sanitizeUrl(e);n.attr("xlink:href",`#${a}`)},g=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),p=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0});export{x as a,y as b,h as c,c as d,p as e,d as f,g}; diff --git a/_nuxt/timeline-definition-732a2638.ldnpttiB.js b/_nuxt/timeline-definition-732a2638.y_BGnUBk.js similarity index 99% rename from _nuxt/timeline-definition-732a2638.ldnpttiB.js rename to _nuxt/timeline-definition-732a2638.y_BGnUBk.js index f98e3440ae..00962d997f 100644 --- a/_nuxt/timeline-definition-732a2638.ldnpttiB.js +++ b/_nuxt/timeline-definition-732a2638.y_BGnUBk.js @@ -1,4 +1,4 @@ -import{b2 as ft,A as gt,c as mt,l as E,h as G,u as xt,b3 as bt,b4 as _t,b5 as kt}from"./mermaid-934d9bea.GjCu814R.js";import{a as D}from"./arc.flIDfKC7.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./path.aUcfwwLI.js";var K=function(){var n=function(g,i,r,c){for(r=r||{},c=g.length;c--;r[g[c]]=i);return r},t=[6,8,10,11,12,14,16,17,20,21],e=[1,9],a=[1,10],s=[1,11],h=[1,12],l=[1,13],p=[1,16],y=[1,17],f={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:function(i,r,c,d,u,o,$){var x=o.length-1;switch(u){case 1:return o[x-1];case 2:this.$=[];break;case 3:o[x-1].push(o[x]),this.$=o[x-1];break;case 4:case 5:this.$=o[x];break;case 6:case 7:this.$=[];break;case 8:d.getCommonDb().setDiagramTitle(o[x].substr(6)),this.$=o[x].substr(6);break;case 9:this.$=o[x].trim(),d.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=o[x].trim(),d.getCommonDb().setAccDescription(this.$);break;case 12:d.addSection(o[x].substr(8)),this.$=o[x].substr(8);break;case 15:d.addTask(o[x],0,""),this.$=o[x];break;case 16:d.addEvent(o[x].substr(2)),this.$=o[x];break}},table:[{3:1,4:[1,2]},{1:[3]},n(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:e,12:a,14:s,16:h,17:l,18:14,19:15,20:p,21:y},n(t,[2,7],{1:[2,1]}),n(t,[2,3]),{9:18,11:e,12:a,14:s,16:h,17:l,18:14,19:15,20:p,21:y},n(t,[2,5]),n(t,[2,6]),n(t,[2,8]),{13:[1,19]},{15:[1,20]},n(t,[2,11]),n(t,[2,12]),n(t,[2,13]),n(t,[2,14]),n(t,[2,15]),n(t,[2,16]),n(t,[2,4]),n(t,[2,9]),n(t,[2,10])],defaultActions:{},parseError:function(i,r){if(r.recoverable)this.trace(i);else{var c=new Error(i);throw c.hash=r,c}},parse:function(i){var r=this,c=[0],d=[],u=[null],o=[],$=this.table,x="",T=0,W=0,C=2,A=1,B=o.slice.call(arguments,1),k=Object.create(this.lexer),w={yy:{}};for(var v in this.yy)Object.prototype.hasOwnProperty.call(this.yy,v)&&(w.yy[v]=this.yy[v]);k.setInput(i,w.yy),w.yy.lexer=k,w.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var I=k.yylloc;o.push(I);var P=k.options&&k.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function z(){var M;return M=d.pop()||k.lex()||A,typeof M!="number"&&(M instanceof Array&&(d=M,M=d.pop()),M=r.symbols_[M]||M),M}for(var _,L,S,Z,R={},O,N,Y,j;;){if(L=c[c.length-1],this.defaultActions[L]?S=this.defaultActions[L]:((_===null||typeof _>"u")&&(_=z()),S=$[L]&&$[L][_]),typeof S>"u"||!S.length||!S[0]){var J="";j=[];for(O in $[L])this.terminals_[O]&&O>C&&j.push("'"+this.terminals_[O]+"'");k.showPosition?J="Parse error on line "+(T+1)+`: +import{b2 as ft,A as gt,c as mt,l as E,h as G,u as xt,b3 as bt,b4 as _t,b5 as kt}from"./mermaid-934d9bea.JP-6_YN_.js";import{a as D}from"./arc.kghs0U58.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./path.aUcfwwLI.js";var K=function(){var n=function(g,i,r,c){for(r=r||{},c=g.length;c--;r[g[c]]=i);return r},t=[6,8,10,11,12,14,16,17,20,21],e=[1,9],a=[1,10],s=[1,11],h=[1,12],l=[1,13],p=[1,16],y=[1,17],f={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:function(i,r,c,d,u,o,$){var x=o.length-1;switch(u){case 1:return o[x-1];case 2:this.$=[];break;case 3:o[x-1].push(o[x]),this.$=o[x-1];break;case 4:case 5:this.$=o[x];break;case 6:case 7:this.$=[];break;case 8:d.getCommonDb().setDiagramTitle(o[x].substr(6)),this.$=o[x].substr(6);break;case 9:this.$=o[x].trim(),d.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=o[x].trim(),d.getCommonDb().setAccDescription(this.$);break;case 12:d.addSection(o[x].substr(8)),this.$=o[x].substr(8);break;case 15:d.addTask(o[x],0,""),this.$=o[x];break;case 16:d.addEvent(o[x].substr(2)),this.$=o[x];break}},table:[{3:1,4:[1,2]},{1:[3]},n(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:e,12:a,14:s,16:h,17:l,18:14,19:15,20:p,21:y},n(t,[2,7],{1:[2,1]}),n(t,[2,3]),{9:18,11:e,12:a,14:s,16:h,17:l,18:14,19:15,20:p,21:y},n(t,[2,5]),n(t,[2,6]),n(t,[2,8]),{13:[1,19]},{15:[1,20]},n(t,[2,11]),n(t,[2,12]),n(t,[2,13]),n(t,[2,14]),n(t,[2,15]),n(t,[2,16]),n(t,[2,4]),n(t,[2,9]),n(t,[2,10])],defaultActions:{},parseError:function(i,r){if(r.recoverable)this.trace(i);else{var c=new Error(i);throw c.hash=r,c}},parse:function(i){var r=this,c=[0],d=[],u=[null],o=[],$=this.table,x="",T=0,W=0,C=2,A=1,B=o.slice.call(arguments,1),k=Object.create(this.lexer),w={yy:{}};for(var v in this.yy)Object.prototype.hasOwnProperty.call(this.yy,v)&&(w.yy[v]=this.yy[v]);k.setInput(i,w.yy),w.yy.lexer=k,w.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var I=k.yylloc;o.push(I);var P=k.options&&k.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function z(){var M;return M=d.pop()||k.lex()||A,typeof M!="number"&&(M instanceof Array&&(d=M,M=d.pop()),M=r.symbols_[M]||M),M}for(var _,L,S,Z,R={},O,N,Y,j;;){if(L=c[c.length-1],this.defaultActions[L]?S=this.defaultActions[L]:((_===null||typeof _>"u")&&(_=z()),S=$[L]&&$[L][_]),typeof S>"u"||!S.length||!S[0]){var J="";j=[];for(O in $[L])this.terminals_[O]&&O>C&&j.push("'"+this.terminals_[O]+"'");k.showPosition?J="Parse error on line "+(T+1)+`: `+k.showPosition()+` Expecting `+j.join(", ")+", got '"+(this.terminals_[_]||_)+"'":J="Parse error on line "+(T+1)+": Unexpected "+(_==A?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(J,{text:k.match,token:this.terminals_[_]||_,line:k.yylineno,loc:I,expected:j})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+_);switch(S[0]){case 1:c.push(_),u.push(k.yytext),o.push(k.yylloc),c.push(S[1]),_=null,W=k.yyleng,x=k.yytext,T=k.yylineno,I=k.yylloc;break;case 2:if(N=this.productions_[S[1]][1],R.$=u[u.length-N],R._$={first_line:o[o.length-(N||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(N||1)].first_column,last_column:o[o.length-1].last_column},P&&(R._$.range=[o[o.length-(N||1)].range[0],o[o.length-1].range[1]]),Z=this.performAction.apply(R,[x,W,T,w.yy,S[1],u,o].concat(B)),typeof Z<"u")return Z;N&&(c=c.slice(0,-1*N*2),u=u.slice(0,-1*N),o=o.slice(0,-1*N)),c.push(this.productions_[S[1]][0]),u.push(R.$),o.push(R._$),Y=$[c[c.length-2]][c[c.length-1]],c.push(Y);break;case 3:return!0}}return!0}},b=function(){var g={EOF:1,parseError:function(r,c){if(this.yy.parser)this.yy.parser.parseError(r,c);else throw new Error(r)},setInput:function(i,r){return this.yy=r||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var r=i.match(/(?:\r\n?|\n).*/g);return r?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},unput:function(i){var r=i.length,c=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-r},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-r]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(i){this.unput(this.match.slice(i))},pastInput:function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var i=this.pastInput(),r=new Array(i.length+1).join("-");return i+this.upcomingInput()+` diff --git a/_nuxt/useStudio.FJ3lfJLP.js b/_nuxt/useStudio.x8TXSxM4.js similarity index 99% rename from _nuxt/useStudio.FJ3lfJLP.js rename to _nuxt/useStudio.x8TXSxM4.js index 496acf0d50..23170a08d8 100644 --- a/_nuxt/useStudio.FJ3lfJLP.js +++ b/_nuxt/useStudio.x8TXSxM4.js @@ -1,4 +1,4 @@ -import{d as Y,u as V,r as $,o as j,_ as ee,a as te,b as q,c as L,n as ne,F as oe,e as w,f as E,g as O,w as J,T as B,t as ie,h as D,p as se,i as ae,j as W,k as re,l as de,m as z,q as ce,s as U,v as M,x as Z,y as H,z as le,A as pe,B as ue,C as fe,D as F}from"./entry.TEDHt2QA.js";const A=i=>(se("data-v-f74290fc"),i=i(),ae(),i),ve=A(()=>w("svg",{viewBox:"0 0 90 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[w("path",{d:"M50.0016 71.0999h29.2561c.9293.0001 1.8422-.241 2.6469-.6992.8047-.4582 1.4729-1.1173 1.9373-1.9109.4645-.7936.7088-1.6939.7083-2.6102-.0004-.9162-.2455-1.8163-.7106-2.6095L64.192 29.713c-.4644-.7934-1.1325-1.4523-1.937-1.9105-.8046-.4581-1.7173-.6993-2.6463-.6993-.9291 0-1.8418.2412-2.6463.6993-.8046.4582-1.4726 1.1171-1.937 1.9105l-5.0238 8.5861-9.8224-16.7898c-.4648-.7934-1.1332-1.4522-1.938-1.9102-.8047-.4581-1.7176-.6992-2.6468-.6992-.9292 0-1.842.2411-2.6468.6992-.8048.458-1.4731 1.1168-1.9379 1.9102L6.56062 63.2701c-.46512.7932-.71021 1.6933-.71061 2.6095-.00041.9163.24389 1.8166.70831 2.6102.46443.7936 1.1326 1.4527 1.93732 1.9109.80473.4582 1.71766.6993 2.64686.6992h18.3646c7.2763 0 12.6422-3.1516 16.3345-9.3002l8.9642-15.3081 4.8015-8.1925 14.4099 24.6083H54.8058l-4.8042 8.1925ZM29.2077 62.899l-12.8161-.0028L35.603 30.0869l9.5857 16.4047-6.418 10.9645c-2.4521 3.9894-5.2377 5.4429-9.563 5.4429Z",fill:"currentColor"})],-1)),we=A(()=>w("span",null,"Preview mode enabled",-1)),he={key:0},me=A(()=>w("div",{id:"__preview_background"},null,-1)),ye=A(()=>w("svg",{id:"__preview_loading_icon",width:"32",height:"32",viewBox:"0 0 24 24"},[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 0 0 4.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 0 1-15.357-2m15.357 2H15"})],-1)),_e=A(()=>w("p",null,"Initializing the preview...",-1)),ge={key:0},ke=A(()=>w("div",{id:"__preview_background"},null,-1)),Ce={id:"__preview_loader"},Ie=Y({__name:"ContentPreviewMode",props:{previewToken:{type:String,required:!0},apiURL:{type:String,required:!0},syncPreview:{type:Function,required:!0},requestPreviewSyncAPI:{type:Function,required:!0}},setup(i){const s=i,c=["__nuxt_preview","__preview_enabled"],f=W(),y=V(),r=$(!0),g=$(!1),o=$(!1),l=$("");let a;const m=async()=>{D("previewToken").value="",window.sessionStorage.removeItem("previewToken"),await y.replace({query:{preview:void 0}}),window.location.reload()},b=async T=>{const h=await s.syncPreview(T);if(o.value!==!0){if(!h){setTimeout(()=>b(T),1e3);return}D("previewToken").value&&(o.value=!0,await y.replace({query:{}}),f.callHook("nuxt-studio:preview:ready"),window.parent&&window.self!==window.parent&&a.disconnect())}};return j(async()=>{a=(await ee(()=>import("./index.ktinZ6MN.js"),__vite__mapDeps([]),import.meta.url)).connect(`${s.apiURL}/preview`,{transports:["websocket","polling"],auth:{token:s.previewToken}});let h;a.on("connect",()=>{h=setTimeout(()=>{o.value||(h=setTimeout(()=>{l.value="Preview sync timed out",o.value=!1},3e4),a.emit("draft:requestSync"))},3e4)});const I=()=>{h&&(clearTimeout(h),h=null)};a.on("draft:sync",async P=>{if(I(),!P){try{a.once("draft:ready",()=>{a.emit("draft:requestSync")}),await s.requestPreviewSyncAPI()}catch(R){switch(I(),R.response.status){case 404:l.value="Preview draft not found",o.value=!1;break;default:l.value="An error occurred while syncing preview",o.value=!1}}return}b(P)}),a.on("draft:unauthorized",()=>{I(),l.value="Unauthorized preview token",o.value=!1}),a.on("disconnect",()=>{I()}),document.body.classList.add(...c),a.on("draft:update",P=>{g.value=!0,s.syncPreview(P),g.value=!1})}),te(()=>{document.body.classList.remove(...c)}),(T,h)=>(q(),L("div",null,[r.value?(q(),L("div",{key:0,id:"__nuxt_preview",class:ne({__preview_ready:o.value,__preview_refreshing:g.value})},[o.value?(q(),L(oe,{key:0},[ve,we,w("button",{onClick:m}," Close ")],64)):E("",!0)],2)):E("",!0),O(B,{name:"preview-loading"},{default:J(()=>[r.value&&!o.value&&!l.value?(q(),L("div",he,[me,w("div",{id:"__preview_loader"},[ye,_e,w("button",{onClick:m}," Cancel ")])])):E("",!0)]),_:1}),O(B,{name:"preview-loading"},{default:J(()=>[l.value?(q(),L("div",ge,[ke,w("div",Ce,[w("p",null,ie(l.value),1),w("button",{onClick:m}," Exit preview ")])])):E("",!0)]),_:1})]))}}),Pe=re(Ie,[["__scopeId","data-v-f74290fc"]]),Se=(i=[],s,c)=>{const f=[...s||[]],y=[...c||[]],r=JSON.parse(JSON.stringify(i));for(const o of f)if(o.oldPath)if(y.splice(y.findIndex(a=>a.path===o.oldPath),1),f.find(a=>a.path===o.oldPath))r.push({path:o.path,parsed:o.parsed});else{const a=r.find(m=>m.path===o.oldPath);a&&(a.path=o.path,o.parsed?a.parsed=o.parsed:o.pathMeta&&["_file","_path","_id","_locale"].forEach(m=>{a.parsed[m]=o.pathMeta[m]}))}else if(o.new)r.push({path:o.path,parsed:o.parsed});else{const l=r.find(a=>a.path===o.path);l&&Object.assign(l,{path:o.path,parsed:o.parsed})}for(const o of y)r.splice(r.findIndex(l=>l.path===o.path),1);const g=new Intl.Collator(void 0,{numeric:!0});return r.sort((o,l)=>g.compare(o.path,l.path)),r},C={appConfig:"app.config.ts",tokensConfig:"tokens.config.ts"},Te=i=>{let s;return(...c)=>(s||(s=i()),s)};function G(i,s){for(const c in i){const f=s[c];c in s||delete i[c],f!==null&&typeof f=="object"&&G(i[c],s[c])}}function Q(i,s){for(const c in s){const f=s[c];f!==null&&typeof f=="object"?(i[c]=i[c]||{},Q(i[c],f)):i[c]=f}}const xe=Te(()=>JSON.parse(JSON.stringify(Z()))),qe=()=>{const i=W(),{studio:s,content:c}=de().public,f=xe();let y;const r=z("studio-client-db",()=>null),g=z("studio-preview-db-files",()=>[]);r.value||(i.hook("content:storage",e=>{r.value=e}),ce("/non-existing-path").findOne());const o=async(e,n,d=!0)=>{const u=window.sessionStorage.getItem("previewToken"),v=await e.getKeys(`${u}:`);await Promise.all(v.map(p=>e.removeItem(p)));const t=new Set(n.map(p=>p.parsed._id.split(":").shift()));await e.setItem(`${u}$`,JSON.stringify({ignoreSources:Array.from(t)})),await Promise.all(n.map(p=>e.setItem(`${u}:${p.parsed._id}`,JSON.stringify(p.parsed))))},l=e=>{const n=M(i,Z);Q(n,H(e,f)),e||G(n,f)},a=e=>{var d,u,v,t;const n=(t=(v=(u=(d=i==null?void 0:i.vueApp)==null?void 0:d._context)==null?void 0:u.config)==null?void 0:v.globalProperties)==null?void 0:t.$pinceauTheme;!n||!(n!=null&&n.updateTheme)||(y||(y=JSON.parse(JSON.stringify((n==null?void 0:n.theme.value)||{}))),M(i,n.updateTheme,[H(e,y)]))},m=async e=>{if(g.value=e.files=e.files||g.value||[],!r.value)return!1;const n=Se(e.files,e.additions,e.deletions),d=n.filter(t=>![C.appConfig,C.tokensConfig].includes(t.path));await o(r.value,d,(e.files||[]).length!==0);const u=n.find(t=>t.path===C.appConfig);l(u==null?void 0:u.parsed);const v=n.find(t=>t.path===C.tokensConfig);return a(v==null?void 0:v.parsed),R(),!0},b=async()=>{const e=window.sessionStorage.getItem("previewToken");await $fetch("api/projects/preview/sync",{baseURL:s==null?void 0:s.apiURL,method:"POST",params:{token:e}})},T=()=>{const e=window.sessionStorage.getItem("previewToken"),n=document.createElement("div");n.id="__nuxt_preview_wrapper",document.body.appendChild(n),le(Pe,{previewToken:e,apiURL:s==null?void 0:s.apiURL,syncPreview:m,requestPreviewSyncAPI:b}).mount(n)},h=async e=>{var u,v,t;const n=window.sessionStorage.getItem("previewToken");if(!e)return null;e=e.replace(/\/$/,"");let d=await((u=r.value)==null?void 0:u.getItem(`${n}:${e}`));return d||(d=await((v=r.value)==null?void 0:v.getItem(`cached:${e}`))),d||(d=d=await((t=r.value)==null?void 0:t.getItem(e))),d},I=e=>{var d;const n=window.sessionStorage.getItem("previewToken");r.value&&r.value.setItem(`${n}:${(d=e.parsed)==null?void 0:d._id}`,JSON.stringify(e.parsed))},P=async e=>{var d;const n=window.sessionStorage.getItem("previewToken");await((d=r.value)==null?void 0:d.removeItem(`${n}:${e}`))},R=async()=>{if(c!=null&&c.documentDriven){const{pages:e}=M(i,pe);for(const n in e.value)e.value[n]&&(e.value[n]=await h(e.value[n]._id))}ue(()=>{M(i,fe)})};return{apiURL:s==null?void 0:s.apiURL,contentStorage:r,syncPreviewFiles:o,syncPreviewAppConfig:l,syncPreviewTokensConfig:a,requestPreviewSynchronization:b,findContentWithId:h,updateContent:I,removeContentWithId:P,requestRerender:R,mountPreviewUI:T,initiateIframeCommunication:X};function X(){if(!window.parent||window.self===window.parent)return;const e=V(),n=U(),d=$(""),u=t=>({path:t.path,query:F(t.query),params:F(t.params),fullPath:t.fullPath,meta:F(t.meta)});window.addEventListener("keydown",t=>{(t.metaKey||t.ctrlKey||t.altKey||t.shiftKey)&&window.parent.postMessage({type:"nuxt-studio:preview:keydown",payload:{key:t.key,metaKey:t.metaKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey}},"*")}),window.addEventListener("message",async t=>{if(!["https://nuxt.studio","https://dev.nuxt.studio"].includes(t.origin))return;const{type:p,payload:x={}}=t.data||{};switch(p){case"nuxt-studio:editor:file-selected":{const _=await h(x.path);_&&(_._partial||_._path!==U().path&&(d.value=_._path,e.push(_._path)));break}case"nuxt-studio:editor:file-changed":{const{additions:_=[],deletions:N=[]}=x;for(const k of _)await I(k);for(const k of N)await P(k.path);R();break}case"nuxt-studio:preview:sync":{m(x);break}case"nuxt-studio:config:file-changed":{const{additions:_=[],deletions:N=[]}=x,k=_.find(S=>S.path===C.appConfig);k&&l(k==null?void 0:k.parsed),N.find(S=>S.path===C.appConfig)&&l(void 0);const K=_.find(S=>S.path===C.tokensConfig);K&&a(K==null?void 0:K.parsed),N.find(S=>S.path===C.tokensConfig)&&a(void 0);break}}}),i.hook("page:finish",()=>{v()}),i.hook("content:document-driven:finish",({route:t,page:p})=>{t.meta.studio_page_contentId=p==null?void 0:p._id}),i.hook("nuxt-studio:preview:ready",()=>{window.parent.postMessage({type:"nuxt-studio:preview:ready",payload:u(U())},"*"),setTimeout(()=>{v()},100)});function v(){const t=Array.from(window.document.querySelectorAll("[data-content-id]")).map(x=>x.getAttribute("data-content-id")),p=Array.from(new Set([n.meta.studio_page_contentId,...t])).filter(Boolean);if(d.value===p[0]){d.value="";return}window.openContentInStudioEditor(p,{navigate:!0,pageContentId:n.meta.studio_page_contentId})}window.openContentInStudioEditor=(t,p={})=>{window.parent.postMessage({type:"nuxt-studio:preview:navigate",payload:{...u(n),contentIds:t,...p}},"*")}}};export{qe as useStudio}; +import{d as Y,u as V,r as $,o as j,_ as ee,a as te,b as q,c as L,n as ne,F as oe,e as w,f as E,g as O,w as J,T as B,t as ie,h as D,p as se,i as ae,j as W,k as re,l as de,m as z,q as ce,s as U,v as M,x as Z,y as H,z as le,A as pe,B as ue,C as fe,D as F}from"./entry.2w2g1VWZ.js";const A=i=>(se("data-v-f74290fc"),i=i(),ae(),i),ve=A(()=>w("svg",{viewBox:"0 0 90 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[w("path",{d:"M50.0016 71.0999h29.2561c.9293.0001 1.8422-.241 2.6469-.6992.8047-.4582 1.4729-1.1173 1.9373-1.9109.4645-.7936.7088-1.6939.7083-2.6102-.0004-.9162-.2455-1.8163-.7106-2.6095L64.192 29.713c-.4644-.7934-1.1325-1.4523-1.937-1.9105-.8046-.4581-1.7173-.6993-2.6463-.6993-.9291 0-1.8418.2412-2.6463.6993-.8046.4582-1.4726 1.1171-1.937 1.9105l-5.0238 8.5861-9.8224-16.7898c-.4648-.7934-1.1332-1.4522-1.938-1.9102-.8047-.4581-1.7176-.6992-2.6468-.6992-.9292 0-1.842.2411-2.6468.6992-.8048.458-1.4731 1.1168-1.9379 1.9102L6.56062 63.2701c-.46512.7932-.71021 1.6933-.71061 2.6095-.00041.9163.24389 1.8166.70831 2.6102.46443.7936 1.1326 1.4527 1.93732 1.9109.80473.4582 1.71766.6993 2.64686.6992h18.3646c7.2763 0 12.6422-3.1516 16.3345-9.3002l8.9642-15.3081 4.8015-8.1925 14.4099 24.6083H54.8058l-4.8042 8.1925ZM29.2077 62.899l-12.8161-.0028L35.603 30.0869l9.5857 16.4047-6.418 10.9645c-2.4521 3.9894-5.2377 5.4429-9.563 5.4429Z",fill:"currentColor"})],-1)),we=A(()=>w("span",null,"Preview mode enabled",-1)),he={key:0},me=A(()=>w("div",{id:"__preview_background"},null,-1)),ye=A(()=>w("svg",{id:"__preview_loading_icon",width:"32",height:"32",viewBox:"0 0 24 24"},[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 0 0 4.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 0 1-15.357-2m15.357 2H15"})],-1)),_e=A(()=>w("p",null,"Initializing the preview...",-1)),ge={key:0},ke=A(()=>w("div",{id:"__preview_background"},null,-1)),Ce={id:"__preview_loader"},Ie=Y({__name:"ContentPreviewMode",props:{previewToken:{type:String,required:!0},apiURL:{type:String,required:!0},syncPreview:{type:Function,required:!0},requestPreviewSyncAPI:{type:Function,required:!0}},setup(i){const s=i,c=["__nuxt_preview","__preview_enabled"],f=W(),y=V(),r=$(!0),g=$(!1),o=$(!1),l=$("");let a;const m=async()=>{D("previewToken").value="",window.sessionStorage.removeItem("previewToken"),await y.replace({query:{preview:void 0}}),window.location.reload()},b=async T=>{const h=await s.syncPreview(T);if(o.value!==!0){if(!h){setTimeout(()=>b(T),1e3);return}D("previewToken").value&&(o.value=!0,await y.replace({query:{}}),f.callHook("nuxt-studio:preview:ready"),window.parent&&window.self!==window.parent&&a.disconnect())}};return j(async()=>{a=(await ee(()=>import("./index.ktinZ6MN.js"),__vite__mapDeps([]),import.meta.url)).connect(`${s.apiURL}/preview`,{transports:["websocket","polling"],auth:{token:s.previewToken}});let h;a.on("connect",()=>{h=setTimeout(()=>{o.value||(h=setTimeout(()=>{l.value="Preview sync timed out",o.value=!1},3e4),a.emit("draft:requestSync"))},3e4)});const I=()=>{h&&(clearTimeout(h),h=null)};a.on("draft:sync",async P=>{if(I(),!P){try{a.once("draft:ready",()=>{a.emit("draft:requestSync")}),await s.requestPreviewSyncAPI()}catch(R){switch(I(),R.response.status){case 404:l.value="Preview draft not found",o.value=!1;break;default:l.value="An error occurred while syncing preview",o.value=!1}}return}b(P)}),a.on("draft:unauthorized",()=>{I(),l.value="Unauthorized preview token",o.value=!1}),a.on("disconnect",()=>{I()}),document.body.classList.add(...c),a.on("draft:update",P=>{g.value=!0,s.syncPreview(P),g.value=!1})}),te(()=>{document.body.classList.remove(...c)}),(T,h)=>(q(),L("div",null,[r.value?(q(),L("div",{key:0,id:"__nuxt_preview",class:ne({__preview_ready:o.value,__preview_refreshing:g.value})},[o.value?(q(),L(oe,{key:0},[ve,we,w("button",{onClick:m}," Close ")],64)):E("",!0)],2)):E("",!0),O(B,{name:"preview-loading"},{default:J(()=>[r.value&&!o.value&&!l.value?(q(),L("div",he,[me,w("div",{id:"__preview_loader"},[ye,_e,w("button",{onClick:m}," Cancel ")])])):E("",!0)]),_:1}),O(B,{name:"preview-loading"},{default:J(()=>[l.value?(q(),L("div",ge,[ke,w("div",Ce,[w("p",null,ie(l.value),1),w("button",{onClick:m}," Exit preview ")])])):E("",!0)]),_:1})]))}}),Pe=re(Ie,[["__scopeId","data-v-f74290fc"]]),Se=(i=[],s,c)=>{const f=[...s||[]],y=[...c||[]],r=JSON.parse(JSON.stringify(i));for(const o of f)if(o.oldPath)if(y.splice(y.findIndex(a=>a.path===o.oldPath),1),f.find(a=>a.path===o.oldPath))r.push({path:o.path,parsed:o.parsed});else{const a=r.find(m=>m.path===o.oldPath);a&&(a.path=o.path,o.parsed?a.parsed=o.parsed:o.pathMeta&&["_file","_path","_id","_locale"].forEach(m=>{a.parsed[m]=o.pathMeta[m]}))}else if(o.new)r.push({path:o.path,parsed:o.parsed});else{const l=r.find(a=>a.path===o.path);l&&Object.assign(l,{path:o.path,parsed:o.parsed})}for(const o of y)r.splice(r.findIndex(l=>l.path===o.path),1);const g=new Intl.Collator(void 0,{numeric:!0});return r.sort((o,l)=>g.compare(o.path,l.path)),r},C={appConfig:"app.config.ts",tokensConfig:"tokens.config.ts"},Te=i=>{let s;return(...c)=>(s||(s=i()),s)};function G(i,s){for(const c in i){const f=s[c];c in s||delete i[c],f!==null&&typeof f=="object"&&G(i[c],s[c])}}function Q(i,s){for(const c in s){const f=s[c];f!==null&&typeof f=="object"?(i[c]=i[c]||{},Q(i[c],f)):i[c]=f}}const xe=Te(()=>JSON.parse(JSON.stringify(Z()))),qe=()=>{const i=W(),{studio:s,content:c}=de().public,f=xe();let y;const r=z("studio-client-db",()=>null),g=z("studio-preview-db-files",()=>[]);r.value||(i.hook("content:storage",e=>{r.value=e}),ce("/non-existing-path").findOne());const o=async(e,n,d=!0)=>{const u=window.sessionStorage.getItem("previewToken"),v=await e.getKeys(`${u}:`);await Promise.all(v.map(p=>e.removeItem(p)));const t=new Set(n.map(p=>p.parsed._id.split(":").shift()));await e.setItem(`${u}$`,JSON.stringify({ignoreSources:Array.from(t)})),await Promise.all(n.map(p=>e.setItem(`${u}:${p.parsed._id}`,JSON.stringify(p.parsed))))},l=e=>{const n=M(i,Z);Q(n,H(e,f)),e||G(n,f)},a=e=>{var d,u,v,t;const n=(t=(v=(u=(d=i==null?void 0:i.vueApp)==null?void 0:d._context)==null?void 0:u.config)==null?void 0:v.globalProperties)==null?void 0:t.$pinceauTheme;!n||!(n!=null&&n.updateTheme)||(y||(y=JSON.parse(JSON.stringify((n==null?void 0:n.theme.value)||{}))),M(i,n.updateTheme,[H(e,y)]))},m=async e=>{if(g.value=e.files=e.files||g.value||[],!r.value)return!1;const n=Se(e.files,e.additions,e.deletions),d=n.filter(t=>![C.appConfig,C.tokensConfig].includes(t.path));await o(r.value,d,(e.files||[]).length!==0);const u=n.find(t=>t.path===C.appConfig);l(u==null?void 0:u.parsed);const v=n.find(t=>t.path===C.tokensConfig);return a(v==null?void 0:v.parsed),R(),!0},b=async()=>{const e=window.sessionStorage.getItem("previewToken");await $fetch("api/projects/preview/sync",{baseURL:s==null?void 0:s.apiURL,method:"POST",params:{token:e}})},T=()=>{const e=window.sessionStorage.getItem("previewToken"),n=document.createElement("div");n.id="__nuxt_preview_wrapper",document.body.appendChild(n),le(Pe,{previewToken:e,apiURL:s==null?void 0:s.apiURL,syncPreview:m,requestPreviewSyncAPI:b}).mount(n)},h=async e=>{var u,v,t;const n=window.sessionStorage.getItem("previewToken");if(!e)return null;e=e.replace(/\/$/,"");let d=await((u=r.value)==null?void 0:u.getItem(`${n}:${e}`));return d||(d=await((v=r.value)==null?void 0:v.getItem(`cached:${e}`))),d||(d=d=await((t=r.value)==null?void 0:t.getItem(e))),d},I=e=>{var d;const n=window.sessionStorage.getItem("previewToken");r.value&&r.value.setItem(`${n}:${(d=e.parsed)==null?void 0:d._id}`,JSON.stringify(e.parsed))},P=async e=>{var d;const n=window.sessionStorage.getItem("previewToken");await((d=r.value)==null?void 0:d.removeItem(`${n}:${e}`))},R=async()=>{if(c!=null&&c.documentDriven){const{pages:e}=M(i,pe);for(const n in e.value)e.value[n]&&(e.value[n]=await h(e.value[n]._id))}ue(()=>{M(i,fe)})};return{apiURL:s==null?void 0:s.apiURL,contentStorage:r,syncPreviewFiles:o,syncPreviewAppConfig:l,syncPreviewTokensConfig:a,requestPreviewSynchronization:b,findContentWithId:h,updateContent:I,removeContentWithId:P,requestRerender:R,mountPreviewUI:T,initiateIframeCommunication:X};function X(){if(!window.parent||window.self===window.parent)return;const e=V(),n=U(),d=$(""),u=t=>({path:t.path,query:F(t.query),params:F(t.params),fullPath:t.fullPath,meta:F(t.meta)});window.addEventListener("keydown",t=>{(t.metaKey||t.ctrlKey||t.altKey||t.shiftKey)&&window.parent.postMessage({type:"nuxt-studio:preview:keydown",payload:{key:t.key,metaKey:t.metaKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey}},"*")}),window.addEventListener("message",async t=>{if(!["https://nuxt.studio","https://dev.nuxt.studio"].includes(t.origin))return;const{type:p,payload:x={}}=t.data||{};switch(p){case"nuxt-studio:editor:file-selected":{const _=await h(x.path);_&&(_._partial||_._path!==U().path&&(d.value=_._path,e.push(_._path)));break}case"nuxt-studio:editor:file-changed":{const{additions:_=[],deletions:N=[]}=x;for(const k of _)await I(k);for(const k of N)await P(k.path);R();break}case"nuxt-studio:preview:sync":{m(x);break}case"nuxt-studio:config:file-changed":{const{additions:_=[],deletions:N=[]}=x,k=_.find(S=>S.path===C.appConfig);k&&l(k==null?void 0:k.parsed),N.find(S=>S.path===C.appConfig)&&l(void 0);const K=_.find(S=>S.path===C.tokensConfig);K&&a(K==null?void 0:K.parsed),N.find(S=>S.path===C.tokensConfig)&&a(void 0);break}}}),i.hook("page:finish",()=>{v()}),i.hook("content:document-driven:finish",({route:t,page:p})=>{t.meta.studio_page_contentId=p==null?void 0:p._id}),i.hook("nuxt-studio:preview:ready",()=>{window.parent.postMessage({type:"nuxt-studio:preview:ready",payload:u(U())},"*"),setTimeout(()=>{v()},100)});function v(){const t=Array.from(window.document.querySelectorAll("[data-content-id]")).map(x=>x.getAttribute("data-content-id")),p=Array.from(new Set([n.meta.studio_page_contentId,...t])).filter(Boolean);if(d.value===p[0]){d.value="";return}window.openContentInStudioEditor(p,{navigate:!0,pageContentId:n.meta.studio_page_contentId})}window.openContentInStudioEditor=(t,p={})=>{window.parent.postMessage({type:"nuxt-studio:preview:navigate",payload:{...u(n),contentIds:t,...p}},"*")}}};export{qe as useStudio}; function __vite__mapDeps(indexes) { if (!__vite__mapDeps.viteFileDeps) { __vite__mapDeps.viteFileDeps = [] diff --git a/_nuxt/xychartDiagram-f746c04c.1ExPLvQf.js b/_nuxt/xychartDiagram-f746c04c.nQAhD605.js similarity index 99% rename from _nuxt/xychartDiagram-f746c04c.1ExPLvQf.js rename to _nuxt/xychartDiagram-f746c04c.nQAhD605.js index 4c3550228e..cef1e53168 100644 --- a/_nuxt/xychartDiagram-f746c04c.1ExPLvQf.js +++ b/_nuxt/xychartDiagram-f746c04c.nQAhD605.js @@ -1,4 +1,4 @@ -import{aZ as zt,a_ as ot,aL as wt,aK as Ft,s as Nt,g as Xt,x as Yt,y as St,a as Ht,b as $t,A as Ut,l as _t,aI as qt,i as jt,d as Gt}from"./mermaid-934d9bea.GjCu814R.js";import{a as Qt}from"./createText-aebacdfe.b7sMoTCr.js";import{i as Kt}from"./init.Hi12RPRh.js";import{o as Zt}from"./ordinal.d2xiFBCc.js";import{l as ft}from"./linear.vSTMcYPd.js";import{l as pt}from"./line.yVnlcbB_.js";import"./entry.TEDHt2QA.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";function Jt(e,t,i){e=+e,t=+t,i=(n=arguments.length)<2?(t=e,e=0,1):n<3?1:+i;for(var s=-1,n=Math.max(0,Math.ceil((t-e)/i))|0,o=new Array(n);++s"u"&&(k.yylloc={});var tt=k.yylloc;a.push(tt);var Wt=k.options&&k.options.ranges;typeof B.yy.parseError=="function"?this.parseError=B.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ot(){var I;return I=g.pop()||k.lex()||xt,typeof I!="number"&&(I instanceof Array&&(g=I,I=g.pop()),I=l.symbols_[I]||I),I}for(var D,W,v,it,O={},q,M,dt,j;;){if(W=u[u.length-1],this.defaultActions[W]?v=this.defaultActions[W]:((D===null||typeof D>"u")&&(D=Ot()),v=F[W]&&F[W][D]),typeof v>"u"||!v.length||!v[0]){var et="";j=[];for(q in F[W])this.terminals_[q]&&q>Vt&&j.push("'"+this.terminals_[q]+"'");k.showPosition?et="Parse error on line "+(U+1)+`: +import{aZ as zt,a_ as ot,aL as wt,aK as Ft,s as Nt,g as Xt,x as Yt,y as St,a as Ht,b as $t,A as Ut,l as _t,aI as qt,i as jt,d as Gt}from"./mermaid-934d9bea.JP-6_YN_.js";import{a as Qt}from"./createText-aebacdfe.QPUQ3eAz.js";import{i as Kt}from"./init.Hi12RPRh.js";import{o as Zt}from"./ordinal.d2xiFBCc.js";import{l as ft}from"./linear.znFunSuN.js";import{l as pt}from"./line.uArpYtMu.js";import"./entry.2w2g1VWZ.js";import"./_commonjsHelpers.5-cIlDoe.js";import"./array.Nw74a44z.js";import"./path.aUcfwwLI.js";function Jt(e,t,i){e=+e,t=+t,i=(n=arguments.length)<2?(t=e,e=0,1):n<3?1:+i;for(var s=-1,n=Math.max(0,Math.ceil((t-e)/i))|0,o=new Array(n);++s"u"&&(k.yylloc={});var tt=k.yylloc;a.push(tt);var Wt=k.options&&k.options.ranges;typeof B.yy.parseError=="function"?this.parseError=B.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ot(){var I;return I=g.pop()||k.lex()||xt,typeof I!="number"&&(I instanceof Array&&(g=I,I=g.pop()),I=l.symbols_[I]||I),I}for(var D,W,v,it,O={},q,M,dt,j;;){if(W=u[u.length-1],this.defaultActions[W]?v=this.defaultActions[W]:((D===null||typeof D>"u")&&(D=Ot()),v=F[W]&&F[W][D]),typeof v>"u"||!v.length||!v[0]){var et="";j=[];for(q in F[W])this.terminals_[q]&&q>Vt&&j.push("'"+this.terminals_[q]+"'");k.showPosition?et="Parse error on line "+(U+1)+`: `+k.showPosition()+` Expecting `+j.join(", ")+", got '"+(this.terminals_[D]||D)+"'":et="Parse error on line "+(U+1)+": Unexpected "+(D==xt?"end of input":"'"+(this.terminals_[D]||D)+"'"),this.parseError(et,{text:k.match,token:this.terminals_[D]||D,line:k.yylineno,loc:tt,expected:j})}if(v[0]instanceof Array&&v.length>1)throw new Error("Parse Error: multiple actions possible at state: "+W+", token: "+D);switch(v[0]){case 1:u.push(D),b.push(k.yytext),a.push(k.yylloc),u.push(v[1]),D=null,gt=k.yyleng,x=k.yytext,U=k.yylineno,tt=k.yylloc;break;case 2:if(M=this.productions_[v[1]][1],O.$=b[b.length-M],O._$={first_line:a[a.length-(M||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(M||1)].first_column,last_column:a[a.length-1].last_column},Wt&&(O._$.range=[a[a.length-(M||1)].range[0],a[a.length-1].range[1]]),it=this.performAction.apply(O,[x,gt,U,B.yy,v[1],b,a].concat(Bt)),typeof it<"u")return it;M&&(u=u.slice(0,-1*M*2),b=b.slice(0,-1*M),a=a.slice(0,-1*M)),u.push(this.productions_[v[1]][0]),b.push(O.$),a.push(O._$),dt=F[u[u.length-2]][u[u.length-1]],u.push(dt);break;case 3:return!0}}return!0}},It=function(){var V={EOF:1,parseError:function(l,u){if(this.yy.parser)this.yy.parser.parseError(l,u);else throw new Error(l)},setInput:function(r,l){return this.yy=l||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var l=r.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},unput:function(r){var l=r.length,u=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),u.length-1&&(this.yylineno-=u.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:u?(u.length===g.length?this.yylloc.first_column:0)+g[g.length-u.length].length-u[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(r){this.unput(this.match.slice(r))},pastInput:function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var r=this.pastInput(),l=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/_payload.json b/_payload.json index 3395a26777..02acadc193 100644 --- a/_payload.json +++ b/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302838747] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383447406] \ No newline at end of file diff --git a/advanced/customize-recaptcha-script-loading/_payload.json b/advanced/customize-recaptcha-script-loading/_payload.json index 442af44260..fdbdc39106 100644 --- a/advanced/customize-recaptcha-script-loading/_payload.json +++ b/advanced/customize-recaptcha-script-loading/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842257] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450634] \ No newline at end of file diff --git a/advanced/customize-recaptcha-script-loading/index.html b/advanced/customize-recaptcha-script-loading/index.html index 03001f7365..5afa9d6585 100644 --- a/advanced/customize-recaptcha-script-loading/index.html +++ b/advanced/customize-recaptcha-script-loading/index.html @@ -28,44 +28,44 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Customize reCAPTCHA script loading

By default vue-recaptcha will use unhead to load the reCAPTCHA script.

If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function.

import { onMounted } from 'vue'import { defineScriptLoader, toQueryString } from 'vue-recaptcha'// Define your own loadScript functionconst loadScript = defineScriptLoader((options) => {  // This function will be called by useRecaptchaProvider  return () => {    onMounted(() => {      // You can use any way to load the reCAPTCHA script      const script = document.createElement('script')      script.src = `${options.recaptchaApiURL}?${toQueryString(options.params)}`      script.async = true      script.defer = true      if (options.nonce)        script.nonce = options.nonce      document.head.append(script)    })  }})const plugin = createPlugin(loadScript)

The defineScriptLoader function and ScriptLoaderOptions

export interface RecaptchaParams {  // You must pass these two value as query string to reCAPTCHA  render: LiteralUnion<'explicit', string>  onload: string  // Below you can customize as you want  hl?: string | undefined  trustedtypes?: 'true' | undefined  [k: string]: string | undefined}export interface ScriptLoaderOptions {  /**   * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored   */  useRecaptchaNet?: boolean  /**   * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored   */  recaptchaApiURL: string  /**   * nonce for script tag   */  nonce?: string  /**   * params for recaptcha api   */  params: RecaptchaParams}/** *  Helper function for define your own loadScript function */function defineScriptLoader(fn: ScriptLoaderFactory): NormalizedScriptLoaderFactory
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Customize reCAPTCHA script loading

By default vue-recaptcha will use unhead to load the reCAPTCHA script.

If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function.

import { onMounted } from 'vue'import { defineScriptLoader, toQueryString } from 'vue-recaptcha'// Define your own loadScript functionconst loadScript = defineScriptLoader((options) => {  // This function will be called by useRecaptchaProvider  return () => {    onMounted(() => {      // You can use any way to load the reCAPTCHA script      const script = document.createElement('script')      script.src = `${options.recaptchaApiURL}?${toQueryString(options.params)}`      script.async = true      script.defer = true      if (options.nonce)        script.nonce = options.nonce      document.head.append(script)    })  }})const plugin = createPlugin(loadScript)

The defineScriptLoader function and ScriptLoaderOptions

export interface RecaptchaParams {  // You must pass these two value as query string to reCAPTCHA  render: LiteralUnion<'explicit', string>  onload: string  // Below you can customize as you want  hl?: string | undefined  trustedtypes?: 'true' | undefined  [k: string]: string | undefined}export interface ScriptLoaderOptions {  /**   * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored   */  useRecaptchaNet?: boolean  /**   * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored   */  recaptchaApiURL: string  /**   * nonce for script tag   */  nonce?: string  /**   * params for recaptcha api   */  params: RecaptchaParams}/** *  Helper function for define your own loadScript function */function defineScriptLoader(fn: ScriptLoaderFactory): NormalizedScriptLoaderFactory
+ \ No newline at end of file diff --git a/api/_content/cache.1704302799570.json b/api/_content/cache.1704383405884.json similarity index 99% rename from api/_content/cache.1704302799570.json rename to api/_content/cache.1704383405884.json index 9891c9a54f..367c082692 100644 --- a/api/_content/cache.1704302799570.json +++ b/api/_content/cache.1704383405884.json @@ -1 +1 @@ -{"generatedAt":1704302838710,"generateTime":3188,"contents":[{"_path":"/","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"vue-recaptcha document","description":"","navigation":false,"layout":"page","body":{"type":"root","children":[{"type":"element","tag":"block-hero","props":{":cta":"[\"Get Started\",\"/guide\"]",":secondary":"[\"Open on GitHub →\",\"https://github.com/DanSnow/vue-recaptcha\"]","snippet":"yarn add vue-recaptcha@next"},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js"}]}]}]},{"type":"element","tag":"index-demo","props":{},"children":[{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"recaptcha-checkbox","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":" \n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]}]}]}]}]},{"type":"element","tag":"card-grid","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"What's included"}]}]},{"type":"element","tag":"template","props":{"v-slot:root":""},"children":[{"type":"element","tag":"ellipsis","props":{},"children":[]}]},{"type":"element","tag":"card","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"reCAPTCHA v2"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The \"I'm not a robot\" checkbox"}]}]}]},{"type":"element","tag":"card","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"reCAPTCHA v3"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Determinate if user is human without interrupt the user flow"}]}]}]},{"type":"element","tag":"card","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Nuxt integration"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Use reCAPTCHA in Nuxt.js"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:0.index.md","_source":"content","_file":"0.index.md","_extension":"md"},{"_path":"/guide/_dir","_dir":"guide","_draft":false,"_partial":true,"_locale":"","title":"Guide","_id":"content:1.guide:_dir.yml","_type":"yaml","_source":"content","_file":"1.guide/_dir.yml","_extension":"yml"},{"_path":"/guide","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get started","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"get-started"},"children":[{"type":"text","value":"Get started"}]},{"type":"element","tag":"alert","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"From vue-recaptcha v2? v3 is a complete rewrite, please check out "},{"type":"element","tag":"a","props":{"href":"./guide/migration"},"children":[{"type":"text","value":"migration guide"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Let's get started with vue-recaptcha."}]},{"type":"element","tag":"h1","props":{"id":"what-is-vue-recaptcha"},"children":[{"type":"text","value":"What is vue-recaptcha"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha is just a wrapper to provide an easier interface for "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/","rel":["nofollow"]},"children":[{"type":"text","value":"Google's reCAPTCHA"}]}]},{"type":"element","tag":"list","props":{"type":"success"},"children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"component that is easy to use"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"composable to integrate into your own app"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha is not for:"}]},{"type":"element","tag":"list","props":{"type":"danger"},"children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"customize reCAPTCHA UI"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"provide features that is not implemented by Google reCATPCHA, like change language on the fly"}]}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{"label":"Yarn"},"children":[{"type":"element","tag":"terminal","props":{"content":"yarn add vue-recaptcha@next"},"children":[]}]},{"type":"element","tag":"code-block","props":{"label":"NPM"},"children":[{"type":"element","tag":"terminal","props":{"content":"npm install vue-recaptcha@next"},"children":[]}]},{"type":"element","tag":"code-block","props":{"label":"PNPM"},"children":[{"type":"element","tag":"terminal","props":{"content":"pnpm add vue-recaptcha@next"},"children":[]}]}]},{"type":"element","tag":"h2","props":{"id":"setup-vue-recaptcha-plugin"},"children":[{"type":"text","value":"Setup vue-recaptcha plugin"}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, vue-recaptcha use "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@unhead/vue"}]},{"type":"text","value":" to inject the reCAPTCHA script, if you are not using "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@unhead/vue"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@vueuse/head"}]},{"type":"text","value":", please check out "},{"type":"element","tag":"a","props":{"href":"#usage-without-unhead"},"children":[{"type":"text","value":"Usage without unhead"}]}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { VueRecaptchaPlugin } from 'vue-recaptcha'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin, {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { VueRecaptchaPlugin } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please replace "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"YOUR_V2_SITEKEY_HERE"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"YOUR_V3_SITEKEY_HERE"}]},{"type":"text","value":" with your keys. If you don't have one, please go to "},{"type":"element","tag":"a","props":{"href":"https://www.google.com/recaptcha/admin","rel":["nofollow"]},"children":[{"type":"text","value":"here"}]},{"type":"text","value":" and apply one"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v2SiteKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In this document, if you see "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]},{"type":"text","value":" which means you'll need to pass "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v2SiteKey"}]},{"type":"text","value":" and "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]},{"type":"text","value":" means you'll need "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v3SiteKey"}]}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"text","value":"If you did't provide the corresponding site key, you'll get a runtime error"}]},{"type":"element","tag":"h2","props":{"id":"provide-recaptcha-script"},"children":[{"type":"text","value":"Provide reCAPTCHA script"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To load the reCAPTCHA script, you will need to call "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"text","value":" in your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"app.vue"}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useRecaptchaProvider } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" id"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"app\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"router-view"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"That's all, now you can start using vue-recaptcha. Please see "},{"type":"element","tag":"a","props":{"href":"./components"},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" for quick introduce for all of the components"}]},{"type":"element","tag":"button-link","props":{"href":"./components"},"children":[{"type":"text","value":"Go to component overview"}]},{"type":"element","tag":"h2","props":{"id":"usage-without-unhead"},"children":[{"type":"text","value":"Usage without unhead"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are not using "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@unhead/vue"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@vueuse/head"}]},{"type":"text","value":", you can simply import the plugin from "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"vue-recaptcha/head"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { VueRecaptchaPlugin } from 'vue-recaptcha/head'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin, {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { VueRecaptchaPlugin } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha/head'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"With this version, it will inject the reCAPTCHA script by simply creating a "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"script"}]},{"type":"text","value":" tag in document "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"head"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"setup-vue-recaptcha-plugin","depth":2,"text":"Setup vue-recaptcha plugin"},{"id":"provide-recaptcha-script","depth":2,"text":"Provide reCAPTCHA script"},{"id":"usage-without-unhead","depth":2,"text":"Usage without unhead"}]}},"_type":"markdown","_id":"content:1.guide:0.index.md","_source":"content","_file":"1.guide/0.index.md","_extension":"md"},{"_path":"/guide/nuxt","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"Nuxt","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"nuxt"},"children":[{"type":"text","value":"Nuxt"}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha supports Nuxt.js out of the box."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"alert","props":{"type":"danger"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Original name"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Renamed to"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"Checkbox"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaCheckbox"}]}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV2"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaChallengeV2"}]}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV3"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaChallengeV3"}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can pass options to the module by adding a "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha"}]},{"type":"text","value":" key to your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"nuxt.config.js"}]},{"type":"text","value":" file in "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"runtimeConfig.public"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"enterprise"},"children":[{"type":"text","value":"Enterprise"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using reCAPTCHA Enterprise, you can use the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":" to enable the enterprise version support."}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Enterprise version support is experimental and may be changed in the future."}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n recaptcha: {\n enterprise: true,\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" enterprise: "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"manually-install-plugin"},"children":[{"type":"text","value":"Manually Install Plugin"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"nuxt.config.js"}]},{"type":"text","value":" file."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n recaptcha: {\n plugin: false,\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" plugin: "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"false"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you will need to manually set up the plugin by creating a file named "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha.ts"}]},{"type":"text","value":" in your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"plugins"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import VueRecaptchaPlugin from 'vue-recaptcha'\n\nexport default defineNuxtPlugin(({ vueApp }) => {\n const {\n public: { recaptcha },\n } = useRuntimeConfig()\n vueApp.use(VueRecaptchaPlugin, recaptcha)\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" VueRecaptchaPlugin "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" defineNuxtPlugin"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(({ "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"vueApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }) "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" public"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"recaptcha"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useRuntimeConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" vueApp."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, recaptcha)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"options","depth":2,"text":"Options"},{"id":"enterprise","depth":2,"text":"Enterprise"},{"id":"manually-install-plugin","depth":2,"text":"Manually Install Plugin"}]}},"_type":"markdown","_id":"content:1.guide:1.nuxt.md","_source":"content","_file":"1.guide/1.nuxt.md","_extension":"md"},{"_path":"/guide/migration","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"Migration from v2","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"migration-from-v2"},"children":[{"type":"text","value":"Migration from v2"}]},{"type":"element","tag":"h2","props":{"id":"_1-set-up-the-plugin"},"children":[{"type":"text","value":"1. set up the plugin"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"V3 need you to set up a Vue plugin before start using."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { VueRecaptchaPlugin } from 'vue-recaptcha'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin, {\n v2SiteKey: 'YOUR_SITE_KEY_HERE'\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { VueRecaptchaPlugin } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_SITE_KEY_HERE'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"_2-provide-recaptcha-script"},"children":[{"type":"text","value":"2. Provide reCAPTCHA script"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To load the reCAPTCHA script, you will need to call "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"text","value":" in your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"app.vue"}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useRecaptchaProvider } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"_3-use-the-components"},"children":[{"type":"text","value":"3. Use the components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Now you can start using the components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using the \"I'm not a robot\" checkbox, please use the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read more at "},{"type":"element","tag":"a","props":{"href":"../components/checkbox"},"children":[{"type":"text","value":"here"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using the invisible reCAPTCHA, please use the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read more at "},{"type":"element","tag":"a","props":{"href":"../components/challenge-v2"},"children":[{"type":"text","value":"here"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"_1-set-up-the-plugin","depth":2,"text":"1. set up the plugin"},{"id":"_2-provide-recaptcha-script","depth":2,"text":"2. Provide reCAPTCHA script"},{"id":"_3-use-the-components","depth":2,"text":"3. Use the components"}]}},"_type":"markdown","_id":"content:1.guide:2.migration.md","_source":"content","_file":"1.guide/2.migration.md","_extension":"md"},{"_path":"/guide/enterprise","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"Enterprise reCAPTCHA Support","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"enterprise-recaptcha-support"},"children":[{"type":"text","value":"Enterprise reCAPTCHA Support"}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Enterprise version support is experimental and may be changed in the future."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Simply change your plugin import to the following:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import VueRecaptchaPlugin from 'vue-recaptcha/enterprise'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin)\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" VueRecaptchaPlugin "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha/enterprise'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin)"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"usage-without-unhead"},"children":[{"type":"text","value":"Usage without unhead"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are not using "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"unhead"}]},{"type":"text","value":" and want to use the enterprise version, you can use the following code:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin)\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" VueRecaptchaPlugin "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha/enterprise-head'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin)"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"nuxt"},"children":[{"type":"text","value":"Nuxt"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using Nuxt, you can set the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha.enterprise"}]},{"type":"text","value":" option to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"true"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n recaptcha: {\n enterprise: true,\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" enterprise: "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"usage-without-unhead","depth":2,"text":"Usage without unhead"},{"id":"nuxt","depth":2,"text":"Nuxt"}]}},"_type":"markdown","_id":"content:1.guide:3.enterprise.md","_source":"content","_file":"1.guide/3.enterprise.md","_extension":"md"},{"_path":"/guide/faq","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"FAQ","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"faq"},"children":[{"type":"text","value":"FAQ"}]},{"type":"element","tag":"h2","props":{"id":"what-is-recaptcha-couldnt-find-user-provided-function-__vuerecaptchaloaded"},"children":[{"type":"text","value":"What is \"ReCAPTCHA couldn't find user-provided function: "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"__vueRecaptchaLoaded"}]},{"type":"text","value":"\"?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app."}]},{"type":"element","tag":"h2","props":{"id":"how-to-test-vue-recaptcha"},"children":[{"type":"text","value":"How to test vue-recaptcha?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can mock "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"window.grecaptcha"}]},{"type":"text","value":" to bypass google's recaptcha."}]},{"type":"element","tag":"h2","props":{"id":"how-about-an-e2e-testing-or-integration-testing"},"children":[{"type":"text","value":"How about an e2e testing (or integration testing)?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please reference to "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/faq#id-like-to-run-automated-tests-with-recaptcha.-what-should-i-do","rel":["nofollow"]},"children":[{"type":"text","value":"recaptcha's FAQ"}]},{"type":"text","value":"."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"what-is-recaptcha-couldnt-find-user-provided-function-__vuerecaptchaloaded","depth":2,"text":"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?"},{"id":"how-to-test-vue-recaptcha","depth":2,"text":"How to test vue-recaptcha?"},{"id":"how-about-an-e2e-testing-or-integration-testing","depth":2,"text":"How about an e2e testing (or integration testing)?"}]}},"_type":"markdown","_id":"content:1.guide:4.faq.md","_source":"content","_file":"1.guide/4.faq.md","_extension":"md"},{"_path":"/components/_dir","_dir":"components","_draft":false,"_partial":true,"_locale":"","title":"Components","_id":"content:2.components:_dir.yml","_type":"yaml","_source":"content","_file":"2.components/_dir.yml","_extension":"yml"},{"_path":"/components","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Overview","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"overview"},"children":[{"type":"text","value":"Overview"}]},{"type":"element","tag":"h2","props":{"id":"checkbox-v2"},"children":[{"type":"element","tag":"a","props":{"href":"./components/checkbox"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"text","value":" "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The most basic form of the reCAPTCHA"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"recaptcha-checkbox","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"button-link","props":{"href":"./components/checkbox"},"children":[{"type":"text","value":"Go to document"}]},{"type":"element","tag":"h2","props":{"id":"challengev2-v2"},"children":[{"type":"element","tag":"a","props":{"href":"./components/challenge-v2"},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"text","value":" "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Invisible reCAPTCHA."}]},{"type":"element","tag":"button-link","props":{"href":"./components/challenge-v2"},"children":[{"type":"text","value":"Go to document"}]},{"type":"element","tag":"h2","props":{"id":"challengev3-v3"},"children":[{"type":"element","tag":"a","props":{"href":"./components/challenge-v3"},"children":[{"type":"text","value":"ChallengeV3"}]},{"type":"text","value":" "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"reCAPTCHA v3"}]},{"type":"element","tag":"button-link","props":{"href":"./components/challenge-v3"},"children":[{"type":"text","value":"Go to document"}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"checkbox-v2","depth":2,"text":"Checkbox v2"},{"id":"challengev2-v2","depth":2,"text":"ChallengeV2 v2"},{"id":"challengev3-v3","depth":2,"text":"ChallengeV3 v3"}]}},"_type":"markdown","_id":"content:2.components:0.index.md","_source":"content","_file":"2.components/0.index.md","_extension":"md"},{"_path":"/components/checkbox","_dir":"components","_draft":false,"_partial":false,"_locale":"","title":"Checkbox","description":"Insert reCAPTCHA v2 checkbox","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"checkbox-v2"},"children":[{"type":"text","value":"Checkbox "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Insert reCAPTCHA v2 checkbox"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"checkbox-demo","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" theme"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'light'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'dark'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'light'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ThemeButton"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"theme\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @click"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response = ''\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">{{ response ? 'Verified' : 'Please click the checkbox' }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" :key"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"theme\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" :theme"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"theme\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"props"},"children":[{"type":"text","value":"Props"}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"default"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"as"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'div'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"What element to render"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"theme"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'light' | 'dark'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'light'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Theme for reCAPTCHA checkbox"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"size"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'normal' | 'compact'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'normal'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Size for the reCAPTCHA checkbox"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"v-model"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v-model"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The reCAPTCHA response"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"widgetId"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Widget id for reCAPTCHA checkbox"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"about-modelvalue"},"children":[{"type":"text","value":"About "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can set "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]},{"type":"text","value":" to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"null"}]},{"type":"text","value":" or empty string to reset reCAPTCHA checkbox."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"props","depth":2,"text":"Props"},{"id":"v-model","depth":2,"text":"v-model","children":[{"id":"about-modelvalue","depth":3,"text":"About modelValue"}]}]}},"_type":"markdown","_id":"content:2.components:1.checkbox.md","_source":"content","_file":"2.components/1.checkbox.md","_extension":"md"},{"_path":"/components/challenge-v2","_dir":"components","_draft":false,"_partial":false,"_locale":"","title":"ChallengeV2","description":"Create invisible reCAPTCHA v2","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"challengev2-v2"},"children":[{"type":"text","value":"ChallengeV2 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Create invisible reCAPTCHA v2"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"challenge-v2-demo","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { RecaptchaV2State } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" '#recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" map"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Init]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Click to Challenge'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Verified]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Verified'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Expired]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Expired'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Error]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Error'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-slot"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"{ state }\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"props"},"children":[{"type":"text","value":"Props"}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"default"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"as"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'div'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"What element to render"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"badge"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"`'bottomright'"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"'bottomleft'"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"'inline'`"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"autoExecute"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"boolean"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Should vue-recaptcha execute challenge on click, if you set it to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" you'll need to call the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"execute"}]},{"type":"text","value":" method in the slot"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"v-model"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v-model"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The reCAPTCHA response"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"widgetId"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Widget id for reCAPTCHA checkbox"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"about-modelvalue"},"children":[{"type":"text","value":"About "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can set "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]},{"type":"text","value":" to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"null"}]},{"type":"text","value":" or empty string to reset reCAPTCHA checkbox."}]},{"type":"element","tag":"h2","props":{"id":"about-the-visible-badge-for-invisible-recaptcha"},"children":[{"type":"text","value":"About the visible Badge for invisible reCAPTCHA"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it."}]},{"type":"element","tag":"pre","props":{"className":"language-css shiki shiki-themes github-light github-dark","code":".grecaptcha-badge { visibility: hidden; }\n","language":"css","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":".grecaptcha-badge"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"visibility"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"hidden"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"; }"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/faq#id-like-to-hide-the-recaptcha-badge.-what-is-allowed","rel":["nofollow"]},"children":[{"type":"text","value":"link"}]}]},{"type":"element","tag":"h2","props":{"id":"slots"},"children":[{"type":"text","value":"Slots"}]},{"type":"element","tag":"h3","props":{"id":"default"},"children":[{"type":"text","value":"default"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This is the position that usually place a your submit button. When click on the content, "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"text","value":" will automatically execute the reCAPTCHA challenge by default"}]},{"type":"element","tag":"h4","props":{"id":"slot-api"},"children":[{"type":"text","value":"Slot API"}]},{"type":"element","tag":"pre","props":{"className":"language-typescript shiki shiki-themes github-light github-dark","code":"interface SlotApi {\n /**\n * widget id\n */\n widgetId: WidgetID | undefined\n /**\n * reCAPTCHA state\n */\n state: RecaptchaV2State\n\n isError: boolean\n isExpired: boolean\n isVerified: boolean\n\n /**\n * reset reCAPTCHA\n */\n reset: () => void\n /**\n * execute challenge\n */\n execute: () => void\n}\n","language":"typescript","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" SlotApi"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * widget id"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" widgetId"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" WidgetID"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA state"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" state"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2State"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" isError"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" isExpired"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" isVerified"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reset reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" reset"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * execute challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"recaptchav2state"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaV2State"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export enum RecaptchaV2State {\n Init = 'init',\n Verified = 'verified',\n Expired = 'expired',\n Error = 'error',\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" enum"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2State"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Init"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'init'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Verified"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'verified'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Expired"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'expired'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Error"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'error'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"mermaid","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"props","depth":2,"text":"Props"},{"id":"v-model","depth":2,"text":"v-model","children":[{"id":"about-modelvalue","depth":3,"text":"About modelValue"}]},{"id":"about-the-visible-badge-for-invisible-recaptcha","depth":2,"text":"About the visible Badge for invisible reCAPTCHA"},{"id":"slots","depth":2,"text":"Slots","children":[{"id":"default","depth":3,"text":"default"},{"id":"recaptchav2state","depth":3,"text":"RecaptchaV2State"}]}]}},"_type":"markdown","_id":"content:2.components:2.challenge-v2.md","_source":"content","_file":"2.components/2.challenge-v2.md","_extension":"md"},{"_path":"/components/challenge-v3","_dir":"components","_draft":false,"_partial":false,"_locale":"","title":"ChallengeV3","description":"Create reCAPTCHA v3 challenge","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"challengev3-v3"},"children":[{"type":"text","value":"ChallengeV3 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Create reCAPTCHA v3 challenge"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"challenge-v3-demo","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ChallengeV3"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" action"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"submit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"props"},"children":[{"type":"text","value":"Props"}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"default"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"action"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"action"}]},{"type":"text","value":" for reCAPTCHA v3"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"as"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'div'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"What element to render"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"autoExecute"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"boolean"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Should vue-recaptcha execute challenge on click, if you set it to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" you'll need to call the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"execute"}]},{"type":"text","value":" method in the slot"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"v-model"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v-model"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The reCAPTCHA response"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"slots"},"children":[{"type":"text","value":"Slots"}]},{"type":"element","tag":"h3","props":{"id":"default"},"children":[{"type":"text","value":"default"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This is the position that usually place a your submit button. When click on the content, "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV3"}]},{"type":"text","value":" will automatically execute the reCAPTCHA challenge by default"}]},{"type":"element","tag":"h4","props":{"id":"slot-api"},"children":[{"type":"text","value":"Slot API"}]},{"type":"element","tag":"pre","props":{"className":"language-typescript shiki shiki-themes github-light github-dark","code":"interface SlotApi {\n /**\n * reCAPTCHA v3 response\n */\n response: string | undefined\n /**\n * execute reCAPTCHA v3 challenge\n */\n execute: () => Promise\n}\n","language":"typescript","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" SlotApi"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA v3 response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * execute reCAPTCHA v3 challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Promise"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"props","depth":2,"text":"Props"},{"id":"v-model","depth":2,"text":"v-model"},{"id":"slots","depth":2,"text":"Slots","children":[{"id":"default","depth":3,"text":"default"}]}]}},"_type":"markdown","_id":"content:2.components:3.challenge-v3.md","_source":"content","_file":"2.components/3.challenge-v3.md","_extension":"md"},{"_path":"/composables/_dir","_dir":"composables","_draft":false,"_partial":true,"_locale":"","title":"Composables","_id":"content:3.composables:_dir.yml","_type":"yaml","_source":"content","_file":"3.composables/_dir.yml","_extension":"yml"},{"_path":"/composables/recaptcha-provider","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useRecaptchaProvider","description":"The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"userecaptchaprovider"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useRecaptchaProvider } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:3.composables:0.recaptcha-provider.md","_source":"content","_file":"3.composables/0.recaptcha-provider.md","_extension":"md"},{"_path":"/composables/challenge-v2","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useChallengeV2","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"usechallengev2-v2"},"children":[{"type":"text","value":"useChallengeV2 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"h2","props":{"id":"description"},"children":[{"type":"text","value":"Description"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA"}]},{"type":"element","tag":"h2","props":{"id":"input"},"children":[{"type":"text","value":"Input"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"interface RecaptchaV2CheckboxOptionsInput {\n theme?: 'dark' | 'light'\n size?: 'compact' | 'normal'\n tabindex?: string\n}\n\ninterface RecaptchaV2InvisibleOptionsInput {\n badge?: 'bottomright' | 'bottomleft' | 'inline'\n size: 'invisible'\n tabindex?: string\n}\n\nexport interface UseChallengeV2Input {\n /**\n * root to mount reCAPTCHA\n */\n root?: MaybeComputedRef\n /**\n * Option that pass to reCAPTCHA render\n */\n options?: RecaptchaV2OptionsInput\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2CheckboxOptionsInput"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" theme"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'dark'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'light'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" size"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'compact'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'normal'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" tabindex"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2InvisibleOptionsInput"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" badge"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'bottomright'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'bottomleft'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'inline'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" size"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'invisible'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" tabindex"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" UseChallengeV2Input"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * root to mount reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" root"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" MaybeComputedRef"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"Element"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * Option that pass to reCAPTCHA render"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2OptionsInput"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"return"},"children":[{"type":"text","value":"Return"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export interface UseChallengeV2Return {\n /**\n * root element ref to mount reCAPTCHA\n */\n root: Ref\n /**\n * reCAPTCHA widget id\n */\n widgetID: Ref\n\n /**\n * state of reCAPTCHA\n */\n state: Ref\n\n /**\n * the verified event\n */\n onVerify: EventHookOn\n /**\n * the expired event\n */\n onExpired: EventHookOn\n /**\n * the error event\n */\n onError: EventHookOn\n\n /**\n * execute the challenge\n */\n execute: () => void\n /**\n * reset reCAPTCHA\n */\n reset: () => void\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" UseChallengeV2Return"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * root element ref to mount reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" root"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"Element"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA widget id"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" widgetID"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"WidgetID"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * state of reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" state"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"RecaptchaV2State"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * the verified event"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" EventHookOn"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * the expired event"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onExpired"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" EventHookOn"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"void"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * the error event"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onError"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" EventHookOn"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"Error"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * execute the challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reset reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" reset"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"About the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"state"}]},{"type":"text","value":" please see "},{"type":"element","tag":"a","props":{"href":"../components/challenge-v2#recaptchav2state"},"children":[{"type":"text","value":"here"}]},{"type":"text","value":" for more details"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please see "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/display#render_param","rel":["nofollow"]},"children":[{"type":"text","value":"reCAPTCHA docs"}]},{"type":"text","value":" for more information about the options."}]},{"type":"element","tag":"h2","props":{"id":"about-the-visible-badge-for-invisible-recaptcha"},"children":[{"type":"text","value":"About the visible Badge for invisible reCAPTCHA"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it."}]},{"type":"element","tag":"pre","props":{"className":"language-css shiki shiki-themes github-light github-dark","code":".grecaptcha-badge { visibility: hidden; }\n","language":"css","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":".grecaptcha-badge"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"visibility"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"hidden"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"; }"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/faq#id-like-to-hide-the-recaptcha-badge.-what-is-allowed","rel":["nofollow"]},"children":[{"type":"text","value":"link"}]}]},{"type":"element","tag":"h2","props":{"id":"examples"},"children":[{"type":"text","value":"Examples"}]},{"type":"element","tag":"h3","props":{"id":"checkbox"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useChallengeV2 } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"root"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" options: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" theme: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'light'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" size: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'normal'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"response"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // do something with response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"root\""}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" /"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"invisible-recaptcha"},"children":[{"type":"text","value":"Invisible reCAPTCHA"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useChallengeV2 } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"root"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"execute"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" options: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" size: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'invisible'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"response"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // do something with response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @click"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"execute\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"root\""}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" /"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"description","depth":2,"text":"Description"},{"id":"input","depth":2,"text":"Input"},{"id":"return","depth":2,"text":"Return"},{"id":"about-the-visible-badge-for-invisible-recaptcha","depth":2,"text":"About the visible Badge for invisible reCAPTCHA"},{"id":"examples","depth":2,"text":"Examples","children":[{"id":"checkbox","depth":3,"text":"Checkbox"},{"id":"invisible-recaptcha","depth":3,"text":"Invisible reCAPTCHA"}]}]}},"_type":"markdown","_id":"content:3.composables:1.challenge-v2.md","_source":"content","_file":"3.composables/1.challenge-v2.md","_extension":"md"},{"_path":"/composables/challenge-v3","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useChallengeV3","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"usechallengev3-v3"},"children":[{"type":"text","value":"useChallengeV3 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]}]},{"type":"element","tag":"h2","props":{"id":"description"},"children":[{"type":"text","value":"Description"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A composable to help you execute the reCAPTCHA v3 challenge"}]},{"type":"element","tag":"h2","props":{"id":"input"},"children":[{"type":"text","value":"Input"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"action"}]},{"type":"text","value":": The action for reCAPTCHA v3"}]}]},{"type":"element","tag":"h2","props":{"id":"return"},"children":[{"type":"text","value":"Return"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export interface UseChallengeV3Return {\n /**\n * reCAPTCHA v3 response as ref\n */\n response: Ref\n /**\n * Execute the challenge\n * @returns response for reCAPTCHA v3\n */\n execute: () => Promise\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" UseChallengeV3Return"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA v3 response as ref"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * Execute the challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"@returns"}]},{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" response for reCAPTCHA v3"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Promise"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"usage"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useChallengeV3 } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"execute"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useChallengeV3"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'submit'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" function"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" onSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"() {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // do something with response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @click"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"onSubmit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"description","depth":2,"text":"Description"},{"id":"input","depth":2,"text":"Input"},{"id":"return","depth":2,"text":"Return"},{"id":"usage","depth":2,"text":"Usage"}]}},"_type":"markdown","_id":"content:3.composables:2.challenge-v3.md","_source":"content","_file":"3.composables/2.challenge-v3.md","_extension":"md"},{"_path":"/advanced/_dir","_dir":"advanced","_draft":false,"_partial":true,"_locale":"","title":"Advanced Topics","_id":"content:4.advanced:_dir.yml","_type":"yaml","_source":"content","_file":"4.advanced/_dir.yml","_extension":"yml"},{"_path":"/advanced/customize-recaptcha-script-loading","_dir":"advanced","_draft":false,"_partial":false,"_locale":"","title":"Customize reCAPTCHA script loading","description":"By default vue-recaptcha will use unhead to load the reCAPTCHA script.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"customize-recaptcha-script-loading"},"children":[{"type":"text","value":"Customize reCAPTCHA script loading"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default vue-recaptcha will use "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"unhead"}]},{"type":"text","value":" to load the reCAPTCHA script."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you need to completely control how to load the reCAPTCHA script. You can use "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"createPlugin"}]},{"type":"text","value":" to create a plugin with your own "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"loadScript"}]},{"type":"text","value":" function."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { onMounted } from 'vue'\nimport { defineScriptLoader, toQueryString } from 'vue-recaptcha'\n\n// Define your own loadScript function\nconst loadScript = defineScriptLoader((options) => {\n // This function will be called by useRecaptchaProvider\n return () => {\n onMounted(() => {\n // You can use any way to load the reCAPTCHA script\n const script = document.createElement('script')\n script.src = `${options.recaptchaApiURL}?${toQueryString(options.params)}`\n script.async = true\n script.defer = true\n if (options.nonce)\n script.nonce = options.nonce\n\n document.head.append(script)\n })\n }\n})\n\nconst plugin = createPlugin(loadScript)\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { onMounted } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { defineScriptLoader, toQueryString } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":"// Define your own loadScript function"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" loadScript"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" defineScriptLoader"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"options"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // This function will be called by useRecaptchaProvider"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" onMounted"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(() "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // You can use any way to load the reCAPTCHA script"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" script"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" document."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"createElement"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'script'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.src "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" `${"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"options"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"recaptchaApiURL"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"}?${"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"toQueryString"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"options"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"params"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"}`"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.async "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" true"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.defer "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" true"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" (options.nonce)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.nonce "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" options.nonce"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" document.head."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"append"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(script)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" })"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" plugin"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createPlugin"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(loadScript)"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"the-definescriptloader-function-and-scriptloaderoptions"},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"defineScriptLoader"}]},{"type":"text","value":" function and "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ScriptLoaderOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export interface RecaptchaParams {\n // You must pass these two value as query string to reCAPTCHA\n render: LiteralUnion<'explicit', string>\n onload: string\n\n // Below you can customize as you want\n hl?: string | undefined\n trustedtypes?: 'true' | undefined\n [k: string]: string | undefined\n}\n\nexport interface ScriptLoaderOptions {\n /**\n * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored\n */\n useRecaptchaNet?: boolean\n /**\n * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored\n */\n recaptchaApiURL: string\n /**\n * nonce for script tag\n */\n nonce?: string\n /**\n * params for recaptcha api\n */\n params: RecaptchaParams\n}\n\n/**\n * Helper function for define your own loadScript function\n */\nfunction defineScriptLoader(fn: ScriptLoaderFactory): NormalizedScriptLoaderFactory\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaParams"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // You must pass these two value as query string to reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" render"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" LiteralUnion"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'explicit'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onload"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // Below you can customize as you want"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" hl"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" trustedtypes"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'true'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [k: string]"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ScriptLoaderOptions"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" useRecaptchaNet"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" recaptchaApiURL"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * nonce for script tag"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" nonce"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * params for recaptcha api"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" params"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaParams"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":"/**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * Helper function for define your own loadScript function"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"function"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" defineScriptLoader"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"fn"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ScriptLoaderFactory"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" NormalizedScriptLoaderFactory"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"the-definescriptloader-function-and-scriptloaderoptions","depth":2,"text":"The defineScriptLoader function and ScriptLoaderOptions"}]}},"_type":"markdown","_id":"content:4.advanced:0.customize-recaptcha-script-loading.md","_source":"content","_file":"4.advanced/0.customize-recaptcha-script-loading.md","_extension":"md"},{"_path":"/integration/_dir","_dir":"integration","_draft":false,"_partial":true,"_locale":"","title":"Integration","_id":"content:5.integration:_dir.yml","_type":"yaml","_source":"content","_file":"5.integration/_dir.yml","_extension":"yml"},{"_path":"/integration/vee-validation","_dir":"integration","_draft":false,"_partial":false,"_locale":"","title":"Vee Validation","description":"Vee Validate is a plugin for form validation.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"vee-validation"},"children":[{"type":"text","value":"Vee Validation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vee-validate.logaretm.com/v4/","rel":["nofollow"]},"children":[{"type":"text","value":"Vee Validate"}]},{"type":"text","value":" is a plugin for form validation."}]},{"type":"element","tag":"h3","props":{"id":"confirm-user-has-clicked-the-checkbox-before-submit"},"children":[{"type":"text","value":"Confirm user has clicked the checkbox before submit"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"vee-validate-checkbox","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useField, useForm } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vee-validate'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" as"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" yup "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'yup'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useForm"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" validationSchema: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"object"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" name: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"required"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"required"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Please verify you are human'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameValue"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"errorMessage"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameError"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useField"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'name'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"recaptchaValue"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"errorMessage"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"recaptchaError"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useField"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'recaptcha'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" onSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"values"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(values)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"form"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"flex flex-col gap-2\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @submit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"onSubmit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"input"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameValue\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"border border-blue p-1\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" placeholder"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"Your name\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameError\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text-red\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {{ nameError }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"RecaptchaCheckbox"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"recaptchaValue\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"recaptchaError\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text-red\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {{ recaptchaError }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"submit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" Submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"execute-challenge-when-user-submit-form"},"children":[{"type":"text","value":"Execute challenge when user submit form"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"vee-validate-invisible","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useField, useForm } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vee-validate'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" as"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" yup "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'yup'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { until } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" '@vueuse/core'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useForm"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" validationSchema: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"object"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" name: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"required"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameValue"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"errorMessage"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameError"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useField"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'name'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" onSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"values"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" until"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"changed"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({ "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"..."}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"values, response: response.value })"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"form"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"flex flex-col gap-2\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @submit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"onSubmit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"input"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameValue\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"border border-blue p-1\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" placeholder"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"Your name\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameError\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text-red\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {{ nameError }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"RecaptchaChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"submit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" Submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"confirm-user-has-clicked-the-checkbox-before-submit","depth":3,"text":"Confirm user has clicked the checkbox before submit"},{"id":"execute-challenge-when-user-submit-form","depth":3,"text":"Execute challenge when user submit form"}]}},"_type":"markdown","_id":"content:5.integration:0.vee-validation.md","_source":"content","_file":"5.integration/0.vee-validation.md","_extension":"md"}],"navigation":[{"title":"Guide","_path":"/guide","children":[{"title":"Get started","_path":"/guide"},{"title":"Nuxt","_path":"/guide/nuxt"},{"title":"Migration from v2","_path":"/guide/migration"},{"title":"Enterprise reCAPTCHA Support","_path":"/guide/enterprise"},{"title":"FAQ","_path":"/guide/faq"}]},{"title":"Components","_path":"/components","children":[{"title":"Overview","_path":"/components"},{"title":"Checkbox","_path":"/components/checkbox"},{"title":"ChallengeV2","_path":"/components/challenge-v2"},{"title":"ChallengeV3","_path":"/components/challenge-v3"}]},{"title":"Composables","_path":"/composables","children":[{"title":"useRecaptchaProvider","_path":"/composables/recaptcha-provider"},{"title":"useChallengeV2","_path":"/composables/challenge-v2"},{"title":"useChallengeV3","_path":"/composables/challenge-v3"}]},{"title":"Advanced Topics","_path":"/advanced","children":[{"title":"Customize reCAPTCHA script loading","_path":"/advanced/customize-recaptcha-script-loading"}]},{"title":"Integration","_path":"/integration","children":[{"title":"Vee Validation","_path":"/integration/vee-validation"}]}]} \ No newline at end of file +{"generatedAt":1704383447359,"generateTime":2900,"contents":[{"_path":"/","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"vue-recaptcha document","description":"","navigation":false,"layout":"page","body":{"type":"root","children":[{"type":"element","tag":"block-hero","props":{":cta":"[\"Get Started\",\"/guide\"]",":secondary":"[\"Open on GitHub →\",\"https://github.com/DanSnow/vue-recaptcha\"]","snippet":"yarn add vue-recaptcha@next"},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js"}]}]}]},{"type":"element","tag":"index-demo","props":{},"children":[{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"recaptcha-checkbox","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":" \n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]}]}]}]}]},{"type":"element","tag":"card-grid","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"What's included"}]}]},{"type":"element","tag":"template","props":{"v-slot:root":""},"children":[{"type":"element","tag":"ellipsis","props":{},"children":[]}]},{"type":"element","tag":"card","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"reCAPTCHA v2"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The \"I'm not a robot\" checkbox"}]}]}]},{"type":"element","tag":"card","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"reCAPTCHA v3"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Determinate if user is human without interrupt the user flow"}]}]}]},{"type":"element","tag":"card","props":{},"children":[{"type":"element","tag":"template","props":{"v-slot:title":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Nuxt integration"}]}]},{"type":"element","tag":"template","props":{"v-slot:description":""},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Use reCAPTCHA in Nuxt.js"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:0.index.md","_source":"content","_file":"0.index.md","_extension":"md"},{"_path":"/guide/_dir","_dir":"guide","_draft":false,"_partial":true,"_locale":"","title":"Guide","_id":"content:1.guide:_dir.yml","_type":"yaml","_source":"content","_file":"1.guide/_dir.yml","_extension":"yml"},{"_path":"/guide","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Get started","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"get-started"},"children":[{"type":"text","value":"Get started"}]},{"type":"element","tag":"alert","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"From vue-recaptcha v2? v3 is a complete rewrite, please check out "},{"type":"element","tag":"a","props":{"href":"./guide/migration"},"children":[{"type":"text","value":"migration guide"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Let's get started with vue-recaptcha."}]},{"type":"element","tag":"h1","props":{"id":"what-is-vue-recaptcha"},"children":[{"type":"text","value":"What is vue-recaptcha"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha is just a wrapper to provide an easier interface for "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/","rel":["nofollow"]},"children":[{"type":"text","value":"Google's reCAPTCHA"}]}]},{"type":"element","tag":"list","props":{"type":"success"},"children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"component that is easy to use"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"composable to integrate into your own app"}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha is not for:"}]},{"type":"element","tag":"list","props":{"type":"danger"},"children":[{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"customize reCAPTCHA UI"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"provide features that is not implemented by Google reCATPCHA, like change language on the fly"}]}]}]},{"type":"element","tag":"h2","props":{"id":"installation"},"children":[{"type":"text","value":"Installation"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{"label":"Yarn"},"children":[{"type":"element","tag":"terminal","props":{"content":"yarn add vue-recaptcha@next"},"children":[]}]},{"type":"element","tag":"code-block","props":{"label":"NPM"},"children":[{"type":"element","tag":"terminal","props":{"content":"npm install vue-recaptcha@next"},"children":[]}]},{"type":"element","tag":"code-block","props":{"label":"PNPM"},"children":[{"type":"element","tag":"terminal","props":{"content":"pnpm add vue-recaptcha@next"},"children":[]}]}]},{"type":"element","tag":"h2","props":{"id":"setup-vue-recaptcha-plugin"},"children":[{"type":"text","value":"Setup vue-recaptcha plugin"}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default, vue-recaptcha use "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@unhead/vue"}]},{"type":"text","value":" to inject the reCAPTCHA script, if you are not using "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@unhead/vue"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@vueuse/head"}]},{"type":"text","value":", please check out "},{"type":"element","tag":"a","props":{"href":"#usage-without-unhead"},"children":[{"type":"text","value":"Usage without unhead"}]}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { VueRecaptchaPlugin } from 'vue-recaptcha'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin, {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { VueRecaptchaPlugin } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please replace "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"YOUR_V2_SITEKEY_HERE"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"YOUR_V3_SITEKEY_HERE"}]},{"type":"text","value":" with your keys. If you don't have one, please go to "},{"type":"element","tag":"a","props":{"href":"https://www.google.com/recaptcha/admin","rel":["nofollow"]},"children":[{"type":"text","value":"here"}]},{"type":"text","value":" and apply one"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v2SiteKey"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In this document, if you see "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]},{"type":"text","value":" which means you'll need to pass "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v2SiteKey"}]},{"type":"text","value":" and "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]},{"type":"text","value":" means you'll need "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v3SiteKey"}]}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"text","value":"If you did't provide the corresponding site key, you'll get a runtime error"}]},{"type":"element","tag":"h2","props":{"id":"provide-recaptcha-script"},"children":[{"type":"text","value":"Provide reCAPTCHA script"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To load the reCAPTCHA script, you will need to call "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"text","value":" in your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"app.vue"}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useRecaptchaProvider } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" id"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"app\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"router-view"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"That's all, now you can start using vue-recaptcha. Please see "},{"type":"element","tag":"a","props":{"href":"./components"},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" for quick introduce for all of the components"}]},{"type":"element","tag":"button-link","props":{"href":"./components"},"children":[{"type":"text","value":"Go to component overview"}]},{"type":"element","tag":"h2","props":{"id":"usage-without-unhead"},"children":[{"type":"text","value":"Usage without unhead"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are not using "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@unhead/vue"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"@vueuse/head"}]},{"type":"text","value":", you can simply import the plugin from "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"vue-recaptcha/head"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { VueRecaptchaPlugin } from 'vue-recaptcha/head'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin, {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { VueRecaptchaPlugin } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha/head'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"With this version, it will inject the reCAPTCHA script by simply creating a "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"script"}]},{"type":"text","value":" tag in document "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"head"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"installation","depth":2,"text":"Installation"},{"id":"setup-vue-recaptcha-plugin","depth":2,"text":"Setup vue-recaptcha plugin"},{"id":"provide-recaptcha-script","depth":2,"text":"Provide reCAPTCHA script"},{"id":"usage-without-unhead","depth":2,"text":"Usage without unhead"}]}},"_type":"markdown","_id":"content:1.guide:0.index.md","_source":"content","_file":"1.guide/0.index.md","_extension":"md"},{"_path":"/guide/nuxt","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"Nuxt","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"nuxt"},"children":[{"type":"text","value":"Nuxt"}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"vue-recaptcha supports Nuxt.js out of the box."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"alert","props":{"type":"danger"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Original name"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Renamed to"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"Checkbox"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaCheckbox"}]}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV2"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaChallengeV2"}]}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV3"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaChallengeV3"}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"options"},"children":[{"type":"text","value":"Options"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can pass options to the module by adding a "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha"}]},{"type":"text","value":" key to your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"nuxt.config.js"}]},{"type":"text","value":" file in "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"runtimeConfig.public"}]},{"type":"text","value":"."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"enterprise"},"children":[{"type":"text","value":"Enterprise"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using reCAPTCHA Enterprise, you can use the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha"}]},{"type":"text","value":" key in "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"nuxt.config"}]},{"type":"text","value":" to enable the enterprise version support."}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Enterprise version support is experimental and may be changed in the future."}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n recaptcha: {\n enterprise: true,\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" enterprise: "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"manually-install-plugin"},"children":[{"type":"text","value":"Manually Install Plugin"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"nuxt.config.js"}]},{"type":"text","value":" file."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n recaptcha: {\n plugin: false,\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" plugin: "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"false"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Then you will need to manually set up the plugin by creating a file named "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha.ts"}]},{"type":"text","value":" in your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"plugins"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import VueRecaptchaPlugin from 'vue-recaptcha'\n\nexport default defineNuxtPlugin(({ vueApp }) => {\n const {\n public: { recaptcha },\n } = useRuntimeConfig()\n vueApp.use(VueRecaptchaPlugin, recaptcha)\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" VueRecaptchaPlugin "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" default"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" defineNuxtPlugin"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(({ "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"vueApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }) "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" public"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"recaptcha"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useRuntimeConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" vueApp."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, recaptcha)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"options","depth":2,"text":"Options"},{"id":"enterprise","depth":2,"text":"Enterprise"},{"id":"manually-install-plugin","depth":2,"text":"Manually Install Plugin"}]}},"_type":"markdown","_id":"content:1.guide:1.nuxt.md","_source":"content","_file":"1.guide/1.nuxt.md","_extension":"md"},{"_path":"/guide/migration","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"Migration from v2","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"migration-from-v2"},"children":[{"type":"text","value":"Migration from v2"}]},{"type":"element","tag":"h2","props":{"id":"_1-set-up-the-plugin"},"children":[{"type":"text","value":"1. set up the plugin"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"V3 need you to set up a Vue plugin before start using."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { VueRecaptchaPlugin } from 'vue-recaptcha'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin, {\n v2SiteKey: 'YOUR_SITE_KEY_HERE'\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { VueRecaptchaPlugin } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin, {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_SITE_KEY_HERE'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"_2-provide-recaptcha-script"},"children":[{"type":"text","value":"2. Provide reCAPTCHA script"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To load the reCAPTCHA script, you will need to call "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"text","value":" in your "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"app.vue"}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useRecaptchaProvider } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"_3-use-the-components"},"children":[{"type":"text","value":"3. Use the components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Now you can start using the components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using the \"I'm not a robot\" checkbox, please use the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read more at "},{"type":"element","tag":"a","props":{"href":"../components/checkbox"},"children":[{"type":"text","value":"here"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using the invisible reCAPTCHA, please use the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read more at "},{"type":"element","tag":"a","props":{"href":"../components/challenge-v2"},"children":[{"type":"text","value":"here"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"_1-set-up-the-plugin","depth":2,"text":"1. set up the plugin"},{"id":"_2-provide-recaptcha-script","depth":2,"text":"2. Provide reCAPTCHA script"},{"id":"_3-use-the-components","depth":2,"text":"3. Use the components"}]}},"_type":"markdown","_id":"content:1.guide:2.migration.md","_source":"content","_file":"1.guide/2.migration.md","_extension":"md"},{"_path":"/guide/enterprise","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"Enterprise reCAPTCHA Support","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"enterprise-recaptcha-support"},"children":[{"type":"text","value":"Enterprise reCAPTCHA Support"}]},{"type":"element","tag":"alert","props":{"type":"warning"},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Enterprise version support is experimental and may be changed in the future."}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Simply change your plugin import to the following:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import VueRecaptchaPlugin from 'vue-recaptcha/enterprise'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin)\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" VueRecaptchaPlugin "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha/enterprise'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin)"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"usage-without-unhead"},"children":[{"type":"text","value":"Usage without unhead"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are not using "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"unhead"}]},{"type":"text","value":" and want to use the enterprise version, you can use the following code:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head'\n\nconst app = createApp(App)\napp.use(VueRecaptchaPlugin)\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" VueRecaptchaPlugin "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha/enterprise-head'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" app"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createApp"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(App)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"app."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"use"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(VueRecaptchaPlugin)"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"nuxt"},"children":[{"type":"text","value":"Nuxt"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you are using Nuxt, you can set the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"recaptcha.enterprise"}]},{"type":"text","value":" option to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"true"}]},{"type":"text","value":":"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"defineNuxtConfig({\n modules: ['vue-recaptcha/nuxt'],\n runtimeConfig: {\n public: {\n recaptcha: {\n v2SiteKey: 'YOUR_V2_SITEKEY_HERE',\n v3SiteKey: 'YOUR_V3_SITEKEY_HERE',\n },\n },\n },\n recaptcha: {\n enterprise: true,\n },\n})\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"defineNuxtConfig"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" modules: ["}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'vue-recaptcha/nuxt'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"],"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" runtimeConfig: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" public: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v2SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V2_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" v3SiteKey: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'YOUR_V3_SITEKEY_HERE'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" enterprise: "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"true"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" },"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"usage-without-unhead","depth":2,"text":"Usage without unhead"},{"id":"nuxt","depth":2,"text":"Nuxt"}]}},"_type":"markdown","_id":"content:1.guide:3.enterprise.md","_source":"content","_file":"1.guide/3.enterprise.md","_extension":"md"},{"_path":"/guide/faq","_dir":"guide","_draft":false,"_partial":false,"_locale":"","title":"FAQ","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"faq"},"children":[{"type":"text","value":"FAQ"}]},{"type":"element","tag":"h2","props":{"id":"what-is-recaptcha-couldnt-find-user-provided-function-__vuerecaptchaloaded"},"children":[{"type":"text","value":"What is \"ReCAPTCHA couldn't find user-provided function: "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"__vueRecaptchaLoaded"}]},{"type":"text","value":"\"?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app."}]},{"type":"element","tag":"h2","props":{"id":"how-to-test-vue-recaptcha"},"children":[{"type":"text","value":"How to test vue-recaptcha?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can mock "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"window.grecaptcha"}]},{"type":"text","value":" to bypass google's recaptcha."}]},{"type":"element","tag":"h2","props":{"id":"how-about-an-e2e-testing-or-integration-testing"},"children":[{"type":"text","value":"How about an e2e testing (or integration testing)?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please reference to "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/faq#id-like-to-run-automated-tests-with-recaptcha.-what-should-i-do","rel":["nofollow"]},"children":[{"type":"text","value":"recaptcha's FAQ"}]},{"type":"text","value":"."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"what-is-recaptcha-couldnt-find-user-provided-function-__vuerecaptchaloaded","depth":2,"text":"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?"},{"id":"how-to-test-vue-recaptcha","depth":2,"text":"How to test vue-recaptcha?"},{"id":"how-about-an-e2e-testing-or-integration-testing","depth":2,"text":"How about an e2e testing (or integration testing)?"}]}},"_type":"markdown","_id":"content:1.guide:4.faq.md","_source":"content","_file":"1.guide/4.faq.md","_extension":"md"},{"_path":"/components/_dir","_dir":"components","_draft":false,"_partial":true,"_locale":"","title":"Components","_id":"content:2.components:_dir.yml","_type":"yaml","_source":"content","_file":"2.components/_dir.yml","_extension":"yml"},{"_path":"/components","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Overview","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"overview"},"children":[{"type":"text","value":"Overview"}]},{"type":"element","tag":"h2","props":{"id":"checkbox-v2"},"children":[{"type":"element","tag":"a","props":{"href":"./components/checkbox"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"text","value":" "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The most basic form of the reCAPTCHA"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"recaptcha-checkbox","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"button-link","props":{"href":"./components/checkbox"},"children":[{"type":"text","value":"Go to document"}]},{"type":"element","tag":"h2","props":{"id":"challengev2-v2"},"children":[{"type":"element","tag":"a","props":{"href":"./components/challenge-v2"},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"text","value":" "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Invisible reCAPTCHA."}]},{"type":"element","tag":"button-link","props":{"href":"./components/challenge-v2"},"children":[{"type":"text","value":"Go to document"}]},{"type":"element","tag":"h2","props":{"id":"challengev3-v3"},"children":[{"type":"element","tag":"a","props":{"href":"./components/challenge-v3"},"children":[{"type":"text","value":"ChallengeV3"}]},{"type":"text","value":" "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"reCAPTCHA v3"}]},{"type":"element","tag":"button-link","props":{"href":"./components/challenge-v3"},"children":[{"type":"text","value":"Go to document"}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"checkbox-v2","depth":2,"text":"Checkbox v2"},{"id":"challengev2-v2","depth":2,"text":"ChallengeV2 v2"},{"id":"challengev3-v3","depth":2,"text":"ChallengeV3 v3"}]}},"_type":"markdown","_id":"content:2.components:0.index.md","_source":"content","_file":"2.components/0.index.md","_extension":"md"},{"_path":"/components/checkbox","_dir":"components","_draft":false,"_partial":false,"_locale":"","title":"Checkbox","description":"Insert reCAPTCHA v2 checkbox","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"checkbox-v2"},"children":[{"type":"text","value":"Checkbox "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Insert reCAPTCHA v2 checkbox"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"checkbox-demo","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" theme"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'light'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'dark'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'light'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ThemeButton"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"theme\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @click"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response = ''\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">{{ response ? 'Verified' : 'Please click the checkbox' }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" :key"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"theme\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" :theme"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"theme\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"props"},"children":[{"type":"text","value":"Props"}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"default"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"as"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'div'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"What element to render"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"theme"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'light' | 'dark'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'light'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Theme for reCAPTCHA checkbox"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"size"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'normal' | 'compact'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'normal'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Size for the reCAPTCHA checkbox"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"v-model"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v-model"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The reCAPTCHA response"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"widgetId"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Widget id for reCAPTCHA checkbox"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"about-modelvalue"},"children":[{"type":"text","value":"About "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can set "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]},{"type":"text","value":" to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"null"}]},{"type":"text","value":" or empty string to reset reCAPTCHA checkbox."}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"props","depth":2,"text":"Props"},{"id":"v-model","depth":2,"text":"v-model","children":[{"id":"about-modelvalue","depth":3,"text":"About modelValue"}]}]}},"_type":"markdown","_id":"content:2.components:1.checkbox.md","_source":"content","_file":"2.components/1.checkbox.md","_extension":"md"},{"_path":"/components/challenge-v2","_dir":"components","_draft":false,"_partial":false,"_locale":"","title":"ChallengeV2","description":"Create invisible reCAPTCHA v2","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"challengev2-v2"},"children":[{"type":"text","value":"ChallengeV2 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Create invisible reCAPTCHA v2"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"challenge-v2-demo","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { RecaptchaV2State } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" '#recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" map"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Init]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Click to Challenge'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Verified]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Verified'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Expired]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Expired'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [RecaptchaV2State.Error]: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Error'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-slot"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"{ state }\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"props"},"children":[{"type":"text","value":"Props"}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"default"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"as"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'div'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"What element to render"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"badge"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"`'bottomright'"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"'bottomleft'"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"'inline'`"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"autoExecute"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"boolean"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Should vue-recaptcha execute challenge on click, if you set it to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" you'll need to call the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"execute"}]},{"type":"text","value":" method in the slot"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"v-model"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v-model"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The reCAPTCHA response"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"widgetId"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Widget id for reCAPTCHA checkbox"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"about-modelvalue"},"children":[{"type":"text","value":"About "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can set "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]},{"type":"text","value":" to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"null"}]},{"type":"text","value":" or empty string to reset reCAPTCHA checkbox."}]},{"type":"element","tag":"h2","props":{"id":"about-the-visible-badge-for-invisible-recaptcha"},"children":[{"type":"text","value":"About the visible Badge for invisible reCAPTCHA"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it."}]},{"type":"element","tag":"pre","props":{"className":"language-css shiki shiki-themes github-light github-dark","code":".grecaptcha-badge { visibility: hidden; }\n","language":"css","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":".grecaptcha-badge"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"visibility"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"hidden"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"; }"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/faq#id-like-to-hide-the-recaptcha-badge.-what-is-allowed","rel":["nofollow"]},"children":[{"type":"text","value":"link"}]}]},{"type":"element","tag":"h2","props":{"id":"slots"},"children":[{"type":"text","value":"Slots"}]},{"type":"element","tag":"h3","props":{"id":"default"},"children":[{"type":"text","value":"default"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This is the position that usually place a your submit button. When click on the content, "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV2"}]},{"type":"text","value":" will automatically execute the reCAPTCHA challenge by default"}]},{"type":"element","tag":"h4","props":{"id":"slot-api"},"children":[{"type":"text","value":"Slot API"}]},{"type":"element","tag":"pre","props":{"className":"language-typescript shiki shiki-themes github-light github-dark","code":"interface SlotApi {\n /**\n * widget id\n */\n widgetId: WidgetID | undefined\n /**\n * reCAPTCHA state\n */\n state: RecaptchaV2State\n\n isError: boolean\n isExpired: boolean\n isVerified: boolean\n\n /**\n * reset reCAPTCHA\n */\n reset: () => void\n /**\n * execute challenge\n */\n execute: () => void\n}\n","language":"typescript","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" SlotApi"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * widget id"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" widgetId"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" WidgetID"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA state"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" state"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2State"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" isError"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" isExpired"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" isVerified"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reset reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" reset"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * execute challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"recaptchav2state"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"RecaptchaV2State"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export enum RecaptchaV2State {\n Init = 'init',\n Verified = 'verified',\n Expired = 'expired',\n Error = 'error',\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" enum"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2State"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Init"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'init'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Verified"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'verified'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Expired"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'expired'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" Error"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'error'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"mermaid","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"props","depth":2,"text":"Props"},{"id":"v-model","depth":2,"text":"v-model","children":[{"id":"about-modelvalue","depth":3,"text":"About modelValue"}]},{"id":"about-the-visible-badge-for-invisible-recaptcha","depth":2,"text":"About the visible Badge for invisible reCAPTCHA"},{"id":"slots","depth":2,"text":"Slots","children":[{"id":"default","depth":3,"text":"default"},{"id":"recaptchav2state","depth":3,"text":"RecaptchaV2State"}]}]}},"_type":"markdown","_id":"content:2.components:2.challenge-v2.md","_source":"content","_file":"2.components/2.challenge-v2.md","_extension":"md"},{"_path":"/components/challenge-v3","_dir":"components","_draft":false,"_partial":false,"_locale":"","title":"ChallengeV3","description":"Create reCAPTCHA v3 challenge","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"challengev3-v3"},"children":[{"type":"text","value":"ChallengeV3 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Create reCAPTCHA v3 challenge"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"challenge-v3-demo","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"ChallengeV3"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" action"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"submit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"props"},"children":[{"type":"text","value":"Props"}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"default"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"action"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"action"}]},{"type":"text","value":" for reCAPTCHA v3"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"as"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"'div'"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"What element to render"}]}]},{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"autoExecute"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"boolean"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"true"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"Should vue-recaptcha execute challenge on click, if you set it to "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"false"}]},{"type":"text","value":" you'll need to call the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"execute"}]},{"type":"text","value":" method in the slot"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"v-model"},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"v-model"}]}]},{"type":"element","tag":"table","props":{},"children":[{"type":"element","tag":"thead","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"key"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"type"}]}]},{"type":"element","tag":"th","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"description"}]}]}]}]},{"type":"element","tag":"tbody","props":{},"children":[{"type":"element","tag":"tr","props":{},"children":[{"type":"element","tag":"td","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"modelValue"}]}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"td","props":{},"children":[{"type":"text","value":"The reCAPTCHA response"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"slots"},"children":[{"type":"text","value":"Slots"}]},{"type":"element","tag":"h3","props":{"id":"default"},"children":[{"type":"text","value":"default"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This is the position that usually place a your submit button. When click on the content, "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ChallengeV3"}]},{"type":"text","value":" will automatically execute the reCAPTCHA challenge by default"}]},{"type":"element","tag":"h4","props":{"id":"slot-api"},"children":[{"type":"text","value":"Slot API"}]},{"type":"element","tag":"pre","props":{"className":"language-typescript shiki shiki-themes github-light github-dark","code":"interface SlotApi {\n /**\n * reCAPTCHA v3 response\n */\n response: string | undefined\n /**\n * execute reCAPTCHA v3 challenge\n */\n execute: () => Promise\n}\n","language":"typescript","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" SlotApi"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA v3 response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * execute reCAPTCHA v3 challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Promise"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"props","depth":2,"text":"Props"},{"id":"v-model","depth":2,"text":"v-model"},{"id":"slots","depth":2,"text":"Slots","children":[{"id":"default","depth":3,"text":"default"}]}]}},"_type":"markdown","_id":"content:2.components:3.challenge-v3.md","_source":"content","_file":"2.components/3.challenge-v3.md","_extension":"md"},{"_path":"/composables/_dir","_dir":"composables","_draft":false,"_partial":true,"_locale":"","title":"Composables","_id":"content:3.composables:_dir.yml","_type":"yaml","_source":"content","_file":"3.composables/_dir.yml","_extension":"yml"},{"_path":"/composables/recaptcha-provider","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useRecaptchaProvider","description":"The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"userecaptchaprovider"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work."}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useRecaptchaProvider } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"useRecaptchaProvider"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:3.composables:0.recaptcha-provider.md","_source":"content","_file":"3.composables/0.recaptcha-provider.md","_extension":"md"},{"_path":"/composables/challenge-v2","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useChallengeV2","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"usechallengev2-v2"},"children":[{"type":"text","value":"useChallengeV2 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v2"}]}]},{"type":"element","tag":"h2","props":{"id":"description"},"children":[{"type":"text","value":"Description"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA"}]},{"type":"element","tag":"h2","props":{"id":"input"},"children":[{"type":"text","value":"Input"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"interface RecaptchaV2CheckboxOptionsInput {\n theme?: 'dark' | 'light'\n size?: 'compact' | 'normal'\n tabindex?: string\n}\n\ninterface RecaptchaV2InvisibleOptionsInput {\n badge?: 'bottomright' | 'bottomleft' | 'inline'\n size: 'invisible'\n tabindex?: string\n}\n\nexport interface UseChallengeV2Input {\n /**\n * root to mount reCAPTCHA\n */\n root?: MaybeComputedRef\n /**\n * Option that pass to reCAPTCHA render\n */\n options?: RecaptchaV2OptionsInput\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2CheckboxOptionsInput"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" theme"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'dark'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'light'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" size"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'compact'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'normal'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" tabindex"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2InvisibleOptionsInput"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" badge"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'bottomright'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'bottomleft'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'inline'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" size"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'invisible'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" tabindex"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" UseChallengeV2Input"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * root to mount reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" root"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" MaybeComputedRef"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"Element"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * Option that pass to reCAPTCHA render"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" options"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaV2OptionsInput"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"return"},"children":[{"type":"text","value":"Return"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export interface UseChallengeV2Return {\n /**\n * root element ref to mount reCAPTCHA\n */\n root: Ref\n /**\n * reCAPTCHA widget id\n */\n widgetID: Ref\n\n /**\n * state of reCAPTCHA\n */\n state: Ref\n\n /**\n * the verified event\n */\n onVerify: EventHookOn\n /**\n * the expired event\n */\n onExpired: EventHookOn\n /**\n * the error event\n */\n onError: EventHookOn\n\n /**\n * execute the challenge\n */\n execute: () => void\n /**\n * reset reCAPTCHA\n */\n reset: () => void\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" UseChallengeV2Return"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * root element ref to mount reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" root"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"Element"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA widget id"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" widgetID"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"WidgetID"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * state of reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" state"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"RecaptchaV2State"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * the verified event"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" EventHookOn"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * the expired event"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onExpired"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" EventHookOn"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"void"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * the error event"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onError"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" EventHookOn"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"Error"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * execute the challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reset reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" reset"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" void"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"About the "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"state"}]},{"type":"text","value":" please see "},{"type":"element","tag":"a","props":{"href":"../components/challenge-v2#recaptchav2state"},"children":[{"type":"text","value":"here"}]},{"type":"text","value":" for more details"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please see "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/display#render_param","rel":["nofollow"]},"children":[{"type":"text","value":"reCAPTCHA docs"}]},{"type":"text","value":" for more information about the options."}]},{"type":"element","tag":"h2","props":{"id":"about-the-visible-badge-for-invisible-recaptcha"},"children":[{"type":"text","value":"About the visible Badge for invisible reCAPTCHA"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it."}]},{"type":"element","tag":"pre","props":{"className":"language-css shiki shiki-themes github-light github-dark","code":".grecaptcha-badge { visibility: hidden; }\n","language":"css","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":".grecaptcha-badge"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"visibility"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"hidden"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"; }"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this "},{"type":"element","tag":"a","props":{"href":"https://developers.google.com/recaptcha/docs/faq#id-like-to-hide-the-recaptcha-badge.-what-is-allowed","rel":["nofollow"]},"children":[{"type":"text","value":"link"}]}]},{"type":"element","tag":"h2","props":{"id":"examples"},"children":[{"type":"text","value":"Examples"}]},{"type":"element","tag":"h3","props":{"id":"checkbox"},"children":[{"type":"text","value":"Checkbox"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useChallengeV2 } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"root"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" options: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" theme: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'light'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" size: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'normal'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"response"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // do something with response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"root\""}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" /"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"invisible-recaptcha"},"children":[{"type":"text","value":"Invisible reCAPTCHA"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useChallengeV2 } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"root"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"execute"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" options: {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" size: "}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'invisible'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"onVerify"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"response"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // do something with response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @click"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"execute\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"root\""}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" /"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"description","depth":2,"text":"Description"},{"id":"input","depth":2,"text":"Input"},{"id":"return","depth":2,"text":"Return"},{"id":"about-the-visible-badge-for-invisible-recaptcha","depth":2,"text":"About the visible Badge for invisible reCAPTCHA"},{"id":"examples","depth":2,"text":"Examples","children":[{"id":"checkbox","depth":3,"text":"Checkbox"},{"id":"invisible-recaptcha","depth":3,"text":"Invisible reCAPTCHA"}]}]}},"_type":"markdown","_id":"content:3.composables:1.challenge-v2.md","_source":"content","_file":"3.composables/1.challenge-v2.md","_extension":"md"},{"_path":"/composables/challenge-v3","_dir":"composables","_draft":false,"_partial":false,"_locale":"","title":"useChallengeV3","description":"","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"usechallengev3-v3"},"children":[{"type":"text","value":"useChallengeV3 "},{"type":"element","tag":"badge","props":{},"children":[{"type":"text","value":"v3"}]}]},{"type":"element","tag":"h2","props":{"id":"description"},"children":[{"type":"text","value":"Description"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"A composable to help you execute the reCAPTCHA v3 challenge"}]},{"type":"element","tag":"h2","props":{"id":"input"},"children":[{"type":"text","value":"Input"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"action"}]},{"type":"text","value":": The action for reCAPTCHA v3"}]}]},{"type":"element","tag":"h2","props":{"id":"return"},"children":[{"type":"text","value":"Return"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export interface UseChallengeV3Return {\n /**\n * reCAPTCHA v3 response as ref\n */\n response: Ref\n /**\n * Execute the challenge\n * @returns response for reCAPTCHA v3\n */\n execute: () => Promise\n}\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" UseChallengeV3Return"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * reCAPTCHA v3 response as ref"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * Execute the challenge"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"@returns"}]},{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" response for reCAPTCHA v3"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" Promise"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"usage"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useChallengeV3 } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"execute"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useChallengeV3"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'submit'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" function"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" onSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"() {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" execute"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // do something with response"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"button"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @click"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"onSubmit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"description","depth":2,"text":"Description"},{"id":"input","depth":2,"text":"Input"},{"id":"return","depth":2,"text":"Return"},{"id":"usage","depth":2,"text":"Usage"}]}},"_type":"markdown","_id":"content:3.composables:2.challenge-v3.md","_source":"content","_file":"3.composables/2.challenge-v3.md","_extension":"md"},{"_path":"/advanced/_dir","_dir":"advanced","_draft":false,"_partial":true,"_locale":"","title":"Advanced Topics","_id":"content:4.advanced:_dir.yml","_type":"yaml","_source":"content","_file":"4.advanced/_dir.yml","_extension":"yml"},{"_path":"/advanced/customize-recaptcha-script-loading","_dir":"advanced","_draft":false,"_partial":false,"_locale":"","title":"Customize reCAPTCHA script loading","description":"By default vue-recaptcha will use unhead to load the reCAPTCHA script.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"customize-recaptcha-script-loading"},"children":[{"type":"text","value":"Customize reCAPTCHA script loading"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default vue-recaptcha will use "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"unhead"}]},{"type":"text","value":" to load the reCAPTCHA script."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you need to completely control how to load the reCAPTCHA script. You can use "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"createPlugin"}]},{"type":"text","value":" to create a plugin with your own "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"loadScript"}]},{"type":"text","value":" function."}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"import { onMounted } from 'vue'\nimport { defineScriptLoader, toQueryString } from 'vue-recaptcha'\n\n// Define your own loadScript function\nconst loadScript = defineScriptLoader((options) => {\n // This function will be called by useRecaptchaProvider\n return () => {\n onMounted(() => {\n // You can use any way to load the reCAPTCHA script\n const script = document.createElement('script')\n script.src = `${options.recaptchaApiURL}?${toQueryString(options.params)}`\n script.async = true\n script.defer = true\n if (options.nonce)\n script.nonce = options.nonce\n\n document.head.append(script)\n })\n }\n})\n\nconst plugin = createPlugin(loadScript)\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { onMounted } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { defineScriptLoader, toQueryString } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vue-recaptcha'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":"// Define your own loadScript function"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" loadScript"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" defineScriptLoader"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"options"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // This function will be called by useRecaptchaProvider"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" return"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" () "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" onMounted"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(() "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // You can use any way to load the reCAPTCHA script"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" script"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" document."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"createElement"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'script'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.src "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" `${"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"options"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"recaptchaApiURL"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"}?${"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"toQueryString"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"options"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"params"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"}`"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.async "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" true"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.defer "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" true"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" (options.nonce)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" script.nonce "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" options.nonce"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" document.head."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"append"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(script)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" })"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" plugin"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" createPlugin"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(loadScript)"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"the-definescriptloader-function-and-scriptloaderoptions"},"children":[{"type":"text","value":"The "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"defineScriptLoader"}]},{"type":"text","value":" function and "},{"type":"element","tag":"code","props":{"className":""},"children":[{"type":"text","value":"ScriptLoaderOptions"}]}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes github-light github-dark","code":"export interface RecaptchaParams {\n // You must pass these two value as query string to reCAPTCHA\n render: LiteralUnion<'explicit', string>\n onload: string\n\n // Below you can customize as you want\n hl?: string | undefined\n trustedtypes?: 'true' | undefined\n [k: string]: string | undefined\n}\n\nexport interface ScriptLoaderOptions {\n /**\n * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored\n */\n useRecaptchaNet?: boolean\n /**\n * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored\n */\n recaptchaApiURL: string\n /**\n * nonce for script tag\n */\n nonce?: string\n /**\n * params for recaptcha api\n */\n params: RecaptchaParams\n}\n\n/**\n * Helper function for define your own loadScript function\n */\nfunction defineScriptLoader(fn: ScriptLoaderFactory): NormalizedScriptLoaderFactory\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaParams"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // You must pass these two value as query string to reCAPTCHA"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" render"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" LiteralUnion"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'explicit'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" onload"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" // Below you can customize as you want"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" hl"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" trustedtypes"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'true'"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" [k: string]"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" |"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" undefined"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" interface"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ScriptLoaderOptions"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" useRecaptchaNet"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" boolean"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" recaptchaApiURL"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * nonce for script tag"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" nonce"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" string"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" /**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * params for recaptcha api"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":" params"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" RecaptchaParams"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":"/**"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" * Helper function for define your own loadScript function"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#6A737D;--shiki-dark:#6A737D"},"children":[{"type":"text","value":" */"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"function"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" defineScriptLoader"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"fn"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ScriptLoaderFactory"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" NormalizedScriptLoaderFactory"}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"the-definescriptloader-function-and-scriptloaderoptions","depth":2,"text":"The defineScriptLoader function and ScriptLoaderOptions"}]}},"_type":"markdown","_id":"content:4.advanced:0.customize-recaptcha-script-loading.md","_source":"content","_file":"4.advanced/0.customize-recaptcha-script-loading.md","_extension":"md"},{"_path":"/integration/_dir","_dir":"integration","_draft":false,"_partial":true,"_locale":"","title":"Integration","_id":"content:5.integration:_dir.yml","_type":"yaml","_source":"content","_file":"5.integration/_dir.yml","_extension":"yml"},{"_path":"/integration/vee-validation","_dir":"integration","_draft":false,"_partial":false,"_locale":"","title":"Vee Validation","description":"Vee Validate is a plugin for form validation.","body":{"type":"root","children":[{"type":"element","tag":"h1","props":{"id":"vee-validation"},"children":[{"type":"text","value":"Vee Validation"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vee-validate.logaretm.com/v4/","rel":["nofollow"]},"children":[{"type":"text","value":"Vee Validate"}]},{"type":"text","value":" is a plugin for form validation."}]},{"type":"element","tag":"h3","props":{"id":"confirm-user-has-clicked-the-checkbox-before-submit"},"children":[{"type":"text","value":"Confirm user has clicked the checkbox before submit"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"vee-validate-checkbox","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useField, useForm } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vee-validate'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" as"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" yup "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'yup'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useForm"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" validationSchema: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"object"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" name: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"required"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" recaptcha: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"required"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'Please verify you are human'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameValue"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"errorMessage"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameError"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useField"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'name'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"recaptchaValue"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"errorMessage"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"recaptchaError"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useField"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'recaptcha'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" onSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"values"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(values)"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"form"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"flex flex-col gap-2\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @submit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"onSubmit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"input"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameValue\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"border border-blue p-1\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" placeholder"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"Your name\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameError\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text-red\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {{ nameError }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"RecaptchaCheckbox"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"recaptchaValue\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" />"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"recaptchaError\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text-red\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {{ recaptchaError }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"submit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" Submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"execute-challenge-when-user-submit-form"},"children":[{"type":"text","value":"Execute challenge when user submit form"}]},{"type":"element","tag":"code-group","props":{},"children":[{"type":"element","tag":"code-block","props":{":preview":"true","label":"Preview","preview":true},"children":[{"type":"element","tag":"vee-validate-invisible","props":{},"children":[]}]},{"type":"element","tag":"pre","props":{"className":"language-vue shiki shiki-themes github-light github-dark","code":"\n\n\n","filename":"Code","language":"vue","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"script"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" setup"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" lang"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"ts\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { useField, useForm } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'vee-validate'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" *"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" as"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" yup "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" 'yup'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"import"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { until } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"from"}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":" '@vueuse/core'"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useForm"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" validationSchema: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"object"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" name: yup."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"string"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"required"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" }),"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" { "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"value"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameValue"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":", "}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"errorMessage"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":"nameError"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" } "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" useField"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"'name'"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":")"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" response"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" ref"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"color:#005CC5;--shiki-dark:#79B8FF"},"children":[{"type":"text","value":" onSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" handleSubmit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"async"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"style":"color:#E36209;--shiki-dark:#FFAB70"},"children":[{"type":"text","value":"values"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":") "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":" await"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" until"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"(response)."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"changed"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"()"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" console."}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":"log"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"({ "}]},{"type":"element","tag":"span","props":{"style":"color:#D73A49;--shiki-dark:#F97583"},"children":[{"type":"text","value":"..."}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"values, response: response.value })"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"})"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"template"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"form"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"flex flex-col gap-2\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" @submit"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"onSubmit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"input"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameValue\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"border border-blue p-1\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" placeholder"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"Your name\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-if"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"nameError\""}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" class"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"text-red\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" {{ nameError }}"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#22863A;--shiki-dark:#85E89D"},"children":[{"type":"text","value":"div"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"RecaptchaChallengeV2"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" v-model"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"response\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" <"}]},{"type":"element","tag":"span","props":{"style":"color:#B31D28;--shiki-dark:#FDAEB7;font-style:italic;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"PrimaryButton"}]},{"type":"element","tag":"span","props":{"style":"color:#6F42C1;--shiki-dark:#B392F0"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"color:#032F62;--shiki-dark:#9ECBFF"},"children":[{"type":"text","value":"\"submit\""}]},{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":">"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" Submit"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":" "}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"color:#24292E;--shiki-dark:#E1E4E8"},"children":[{"type":"text","value":""}]}]}]}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"confirm-user-has-clicked-the-checkbox-before-submit","depth":3,"text":"Confirm user has clicked the checkbox before submit"},{"id":"execute-challenge-when-user-submit-form","depth":3,"text":"Execute challenge when user submit form"}]}},"_type":"markdown","_id":"content:5.integration:0.vee-validation.md","_source":"content","_file":"5.integration/0.vee-validation.md","_extension":"md"}],"navigation":[{"title":"Guide","_path":"/guide","children":[{"title":"Get started","_path":"/guide"},{"title":"Nuxt","_path":"/guide/nuxt"},{"title":"Migration from v2","_path":"/guide/migration"},{"title":"Enterprise reCAPTCHA Support","_path":"/guide/enterprise"},{"title":"FAQ","_path":"/guide/faq"}]},{"title":"Components","_path":"/components","children":[{"title":"Overview","_path":"/components"},{"title":"Checkbox","_path":"/components/checkbox"},{"title":"ChallengeV2","_path":"/components/challenge-v2"},{"title":"ChallengeV3","_path":"/components/challenge-v3"}]},{"title":"Composables","_path":"/composables","children":[{"title":"useRecaptchaProvider","_path":"/composables/recaptcha-provider"},{"title":"useChallengeV2","_path":"/composables/challenge-v2"},{"title":"useChallengeV3","_path":"/composables/challenge-v3"}]},{"title":"Advanced Topics","_path":"/advanced","children":[{"title":"Customize reCAPTCHA script loading","_path":"/advanced/customize-recaptcha-script-loading"}]},{"title":"Integration","_path":"/integration","children":[{"title":"Vee Validation","_path":"/integration/vee-validation"}]}]} \ No newline at end of file diff --git a/api/_content/navigation/u7BbTyuhiE.1704302799570.json b/api/_content/navigation/u7BbTyuhiE.1704383405884.json similarity index 100% rename from api/_content/navigation/u7BbTyuhiE.1704302799570.json rename to api/_content/navigation/u7BbTyuhiE.1704383405884.json diff --git a/api/_content/query/5o97oNYApY.1704302799570.json b/api/_content/query/5o97oNYApY.1704383405884.json similarity index 100% rename from api/_content/query/5o97oNYApY.1704302799570.json rename to api/_content/query/5o97oNYApY.1704383405884.json diff --git a/api/_content/query/6Ma98zDOAL.1704302799570.json b/api/_content/query/6Ma98zDOAL.1704383405884.json similarity index 100% rename from api/_content/query/6Ma98zDOAL.1704302799570.json rename to api/_content/query/6Ma98zDOAL.1704383405884.json diff --git a/api/_content/query/71x6tI7TZ6.1704302799570.json b/api/_content/query/71x6tI7TZ6.1704383405884.json similarity index 100% rename from api/_content/query/71x6tI7TZ6.1704302799570.json rename to api/_content/query/71x6tI7TZ6.1704383405884.json diff --git a/api/_content/query/7iVMcekoeE.1704302799570.json b/api/_content/query/7iVMcekoeE.1704383405884.json similarity index 100% rename from api/_content/query/7iVMcekoeE.1704302799570.json rename to api/_content/query/7iVMcekoeE.1704383405884.json diff --git a/api/_content/query/M3XVXw3HJU.1704302799570.json b/api/_content/query/M3XVXw3HJU.1704383405884.json similarity index 100% rename from api/_content/query/M3XVXw3HJU.1704302799570.json rename to api/_content/query/M3XVXw3HJU.1704383405884.json diff --git a/api/_content/query/MNRZfjwhUr.1704302799570.json b/api/_content/query/MNRZfjwhUr.1704383405884.json similarity index 100% rename from api/_content/query/MNRZfjwhUr.1704302799570.json rename to api/_content/query/MNRZfjwhUr.1704383405884.json diff --git a/api/_content/query/RR98Iqj5nh.1704302799570.json b/api/_content/query/RR98Iqj5nh.1704383405884.json similarity index 100% rename from api/_content/query/RR98Iqj5nh.1704302799570.json rename to api/_content/query/RR98Iqj5nh.1704383405884.json diff --git a/api/_content/query/SeoqWQG0fS.1704302799570.json b/api/_content/query/SeoqWQG0fS.1704383405884.json similarity index 100% rename from api/_content/query/SeoqWQG0fS.1704302799570.json rename to api/_content/query/SeoqWQG0fS.1704383405884.json diff --git a/api/_content/query/T9GHEEsuxc.1704302799570.json b/api/_content/query/T9GHEEsuxc.1704383405884.json similarity index 100% rename from api/_content/query/T9GHEEsuxc.1704302799570.json rename to api/_content/query/T9GHEEsuxc.1704383405884.json diff --git a/api/_content/query/TdqgdZYwVh.1704302799570.json b/api/_content/query/TdqgdZYwVh.1704383405884.json similarity index 100% rename from api/_content/query/TdqgdZYwVh.1704302799570.json rename to api/_content/query/TdqgdZYwVh.1704383405884.json diff --git a/api/_content/query/a9mJ5sb0Ut.1704302799570.json b/api/_content/query/a9mJ5sb0Ut.1704383405884.json similarity index 100% rename from api/_content/query/a9mJ5sb0Ut.1704302799570.json rename to api/_content/query/a9mJ5sb0Ut.1704383405884.json diff --git a/api/_content/query/brX4CwCJoQ.1704302799570.json b/api/_content/query/brX4CwCJoQ.1704383405884.json similarity index 100% rename from api/_content/query/brX4CwCJoQ.1704302799570.json rename to api/_content/query/brX4CwCJoQ.1704383405884.json diff --git a/api/_content/query/cYHfkdXNA9.1704302799570.json b/api/_content/query/cYHfkdXNA9.1704383405884.json similarity index 100% rename from api/_content/query/cYHfkdXNA9.1704302799570.json rename to api/_content/query/cYHfkdXNA9.1704383405884.json diff --git a/api/_content/query/cwi4DXcuTN.1704302799570.json b/api/_content/query/cwi4DXcuTN.1704383405884.json similarity index 100% rename from api/_content/query/cwi4DXcuTN.1704302799570.json rename to api/_content/query/cwi4DXcuTN.1704383405884.json diff --git a/api/_content/query/enlVh97sWo.1704302799570.json b/api/_content/query/enlVh97sWo.1704383405884.json similarity index 100% rename from api/_content/query/enlVh97sWo.1704302799570.json rename to api/_content/query/enlVh97sWo.1704383405884.json diff --git a/api/_content/query/ilY3438huT.1704302799570.json b/api/_content/query/ilY3438huT.1704383405884.json similarity index 100% rename from api/_content/query/ilY3438huT.1704302799570.json rename to api/_content/query/ilY3438huT.1704383405884.json diff --git a/api/_content/query/llVwSUGQ8t.1704302799570.json b/api/_content/query/llVwSUGQ8t.1704383405884.json similarity index 100% rename from api/_content/query/llVwSUGQ8t.1704302799570.json rename to api/_content/query/llVwSUGQ8t.1704383405884.json diff --git a/api/_content/query/nEtvTjdOht.1704302799570.json b/api/_content/query/nEtvTjdOht.1704383405884.json similarity index 100% rename from api/_content/query/nEtvTjdOht.1704302799570.json rename to api/_content/query/nEtvTjdOht.1704383405884.json diff --git a/api/_content/query/nkLpzwYCmw.1704302799570.json b/api/_content/query/nkLpzwYCmw.1704383405884.json similarity index 100% rename from api/_content/query/nkLpzwYCmw.1704302799570.json rename to api/_content/query/nkLpzwYCmw.1704383405884.json diff --git a/api/_content/query/o37MdY9M7h.1704302799570.json b/api/_content/query/o37MdY9M7h.1704383405884.json similarity index 100% rename from api/_content/query/o37MdY9M7h.1704302799570.json rename to api/_content/query/o37MdY9M7h.1704383405884.json diff --git a/api/_content/query/qD1kmuf7LZ.1704302799570.json b/api/_content/query/qD1kmuf7LZ.1704383405884.json similarity index 100% rename from api/_content/query/qD1kmuf7LZ.1704302799570.json rename to api/_content/query/qD1kmuf7LZ.1704383405884.json diff --git a/api/_content/query/qI1iJDV4vv.1704302799570.json b/api/_content/query/qI1iJDV4vv.1704383405884.json similarity index 100% rename from api/_content/query/qI1iJDV4vv.1704302799570.json rename to api/_content/query/qI1iJDV4vv.1704383405884.json diff --git a/api/_content/query/qIaVkSSVbL.1704302799570.json b/api/_content/query/qIaVkSSVbL.1704383405884.json similarity index 100% rename from api/_content/query/qIaVkSSVbL.1704302799570.json rename to api/_content/query/qIaVkSSVbL.1704383405884.json diff --git a/api/_content/query/s1rpjBKntu.1704302799570.json b/api/_content/query/s1rpjBKntu.1704383405884.json similarity index 100% rename from api/_content/query/s1rpjBKntu.1704302799570.json rename to api/_content/query/s1rpjBKntu.1704383405884.json diff --git a/api/_content/query/udG4RswcBp.1704302799570.json b/api/_content/query/udG4RswcBp.1704383405884.json similarity index 100% rename from api/_content/query/udG4RswcBp.1704302799570.json rename to api/_content/query/udG4RswcBp.1704383405884.json diff --git a/api/_content/query/wrDfznErw4.1704302799570.json b/api/_content/query/wrDfznErw4.1704383405884.json similarity index 100% rename from api/_content/query/wrDfznErw4.1704302799570.json rename to api/_content/query/wrDfznErw4.1704383405884.json diff --git a/api/_content/query/xIJVJksIkT.1704302799570.json b/api/_content/query/xIJVJksIkT.1704383405884.json similarity index 100% rename from api/_content/query/xIJVJksIkT.1704302799570.json rename to api/_content/query/xIJVJksIkT.1704383405884.json diff --git a/api/_content/query/xWeY3NfYtX.1704302799570.json b/api/_content/query/xWeY3NfYtX.1704383405884.json similarity index 100% rename from api/_content/query/xWeY3NfYtX.1704302799570.json rename to api/_content/query/xWeY3NfYtX.1704383405884.json diff --git a/api/_content/query/y5OZXjriWq.1704302799570.json b/api/_content/query/y5OZXjriWq.1704383405884.json similarity index 100% rename from api/_content/query/y5OZXjriWq.1704302799570.json rename to api/_content/query/y5OZXjriWq.1704383405884.json diff --git a/api/_content/query/zlYjVpH9OK.1704302799570.json b/api/_content/query/zlYjVpH9OK.1704383405884.json similarity index 100% rename from api/_content/query/zlYjVpH9OK.1704302799570.json rename to api/_content/query/zlYjVpH9OK.1704383405884.json diff --git a/components/_payload.json b/components/_payload.json index 3acf138be7..7367fcc97e 100644 --- a/components/_payload.json +++ b/components/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842244] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450620] \ No newline at end of file diff --git a/components/challenge-v2/_payload.json b/components/challenge-v2/_payload.json index 5ebbd36f1c..4b10f84907 100644 --- a/components/challenge-v2/_payload.json +++ b/components/challenge-v2/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842248] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450625] \ No newline at end of file diff --git a/components/challenge-v2/index.html b/components/challenge-v2/index.html index f228d1dc23..bddc811798 100644 --- a/components/challenge-v2/index.html +++ b/components/challenge-v2/index.html @@ -39,63 +39,63 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

ChallengeV2 v2

Create invisible reCAPTCHA v2

Code
<script setup lang="ts">import { RecaptchaV2State } from '#recaptcha'const map = {  [RecaptchaV2State.Init]: 'Click to Challenge',  [RecaptchaV2State.Verified]: 'Verified',  [RecaptchaV2State.Expired]: 'Expired',  [RecaptchaV2State.Error]: 'Error',}const response = ref()</script><template>  <ChallengeV2 v-slot="{ state }" v-model="response">    <PrimaryButton>{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}</PrimaryButton>  </ChallengeV2></template>

Props

keytypedefaultdescription
asstring'div'What element to render
badge`'bottomright''bottomleft''inline'`
autoExecutebooleantrueShould vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot

v-model

keytypedescription
modelValuestringThe reCAPTCHA response
widgetIdstringWidget id for reCAPTCHA checkbox

About modelValue

You can set modelValue to null or empty string to reset reCAPTCHA checkbox.

About the visible Badge for invisible reCAPTCHA

You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it.

.grecaptcha-badge { visibility: hidden; }

Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link

Slots

default

This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default

Slot API

interface SlotApi {  /**   * widget id   */  widgetId: WidgetID | undefined  /**   * reCAPTCHA state   */  state: RecaptchaV2State  isError: boolean  isExpired: boolean  isVerified: boolean  /**   * reset reCAPTCHA   */  reset: () => void  /**   * execute challenge   */  execute: () => void}

RecaptchaV2State

export enum RecaptchaV2State {  Init = 'init',  Verified = 'verified',  Expired = 'expired',  Error = 'error',}
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

ChallengeV2 v2

Create invisible reCAPTCHA v2

Code
<script setup lang="ts">import { RecaptchaV2State } from '#recaptcha'const map = {  [RecaptchaV2State.Init]: 'Click to Challenge',  [RecaptchaV2State.Verified]: 'Verified',  [RecaptchaV2State.Expired]: 'Expired',  [RecaptchaV2State.Error]: 'Error',}const response = ref()</script><template>  <ChallengeV2 v-slot="{ state }" v-model="response">    <PrimaryButton>{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}</PrimaryButton>  </ChallengeV2></template>

Props

keytypedefaultdescription
asstring'div'What element to render
badge`'bottomright''bottomleft''inline'`
autoExecutebooleantrueShould vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot

v-model

keytypedescription
modelValuestringThe reCAPTCHA response
widgetIdstringWidget id for reCAPTCHA checkbox

About modelValue

You can set modelValue to null or empty string to reset reCAPTCHA checkbox.

About the visible Badge for invisible reCAPTCHA

You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it.

.grecaptcha-badge { visibility: hidden; }

Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link

Slots

default

This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default

Slot API

interface SlotApi {  /**   * widget id   */  widgetId: WidgetID | undefined  /**   * reCAPTCHA state   */  state: RecaptchaV2State  isError: boolean  isExpired: boolean  isVerified: boolean  /**   * reset reCAPTCHA   */  reset: () => void  /**   * execute challenge   */  execute: () => void}

RecaptchaV2State

export enum RecaptchaV2State {  Init = 'init',  Verified = 'verified',  Expired = 'expired',  Error = 'error',}
+ \ No newline at end of file diff --git a/components/challenge-v3/_payload.json b/components/challenge-v3/_payload.json index 134b44d7af..6fb5bb1aea 100644 --- a/components/challenge-v3/_payload.json +++ b/components/challenge-v3/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842250] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450627] \ No newline at end of file diff --git a/components/challenge-v3/index.html b/components/challenge-v3/index.html index b420fb643c..4a46138011 100644 --- a/components/challenge-v3/index.html +++ b/components/challenge-v3/index.html @@ -39,61 +39,61 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

ChallengeV3 v3

Create reCAPTCHA v3 challenge

Code
<script lang="ts" setup>const response = ref()</script><template>  <div>    <ChallengeV3 v-model="response" action="submit">      <PrimaryButton>{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}</PrimaryButton>    </ChallengeV3>  </div></template>

Props

keytypedefaultdescription
actionstringThe action for reCAPTCHA v3
asstring'div'What element to render
autoExecutebooleantrueShould vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot

v-model

keytypedescription
modelValuestringThe reCAPTCHA response

Slots

default

This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default

Slot API

interface SlotApi {  /**   * reCAPTCHA v3 response   */  response: string | undefined  /**   * execute reCAPTCHA v3 challenge   */  execute: () => Promise<string>}
Table of Contents
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

ChallengeV3 v3

Create reCAPTCHA v3 challenge

Code
<script lang="ts" setup>const response = ref()</script><template>  <div>    <ChallengeV3 v-model="response" action="submit">      <PrimaryButton>{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}</PrimaryButton>    </ChallengeV3>  </div></template>

Props

keytypedefaultdescription
actionstringThe action for reCAPTCHA v3
asstring'div'What element to render
autoExecutebooleantrueShould vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot

v-model

keytypedescription
modelValuestringThe reCAPTCHA response

Slots

default

This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default

Slot API

interface SlotApi {  /**   * reCAPTCHA v3 response   */  response: string | undefined  /**   * execute reCAPTCHA v3 challenge   */  execute: () => Promise<string>}
Table of Contents
+ \ No newline at end of file diff --git a/components/checkbox/_payload.json b/components/checkbox/_payload.json index a6d48d9ae5..0c2e7f1ad5 100644 --- a/components/checkbox/_payload.json +++ b/components/checkbox/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842246] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450622] \ No newline at end of file diff --git a/components/checkbox/index.html b/components/checkbox/index.html index d15abc7170..32095e6299 100644 --- a/components/checkbox/index.html +++ b/components/checkbox/index.html @@ -38,62 +38,62 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Checkbox v2

Insert reCAPTCHA v2 checkbox

Please click the checkbox
Code
<script setup lang="ts">const theme = ref<'light' | 'dark'>('light')const response = ref()</script><template>  <div>    <ThemeButton v-model="theme" @click="response = ''" />    <div>{{ response ? 'Verified' : 'Please click the checkbox' }}</div>    <Checkbox :key="theme" v-model="response" :theme="theme" />  </div></template>

Props

keytypedefaultdescription
asstring'div'What element to render
theme'light' | 'dark''light'Theme for reCAPTCHA checkbox
size'normal' | 'compact''normal'Size for the reCAPTCHA checkbox

v-model

keytypedescription
modelValuestringThe reCAPTCHA response
widgetIdstringWidget id for reCAPTCHA checkbox

About modelValue

You can set modelValue to null or empty string to reset reCAPTCHA checkbox.

- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Checkbox v2

Insert reCAPTCHA v2 checkbox

Please click the checkbox
Code
<script setup lang="ts">const theme = ref<'light' | 'dark'>('light')const response = ref()</script><template>  <div>    <ThemeButton v-model="theme" @click="response = ''" />    <div>{{ response ? 'Verified' : 'Please click the checkbox' }}</div>    <Checkbox :key="theme" v-model="response" :theme="theme" />  </div></template>

Props

keytypedefaultdescription
asstring'div'What element to render
theme'light' | 'dark''light'Theme for reCAPTCHA checkbox
size'normal' | 'compact''normal'Size for the reCAPTCHA checkbox

v-model

keytypedescription
modelValuestringThe reCAPTCHA response
widgetIdstringWidget id for reCAPTCHA checkbox

About modelValue

You can set modelValue to null or empty string to reset reCAPTCHA checkbox.

+ \ No newline at end of file diff --git a/components/index.html b/components/index.html index a781fcaa12..1d1d55ef97 100644 --- a/components/index.html +++ b/components/index.html @@ -31,51 +31,51 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Overview

Checkbox v2

The most basic form of the reCAPTCHA

Code
<template>  <Checkbox /></template>
Go to document

ChallengeV2 v2

Invisible reCAPTCHA.

Go to document

ChallengeV3 v3

reCAPTCHA v3

Go to document
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Overview

Checkbox v2

The most basic form of the reCAPTCHA

Code
<template>  <Checkbox /></template>
Go to document

ChallengeV2 v2

Invisible reCAPTCHA.

Go to document

ChallengeV3 v3

reCAPTCHA v3

Go to document
+ \ No newline at end of file diff --git a/composables/challenge-v2/_payload.json b/composables/challenge-v2/_payload.json index 8817098801..3b515651e4 100644 --- a/composables/challenge-v2/_payload.json +++ b/composables/challenge-v2/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842254] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450631] \ No newline at end of file diff --git a/composables/challenge-v2/index.html b/composables/challenge-v2/index.html index f048cc7b59..b355f3aa0d 100644 --- a/composables/challenge-v2/index.html +++ b/composables/challenge-v2/index.html @@ -30,46 +30,46 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

useChallengeV2 v2

Description

A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA

Input

interface RecaptchaV2CheckboxOptionsInput {  theme?: 'dark' | 'light'  size?: 'compact' | 'normal'  tabindex?: string}interface RecaptchaV2InvisibleOptionsInput {  badge?: 'bottomright' | 'bottomleft' | 'inline'  size: 'invisible'  tabindex?: string}export interface UseChallengeV2Input {  /**   * root to mount reCAPTCHA   */  root?: MaybeComputedRef<Element | undefined>  /**   * Option that pass to reCAPTCHA render   */  options?: RecaptchaV2OptionsInput}

Return

export interface UseChallengeV2Return {  /**   * root element ref to mount reCAPTCHA   */  root: Ref<Element | undefined>  /**   * reCAPTCHA widget id   */  widgetID: Ref<WidgetID | undefined>  /**   * state of reCAPTCHA   */  state: Ref<RecaptchaV2State>  /**   * the verified event   */  onVerify: EventHookOn<string>  /**   * the expired event   */  onExpired: EventHookOn<void>  /**   * the error event   */  onError: EventHookOn<Error>  /**   * execute the challenge   */  execute: () => void  /**   * reset reCAPTCHA   */  reset: () => void}

About the state please see here for more details

Please see reCAPTCHA docs for more information about the options.

About the visible Badge for invisible reCAPTCHA

You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it.

.grecaptcha-badge { visibility: hidden; }

Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link

Examples

Checkbox

<script>import { useChallengeV2 } from 'vue-recaptcha'const { root, onVerify } = useChallengeV2({  options: {    theme: 'light',    size: 'normal',  }})onVerify((response) => {  // do something with response  console.log(response)})</script><template>  <div ref="root" /></template>

Invisible reCAPTCHA

<script>import { useChallengeV2 } from 'vue-recaptcha'const { root, execute, onVerify } = useChallengeV2({  options: {    // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA    size: 'invisible',  }})onVerify((response) => {  // do something with response  console.log(response)})</script><template>  <div>    <button @click="execute">      submit    </button>    <!-- You must give an empty div to render the invisible reCAPTCHA -->    <div ref="root" />  </div></template>
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

useChallengeV2 v2

Description

A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA

Input

interface RecaptchaV2CheckboxOptionsInput {  theme?: 'dark' | 'light'  size?: 'compact' | 'normal'  tabindex?: string}interface RecaptchaV2InvisibleOptionsInput {  badge?: 'bottomright' | 'bottomleft' | 'inline'  size: 'invisible'  tabindex?: string}export interface UseChallengeV2Input {  /**   * root to mount reCAPTCHA   */  root?: MaybeComputedRef<Element | undefined>  /**   * Option that pass to reCAPTCHA render   */  options?: RecaptchaV2OptionsInput}

Return

export interface UseChallengeV2Return {  /**   * root element ref to mount reCAPTCHA   */  root: Ref<Element | undefined>  /**   * reCAPTCHA widget id   */  widgetID: Ref<WidgetID | undefined>  /**   * state of reCAPTCHA   */  state: Ref<RecaptchaV2State>  /**   * the verified event   */  onVerify: EventHookOn<string>  /**   * the expired event   */  onExpired: EventHookOn<void>  /**   * the error event   */  onError: EventHookOn<Error>  /**   * execute the challenge   */  execute: () => void  /**   * reset reCAPTCHA   */  reset: () => void}

About the state please see here for more details

Please see reCAPTCHA docs for more information about the options.

About the visible Badge for invisible reCAPTCHA

You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it.

.grecaptcha-badge { visibility: hidden; }

Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link

Examples

Checkbox

<script>import { useChallengeV2 } from 'vue-recaptcha'const { root, onVerify } = useChallengeV2({  options: {    theme: 'light',    size: 'normal',  }})onVerify((response) => {  // do something with response  console.log(response)})</script><template>  <div ref="root" /></template>

Invisible reCAPTCHA

<script>import { useChallengeV2 } from 'vue-recaptcha'const { root, execute, onVerify } = useChallengeV2({  options: {    // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA    size: 'invisible',  }})onVerify((response) => {  // do something with response  console.log(response)})</script><template>  <div>    <button @click="execute">      submit    </button>    <!-- You must give an empty div to render the invisible reCAPTCHA -->    <div ref="root" />  </div></template>
+ \ No newline at end of file diff --git a/composables/challenge-v3/_payload.json b/composables/challenge-v3/_payload.json index 4c48e78885..be7be322b8 100644 --- a/composables/challenge-v3/_payload.json +++ b/composables/challenge-v3/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842255] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450632] \ No newline at end of file diff --git a/composables/challenge-v3/index.html b/composables/challenge-v3/index.html index f380f252f9..506fc92b08 100644 --- a/composables/challenge-v3/index.html +++ b/composables/challenge-v3/index.html @@ -31,47 +31,47 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

useChallengeV3 v3

Description

A composable to help you execute the reCAPTCHA v3 challenge

Input

  • action: The action for reCAPTCHA v3

Return

export interface UseChallengeV3Return {  /**   * reCAPTCHA v3 response as ref   */  response: Ref<string | undefined>  /**   * Execute the challenge   * @returns response for reCAPTCHA v3   */  execute: () => Promise<string>}

Usage

<script lang="ts" setup>import { useChallengeV3 } from 'vue-recaptcha'const { execute } = useChallengeV3('submit')async function onSubmit() {  const response = await execute()  // do something with response  console.log(response)}</script><template>  <div>    <button @click="onSubmit">      submit    </button>  </div></template>
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

useChallengeV3 v3

Description

A composable to help you execute the reCAPTCHA v3 challenge

Input

  • action: The action for reCAPTCHA v3

Return

export interface UseChallengeV3Return {  /**   * reCAPTCHA v3 response as ref   */  response: Ref<string | undefined>  /**   * Execute the challenge   * @returns response for reCAPTCHA v3   */  execute: () => Promise<string>}

Usage

<script lang="ts" setup>import { useChallengeV3 } from 'vue-recaptcha'const { execute } = useChallengeV3('submit')async function onSubmit() {  const response = await execute()  // do something with response  console.log(response)}</script><template>  <div>    <button @click="onSubmit">      submit    </button>  </div></template>
+ \ No newline at end of file diff --git a/composables/recaptcha-provider/_payload.json b/composables/recaptcha-provider/_payload.json index 541f8d811a..8df0d4b1f3 100644 --- a/composables/recaptcha-provider/_payload.json +++ b/composables/recaptcha-provider/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842252] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450628] \ No newline at end of file diff --git a/composables/recaptcha-provider/index.html b/composables/recaptcha-provider/index.html index b34ae5c5d0..dd53e177cc 100644 --- a/composables/recaptcha-provider/index.html +++ b/composables/recaptcha-provider/index.html @@ -27,43 +27,43 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

useRecaptchaProvider

The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.

Code
<script setup lang="ts">import { useRecaptchaProvider } from 'vue-recaptcha'useRecaptchaProvider()</script>
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

useRecaptchaProvider

The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.

Code
<script setup lang="ts">import { useRecaptchaProvider } from 'vue-recaptcha'useRecaptchaProvider()</script>
+ \ No newline at end of file diff --git a/guide/_payload.json b/guide/_payload.json index fdbf652aac..3212a0e960 100644 --- a/guide/_payload.json +++ b/guide/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302841992] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450358] \ No newline at end of file diff --git a/guide/enterprise/_payload.json b/guide/enterprise/_payload.json index d1c58114b2..0a7ead9e85 100644 --- a/guide/enterprise/_payload.json +++ b/guide/enterprise/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842239] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450616] \ No newline at end of file diff --git a/guide/enterprise/index.html b/guide/enterprise/index.html index 43542d02ca..2e19a47afa 100644 --- a/guide/enterprise/index.html +++ b/guide/enterprise/index.html @@ -28,44 +28,44 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Enterprise reCAPTCHA Support

Enterprise version support is experimental and may be changed in the future.

Simply change your plugin import to the following:

import VueRecaptchaPlugin from 'vue-recaptcha/enterprise'const app = createApp(App)app.use(VueRecaptchaPlugin)

Usage without unhead

If you are not using unhead and want to use the enterprise version, you can use the following code:

import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head'const app = createApp(App)app.use(VueRecaptchaPlugin)

Nuxt

If you are using Nuxt, you can set the recaptcha.enterprise option to true:

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },  recaptcha: {    enterprise: true,  },})
Table of Contents
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Enterprise reCAPTCHA Support

Enterprise version support is experimental and may be changed in the future.

Simply change your plugin import to the following:

import VueRecaptchaPlugin from 'vue-recaptcha/enterprise'const app = createApp(App)app.use(VueRecaptchaPlugin)

Usage without unhead

If you are not using unhead and want to use the enterprise version, you can use the following code:

import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head'const app = createApp(App)app.use(VueRecaptchaPlugin)

Nuxt

If you are using Nuxt, you can set the recaptcha.enterprise option to true:

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },  recaptcha: {    enterprise: true,  },})
Table of Contents
+ \ No newline at end of file diff --git a/guide/faq/_payload.json b/guide/faq/_payload.json index de69ce9e71..3e591cd2f5 100644 --- a/guide/faq/_payload.json +++ b/guide/faq/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842242] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450618] \ No newline at end of file diff --git a/guide/faq/index.html b/guide/faq/index.html index 0825772479..db22d578da 100644 --- a/guide/faq/index.html +++ b/guide/faq/index.html @@ -26,42 +26,42 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development
+ \ No newline at end of file diff --git a/guide/index.html b/guide/index.html index 523b73b862..75e75e3df5 100644 --- a/guide/index.html +++ b/guide/index.html @@ -33,50 +33,50 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Get started

From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide

Let's get started with vue-recaptcha.

What is vue-recaptcha

vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA

  • component that is easy to use
  • composable to integrate into your own app

vue-recaptcha is not for:

  • customize reCAPTCHA UI
  • provide features that is not implemented by Google reCATPCHA, like change language on the fly

Installation

Bash
$yarn add vue-recaptcha@next
Click to copy
Bash
$npm install vue-recaptcha@next
Click to copy
Bash
$pnpm add vue-recaptcha@next
Click to copy

Setup vue-recaptcha plugin

By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head, please check out Usage without unhead
import { VueRecaptchaPlugin } from 'vue-recaptcha'const app = createApp(App)app.use(VueRecaptchaPlugin, {  v2SiteKey: 'YOUR_V2_SITEKEY_HERE',  v3SiteKey: 'YOUR_V3_SITEKEY_HERE',})

Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one

Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey

In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey

If you did't provide the corresponding site key, you'll get a runtime error

Provide reCAPTCHA script

To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue

<script setup lang="ts">import { useRecaptchaProvider } from 'vue-recaptcha'useRecaptchaProvider()</script><template>  <div id="app">    <router-view />  </div></template>

That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components

Go to component overview

Usage without unhead

If you are not using @unhead/vue or @vueuse/head, you can simply import the plugin from vue-recaptcha/head

import { VueRecaptchaPlugin } from 'vue-recaptcha/head'const app = createApp(App)app.use(VueRecaptchaPlugin, {  v2SiteKey: 'YOUR_V2_SITEKEY_HERE',  v3SiteKey: 'YOUR_V3_SITEKEY_HERE',})

With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head

- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Get started

From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide

Let's get started with vue-recaptcha.

What is vue-recaptcha

vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA

  • component that is easy to use
  • composable to integrate into your own app

vue-recaptcha is not for:

  • customize reCAPTCHA UI
  • provide features that is not implemented by Google reCATPCHA, like change language on the fly

Installation

Bash
$yarn add vue-recaptcha@next
Click to copy
Bash
$npm install vue-recaptcha@next
Click to copy
Bash
$pnpm add vue-recaptcha@next
Click to copy

Setup vue-recaptcha plugin

By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head, please check out Usage without unhead
import { VueRecaptchaPlugin } from 'vue-recaptcha'const app = createApp(App)app.use(VueRecaptchaPlugin, {  v2SiteKey: 'YOUR_V2_SITEKEY_HERE',  v3SiteKey: 'YOUR_V3_SITEKEY_HERE',})

Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one

Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey

In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey

If you did't provide the corresponding site key, you'll get a runtime error

Provide reCAPTCHA script

To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue

<script setup lang="ts">import { useRecaptchaProvider } from 'vue-recaptcha'useRecaptchaProvider()</script><template>  <div id="app">    <router-view />  </div></template>

That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components

Go to component overview

Usage without unhead

If you are not using @unhead/vue or @vueuse/head, you can simply import the plugin from vue-recaptcha/head

import { VueRecaptchaPlugin } from 'vue-recaptcha/head'const app = createApp(App)app.use(VueRecaptchaPlugin, {  v2SiteKey: 'YOUR_V2_SITEKEY_HERE',  v3SiteKey: 'YOUR_V3_SITEKEY_HERE',})

With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head

+ \ No newline at end of file diff --git a/guide/migration/_payload.json b/guide/migration/_payload.json index 973c7f379a..3ca3e6efb5 100644 --- a/guide/migration/_payload.json +++ b/guide/migration/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842238] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450614] \ No newline at end of file diff --git a/guide/migration/index.html b/guide/migration/index.html index 9cfbe3218c..22505dd8a4 100644 --- a/guide/migration/index.html +++ b/guide/migration/index.html @@ -28,44 +28,44 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Migration from v2

1. set up the plugin

V3 need you to set up a Vue plugin before start using.

import { VueRecaptchaPlugin } from 'vue-recaptcha'const app = createApp(App)app.use(VueRecaptchaPlugin, {  v2SiteKey: 'YOUR_SITE_KEY_HERE'})

2. Provide reCAPTCHA script

To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue

<script setup lang="ts">import { useRecaptchaProvider } from 'vue-recaptcha'useRecaptchaProvider()</script>

3. Use the components

Now you can start using the components

If you are using the "I'm not a robot" checkbox, please use the <Checkbox />

<template>  <Checkbox v-model="response" /></template>

You can read more at here

If you are using the invisible reCAPTCHA, please use the <ChallengeV2 />

<template>  <ChallengeV2 v-model="response">    <button>submit</button>  </ChallengeV2></template>

You can read more at here

- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Migration from v2

1. set up the plugin

V3 need you to set up a Vue plugin before start using.

import { VueRecaptchaPlugin } from 'vue-recaptcha'const app = createApp(App)app.use(VueRecaptchaPlugin, {  v2SiteKey: 'YOUR_SITE_KEY_HERE'})

2. Provide reCAPTCHA script

To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue

<script setup lang="ts">import { useRecaptchaProvider } from 'vue-recaptcha'useRecaptchaProvider()</script>

3. Use the components

Now you can start using the components

If you are using the "I'm not a robot" checkbox, please use the <Checkbox />

<template>  <Checkbox v-model="response" /></template>

You can read more at here

If you are using the invisible reCAPTCHA, please use the <ChallengeV2 />

<template>  <ChallengeV2 v-model="response">    <button>submit</button>  </ChallengeV2></template>

You can read more at here

+ \ No newline at end of file diff --git a/guide/nuxt/_payload.json b/guide/nuxt/_payload.json index 7bf50988df..0abc14a7b5 100644 --- a/guide/nuxt/_payload.json +++ b/guide/nuxt/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842235] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450611] \ No newline at end of file diff --git a/guide/nuxt/index.html b/guide/nuxt/index.html index bee02a10b9..cf05205f20 100644 --- a/guide/nuxt/index.html +++ b/guide/nuxt/index.html @@ -34,51 +34,51 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Nuxt

When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs.

vue-recaptcha supports Nuxt.js out of the box.

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],})
Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components
Original nameRenamed to
CheckboxRecaptchaCheckbox
ChallengeV2RecaptchaChallengeV2
ChallengeV3RecaptchaChallengeV3

Options

You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public.

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },})

Enterprise

If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support.

Enterprise version support is experimental and may be changed in the future.
defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },  recaptcha: {    enterprise: true,  },})

Manually Install Plugin

If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file.

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },  recaptcha: {    plugin: false,  },})

Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory.

import VueRecaptchaPlugin from 'vue-recaptcha'export default defineNuxtPlugin(({ vueApp }) => {  const {    public: { recaptcha },  } = useRuntimeConfig()  vueApp.use(VueRecaptchaPlugin, recaptcha)})
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Nuxt

When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs.

vue-recaptcha supports Nuxt.js out of the box.

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],})
Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components
Original nameRenamed to
CheckboxRecaptchaCheckbox
ChallengeV2RecaptchaChallengeV2
ChallengeV3RecaptchaChallengeV3

Options

You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public.

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },})

Enterprise

If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support.

Enterprise version support is experimental and may be changed in the future.
defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },  recaptcha: {    enterprise: true,  },})

Manually Install Plugin

If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file.

defineNuxtConfig({  modules: ['vue-recaptcha/nuxt'],  runtimeConfig: {    public: {      recaptcha: {        v2SiteKey: 'YOUR_V2_SITEKEY_HERE',        v3SiteKey: 'YOUR_V3_SITEKEY_HERE',      },    },  },  recaptcha: {    plugin: false,  },})

Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory.

import VueRecaptchaPlugin from 'vue-recaptcha'export default defineNuxtPlugin(({ vueApp }) => {  const {    public: { recaptcha },  } = useRuntimeConfig()  vueApp.use(VueRecaptchaPlugin, recaptcha)})
+ \ No newline at end of file diff --git a/index.html b/index.html index e80d352bd8..fc8d069301 100644 --- a/index.html +++ b/index.html @@ -27,32 +27,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -61,27 +61,27 @@ - - - - - - - - - - - + + + + + + + + + + + - + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

vue-recaptcha

Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js

Bash
$yarn add vue-recaptcha@next
Click to copy

Easy to use

Use <Checkbox /> to render reCAPTCHA checkbox

Code
  <template>    <Checkbox />  </template>

What's included

reCAPTCHA v2

The "I'm not a robot" checkbox

reCAPTCHA v3

Determinate if user is human without interrupt the user flow

Nuxt integration

Use reCAPTCHA in Nuxt.js

- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

vue-recaptcha

Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js

Bash
$yarn add vue-recaptcha@next
Click to copy

Easy to use

Use <Checkbox /> to render reCAPTCHA checkbox

Code
  <template>    <Checkbox />  </template>

What's included

reCAPTCHA v2

The "I'm not a robot" checkbox

reCAPTCHA v3

Determinate if user is human without interrupt the user flow

Nuxt integration

Use reCAPTCHA in Nuxt.js

+ \ No newline at end of file diff --git a/integration/vee-validation/_payload.json b/integration/vee-validation/_payload.json index 9247b2c93d..d271e9a3d4 100644 --- a/integration/vee-validation/_payload.json +++ b/integration/vee-validation/_payload.json @@ -1 +1 @@ -[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704302842259] \ No newline at end of file +[{"data":1,"prerenderedAt":134},["Reactive",2],{"search-api":3},[4,11,21,31,40,46,55,64,74,83,90,98,108,115,124],{"id":5,"path":6,"dir":7,"title":8,"description":7,"keywords":9,"body":10},"content:0.index.md","/","","vue-recaptcha document",[]," vue-recaptcha Make Google's reCAPTCHA easy to use in Vue.js/Nuxt.js \u003C template > \u003C Checkbox /> \u003C/ template > What's included reCAPTCHA v2 The \"I'm not a robot\" checkbox reCAPTCHA v3 Determinate if user is human without interrupt the user flow Nuxt integration Use reCAPTCHA in Nuxt.js html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":12,"path":13,"dir":7,"title":14,"description":7,"keywords":15,"body":20},"content:1.guide:0.index.md","/guide","Get started",[16,17,18,19],"Installation","Setup vue-recaptcha plugin","Provide reCAPTCHA script","Usage without unhead"," Get started From vue-recaptcha v2? v3 is a complete rewrite, please check out migration guide Let's get started with vue-recaptcha. What is vue-recaptcha vue-recaptcha is just a wrapper to provide an easier interface for Google's reCAPTCHA component that is easy to use composable to integrate into your own app vue-recaptcha is not for: customize reCAPTCHA UI provide features that is not implemented by Google reCATPCHA, like change language on the fly Installation Setup vue-recaptcha plugin By default, vue-recaptcha use @unhead/vue to inject the reCAPTCHA script, if you are not using @unhead/vue or @vueuse/head , please check out Usage without unhead import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) Please replace YOUR_V2_SITEKEY_HERE and YOUR_V3_SITEKEY_HERE with your keys. If you don't have one, please go to here and apply one Not both of the sitekey is required, if you only need reCAPTCHA v2, just provide the v2SiteKey In this document, if you see v2 which means you'll need to pass v2SiteKey and v3 means you'll need v3SiteKey If you did't provide the corresponding site key, you'll get a runtime error Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > \u003C template > \u003C div id = \"app\" > \u003C router-view /> \u003C/ div > \u003C/ template > That's all, now you can start using vue-recaptcha. Please see components for quick introduce for all of the components Go to component overview Usage without unhead If you are not using @unhead/vue or @vueuse/head , you can simply import the plugin from vue-recaptcha/head import { VueRecaptchaPlugin } from 'vue-recaptcha/head' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }) With this version, it will inject the reCAPTCHA script by simply creating a script tag in document head html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":22,"path":23,"dir":24,"title":25,"description":7,"keywords":26,"body":30},"content:1.guide:1.nuxt.md","/guide/nuxt","guide","Nuxt",[27,28,29],"Options","Enterprise","Manually Install Plugin"," Nuxt When using vue-recaptcha in Nuxt, please try to utilize Nuxt's auto import feature as much as possible to avoid potential bugs. vue-recaptcha supports Nuxt.js out of the box. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], }) Please noticed that to prevent from conflict with your components, vue-recaptcha's Nuxt integration has renaming the following components Original name Renamed to Checkbox RecaptchaCheckbox ChallengeV2 RecaptchaChallengeV2 ChallengeV3 RecaptchaChallengeV3 Options You can pass options to the module by adding a recaptcha key to your nuxt.config.js file in runtimeConfig.public . defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, }) Enterprise If you are using reCAPTCHA Enterprise, you can use the recaptcha key in nuxt.config to enable the enterprise version support. Enterprise version support is experimental and may be changed in the future. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) Manually Install Plugin If you want to take full control of the plugin, you can manually install the plugin by adding the following code to your nuxt.config.js file. defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { plugin: false , }, }) Then you will need to manually set up the plugin by creating a file named recaptcha.ts in your plugins directory. import VueRecaptchaPlugin from 'vue-recaptcha' export default defineNuxtPlugin (({ vueApp }) => { const { public : { recaptcha }, } = useRuntimeConfig () vueApp. use (VueRecaptchaPlugin, recaptcha) }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":32,"path":33,"dir":24,"title":34,"description":7,"keywords":35,"body":39},"content:1.guide:2.migration.md","/guide/migration","Migration from v2",[36,37,38],"1. set up the plugin","2. Provide reCAPTCHA script","3. Use the components"," Migration from v2 1. set up the plugin V3 need you to set up a Vue plugin before start using. import { VueRecaptchaPlugin } from 'vue-recaptcha' const app = createApp (App) app. use (VueRecaptchaPlugin, { v2SiteKey: 'YOUR_SITE_KEY_HERE' }) 2. Provide reCAPTCHA script To load the reCAPTCHA script, you will need to call useRecaptchaProvider in your app.vue \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > 3. Use the components Now you can start using the components If you are using the \"I'm not a robot\" checkbox, please use the \u003CCheckbox /> \u003C template > \u003C Checkbox v-model = \"response\" /> \u003C/ template > You can read more at here If you are using the invisible reCAPTCHA, please use the \u003CChallengeV2 /> \u003C template > \u003C ChallengeV2 v-model = \"response\" > \u003C button >submit\u003C/ button > \u003C/ ChallengeV2 > \u003C/ template > You can read more at here html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":41,"path":42,"dir":24,"title":43,"description":7,"keywords":44,"body":45},"content:1.guide:3.enterprise.md","/guide/enterprise","Enterprise reCAPTCHA Support",[19,25]," Enterprise reCAPTCHA Support Enterprise version support is experimental and may be changed in the future. Simply change your plugin import to the following: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise' const app = createApp (App) app. use (VueRecaptchaPlugin) Usage without unhead If you are not using unhead and want to use the enterprise version, you can use the following code: import VueRecaptchaPlugin from 'vue-recaptcha/enterprise-head' const app = createApp (App) app. use (VueRecaptchaPlugin) Nuxt If you are using Nuxt, you can set the recaptcha.enterprise option to true : defineNuxtConfig ({ modules: [ 'vue-recaptcha/nuxt' ], runtimeConfig: { public: { recaptcha: { v2SiteKey: 'YOUR_V2_SITEKEY_HERE' , v3SiteKey: 'YOUR_V3_SITEKEY_HERE' , }, }, }, recaptcha: { enterprise: true , }, }) html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":47,"path":48,"dir":24,"title":49,"description":7,"keywords":50,"body":54},"content:1.guide:4.faq.md","/guide/faq","FAQ",[51,52,53],"What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded\"?","How to test vue-recaptcha?","How about an e2e testing (or integration testing)?"," FAQ What is \"ReCAPTCHA couldn't find user-provided function: __vueRecaptchaLoaded \"? It's because google's recaptcha have been loaded before your app. You can simply ignore it because vue-recaptcha can still detect and render recaptcha. If you care about this, try to move the script tag of recatpcha after to your app. How to test vue-recaptcha? You can mock window.grecaptcha to bypass google's recaptcha. How about an e2e testing (or integration testing)? Please reference to recaptcha's FAQ .",{"id":56,"path":57,"dir":7,"title":58,"description":7,"keywords":59,"body":63},"content:2.components:0.index.md","/components","Overview",[60,61,62],"Checkbox v2","ChallengeV2 v2","ChallengeV3 v3"," Overview Checkbox v2 The most basic form of the reCAPTCHA \u003C template > \u003C Checkbox /> \u003C/ template > Go to document ChallengeV2 v2 Invisible reCAPTCHA. Go to document ChallengeV3 v3 reCAPTCHA v3 Go to document html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":65,"path":66,"dir":67,"title":68,"description":69,"keywords":70,"body":73},"content:2.components:1.checkbox.md","/components/checkbox","components","Checkbox","Insert reCAPTCHA v2 checkbox",[71,72],"Props","v-model"," Checkbox v2 Insert reCAPTCHA v2 checkbox \u003C script setup lang = \"ts\" > const theme = ref \u003C 'light' | 'dark' >( 'light' ) const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ThemeButton v-model = \"theme\" @click = \"response = ''\" /> \u003C div >{{ response ? 'Verified' : 'Please click the checkbox' }}\u003C/ div > \u003C Checkbox :key = \"theme\" v-model = \"response\" :theme = \"theme\" /> \u003C/ div > \u003C/ template > Props key type default description as string 'div' What element to render theme 'light' | 'dark' 'light' Theme for reCAPTCHA checkbox size 'normal' | 'compact' 'normal' Size for the reCAPTCHA checkbox v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":75,"path":76,"dir":67,"title":77,"description":78,"keywords":79,"body":82},"content:2.components:2.challenge-v2.md","/components/challenge-v2","ChallengeV2","Create invisible reCAPTCHA v2",[71,72,80,81],"About the visible Badge for invisible reCAPTCHA","Slots"," ChallengeV2 v2 Create invisible reCAPTCHA v2 \u003C script setup lang = \"ts\" > import { RecaptchaV2State } from '#recaptcha' const map = { [RecaptchaV2State.Init]: 'Click to Challenge' , [RecaptchaV2State.Verified]: 'Verified' , [RecaptchaV2State.Expired]: 'Expired' , [RecaptchaV2State.Error]: 'Error' , } const response = ref () \u003C/ script > \u003C template > \u003C ChallengeV2 v-slot = \"{ state }\" v-model = \"response\" > \u003C PrimaryButton >{{ map[state] }}{{ response ? ` ${response.slice(0, 6)}...` : '' }}\u003C/ PrimaryButton > \u003C/ ChallengeV2 > \u003C/ template > Props key type default description as string 'div' What element to render badge `'bottomright' 'bottomleft' 'inline'` autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response widgetId string Widget id for reCAPTCHA checkbox About modelValue You can set modelValue to null or empty string to reset reCAPTCHA checkbox. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV2 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * widget id */ widgetId : WidgetID | undefined /** * reCAPTCHA state */ state : RecaptchaV2State isError : boolean isExpired : boolean isVerified : boolean /** * reset reCAPTCHA */ reset : () => void /** * execute challenge */ execute : () => void } RecaptchaV2State export enum RecaptchaV2State { Init = 'init' , Verified = 'verified' , Expired = 'expired' , Error = 'error' , } flowchart TD\nInit -->|Challenge| Verified\nInit -->|Challenge| Error\nVerified -->|Challenge expired| Expired\nError -->|Reset| Init\nVerified -->|Reset| Init\nExpired -->|Reset| Init html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":84,"path":85,"dir":67,"title":86,"description":87,"keywords":88,"body":89},"content:2.components:3.challenge-v3.md","/components/challenge-v3","ChallengeV3","Create reCAPTCHA v3 challenge",[71,72,81]," ChallengeV3 v3 Create reCAPTCHA v3 challenge \u003C script lang = \"ts\" setup > const response = ref () \u003C/ script > \u003C template > \u003C div > \u003C ChallengeV3 v-model = \"response\" action = \"submit\" > \u003C PrimaryButton >{{ response ? `Get response: ${response.slice(0, 6)}...` : 'click me' }}\u003C/ PrimaryButton > \u003C/ ChallengeV3 > \u003C/ div > \u003C/ template > Props key type default description action string The action for reCAPTCHA v3 as string 'div' What element to render autoExecute boolean true Should vue-recaptcha execute challenge on click, if you set it to false you'll need to call the execute method in the slot v-model key type description modelValue string The reCAPTCHA response Slots default This is the position that usually place a your submit button. When click on the content, ChallengeV3 will automatically execute the reCAPTCHA challenge by default Slot API interface SlotApi { /** * reCAPTCHA v3 response */ response : string | undefined /** * execute reCAPTCHA v3 challenge */ execute : () => Promise \u003C string > } html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":91,"path":92,"dir":93,"title":94,"description":95,"keywords":96,"body":97},"content:3.composables:0.recaptcha-provider.md","/composables/recaptcha-provider","composables","useRecaptchaProvider","The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work.",[]," useRecaptchaProvider The function that setup the required scripts for reCAPTCHA. It must be called in your app, or vue-recaptcha won't work. \u003C script setup lang = \"ts\" > import { useRecaptchaProvider } from 'vue-recaptcha' useRecaptchaProvider () \u003C/ script > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":99,"path":100,"dir":93,"title":101,"description":7,"keywords":102,"body":107},"content:3.composables:1.challenge-v2.md","/composables/challenge-v2","useChallengeV2",[103,104,105,80,106],"Description","Input","Return","Examples"," useChallengeV2 v2 Description A composable to help you mount the reCAPTCHA checkbox or invisible reCAPTCHA Input interface RecaptchaV2CheckboxOptionsInput { theme ?: 'dark' | 'light' size ?: 'compact' | 'normal' tabindex ?: string } interface RecaptchaV2InvisibleOptionsInput { badge ?: 'bottomright' | 'bottomleft' | 'inline' size : 'invisible' tabindex ?: string } export interface UseChallengeV2Input { /** * root to mount reCAPTCHA */ root ?: MaybeComputedRef \u003C Element | undefined > /** * Option that pass to reCAPTCHA render */ options ?: RecaptchaV2OptionsInput } Return export interface UseChallengeV2Return { /** * root element ref to mount reCAPTCHA */ root : Ref \u003C Element | undefined > /** * reCAPTCHA widget id */ widgetID : Ref \u003C WidgetID | undefined > /** * state of reCAPTCHA */ state : Ref \u003C RecaptchaV2State > /** * the verified event */ onVerify : EventHookOn \u003C string > /** * the expired event */ onExpired : EventHookOn \u003C void > /** * the error event */ onError : EventHookOn \u003C Error > /** * execute the challenge */ execute : () => void /** * reset reCAPTCHA */ reset : () => void } About the state please see here for more details Please see reCAPTCHA docs for more information about the options. About the visible Badge for invisible reCAPTCHA You should be able to see the reCAPTCHA badge in the bottom right corner of this page. It is a mark displayed by Google when you use invisible reCAPTCHA. You can add the following CSS code to hide it. .grecaptcha-badge { visibility : hidden ; } Please note that, according to Google's requirements, you will need to explicitly state that you are using reCAPTCHA. For more information, you can refer to this link Examples Checkbox \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , onVerify } = useChallengeV2 ({ options: { theme: 'light' , size: 'normal' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div ref = \"root\" / > \u003C/ template > Invisible reCAPTCHA \u003C script > import { useChallengeV2 } from 'vue-recaptcha' const { root , execute , onVerify } = useChallengeV2 ({ options: { // It's important to pass `size: 'invisible'` to render a invisible reCAPTCHA size: 'invisible' , } }) onVerify (( response ) => { // do something with response console. log (response) }) \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"execute\" > submit \u003C/ button > \u003C!-- You must give an empty div to render the invisible reCAPTCHA --> \u003C div ref = \"root\" / > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":109,"path":110,"dir":93,"title":111,"description":7,"keywords":112,"body":114},"content:3.composables:2.challenge-v3.md","/composables/challenge-v3","useChallengeV3",[103,104,105,113],"Usage"," useChallengeV3 v3 Description A composable to help you execute the reCAPTCHA v3 challenge Input action : The action for reCAPTCHA v3 Return export interface UseChallengeV3Return { /** * reCAPTCHA v3 response as ref */ response : Ref \u003C string | undefined > /** * Execute the challenge * @returns response for reCAPTCHA v3 */ execute : () => Promise \u003C string > } Usage \u003C script lang = \"ts\" setup > import { useChallengeV3 } from 'vue-recaptcha' const { execute } = useChallengeV3 ( 'submit' ) async function onSubmit () { const response = await execute () // do something with response console. log (response) } \u003C/ script > \u003C template > \u003C div > \u003C button @click = \"onSubmit\" > submit \u003C/ button > \u003C/ div > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":116,"path":117,"dir":118,"title":119,"description":120,"keywords":121,"body":123},"content:4.advanced:0.customize-recaptcha-script-loading.md","/advanced/customize-recaptcha-script-loading","advanced","Customize reCAPTCHA script loading","By default vue-recaptcha will use unhead to load the reCAPTCHA script.",[122],"The defineScriptLoader function and ScriptLoaderOptions"," Customize reCAPTCHA script loading By default vue-recaptcha will use unhead to load the reCAPTCHA script. If you need to completely control how to load the reCAPTCHA script. You can use createPlugin to create a plugin with your own loadScript function. import { onMounted } from 'vue' import { defineScriptLoader, toQueryString } from 'vue-recaptcha' // Define your own loadScript function const loadScript = defineScriptLoader (( options ) => { // This function will be called by useRecaptchaProvider return () => { onMounted (() => { // You can use any way to load the reCAPTCHA script const script = document. createElement ( 'script' ) script.src = `${ options . recaptchaApiURL }?${ toQueryString ( options . params ) }` script.async = true script.defer = true if (options.nonce) script.nonce = options.nonce document.head. append (script) }) } }) const plugin = createPlugin (loadScript) The defineScriptLoader function and ScriptLoaderOptions export interface RecaptchaParams { // You must pass these two value as query string to reCAPTCHA render : LiteralUnion \u003C 'explicit' , string > onload : string // Below you can customize as you want hl ?: string | undefined trustedtypes ?: 'true' | undefined [k: string] : string | undefined } export interface ScriptLoaderOptions { /** * you can use recaptcha.net instead of google.com, if you set recaptchaApiURL, this option will be ignored */ useRecaptchaNet ?: boolean /** * you can use your own recaptcha api url, if you set this option, useRecaptchaNet will be ignored */ recaptchaApiURL : string /** * nonce for script tag */ nonce ?: string /** * params for recaptcha api */ params : RecaptchaParams } /** * Helper function for define your own loadScript function */ function defineScriptLoader ( fn : ScriptLoaderFactory ) : NormalizedScriptLoaderFactory html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",{"id":125,"path":126,"dir":127,"title":128,"description":129,"keywords":130,"body":133},"content:5.integration:0.vee-validation.md","/integration/vee-validation","integration","Vee Validation","Vee Validate is a plugin for form validation.",[131,132],"Confirm user has clicked the checkbox before submit","Execute challenge when user submit form"," Vee Validation Vee Validate is a plugin for form validation. Confirm user has clicked the checkbox before submit \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), recaptcha: yup. string (). required ( 'Please verify you are human' ), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const { value : recaptchaValue , errorMessage : recaptchaError } = useField \u003C string >( 'recaptcha' ) const onSubmit = handleSubmit (( values ) => { console. log (values) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaCheckbox v-model = \"recaptchaValue\" /> \u003C div v-if = \"recaptchaError\" class = \"text-red\" > {{ recaptchaError }} \u003C/ div > \u003C/ div > \u003C div > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ div > \u003C/ form > \u003C/ template > Execute challenge when user submit form \u003C script setup lang = \"ts\" > import { useField, useForm } from 'vee-validate' import * as yup from 'yup' import { until } from '@vueuse/core' const { handleSubmit } = useForm ({ validationSchema: yup. object ({ name: yup. string (). required (), }), }) const { value : nameValue , errorMessage : nameError } = useField ( 'name' ) const response = ref () const onSubmit = handleSubmit ( async ( values ) => { await until (response). changed () console. log ({ ... values, response: response.value }) }) \u003C/ script > \u003C template > \u003C form class = \"flex flex-col gap-2\" @submit = \"onSubmit\" > \u003C div > \u003C input v-model = \"nameValue\" class = \"border border-blue p-1\" type = \"text\" placeholder = \"Your name\" > \u003C div v-if = \"nameError\" class = \"text-red\" > {{ nameError }} \u003C/ div > \u003C/ div > \u003C div > \u003C RecaptchaChallengeV2 v-model = \"response\" > \u003C PrimaryButton type = \"submit\" > Submit \u003C/ PrimaryButton > \u003C/ RecaptchaChallengeV2 > \u003C/ div > \u003C/ form > \u003C/ template > html.dark .shiki span {color: var(--shiki-dark) !important;background: var(--shiki-dark-bg) !important;font-style: var(--shiki-dark-font-style) !important;font-weight: var(--shiki-dark-font-weight) !important;text-decoration: var(--shiki-dark-text-decoration) !important;}",1704383450636] \ No newline at end of file diff --git a/integration/vee-validation/index.html b/integration/vee-validation/index.html index 81e17cdb19..738bb62c44 100644 --- a/integration/vee-validation/index.html +++ b/integration/vee-validation/index.html @@ -30,56 +30,56 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - + + - + - + - - -
Currently you are viewing v3 document of vue-recaptcha which is still in development

Vee Validation

Vee Validate is a plugin for form validation.

Confirm user has clicked the checkbox before submit

Code
<script setup lang="ts">import { useField, useForm } from 'vee-validate'import * as yup from 'yup'const { handleSubmit } = useForm({  validationSchema: yup.object({    name: yup.string().required(),    recaptcha: yup.string().required('Please verify you are human'),  }),})const { value: nameValue, errorMessage: nameError } = useField('name')const { value: recaptchaValue, errorMessage: recaptchaError } = useField<string>('recaptcha')const onSubmit = handleSubmit((values) => {  console.log(values)})</script><template>  <form class="flex flex-col gap-2" @submit="onSubmit">    <div>      <input v-model="nameValue" class="border border-blue p-1" type="text" placeholder="Your name">      <div v-if="nameError" class="text-red">        {{ nameError }}      </div>    </div>    <div>      <RecaptchaCheckbox v-model="recaptchaValue" />      <div v-if="recaptchaError" class="text-red">        {{ recaptchaError }}      </div>    </div>    <div>      <PrimaryButton type="submit">        Submit      </PrimaryButton>    </div>  </form></template>

Execute challenge when user submit form

Code
<script setup lang="ts">import { useField, useForm } from 'vee-validate'import * as yup from 'yup'import { until } from '@vueuse/core'const { handleSubmit } = useForm({  validationSchema: yup.object({    name: yup.string().required(),  }),})const { value: nameValue, errorMessage: nameError } = useField('name')const response = ref()const onSubmit = handleSubmit(async (values) => {  await until(response).changed()  console.log({ ...values, response: response.value })})</script><template>  <form class="flex flex-col gap-2" @submit="onSubmit">    <div>      <input v-model="nameValue" class="border border-blue p-1" type="text" placeholder="Your name">      <div v-if="nameError" class="text-red">        {{ nameError }}      </div>    </div>    <div>      <RecaptchaChallengeV2 v-model="response">        <PrimaryButton type="submit">          Submit        </PrimaryButton>      </RecaptchaChallengeV2>    </div>  </form></template>
- +
Currently you are viewing v3 document of vue-recaptcha which is still in development

Vee Validation

Vee Validate is a plugin for form validation.

Confirm user has clicked the checkbox before submit

Code
<script setup lang="ts">import { useField, useForm } from 'vee-validate'import * as yup from 'yup'const { handleSubmit } = useForm({  validationSchema: yup.object({    name: yup.string().required(),    recaptcha: yup.string().required('Please verify you are human'),  }),})const { value: nameValue, errorMessage: nameError } = useField('name')const { value: recaptchaValue, errorMessage: recaptchaError } = useField<string>('recaptcha')const onSubmit = handleSubmit((values) => {  console.log(values)})</script><template>  <form class="flex flex-col gap-2" @submit="onSubmit">    <div>      <input v-model="nameValue" class="border border-blue p-1" type="text" placeholder="Your name">      <div v-if="nameError" class="text-red">        {{ nameError }}      </div>    </div>    <div>      <RecaptchaCheckbox v-model="recaptchaValue" />      <div v-if="recaptchaError" class="text-red">        {{ recaptchaError }}      </div>    </div>    <div>      <PrimaryButton type="submit">        Submit      </PrimaryButton>    </div>  </form></template>

Execute challenge when user submit form

Code
<script setup lang="ts">import { useField, useForm } from 'vee-validate'import * as yup from 'yup'import { until } from '@vueuse/core'const { handleSubmit } = useForm({  validationSchema: yup.object({    name: yup.string().required(),  }),})const { value: nameValue, errorMessage: nameError } = useField('name')const response = ref()const onSubmit = handleSubmit(async (values) => {  await until(response).changed()  console.log({ ...values, response: response.value })})</script><template>  <form class="flex flex-col gap-2" @submit="onSubmit">    <div>      <input v-model="nameValue" class="border border-blue p-1" type="text" placeholder="Your name">      <div v-if="nameError" class="text-red">        {{ nameError }}      </div>    </div>    <div>      <RecaptchaChallengeV2 v-model="response">        <PrimaryButton type="submit">          Submit        </PrimaryButton>      </RecaptchaChallengeV2>    </div>  </form></template>
+ \ No newline at end of file