@nuxtjs/prismic 3.4.8 → 4.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/client/200.html +1 -13
- package/dist/client/404.html +1 -13
- package/dist/client/_nuxt/ByLTtnHp.js +25 -0
- package/dist/client/_nuxt/{DDnTEJT-.js → CLsYcwBR.js} +1 -1
- package/dist/client/_nuxt/{B0l9158o.js → CttLvMQv.js} +1 -1
- package/dist/client/_nuxt/{qFNLh8PE.js → DVneGoC6.js} +1 -1
- package/dist/client/_nuxt/DWMwN7uC.js +1 -0
- package/dist/client/_nuxt/{Cqan8ox2.js → VREfgDfD.js} +1 -1
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/5c01957e-0749-4107-95ef-276396288aa0.json +1 -0
- package/dist/client/_nuxt/entry.BC9BDAld.css +1 -0
- package/dist/client/_nuxt/error-404.5Ijuoi_n.css +1 -0
- package/dist/client/_nuxt/error-500.CZBrr-m_.css +1 -0
- package/dist/client/_nuxt/index.C4BggqQh.css +1 -0
- package/dist/client/index.html +1 -13
- package/dist/module.d.mts +32 -3
- package/dist/module.d.ts +32 -3
- package/dist/module.json +1 -1
- package/dist/module.mjs +22 -9
- package/dist/runtime/plugin.js +80 -70
- package/package.json +15 -15
- package/src/devtools/index.ts +4 -3
- package/src/lib/logger.ts +2 -2
- package/src/module.ts +19 -3
- package/src/runtime/plugin.ts +97 -84
- package/src/types.ts +43 -4
- package/dist/client/_nuxt/DSXwHa7K.js +0 -2
- package/dist/client/_nuxt/builds/meta/00ebe673-227d-488e-b689-9bf2ff2def42.json +0 -1
- package/dist/client/_nuxt/entry.CKuaGynx.css +0 -1
- package/dist/client/_nuxt/error-404.CK4zpOhH.css +0 -1
- package/dist/client/_nuxt/error-500.Bj55eCUK.css +0 -1
- package/dist/client/_nuxt/gctvBxZX.js +0 -25
- package/dist/client/_nuxt/index.z_5cflQA.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{B as S,m as B,r as w,C as _,D as E,E as T,F as U,g as I,G as F,H as A,I as L,J as H,K as D,u as x,L as N,M as O,N as V,O as M,P as z,Q as W,R as G}from"./ByLTtnHp.js";async function j(t,a=S()){const{path:v,matched:p}=a.resolve(t);if(!p.length||(a._routePreloaded||(a._routePreloaded=new Set),a._routePreloaded.has(v)))return;const g=a._preloadPromises=a._preloadPromises||[];if(g.length>4)return Promise.all(g).then(()=>j(t,a));a._routePreloaded.add(v);const e=p.map(n=>{var s;return(s=n.components)==null?void 0:s.default}).filter(n=>typeof n=="function");for(const n of e){const s=Promise.resolve(n()).catch(()=>{}).finally(()=>g.splice(g.indexOf(s)));g.push(s)}await Promise.all(g)}const Q=(...t)=>t.find(a=>a!==void 0);function $(t){const a=t.componentName||"NuxtLink";function v(e){return typeof e=="string"&&e.startsWith("#")}function p(e,n){if(!e||t.trailingSlash!=="append"&&t.trailingSlash!=="remove")return e;if(typeof e=="string")return k(e,t.trailingSlash);const s="path"in e&&e.path!==void 0?e.path:n(e).path;return{...e,name:void 0,path:k(s,t.trailingSlash)}}function g(e){const n=S(),s=z(),u=x(()=>!!e.target&&e.target!=="_self"),d=x(()=>{const f=e.to||e.href||"";return typeof f=="string"&&N(f,{acceptRelative:!0})}),P=L("RouterLink"),y=P&&typeof P!="string"?P.useLink:void 0,m=x(()=>{if(e.external)return!0;const f=e.to||e.href||"";return typeof f=="object"?!1:f===""||d.value}),r=x(()=>{const f=e.to||e.href||"";return m.value?f:p(f,n.resolve)}),c=m.value||y==null?void 0:y({...e,to:r}),b=x(()=>{var f;if(!r.value||d.value||v(r.value))return r.value;if(m.value){const C=typeof r.value=="object"&&"path"in r.value?O(r.value):r.value,R=typeof C=="object"?n.resolve(C).href:C;return p(R,n.resolve)}return typeof r.value=="object"?((f=n.resolve(r.value))==null?void 0:f.href)??null:p(V(s.app.baseURL,r.value),n.resolve)});return{to:r,hasTarget:u,isAbsoluteUrl:d,isExternal:m,href:b,isActive:(c==null?void 0:c.isActive)??x(()=>r.value===n.currentRoute.value.path),isExactActive:(c==null?void 0:c.isExactActive)??x(()=>r.value===n.currentRoute.value.path),route:(c==null?void 0:c.route)??x(()=>n.resolve(r.value)),async navigate(){await M(b.value,{replace:e.replace,external:m.value||u.value})}}}return B({name:a,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},prefetchOn:{type:[String,Object],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}},useLink:g,setup(e,{slots:n}){const s=S(),{to:u,href:d,navigate:P,isExternal:y,hasTarget:m,isAbsoluteUrl:r}=g(e),c=w(!1),b=w(null),f=l=>{var o;b.value=e.custom?(o=l==null?void 0:l.$el)==null?void 0:o.nextElementSibling:l==null?void 0:l.$el};function C(l){var o,i;return!c.value&&(typeof e.prefetchOn=="string"?e.prefetchOn===l:((o=e.prefetchOn)==null?void 0:o[l])??((i=t.prefetchOn)==null?void 0:i[l]))&&(e.prefetch??t.prefetch)!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!X()}async function R(l=_()){if(c.value)return;c.value=!0;const o=typeof u.value=="string"?u.value:y.value?O(u.value):s.resolve(u.value).fullPath,i=y.value?new URL(o,window.location.href).href:o;await Promise.all([l.hooks.callHook("link:prefetch",i).catch(()=>{}),!y.value&&!m.value&&j(u.value,s).catch(()=>{})])}if(C("visibility")){const l=_();let o,i=null;E(()=>{const h=J();T(()=>{o=U(()=>{var q;(q=b==null?void 0:b.value)!=null&&q.tagName&&(i=h.observe(b.value,async()=>{i==null||i(),i=null,await R(l)}))})})}),I(()=>{o&&F(o),i==null||i(),i=null})}return()=>{var i;if(!y.value&&!m.value&&!v(u.value)){const h={ref:f,to:u.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(C("interaction")&&(h.onPointerenter=R.bind(null,void 0),h.onFocus=R.bind(null,void 0)),c.value&&(h.class=e.prefetchedClass||t.prefetchedClass),h.rel=e.rel||void 0),A(L("RouterLink"),h,n.default)}const l=e.target||null,o=Q(e.noRel?"":e.rel,t.externalRelAttribute,r.value||m.value?"noopener noreferrer":"")||null;return e.custom?n.default?n.default({href:d.value,navigate:P,prefetch:R,get route(){if(!d.value)return;const h=new URL(d.value,window.location.href);return{path:h.pathname,fullPath:h.pathname,get query(){return H(h.search)},hash:h.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:d.value}},rel:o,target:l,isExternal:y.value||m.value,isActive:!1,isExactActive:!1}):null:A("a",{ref:b,href:d.value||null,rel:o,target:l},(i=n.default)==null?void 0:i.call(n))}}})}const Z=$(D);function k(t,a){const v=a==="append"?W:G;return N(t)&&!t.startsWith("http")?t:v(t,!0)}function J(){const t=_();if(t._observer)return t._observer;let a=null;const v=new Map,p=(e,n)=>(a||(a=new IntersectionObserver(s=>{for(const u of s){const d=v.get(u.target);(u.isIntersecting||u.intersectionRatio>0)&&d&&d()}})),v.set(e,n),a.observe(e),()=>{v.delete(e),a==null||a.unobserve(e),v.size===0&&(a==null||a.disconnect(),a=null)});return t._observer={observe:p}}const K=/2g/;function X(){const t=navigator.connection;return!!(t&&(t.saveData||K.test(t.effectiveType)))}export{Z as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{m as b,c as f,n as $,o as l,p as m,a as o,q as _,s as y,u as C,w as e,d as s,t as N,v as a,x as B,y as j,z as T,b as i,A as D}from"./ByLTtnHp.js";import{_ as I}from"./DVneGoC6.js";import{_ as x}from"./DlAUqK2U.js";const O=b({__name:"NIcon",props:{icon:{}},setup(c){return(n,u)=>(l(),f("div",{class:$(["n-icon",n.icon])},null,2))}}),v=Object.assign(O,{__name:"NIcon"}),z={class:"n-tip n-tip-base"},V=b({__name:"NTip",props:{icon:{}},setup(c){return(n,u)=>{const p=v;return l(),f("div",z,[m(n.$slots,"icon",{},()=>[n.icon?(l(),_(p,{key:0,icon:n.icon,class:"n-tip-icon"},null,8,["icon"])):y("",!0)]),o("div",null,[m(n.$slots,"default")])])}}}),A=Object.assign(V,{__name:"NTip"}),M={key:0,target:"_blank",href:"http://localhost:9999"},P=b({__name:"SlicemachineStatusTip",props:{running:{type:Boolean}},setup(c){const n=c,u=C(()=>n.running?"Slicemachine has been started and available at":"Slicemachine has not been started yet");return(p,g)=>{const h=A;return l(),_(h,{n:p.running?"green":"yellow"},{default:e(()=>[s(N(a(u))+" ",1),p.running?(l(),f("a",M,"http://localhost:9999")):y("",!0)]),_:1},8,["n"])}}}),R=Object.assign(P,{__name:"SlicemachineStatusTip"}),q=b({__name:"NButton",props:{to:{},icon:{},border:{type:Boolean,default:!0},disabled:{type:Boolean},type:{default:"button"}},setup(c){return(n,u)=>{const p=v;return l(),_(j(n.to?a(I):"button"),B({to:n.to},{...n.$attrs,...!n.to&&{type:n.type},...n.disabled?{disabled:!0}:{tabindex:0}},{class:[[{"n-button-base active:n-button-active focus-visible:n-focus-base hover:n-button-hover":n.border},{"n-icon-button":!n.$slots.default}],"n-button n-transition n-disabled:n-disabled"]}),{default:e(()=>[m(n.$slots,"icon",{},()=>[n.icon?(l(),_(p,{key:0,icon:n.icon,class:$({"n-button-icon":n.$slots.default})},null,8,["icon","class"])):y("",!0)]),m(n.$slots,"default")]),_:3},16,["to","class"])}}}),E=Object.assign(q,{__name:"NButton"}),F={},L={class:"n-card n-card-base"};function G(c,n){return l(),f("div",L,[m(c.$slots,"default")])}const H=Object.assign(x(F,[["render",G]]),{__name:"NCard"}),J={class:"relative p-4 n-bg-base space-y-4"},K={class:"grid grid-cols-2 grid-auto-flow gap-4"},Q={class:"flex gap-2"},U={class:"flex gap-2 flex-wrap"},W={class:"flex gap-2 flex-wrap"},X={class:"flex gap-2 flex-wrap"},Y=b({__name:"index",props:{rpc:{}},async setup(c){let n,u;const p=c,{status:g,start:h,stop:S,config:d}=([n,u]=T(()=>D(p.rpc)),n=await n,u(),n);return(Z,t)=>{const w=R,r=E,k=H;return l(),f("div",J,[t[16]||(t[16]=o("header",null,[o("h1",{class:"inline-block rounded border border-zinc-600 bg-zinc-900 p-1.5 heading text-m"},[o("span",{class:"i-simple-icons:prismic align-sub"}),s(" @nuxtjs/prismic ")])],-1)),o("main",K,[i(k,{class:"col-span-2 p-4 space-y-4"},{default:e(()=>[t[1]||(t[1]=o("h2",{class:"text-m heading"},[o("span",{class:"i-carbon:tools-alt align-sub"}),s(" Slicemachine ")],-1)),o("section",Q,[i(w,{running:a(g).running,class:"flex-1"},null,8,["running"]),i(r,{onClick:t[0]||(t[0]=tt=>a(g).running?a(S)():a(h)())},{default:e(()=>[s(N(a(g).running?"Stop":"Start")+" Slicemachine ",1)]),_:1})])]),_:1}),i(k,{class:"p-4 space-y-4"},{default:e(()=>[t[9]||(t[9]=o("h2",{class:"text-m heading"},[o("span",{class:"i-carbon:notebook-reference align-sub"}),s(" Documentation ")],-1)),t[10]||(t[10]=o("h3",null,"Nuxt",-1)),o("p",U,[i(r,{to:"https://prismic.io/docs/content-modeling",icon:"i-carbon-ruler-alt",target:"_blank"},{default:e(()=>t[2]||(t[2]=[s(" Model Content ")])),_:1}),i(r,{to:"https://prismic.io/docs/nuxt-3-define-routes",icon:"i-carbon-3d-curve-manual",target:"_blank"},{default:e(()=>t[3]||(t[3]=[s(" Define Routes ")])),_:1}),i(r,{to:"https://prismic.io/docs/nuxt-3-fetch-data",icon:"i-carbon-download",target:"_blank"},{default:e(()=>t[4]||(t[4]=[s(" Fetch Data ")])),_:1}),i(r,{to:"https://prismic.io/docs/nuxt-3-template-content",icon:"i-carbon-paint-brush",target:"_blank"},{default:e(()=>t[5]||(t[5]=[s(" Template Content ")])),_:1})]),t[11]||(t[11]=o("h3",null,"APIs",-1)),o("p",W,[i(r,{to:"https://prismic.io/docs/technical-reference/prismicio-client",icon:"i-carbon-satellite-radar",target:"_blank"},{default:e(()=>t[6]||(t[6]=[s(" @prismicio/client ")])),_:1}),i(r,{to:"https://prismic.io/docs/technical-reference/prismicio-vue",icon:"i-carbon-logo-vue",target:"_blank"},{default:e(()=>t[7]||(t[7]=[s(" @prismicio/vue ")])),_:1}),i(r,{to:"https://prismic.nuxtjs.org/",icon:"i-simple-icons-nuxtdotjs",target:"_blank"},{default:e(()=>t[8]||(t[8]=[s(" @nuxtjs/prismic ")])),_:1})])]),_:1}),a(d)&&"repositoryName"in a(d)&&a(d).repositoryName?(l(),_(k,{key:0,class:"p-4 space-y-4"},{default:e(()=>[t[15]||(t[15]=o("h2",{class:"text-m heading"},[o("span",{class:"i-carbon:tools-alt align-sub"}),s(" Repository ")],-1)),o("p",X,[i(r,{to:`https://${a(d).repositoryName}.prismic.io/builder/working`,icon:"i-carbon-book",target:"_blank"},{default:e(()=>t[12]||(t[12]=[s(" Documents ")])),_:1},8,["to"]),i(r,{to:`https://${a(d).repositoryName}.prismic.io/builder/medias`,icon:"i-carbon-image",target:"_blank"},{default:e(()=>t[13]||(t[13]=[s(" Media Library ")])),_:1},8,["to"]),i(r,{to:`https://${a(d).repositoryName}.prismic.io/settings/repository`,icon:"i-carbon-settings",target:"_blank"},{default:e(()=>t[14]||(t[14]=[s(" Settings ")])),_:1},8,["to"])])]),_:1})):y("",!0)])])}}}),et=x(Y,[["__scopeId","data-v-469b968a"]]);export{et as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as f,r as u,e as o,f as d,g as v,h as l,j as i,k as h,l as m}from"./
|
|
1
|
+
import{i as f,r as u,e as o,f as d,g as v,h as l,j as i,k as h,l as m}from"./ByLTtnHp.js";function U(t,a={}){const e=a.head||f();if(e)return e.ssr?e.push(t,a):p(e,t,a)}function p(t,a,e={}){const s=u(!1),n=u({});o(()=>{n.value=s.value?{}:h(a)});const r=t.push(n.value,e);return d(n,c=>{r.patch(c)}),m()&&(v(()=>{r.dispose()}),l(()=>{s.value=!0}),i(()=>{s.value=!1})),r}export{U as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"id":"
|
|
1
|
+
{"id":"5c01957e-0749-4107-95ef-276396288aa0","timestamp":1736852152519}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"id":"5c01957e-0749-4107-95ef-276396288aa0","timestamp":1736852152519,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--nui-c-context:125,125,125}html{background-color:#fff}html.dark{background-color:#151515;color:#fff;color-scheme:dark}::-moz-selection{background:#8884}::selection{background:#8884}.shiki .line{display:inline-block;position:relative;width:100%}.shiki.diff .line>span{filter:saturate(.75);opacity:.75}.shiki.diff .line-added,.shiki.diff .line-removed{scroll-margin:5em}.shiki.diff .line-added>span,.shiki.diff .line-removed>span{opacity:1!important;position:inherit;scroll-margin:20px;z-index:100}.shiki.diff .line-added>span{color:#218c3b!important}.shiki.diff .line-removed>span{color:#d15547!important}.shiki .line-added:after{background-color:#43885420}.shiki .line-added:after,.shiki .line-removed:after{bottom:0;content:"";display:block;left:0;position:absolute;right:0;top:0}.shiki .line-removed:after{background-color:#8f4c3926}::view-transition-new(root),::view-transition-old(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2147483646}.dark::view-transition-old(root){z-index:2147483646}.dark::view-transition-new(root){z-index:1}*,:after,:before{border-color:var(--un-default-border-color, #e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content: ""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }@font-face{font-display:swap;font-family:DM Mono;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/dmmono/v14/aFTU7PB1QTsUX8KYthSQBK6PYK3EXw.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:DM Mono;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/dmmono/v14/aFTU7PB1QTsUX8KYthqQBK6PYK0.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:DM Sans;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxRR232RmYJp8I5zzw.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:DM Sans;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxRSW32RmYJp8I5.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.i-carbon-3d-curve-manual{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath d='M15 21a3 3 0 0 1-3 3h-.1a5 5 0 1 0 0 2h.1a5 5 0 0 0 5-5zm-8 7a3 3 0 1 1 3-3a3 3 0 0 1-3 3z' fill='currentColor'/%3E%3Cpath d='M15 13h2v6h-2z' fill='currentColor'/%3E%3Cpath d='M25 2a5 5 0 0 0-4.9 4H20a5 5 0 0 0-5 5h2a3 3 0 0 1 3-3h.1A5 5 0 1 0 25 2zm0 8a3 3 0 1 1 3-3a3 3 0 0 1-3 3z' fill='currentColor'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-book{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 10h7v2h-7zm0 5h7v2h-7zm0 5h7v2h-7zM6 10h7v2H6zm0 5h7v2H6zm0 5h7v2H6z'/%3E%3Cpath fill='currentColor' d='M28 5H4a2 2 0 0 0-2 2v18a2 2 0 0 0 2 2h24a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2M4 7h11v18H4Zm13 18V7h11v18Z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-download{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-image{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19 14a3 3 0 1 0-3-3a3 3 0 0 0 3 3m0-4a1 1 0 1 1-1 1a1 1 0 0 1 1-1'/%3E%3Cpath fill='currentColor' d='M26 4H6a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 22H6v-6l5-5l5.59 5.59a2 2 0 0 0 2.82 0L21 19l5 5Zm0-4.83l-3.59-3.59a2 2 0 0 0-2.82 0L18 19.17l-5.59-5.59a2 2 0 0 0-2.82 0L6 17.17V6h20Z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-logo-vue{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M24.9 3.9L16 19.4L7.1 3.9H2l14 24.3L30 3.9z'/%3E%3Cpath fill='currentColor' d='m16 9.5l-3.2-5.6H8.1L16 17.5l7.9-13.6h-4.6z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-paint-brush{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M28.83 23.17L23 17.33V13a1 1 0 0 0-.29-.71l-10-10a1 1 0 0 0-1.42 0l-9 9a1 1 0 0 0 0 1.42l10 10A1 1 0 0 0 13 23h4.34l5.83 5.84a4 4 0 0 0 5.66-5.66ZM6 10.41l2.29 2.3l1.42-1.42L7.41 9L9 7.41l4.29 4.3l1.42-1.42L10.41 6L12 4.41L18.59 11L11 18.59L4.41 12Zm21.41 17a2 2 0 0 1-2.82 0l-6.13-6.12a1.8 1.8 0 0 0-.71-.29h-4.34l-1-1L20 12.41l1 1v4.34a1 1 0 0 0 .29.7l6.12 6.14a2 2 0 0 1 0 2.82'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-ruler-alt{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M29.41 21.67L10.34 2.58a2 2 0 0 0-2.83 0L2.59 7.51a2 2 0 0 0 0 2.82l19.07 19.09a2 2 0 0 0 1.42.58a2 2 0 0 0 1.41-.58l4.92-4.93a2 2 0 0 0 0-2.82M23.08 28L4 8.92L8.92 4l3.79 3.79L10.46 10l1.41 1.41l2.25-2.21l4.13 4.13L16 15.58L17.42 17l2.25-2.25l4.13 4.13l-2.25 2.25L23 22.54l2.25-2.25L28 23.08Z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-satellite-radar{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M30 14h-2A10.01 10.01 0 0 0 18 4V2a12.014 12.014 0 0 1 12 12'/%3E%3Cpath fill='currentColor' d='M26 14h-2a6.007 6.007 0 0 0-6-6V6a8.01 8.01 0 0 1 8 8M16 28v-3.04a9.9 9.9 0 0 0 7.318-2.208a1.85 1.85 0 0 0 .678-1.334a1.8 1.8 0 0 0-.524-1.36L18.414 15L21 12.414L19.586 11L17 13.586l-5.058-5.059a1.82 1.82 0 0 0-1.36-.523a1.85 1.85 0 0 0-1.334.679a9.96 9.96 0 0 0-.513 11.95L6.28 28H2v2h28v-2zm-5.32-17.906L21.906 21.32A8.001 8.001 0 0 1 10.68 10.094M14 28H8.387l1.876-5.627A10 10 0 0 0 14 24.543z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon-settings{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M27 16.76v-1.53l1.92-1.68A2 2 0 0 0 29.3 11l-2.36-4a2 2 0 0 0-1.73-1a2 2 0 0 0-.64.1l-2.43.82a11 11 0 0 0-1.31-.75l-.51-2.52a2 2 0 0 0-2-1.61h-4.68a2 2 0 0 0-2 1.61l-.51 2.52a11.5 11.5 0 0 0-1.32.75l-2.38-.86A2 2 0 0 0 6.79 6a2 2 0 0 0-1.73 1L2.7 11a2 2 0 0 0 .41 2.51L5 15.24v1.53l-1.89 1.68A2 2 0 0 0 2.7 21l2.36 4a2 2 0 0 0 1.73 1a2 2 0 0 0 .64-.1l2.43-.82a11 11 0 0 0 1.31.75l.51 2.52a2 2 0 0 0 2 1.61h4.72a2 2 0 0 0 2-1.61l.51-2.52a11.5 11.5 0 0 0 1.32-.75l2.42.82a2 2 0 0 0 .64.1a2 2 0 0 0 1.73-1l2.28-4a2 2 0 0 0-.41-2.51ZM25.21 24l-3.43-1.16a8.9 8.9 0 0 1-2.71 1.57L18.36 28h-4.72l-.71-3.55a9.4 9.4 0 0 1-2.7-1.57L6.79 24l-2.36-4l2.72-2.4a8.9 8.9 0 0 1 0-3.13L4.43 12l2.36-4l3.43 1.16a8.9 8.9 0 0 1 2.71-1.57L13.64 4h4.72l.71 3.55a9.4 9.4 0 0 1 2.7 1.57L25.21 8l2.36 4l-2.72 2.4a8.9 8.9 0 0 1 0 3.13L27.57 20Z'/%3E%3Cpath fill='currentColor' d='M16 22a6 6 0 1 1 6-6a5.94 5.94 0 0 1-6 6m0-10a3.91 3.91 0 0 0-4 4a3.91 3.91 0 0 0 4 4a3.91 3.91 0 0 0 4-4a3.91 3.91 0 0 0-4-4'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon\:notebook-reference{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4 20v2h3.586L2 27.586L3.414 29L9 23.414V27h2v-7zm15-10h7v2h-7zm0 5h7v2h-7zm0 5h7v2h-7z'/%3E%3Cpath fill='currentColor' d='M28 5H4a2 2 0 0 0-2 2v10h2V7h11v20h13a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2M17 25V7h11l.002 18Z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-carbon\:tools-alt{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m23.1 16l6.3-6.3c.8-.8.8-2 0-2.8l-4.2-4.2c-.8-.8-2-.8-2.8 0L16 8.9L9.7 2.6c-.8-.8-2-.8-2.8 0L2.6 6.8c-.8.8-.8 2 0 2.8L8.9 16L2 22.9V30h7.1l6.9-6.9l6.3 6.3c.8.8 2 .8 2.8 0l4.2-4.2c.8-.8.8-2 0-2.8zm.7-12L28 8.2l-6.3 6.3l-4.2-4.2zM8.2 28H4v-4.2l6.3-6.3l4.2 4.2zm15.6 0L4 8.2L8.2 4l3.5 3.5l-2.1 2.1L11 11l2.1-2.1l4.2 4.2l-2.1 2.1l1.4 1.4l2.1-2.1l4.2 4.2l-1.9 2.2l1.4 1.4l2.1-2.1l3.5 3.5z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-simple-icons-nuxtdotjs{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M13.464 19.83h8.922c.283 0 .562-.073.807-.21a1.6 1.6 0 0 0 .591-.574a1.53 1.53 0 0 0 .216-.783a1.53 1.53 0 0 0-.217-.782L17.792 7.414a1.6 1.6 0 0 0-.591-.573a1.65 1.65 0 0 0-.807-.21c-.283 0-.562.073-.807.21a1.6 1.6 0 0 0-.59.573L13.463 9.99L10.47 4.953a1.6 1.6 0 0 0-.591-.573a1.65 1.65 0 0 0-.807-.21c-.284 0-.562.073-.807.21a1.6 1.6 0 0 0-.591.573L.216 17.481a1.53 1.53 0 0 0-.217.782c0 .275.074.545.216.783a1.6 1.6 0 0 0 .59.574c.246.137.525.21.808.21h5.6c2.22 0 3.856-.946 4.982-2.79l2.733-4.593l1.464-2.457l4.395 7.382h-5.859Zm-6.341-2.46l-3.908-.002l5.858-9.842l2.923 4.921l-1.957 3.29c-.748 1.196-1.597 1.632-2.916 1.632'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.i-simple-icons\:prismic{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' vertical-align='middle' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M7.7 0C5.033 0 4.066.278 3.09.8A5.45 5.45 0 0 0 .825 3.07c-.522.977-.8 1.947-.8 4.622v.998c0 .199.078.388.218.529l1.77 1.774a.15.15 0 0 0 .257-.106V8.019c0-2.006.208-2.733.6-3.467A4.1 4.1 0 0 1 4.568 2.85c.731-.392 1.457-.6 3.459-.6h2.164c.199 0 .39-.08.53-.221l1.77-1.772A.15.15 0 0 0 12.387 0zm7.605 0c-.2 0-.392.08-.532.22l-1.769 1.775a.15.15 0 0 0-.044.104c0 .083.068.15.15.15h2.862c2.002 0 2.728.21 3.46.601a4.1 4.1 0 0 1 1.698 1.702c.39.734.599 1.461.599 3.467v2.17c0 .198.078.39.218.53l1.77 1.774a.15.15 0 0 0 .257-.106V7.692c0-2.675-.278-3.645-.8-4.623A5.45 5.45 0 0 0 20.91.801C19.935.278 18.968 0 16.3 0zM6.761 3.75a2.995 2.995 0 0 0-2.993 2.999v5.691a.75.75 0 0 0 .219.529l1.77 1.776a.149.149 0 0 0 .255-.106v-7.14a1.5 1.5 0 0 1 .097-.53c.072-.2.188-.385.348-.545l2.308-2.421a.15.15 0 0 0-.11-.253zm4.802 0c-.2 0-.39.08-.53.22L9.26 5.744A.151.151 0 0 0 9.366 6h7.124q.28.001.528.097c.2.072.386.188.546.347l2.413 2.313a.15.15 0 0 0 .255-.108v-1.9a2.995 2.995 0 0 0-2.993-3zm6.573 5.463a.15.15 0 0 0-.15.15v7.139a1.5 1.5 0 0 1-.095.53a1.5 1.5 0 0 1-.348.546l-2.308 2.42a.15.15 0 0 0 .108.255h1.896a2.997 2.997 0 0 0 2.993-3.002v-5.69a.75.75 0 0 0-.219-.53l-1.77-1.774a.15.15 0 0 0-.107-.044m-17.96 2.25a.15.15 0 0 0-.15.15v4.695c0 2.674.278 3.645.8 4.623a5.44 5.44 0 0 0 2.263 2.267c.976.522 1.943.802 4.612.802h.994c.2 0 .39-.08.53-.22l1.771-1.775a.149.149 0 0 0-.106-.255H8.027c-2.002 0-2.728-.208-3.46-.6a4.1 4.1 0 0 1-1.698-1.702c-.39-.734-.599-1.461-.599-3.467v-2.172a.75.75 0 0 0-.22-.528L.282 11.507a.15.15 0 0 0-.106-.044m21.703 1.5a.15.15 0 0 0-.15.15v2.868c0 2.006-.208 2.733-.6 3.467a4.1 4.1 0 0 1-1.698 1.702c-.731.392-1.457.6-3.459.6h-2.164a.75.75 0 0 0-.532.22l-1.769 1.773a.15.15 0 0 0-.043.107c0 .083.065.15.148.15H16.3c2.67 0 3.636-.28 4.612-.802a5.44 5.44 0 0 0 2.263-2.267c.522-.978.8-1.948.8-4.623v-.998a.75.75 0 0 0-.22-.529l-1.769-1.774a.15.15 0 0 0-.106-.044zm-17.96 2.238a.15.15 0 0 0-.151.15v1.898a2.997 2.997 0 0 0 2.993 3.001h5.676c.2 0 .39-.08.53-.22l1.773-1.775a.15.15 0 0 0 .044-.104a.15.15 0 0 0-.15-.15H7.51a1.5 1.5 0 0 1-.53-.098a1.5 1.5 0 0 1-.546-.347l-2.413-2.313a.15.15 0 0 0-.103-.042z'/%3E%3C/svg%3E");background-color:currentColor;color:inherit;display:inline-block;height:1.2em;-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle;width:1.2em}.n-button-icon{font-size:1.1em;margin-left:-.2em;margin-right:.2em}.n-icon-button{align-items:center;aspect-ratio:1/1;border-radius:.25rem;display:flex;height:1.6em;justify-content:center;opacity:.5;width:1.6em}.n-tip-base{align-items:center;background-color:rgba(var(--nui-c-context),.04);border-radius:.25rem;display:flex;gap:.5rem;padding:.4em 1em;--un-text-opacity:1;color:rgba(var(--nui-c-context),var(--un-text-opacity))}.n-button-base{align-items:center;border-color:#9ca3af33;border-radius:.25rem;border-width:1px;display:inline-flex;gap:.25rem;opacity:.8;padding:.25em 1em;touch-action:manipulation;--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgba(0,0,0,.05));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);outline:2px solid transparent!important;outline-offset:2px!important}.n-icon{flex:none}.n-card-base{border-color:#9ca3af33;border-radius:.25rem;border-width:1px;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgba(0,0,0,.05));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.hover\:n-button-hover:hover{--un-border-opacity:1 !important;border-color:rgba(var(--nui-c-context),var(--un-border-opacity))!important;--un-text-opacity:1;color:rgba(var(--nui-c-context),var(--un-text-opacity));opacity:1}.dark .n-bg-base,.dark .n-card-base{--un-bg-opacity:1;background-color:rgb(21 21 21 / var(--un-bg-opacity))}.n-bg-base{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .n-tip-base{background-color:rgba(var(--nui-c-context),.12)}.n-icon-button:hover{background-color:#9ca3af0d;opacity:1}.active\:n-button-active:active{background-color:rgba(var(--nui-c-context),.05);--un-ring-width:3px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);--un-ring-color:rgba(var(--nui-c-context),.1) }.focus-visible\:n-focus-base:focus-visible{--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);--un-ring-color:rgba(var(--nui-c-context),.5) }.n-transition{transition-duration:.15s;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.fixed{position:fixed}.relative{position:relative}.-bottom-1\/2{bottom:-50%}.left-0{left:0}.right-0{right:0}.z-10{z-index:10}.z-20{z-index:20}.grid{display:grid}.col-span-2{grid-column:span 2 / span 2}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.mb-16{margin-bottom:4rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.inline-block{display:inline-block}.h-1\/2{height:50%}.h-auto{height:auto}.h1{height:.25rem}.h2{height:.5rem}.h3{height:.75rem}.max-w-520px{max-width:520px}.min-h-screen{min-height:100vh}.w-full{width:100%}.flex{display:flex}.flex-1{flex:1 1 0%}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.cursor-pointer{cursor:pointer}.place-content-center{place-content:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-y-4>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-bottom:calc(1rem*var(--un-space-y-reverse));margin-top:calc(1rem*(1 - var(--un-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.border,[border=""]{border-width:1px}.border-zinc-600{--un-border-opacity:1;border-color:rgb(82 82 91 / var(--un-border-opacity))}.rounded{border-radius:.25rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.bg-black\/5{background-color:#0000000d}.bg-white{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.bg-zinc-900{--un-bg-opacity:1;background-color:rgb(24 24 27 / var(--un-bg-opacity))}.dark .dark\:bg-black{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.dark .dark\:bg-white\/10{background-color:#ffffff1a}.p-1\.5{padding:.375rem}.p-4{padding:1rem}.p-8{padding:2rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.pt-14{padding-top:3.5rem}.text-center{text-align:center}.align-sub{vertical-align:sub}.text-6xl{font-size:3.75rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-xl{font-size:1.25rem;line-height:1.75rem}.dark .dark\:text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.leading-tight{line-height:1.25}.tracking-wider{letter-spacing:.05em}.font-mono{font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:DM Sans,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}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}[n~=green]{--nui-c-context:74,222,128}[n~=yellow]{--nui-c-context:250,204,21}.n-disabled\:n-disabled[disabled],[disabled] .n-disabled\:n-disabled{filter:saturate(0);opacity:.6;pointer-events:none}@media (min-width:640px){.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-bottom:.75rem;padding-top:.75rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-8xl{font-size:6rem;line-height:1}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.spotlight[data-v-6a48f41f]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-6a48f41f]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-6a48f41f]{background-color:#ffffff4d}.gradient-border[data-v-6a48f41f]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-6a48f41f]{background-color:#1414144d}.gradient-border[data-v-6a48f41f]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82,#36e4da 75%,#0047e1)}}.gradient-border[data-v-6a48f41f]:before{background-size:400% auto;border-radius:.5rem;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;right:0;top:0;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-6a48f41f]:hover:before{background-position:-50% 0;opacity:1}.fixed[data-v-6a48f41f]{position:fixed}.left-0[data-v-6a48f41f]{left:0}.right-0[data-v-6a48f41f]{right:0}.z-10[data-v-6a48f41f]{z-index:10}.z-20[data-v-6a48f41f]{z-index:20}.grid[data-v-6a48f41f]{display:grid}.mb-16[data-v-6a48f41f]{margin-bottom:4rem}.mb-8[data-v-6a48f41f]{margin-bottom:2rem}.max-w-520px[data-v-6a48f41f]{max-width:520px}.min-h-screen[data-v-6a48f41f]{min-height:100vh}.w-full[data-v-6a48f41f]{width:100%}.flex[data-v-6a48f41f]{display:flex}.cursor-pointer[data-v-6a48f41f]{cursor:pointer}.place-content-center[data-v-6a48f41f]{place-content:center}.items-center[data-v-6a48f41f]{align-items:center}.justify-center[data-v-6a48f41f]{justify-content:center}.overflow-hidden[data-v-6a48f41f]{overflow:hidden}.bg-white[data-v-6a48f41f]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-4[data-v-6a48f41f]{padding-left:1rem;padding-right:1rem}.px-8[data-v-6a48f41f]{padding-left:2rem;padding-right:2rem}.py-2[data-v-6a48f41f]{padding-bottom:.5rem;padding-top:.5rem}.text-center[data-v-6a48f41f]{text-align:center}.text-8xl[data-v-6a48f41f]{font-size:6rem;line-height:1}.text-xl[data-v-6a48f41f]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-6a48f41f]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-6a48f41f]{font-weight:300}.font-medium[data-v-6a48f41f]{font-weight:500}.leading-tight[data-v-6a48f41f]{line-height:1.25}.font-sans[data-v-6a48f41f]{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}.antialiased[data-v-6a48f41f]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-6a48f41f]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-6a48f41f]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-6a48f41f]{padding-left:0;padding-right:0}.sm\:px-6[data-v-6a48f41f]{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3[data-v-6a48f41f]{padding-bottom:.75rem;padding-top:.75rem}.sm\:text-4xl[data-v-6a48f41f]{font-size:2.25rem;line-height:2.5rem}.sm\:text-xl[data-v-6a48f41f]{font-size:1.25rem;line-height:1.75rem}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.spotlight[data-v-22c080c5]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.fixed[data-v-22c080c5]{position:fixed}.-bottom-1\/2[data-v-22c080c5]{bottom:-50%}.left-0[data-v-22c080c5]{left:0}.right-0[data-v-22c080c5]{right:0}.grid[data-v-22c080c5]{display:grid}.mb-16[data-v-22c080c5]{margin-bottom:4rem}.mb-8[data-v-22c080c5]{margin-bottom:2rem}.h-1\/2[data-v-22c080c5]{height:50%}.max-w-520px[data-v-22c080c5]{max-width:520px}.min-h-screen[data-v-22c080c5]{min-height:100vh}.place-content-center[data-v-22c080c5]{place-content:center}.overflow-hidden[data-v-22c080c5]{overflow:hidden}.bg-white[data-v-22c080c5]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-8[data-v-22c080c5]{padding-left:2rem;padding-right:2rem}.text-center[data-v-22c080c5]{text-align:center}.text-8xl[data-v-22c080c5]{font-size:6rem;line-height:1}.text-xl[data-v-22c080c5]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-22c080c5]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-22c080c5]{font-weight:300}.font-medium[data-v-22c080c5]{font-weight:500}.leading-tight[data-v-22c080c5]{line-height:1.25}.font-sans[data-v-22c080c5]{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}.antialiased[data-v-22c080c5]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-22c080c5]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-22c080c5]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-22c080c5]{padding-left:0;padding-right:0}.sm\:text-4xl[data-v-22c080c5]{font-size:2.25rem;line-height:2.5rem}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.heading[data-v-469b968a]{font-weight:700;letter-spacing:.05em;font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;text-transform:uppercase}
|
package/dist/client/index.html
CHANGED
|
@@ -1,13 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html data-capo=""><head><meta charset="utf-8">
|
|
2
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
3
|
-
<link rel="stylesheet" href="/__prismic-client/_nuxt/entry.CKuaGynx.css" crossorigin>
|
|
4
|
-
<link rel="modulepreload" as="script" crossorigin href="/__prismic-client/_nuxt/gctvBxZX.js">
|
|
5
|
-
<link rel="prefetch" as="style" crossorigin href="/__prismic-client/_nuxt/error-404.CK4zpOhH.css">
|
|
6
|
-
<link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/B0l9158o.js">
|
|
7
|
-
<link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/qFNLh8PE.js">
|
|
8
|
-
<link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/DlAUqK2U.js">
|
|
9
|
-
<link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/Cqan8ox2.js">
|
|
10
|
-
<link rel="prefetch" as="style" crossorigin href="/__prismic-client/_nuxt/error-500.Bj55eCUK.css">
|
|
11
|
-
<link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/DDnTEJT-.js">
|
|
12
|
-
<script type="module" src="/__prismic-client/_nuxt/gctvBxZX.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1736174707573,false]</script>
|
|
13
|
-
<script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__prismic-client",buildId:"00ebe673-227d-488e-b689-9bf2ff2def42",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
|
|
1
|
+
<!DOCTYPE html><html data-capo=""><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/__prismic-client/_nuxt/entry.BC9BDAld.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__prismic-client/_nuxt/ByLTtnHp.js"><link rel="prefetch" as="style" crossorigin href="/__prismic-client/_nuxt/error-404.5Ijuoi_n.css"><link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/CttLvMQv.js"><link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/DVneGoC6.js"><link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/DlAUqK2U.js"><link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/VREfgDfD.js"><link rel="prefetch" as="style" crossorigin href="/__prismic-client/_nuxt/error-500.CZBrr-m_.css"><link rel="prefetch" as="script" crossorigin href="/__prismic-client/_nuxt/CLsYcwBR.js"><script type="module" src="/__prismic-client/_nuxt/ByLTtnHp.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1736852156127,false]</script><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__prismic-client",buildId:"5c01957e-0749-4107-95ef-276396288aa0",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
|
package/dist/module.d.mts
CHANGED
|
@@ -7,7 +7,7 @@ import { PrismicPluginOptions } from '@prismicio/vue';
|
|
|
7
7
|
* @see Module documentation: {@link https://prismic.nuxtjs.org}
|
|
8
8
|
* @see Prismic documentation: {@link https://prismic.io/docs/nuxt-3-setup}
|
|
9
9
|
*/
|
|
10
|
-
type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | 'linkResolver' | '
|
|
10
|
+
type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | 'linkResolver' | 'richTextSerializer' | 'components'> & {
|
|
11
11
|
/**
|
|
12
12
|
* A Prismic repository endpoint to init the module's `@prismicio/client`
|
|
13
13
|
* instance used to fetch content from a Prismic repository with.
|
|
@@ -73,7 +73,7 @@ type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | '
|
|
|
73
73
|
*/
|
|
74
74
|
preview?: string | false;
|
|
75
75
|
/**
|
|
76
|
-
* Whether
|
|
76
|
+
* Whether to inject Prismic toolbar script.
|
|
77
77
|
*
|
|
78
78
|
* @remarks
|
|
79
79
|
* The toolbar script is required for previews to work.
|
|
@@ -82,11 +82,40 @@ type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | '
|
|
|
82
82
|
*/
|
|
83
83
|
toolbar?: boolean;
|
|
84
84
|
/**
|
|
85
|
-
* Whether
|
|
85
|
+
* Whether to enable Prismic Nuxt DevTools integration.
|
|
86
86
|
*
|
|
87
87
|
* @defaultValue `true`
|
|
88
88
|
*/
|
|
89
89
|
devtools?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Options used by Prismic Vue components.
|
|
92
|
+
*/
|
|
93
|
+
components?: Omit<Required<PrismicPluginOptions>['components'], 'richTextComponents' | 'linkRel' | 'sliceZoneDefaultComponent' | 'linkInternalComponent' | 'linkExternalComponent'> & {
|
|
94
|
+
/**
|
|
95
|
+
* An optional path to a file exporting the `rel` attribute to apply on links.
|
|
96
|
+
* It can export a function to use the link's metadata to determine the `rel` value.
|
|
97
|
+
*
|
|
98
|
+
* @defaultValue `"noreferrer"` for external links.
|
|
99
|
+
*/
|
|
100
|
+
linkRel?: string;
|
|
101
|
+
/**
|
|
102
|
+
* An optional path to a file exporting a map of Rich Text block types to Vue Components.
|
|
103
|
+
* It is used to render Rich Text or title fields.
|
|
104
|
+
*
|
|
105
|
+
* @see Templating Rich Text and title fields from Prismic {@link https://prismic.io/docs/rich-text}
|
|
106
|
+
*/
|
|
107
|
+
richTextComponents?: string;
|
|
108
|
+
/**
|
|
109
|
+
* An optional path to a file exporting a component or a functional component rendered
|
|
110
|
+
* if a component mapping from the `components` prop cannot be found.
|
|
111
|
+
*
|
|
112
|
+
* @remarks
|
|
113
|
+
* Components will be rendered using the {@link SliceComponentProps} interface.
|
|
114
|
+
*
|
|
115
|
+
* @defaultValue `null` when `process.env.NODE_ENV === "production"` else {@link TODOSliceComponent}
|
|
116
|
+
*/
|
|
117
|
+
sliceZoneDefaultComponent?: string;
|
|
118
|
+
};
|
|
90
119
|
};
|
|
91
120
|
|
|
92
121
|
declare module '@nuxt/schema' {
|
package/dist/module.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { PrismicPluginOptions } from '@prismicio/vue';
|
|
|
7
7
|
* @see Module documentation: {@link https://prismic.nuxtjs.org}
|
|
8
8
|
* @see Prismic documentation: {@link https://prismic.io/docs/nuxt-3-setup}
|
|
9
9
|
*/
|
|
10
|
-
type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | 'linkResolver' | '
|
|
10
|
+
type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | 'linkResolver' | 'richTextSerializer' | 'components'> & {
|
|
11
11
|
/**
|
|
12
12
|
* A Prismic repository endpoint to init the module's `@prismicio/client`
|
|
13
13
|
* instance used to fetch content from a Prismic repository with.
|
|
@@ -73,7 +73,7 @@ type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | '
|
|
|
73
73
|
*/
|
|
74
74
|
preview?: string | false;
|
|
75
75
|
/**
|
|
76
|
-
* Whether
|
|
76
|
+
* Whether to inject Prismic toolbar script.
|
|
77
77
|
*
|
|
78
78
|
* @remarks
|
|
79
79
|
* The toolbar script is required for previews to work.
|
|
@@ -82,11 +82,40 @@ type PrismicModuleOptions = Omit<PrismicPluginOptions, 'endpoint' | 'client' | '
|
|
|
82
82
|
*/
|
|
83
83
|
toolbar?: boolean;
|
|
84
84
|
/**
|
|
85
|
-
* Whether
|
|
85
|
+
* Whether to enable Prismic Nuxt DevTools integration.
|
|
86
86
|
*
|
|
87
87
|
* @defaultValue `true`
|
|
88
88
|
*/
|
|
89
89
|
devtools?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Options used by Prismic Vue components.
|
|
92
|
+
*/
|
|
93
|
+
components?: Omit<Required<PrismicPluginOptions>['components'], 'richTextComponents' | 'linkRel' | 'sliceZoneDefaultComponent' | 'linkInternalComponent' | 'linkExternalComponent'> & {
|
|
94
|
+
/**
|
|
95
|
+
* An optional path to a file exporting the `rel` attribute to apply on links.
|
|
96
|
+
* It can export a function to use the link's metadata to determine the `rel` value.
|
|
97
|
+
*
|
|
98
|
+
* @defaultValue `"noreferrer"` for external links.
|
|
99
|
+
*/
|
|
100
|
+
linkRel?: string;
|
|
101
|
+
/**
|
|
102
|
+
* An optional path to a file exporting a map of Rich Text block types to Vue Components.
|
|
103
|
+
* It is used to render Rich Text or title fields.
|
|
104
|
+
*
|
|
105
|
+
* @see Templating Rich Text and title fields from Prismic {@link https://prismic.io/docs/rich-text}
|
|
106
|
+
*/
|
|
107
|
+
richTextComponents?: string;
|
|
108
|
+
/**
|
|
109
|
+
* An optional path to a file exporting a component or a functional component rendered
|
|
110
|
+
* if a component mapping from the `components` prop cannot be found.
|
|
111
|
+
*
|
|
112
|
+
* @remarks
|
|
113
|
+
* Components will be rendered using the {@link SliceComponentProps} interface.
|
|
114
|
+
*
|
|
115
|
+
* @defaultValue `null` when `process.env.NODE_ENV === "production"` else {@link TODOSliceComponent}
|
|
116
|
+
*/
|
|
117
|
+
sliceZoneDefaultComponent?: string;
|
|
118
|
+
};
|
|
90
119
|
};
|
|
91
120
|
|
|
92
121
|
declare module '@nuxt/schema' {
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -2,12 +2,11 @@ import { join } from 'node:path';
|
|
|
2
2
|
import { readFile } from 'node:fs/promises';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { defu } from 'defu';
|
|
5
|
-
import { defineNuxtModule, getNuxtVersion, createResolver, addPlugin, addComponent, addImports, extendPages, addTemplate } from '@nuxt/kit';
|
|
5
|
+
import { useLogger, defineNuxtModule, getNuxtVersion, createResolver, addPlugin, addComponent, addImports, extendPages, addTemplate } from '@nuxt/kit';
|
|
6
6
|
import * as prismicVue from '@prismicio/vue';
|
|
7
7
|
import { onDevToolsInitialized, extendServerRpc, startSubprocess } from '@nuxt/devtools-kit';
|
|
8
8
|
import { resolve } from 'pathe';
|
|
9
9
|
import terminate from 'terminate';
|
|
10
|
-
import { consola } from 'consola';
|
|
11
10
|
|
|
12
11
|
const RPC_NAMESPACE = "prismic-slicemachine-rpc";
|
|
13
12
|
var SliceMachineStatus = /* @__PURE__ */ ((SliceMachineStatus2) => {
|
|
@@ -17,7 +16,7 @@ var SliceMachineStatus = /* @__PURE__ */ ((SliceMachineStatus2) => {
|
|
|
17
16
|
})(SliceMachineStatus || {});
|
|
18
17
|
|
|
19
18
|
const DEVTOOLS_UI_ROUTE = "/__prismic-client";
|
|
20
|
-
const DEVTOOLS_UI_LOCAL_PORT =
|
|
19
|
+
const DEVTOOLS_UI_LOCAL_PORT = 5173;
|
|
21
20
|
let subProcess = null;
|
|
22
21
|
const stopSubprocess = () => {
|
|
23
22
|
if (subProcess) {
|
|
@@ -48,6 +47,7 @@ const setupDevToolsUI = (nuxt, resolver) => {
|
|
|
48
47
|
target: `http://localhost:${DEVTOOLS_UI_LOCAL_PORT}${DEVTOOLS_UI_ROUTE}`,
|
|
49
48
|
changeOrigin: true,
|
|
50
49
|
followRedirects: true,
|
|
50
|
+
ws: true,
|
|
51
51
|
rewrite: (path) => path.replace(DEVTOOLS_UI_ROUTE, "")
|
|
52
52
|
};
|
|
53
53
|
});
|
|
@@ -81,7 +81,7 @@ const setupDevToolsUI = (nuxt, resolver) => {
|
|
|
81
81
|
}, {
|
|
82
82
|
id: "slicemachine",
|
|
83
83
|
name: "SliceMachine",
|
|
84
|
-
icon: "
|
|
84
|
+
icon: "i-simple-icons-prismic"
|
|
85
85
|
}, nuxt);
|
|
86
86
|
rpc.broadcast.updateStatus(SliceMachineStatus.STARTED);
|
|
87
87
|
return SliceMachineStatus.STARTED;
|
|
@@ -101,7 +101,7 @@ const setupDevToolsUI = (nuxt, resolver) => {
|
|
|
101
101
|
// title to display in the tab
|
|
102
102
|
title: "Prismic",
|
|
103
103
|
// any icon from Iconify, or a URL to an image
|
|
104
|
-
icon: "
|
|
104
|
+
icon: "i-simple-icons-prismic",
|
|
105
105
|
// iframe view
|
|
106
106
|
view: {
|
|
107
107
|
type: "iframe",
|
|
@@ -111,7 +111,7 @@ const setupDevToolsUI = (nuxt, resolver) => {
|
|
|
111
111
|
});
|
|
112
112
|
};
|
|
113
113
|
|
|
114
|
-
const logger =
|
|
114
|
+
const logger = useLogger("nuxt:prismic");
|
|
115
115
|
|
|
116
116
|
const fileExists = (path, extensions = ["js", "ts"]) => {
|
|
117
117
|
if (!path) {
|
|
@@ -135,12 +135,22 @@ const module = defineNuxtModule({
|
|
|
135
135
|
linkResolver: "~/app/prismic/linkResolver",
|
|
136
136
|
richTextSerializer: "~/app/prismic/richTextSerializer"
|
|
137
137
|
};
|
|
138
|
+
let prismicComponentsFiles = {
|
|
139
|
+
linkRel: "~/app/prismic/linkRel",
|
|
140
|
+
richTextComponents: "~/app/prismic/richTextComponents",
|
|
141
|
+
sliceZoneDefaultComponent: "~/app/prismic/sliceZoneDefaultComponent"
|
|
142
|
+
};
|
|
138
143
|
if (nuxt.options?.future?.compatibilityVersion === 4 || getNuxtVersion(nuxt).startsWith("4")) {
|
|
139
144
|
prismicFiles = {
|
|
140
145
|
client: "~/prismic/client",
|
|
141
146
|
linkResolver: "~/prismic/linkResolver",
|
|
142
147
|
richTextSerializer: "~/prismic/richTextSerializer"
|
|
143
148
|
};
|
|
149
|
+
prismicComponentsFiles = {
|
|
150
|
+
linkRel: "~/prismic/linkRel",
|
|
151
|
+
richTextComponents: "~/prismic/richTextComponents",
|
|
152
|
+
sliceZoneDefaultComponent: "~/prismic/sliceZoneDefaultComponent"
|
|
153
|
+
};
|
|
144
154
|
}
|
|
145
155
|
return {
|
|
146
156
|
endpoint: "",
|
|
@@ -148,7 +158,7 @@ const module = defineNuxtModule({
|
|
|
148
158
|
clientConfig: {},
|
|
149
159
|
...prismicFiles,
|
|
150
160
|
injectComponents: true,
|
|
151
|
-
components:
|
|
161
|
+
components: prismicComponentsFiles,
|
|
152
162
|
preview: "/preview",
|
|
153
163
|
toolbar: true,
|
|
154
164
|
devtools: true
|
|
@@ -163,7 +173,7 @@ const module = defineNuxtModule({
|
|
|
163
173
|
if (nuxt.options.devtools && options.devtools) {
|
|
164
174
|
setupDevToolsUI(nuxt, resolver);
|
|
165
175
|
}
|
|
166
|
-
const proxyUserFileWithUndefinedFallback = (filename, path, extensions = ["js", "mjs", "ts"]) => {
|
|
176
|
+
const proxyUserFileWithUndefinedFallback = (filename, path, extensions = ["js", "mjs", "ts", "vue"]) => {
|
|
167
177
|
const resolvedFilename = `prismic/proxy/${filename}.ts`;
|
|
168
178
|
const resolvedPath = path.replace(/^(~~|@@)/, nuxt.options.rootDir).replace(/^(~|@)/, nuxt.options.srcDir);
|
|
169
179
|
const maybeUserFile = fileExists(resolvedPath, extensions);
|
|
@@ -189,6 +199,9 @@ const module = defineNuxtModule({
|
|
|
189
199
|
}
|
|
190
200
|
proxyUserFileWithUndefinedFallback("linkResolver", moduleOptions.linkResolver);
|
|
191
201
|
proxyUserFileWithUndefinedFallback("richTextSerializer", moduleOptions.richTextSerializer);
|
|
202
|
+
proxyUserFileWithUndefinedFallback("linkRel", moduleOptions.components.linkRel);
|
|
203
|
+
proxyUserFileWithUndefinedFallback("richTextComponents", moduleOptions.components.richTextComponents);
|
|
204
|
+
proxyUserFileWithUndefinedFallback("sliceZoneDefaultComponent", moduleOptions.components.sliceZoneDefaultComponent);
|
|
192
205
|
nuxt.options.build.transpile.push(resolver.resolve("runtime"), "@nuxtjs/prismic", "@prismicio/vue");
|
|
193
206
|
nuxt.options.vite.optimizeDeps ||= {};
|
|
194
207
|
nuxt.options.vite.optimizeDeps.exclude ||= [];
|
|
@@ -211,7 +224,7 @@ const module = defineNuxtModule({
|
|
|
211
224
|
});
|
|
212
225
|
});
|
|
213
226
|
}
|
|
214
|
-
const prismicVueAutoImports = Object.keys(prismicVue).filter((key) => key.startsWith("use")).concat("getSliceComponentProps", "defineSliceZoneComponents").map((key) => {
|
|
227
|
+
const prismicVueAutoImports = Object.keys(prismicVue).filter((key) => key.startsWith("use")).concat("getSliceComponentProps", "defineSliceZoneComponents", "getRichTextComponentProps").map((key) => {
|
|
215
228
|
return {
|
|
216
229
|
name: key,
|
|
217
230
|
as: key,
|
package/dist/runtime/plugin.js
CHANGED
|
@@ -6,81 +6,91 @@ import { useCookie, useRequestEvent, onNuxtReady, refreshNuxtData, useHead, useR
|
|
|
6
6
|
import _client from "#build/prismic/proxy/client";
|
|
7
7
|
import linkResolver from "#build/prismic/proxy/linkResolver";
|
|
8
8
|
import richTextSerializer from "#build/prismic/proxy/richTextSerializer";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
...options,
|
|
28
|
-
endpoint,
|
|
29
|
-
// TypeScript expects either an endpoint of a client, not both
|
|
30
|
-
client,
|
|
31
|
-
linkResolver,
|
|
32
|
-
richTextSerializer,
|
|
33
|
-
injectComponents: false,
|
|
34
|
-
// Handled at module level
|
|
35
|
-
components: {
|
|
36
|
-
linkInternalComponent: NuxtLink,
|
|
37
|
-
linkExternalComponent: NuxtLink,
|
|
38
|
-
...options.components
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
nuxtApp.vueApp.use(prismicPlugin);
|
|
42
|
-
if (options.preview) {
|
|
43
|
-
const previewCookie = useCookie("io.prismic.preview").value;
|
|
44
|
-
if (import.meta.server) {
|
|
45
|
-
const req = useRequestEvent()?.node.req;
|
|
46
|
-
if (req) {
|
|
47
|
-
prismicPlugin.client.enableAutoPreviewsFromReq(req);
|
|
9
|
+
import linkRel from "#build/prismic/proxy/linkRel";
|
|
10
|
+
import richTextComponents from "#build/prismic/proxy/richTextComponents";
|
|
11
|
+
import sliceZoneDefaultComponent from "#build/prismic/proxy/sliceZoneDefaultComponent";
|
|
12
|
+
export default defineNuxtPlugin({
|
|
13
|
+
name: "prismic:setup",
|
|
14
|
+
parallel: true,
|
|
15
|
+
async setup(nuxtApp) {
|
|
16
|
+
const options = useRuntimeConfig().public.prismic;
|
|
17
|
+
let client;
|
|
18
|
+
if (typeof _client === "function") {
|
|
19
|
+
try {
|
|
20
|
+
client = await nuxtApp.runWithContext(() => _client());
|
|
21
|
+
} catch (error) {
|
|
22
|
+
console.error("[@nuxtjs/prismic] An error happened while resolving your Prismic custom client, disabling Prismic module gracefully...", error);
|
|
23
|
+
client = createClient(
|
|
24
|
+
"error-resolving-custom-client",
|
|
25
|
+
{ ...options, documentAPIEndpoint: void 0 }
|
|
26
|
+
);
|
|
48
27
|
}
|
|
28
|
+
} else {
|
|
29
|
+
client = _client;
|
|
49
30
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
31
|
+
const endpoint = options.environment || options.endpoint || client?.documentAPIEndpoint || "";
|
|
32
|
+
const prismicPlugin = createPrismic({
|
|
33
|
+
...options,
|
|
34
|
+
endpoint,
|
|
35
|
+
// TypeScript expects either an endpoint of a client, not both
|
|
36
|
+
client,
|
|
37
|
+
linkResolver,
|
|
38
|
+
richTextSerializer,
|
|
39
|
+
injectComponents: false,
|
|
40
|
+
// Handled at module level
|
|
41
|
+
components: {
|
|
42
|
+
linkInternalComponent: NuxtLink,
|
|
43
|
+
linkExternalComponent: NuxtLink,
|
|
44
|
+
...options.components,
|
|
45
|
+
linkRel,
|
|
46
|
+
richTextComponents,
|
|
47
|
+
sliceZoneDefaultComponent
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
nuxtApp.vueApp.use(prismicPlugin);
|
|
51
|
+
if (options.preview) {
|
|
52
|
+
const previewCookie = useCookie("io.prismic.preview").value;
|
|
53
|
+
if (import.meta.server) {
|
|
54
|
+
const req = useRequestEvent()?.node.req;
|
|
55
|
+
if (req) {
|
|
56
|
+
prismicPlugin.client.enableAutoPreviewsFromReq(req);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
if (previewCookie) {
|
|
60
|
+
try {
|
|
61
|
+
const session = typeof previewCookie === "string" ? JSON.parse(decodeURIComponent(previewCookie)) : previewCookie;
|
|
62
|
+
if (Object.keys(session).some((key) => key in session && typeof session[key] === "object" && session[key] !== null && "preview" in session[key] && session[key].preview)) {
|
|
63
|
+
let afterEachCalled = false;
|
|
64
|
+
onNuxtReady(() => {
|
|
65
|
+
if (!afterEachCalled) {
|
|
66
|
+
refreshNuxtData();
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
useRouter().afterEach(() => {
|
|
70
|
+
afterEachCalled = true;
|
|
57
71
|
refreshNuxtData();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
refreshNuxtData();
|
|
63
|
-
});
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
} catch (error) {
|
|
75
|
+
console.warn("Failed to parse Prismic preview cookie", error);
|
|
64
76
|
}
|
|
65
|
-
} catch (error) {
|
|
66
|
-
console.warn("Failed to parse Prismic preview cookie", error);
|
|
67
77
|
}
|
|
68
78
|
}
|
|
79
|
+
if (options.toolbar && prismicPlugin.client?.repositoryName) {
|
|
80
|
+
useHead({
|
|
81
|
+
script: [{
|
|
82
|
+
key: "prismic-preview",
|
|
83
|
+
src: `https://static.cdn.prismic.io/prismic.min.js?repo=${prismicPlugin.client.repositoryName}&new=true`,
|
|
84
|
+
async: true,
|
|
85
|
+
defer: true,
|
|
86
|
+
crossorigin: "anonymous"
|
|
87
|
+
}]
|
|
88
|
+
});
|
|
89
|
+
} else {
|
|
90
|
+
useCookie("io.prismic.preview").value = null;
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
provide: { prismic: prismicPlugin }
|
|
94
|
+
};
|
|
69
95
|
}
|
|
70
|
-
if (options.toolbar && prismicPlugin.client?.repositoryName) {
|
|
71
|
-
useHead({
|
|
72
|
-
script: [{
|
|
73
|
-
key: "prismic-preview",
|
|
74
|
-
src: `https://static.cdn.prismic.io/prismic.min.js?repo=${prismicPlugin.client.repositoryName}&new=true`,
|
|
75
|
-
async: true,
|
|
76
|
-
defer: true,
|
|
77
|
-
crossorigin: "anonymous"
|
|
78
|
-
}]
|
|
79
|
-
});
|
|
80
|
-
} else {
|
|
81
|
-
useCookie("io.prismic.preview").value = null;
|
|
82
|
-
}
|
|
83
|
-
return {
|
|
84
|
-
provide: { prismic: prismicPlugin }
|
|
85
|
-
};
|
|
86
96
|
});
|