diff --git a/404.html b/404.html index e1ae374d..eefbb160 100644 --- a/404.html +++ b/404.html @@ -1,12 +1 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file +404: This page could not be found

404

This page could not be found.

\ No newline at end of file diff --git a/_next/static/JFJnv0BdRx0Fm_O9Ze97z/_buildManifest.js b/_next/static/JFJnv0BdRx0Fm_O9Ze97z/_buildManifest.js deleted file mode 100644 index 74b184be..00000000 --- a/_next/static/JFJnv0BdRx0Fm_O9Ze97z/_buildManifest.js +++ /dev/null @@ -1 +0,0 @@ -self.__BUILD_MANIFEST=function(s){return{__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":[s,"static/chunks/658-c2d27c8335c09afe.js","static/chunks/393-7fb9bcc263b76856.js","static/chunks/797-95884b014a20a661.js","static/css/17db1f38c88e9ae7.css","static/chunks/pages/index-ddbbf35add903d45.js"],"/_error":["static/chunks/pages/_error-044f1cc66a7c2527.js"],"/docs":[s,"static/chunks/pages/docs-91f337ff21196448.js"],"/docs/compiler-plugin":[s,"static/chunks/pages/docs/compiler-plugin-a1cecb93581ddc87.js"],"/docs/editor-settings":[s,"static/chunks/pages/docs/editor-settings-ad04c76eb3351cf2.js"],"/docs/inspector-component":[s,"static/chunks/pages/docs/inspector-component-e1abd71df4a2c9bc.js"],"/docs/integration":[s,"static/chunks/pages/docs/integration-9d29b1e0c97ae3b2.js"],"/docs/integration/_snip-declaration":[s,"static/chunks/pages/docs/integration/_snip-declaration-90a3ba4ca4c8e6f5.js"],"/docs/integration/create-react-app":[s,"static/chunks/pages/docs/integration/create-react-app-71cd2c62f2c94f74.js"],"/docs/integration/nextjs":[s,"static/chunks/pages/docs/integration/nextjs-9d59d45604875d9f.js"],"/docs/integration/rspack":[s,"static/chunks/pages/docs/integration/rspack-0dc846d633178906.js"],"/docs/integration/umijs":[s,"static/chunks/pages/docs/integration/umijs-167e62f56d966a2d.js"],"/docs/integration/vite":[s,"static/chunks/pages/docs/integration/vite-636d242767c60f73.js"],"/docs/integration/webpack":[s,"static/chunks/pages/docs/integration/webpack-c3f4908c26d15ba1.js"],"/docs/migrate-v1-to-v2":[s,"static/chunks/pages/docs/migrate-v1-to-v2-01acb77d82680be3.js"],"/showcase":["static/chunks/pages/showcase-8aa1827796dea682.js"],sortedPages:["/","/_app","/_error","/docs","/docs/compiler-plugin","/docs/editor-settings","/docs/inspector-component","/docs/integration","/docs/integration/_snip-declaration","/docs/integration/create-react-app","/docs/integration/nextjs","/docs/integration/rspack","/docs/integration/umijs","/docs/integration/vite","/docs/integration/webpack","/docs/migrate-v1-to-v2","/showcase"]}}("static/chunks/313-80b1306502288ebf.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB(); \ No newline at end of file diff --git a/_next/static/NWB92B4dvwd7LRpXSDgoG/_buildManifest.js b/_next/static/NWB92B4dvwd7LRpXSDgoG/_buildManifest.js new file mode 100644 index 00000000..ddf359de --- /dev/null +++ b/_next/static/NWB92B4dvwd7LRpXSDgoG/_buildManifest.js @@ -0,0 +1 @@ +self.__BUILD_MANIFEST=function(s){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[s,"static/chunks/555-8d413a260fe925f9.js","static/css/9c402a062366978c.css","static/chunks/pages/index-b442f0d22864f8d7.js"],"/_error":["static/chunks/pages/_error-d84cc488183391e6.js"],"/docs":[s,"static/chunks/pages/docs-2acebb85d139fe8e.js"],"/docs/compiler-plugin":[s,"static/chunks/pages/docs/compiler-plugin-3c71b5ede6aeea44.js"],"/docs/editor-settings":[s,"static/chunks/pages/docs/editor-settings-3676cbde8eadd0a1.js"],"/docs/inspector-component":[s,"static/chunks/pages/docs/inspector-component-8fbc87d1e895a2ba.js"],"/docs/integration":[s,"static/chunks/pages/docs/integration-386e3de776105295.js"],"/docs/integration/_snip-declaration":[s,"static/chunks/pages/docs/integration/_snip-declaration-a526d7a39fc47590.js"],"/docs/integration/create-react-app":[s,"static/chunks/pages/docs/integration/create-react-app-886e41f0b3ecec03.js"],"/docs/integration/nextjs":[s,"static/chunks/pages/docs/integration/nextjs-6b1d0247534553d0.js"],"/docs/integration/rspack":[s,"static/chunks/pages/docs/integration/rspack-218b04724e308d66.js"],"/docs/integration/umijs":[s,"static/chunks/pages/docs/integration/umijs-f6db244034b3c48e.js"],"/docs/integration/vite":[s,"static/chunks/pages/docs/integration/vite-07e7e10e972ee9fa.js"],"/docs/integration/webpack":[s,"static/chunks/pages/docs/integration/webpack-6e9576275ffa8099.js"],"/docs/migrate-v1-to-v2":[s,"static/chunks/pages/docs/migrate-v1-to-v2-d356084d79a929f4.js"],"/showcase":["static/chunks/pages/showcase-f41b172be2964d06.js"],sortedPages:["/","/_app","/_error","/docs","/docs/compiler-plugin","/docs/editor-settings","/docs/inspector-component","/docs/integration","/docs/integration/_snip-declaration","/docs/integration/create-react-app","/docs/integration/nextjs","/docs/integration/rspack","/docs/integration/umijs","/docs/integration/vite","/docs/integration/webpack","/docs/migrate-v1-to-v2","/showcase"]}}("static/chunks/104-d3d846d4da217920.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB(); \ No newline at end of file diff --git a/_next/static/JFJnv0BdRx0Fm_O9Ze97z/_ssgManifest.js b/_next/static/NWB92B4dvwd7LRpXSDgoG/_ssgManifest.js similarity index 100% rename from _next/static/JFJnv0BdRx0Fm_O9Ze97z/_ssgManifest.js rename to _next/static/NWB92B4dvwd7LRpXSDgoG/_ssgManifest.js diff --git a/_next/static/chunks/10.2c511587e1b46f6b.js b/_next/static/chunks/10.2c511587e1b46f6b.js new file mode 100644 index 00000000..b644f3ad --- /dev/null +++ b/_next/static/chunks/10.2c511587e1b46f6b.js @@ -0,0 +1 @@ +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[10],{1010:function(e,t,r){"use strict";var n=r(1581),o=r(2321),a=r(1472),u=r(723),i=r(8561);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return y}});var l=r(4838),c=l._(r(79)),d=l._(r(8724)),f={400:"Bad Request",404:"This page could not be found",405:"Method Not Allowed",500:"Internal Server Error"};function s(e){var t=e.res,r=e.err;return{statusCode:t&&t.statusCode?t.statusCode:r?r.statusCode:404}}var p={error:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},desc:{lineHeight:"48px"},h1:{display:"inline-block",margin:"0 20px 0 0",paddingRight:23,fontSize:24,fontWeight:500,verticalAlign:"top"},h2:{fontSize:14,fontWeight:400,lineHeight:"28px"},wrap:{display:"inline-block"}},y=function(e){a(l,e);var t,r=(t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}(),function(){var e,r=i(l);if(t){var n=i(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return u(this,e)});function l(){return n(this,l),r.apply(this,arguments)}return o(l,[{key:"render",value:function(){var e=this.props,t=e.statusCode,r=e.withDarkMode,n=this.props.title||f[t]||"An unexpected error has occurred";return c.default.createElement("div",{style:p.error},c.default.createElement(d.default,null,c.default.createElement("title",null,t?t+": "+n:"Application error: a client-side exception has occurred")),c.default.createElement("div",{style:p.desc},c.default.createElement("style",{dangerouslySetInnerHTML:{__html:"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}"+(void 0===r||r?"@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}":"")}}),t?c.default.createElement("h1",{className:"next-error-h1",style:p.h1},t):null,c.default.createElement("div",{style:p.wrap},c.default.createElement("h2",{style:p.h2},this.props.title||t?n:c.default.createElement(c.default.Fragment,null,"Application error: a client-side exception has occurred (see the browser console for more information)"),"."))))}}]),l}(c.default.Component);y.displayName="ErrorPage",y.getInitialProps=s,y.origGetInitialProps=s,("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},3722:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AmpStateContext",{enumerable:!0,get:function(){return n}});var n=r(4838)._(r(79)).default.createContext({})},2646:function(e,t){"use strict";function r(e){var t=void 0===e?{}:e,r=t.ampFirst,n=t.hybrid,o=t.hasQuery;return void 0!==r&&r||void 0!==n&&n&&void 0!==o&&o}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isInAmpMode",{enumerable:!0,get:function(){return r}})},8724:function(e,t,r){"use strict";var n=r(994);function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{defaultHead:function(){return f},default:function(){return h}});var a=r(4838),u=r(5542)._(r(79)),i=a._(r(3150)),l=r(3722),c=r(6821),d=r(2646);function f(e){void 0===e&&(e=!1);var t=[u.default.createElement("meta",{charSet:"utf-8"})];return e||t.push(u.default.createElement("meta",{name:"viewport",content:"width=device-width"})),t}function s(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===u.default.Fragment?e.concat(u.default.Children.toArray(t.props.children).reduce(function(e,t){return"string"==typeof t||"number"==typeof t?e:e.concat(t)},[])):e.concat(t)}r(788);var p=["name","httpEquiv","charSet","itemProp"];function y(e,t){var r,a,i,l,c=t.inAmpMode;return e.reduce(s,[]).reverse().concat(f(c).reverse()).filter((r=new Set,a=new Set,i=new Set,l={},function(e){var t=!0,n=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){n=!0;var o=e.key.slice(e.key.indexOf("$")+1);r.has(o)?t=!1:r.add(o)}switch(e.type){case"title":case"base":a.has(e.type)?t=!1:a.add(e.type);break;case"meta":for(var u=0,c=p.length;u-1},$.prototype.set=function(t,e){var n=this.__data__,r=I(n,t);return r<0?n.push([t,e]):n[r][1]=e,this},E.prototype.clear=function(){this.__data__={hash:new P,map:new(k||$),string:new P}},E.prototype.delete=function(t){return L(this,t).delete(t)},E.prototype.get=function(t){return L(this,t).get(t)},E.prototype.has=function(t){return L(this,t).has(t)},E.prototype.set=function(t,e){return L(this,t).set(t,e),this};var J=R(function(t){t=null==(e=t)?"":function(t){if("string"==typeof t)return t;if(F(t))return M?M.call(t):"";var e=t+"";return"0"==e&&1/t==-a?"-0":e}(e);var e,n=[];return u.test(t)&&n.push(""),t.replace(l,function(t,e,r,o){n.push(r?o.replace(s,"$1"):e||t)}),n});function R(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=t.apply(this,r);return n.cache=a.set(o,i),i};return n.cache=new(R.Cache||E),n}R.Cache=E;var D=Array.isArray;function A(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function F(t){return"symbol"==typeof t||!!t&&"object"==typeof t&&"[object Symbol]"==m.call(t)}t.exports=function(t,e,n){var r=null==t?void 0:function(t,e){var n;e=!function(t,e){if(D(t))return!1;var n=typeof t;return!!("number"==n||"symbol"==n||"boolean"==n||null==t||F(t))||c.test(t)||!i.test(t)||null!=e&&t in Object(e)}(e,t)?D(n=e)?n:J(n):[e];for(var r=0,o=e.length;null!=t&&r{if(_(e)){let n=t.replace("/","");return[n,e.title||g(n)]}return[t,e||g(t)]}))}function b({pageNextRoute:t,pageOpts:e,nextraLayout:n,themeConfig:o,MDXContent:c,hot:u,pageOptsChecksum:l,dynamicMetaModules:s=[]}){var d;"undefined"==typeof window&&(globalThis.__nextra_resolvePageMap=async()=>{if(r)return r;let t=JSON.parse(JSON.stringify(g.pageMap));return await Promise.all(s.map(async([e,{metaObjectKeyPath:n,metaParentKeyPath:r}])=>{let o=await e,i=await o.default(),c=a()(t,n);c.data=i;let u=a()(t,r);!function t(e,n,r=!0){if(r){t(e,{kind:"Meta",data:n.data,locale:n.locale},!1),n.data=y(n.data);return}for(let[r,a]of Object.entries(n.data)){if(!_(a)){var o;if("*"===r)continue;e.children.push({kind:"MdxPage",...n.locale&&{locale:n.locale},name:r,route:(o=e.route,h(f.join(o,r.replace(/^index$/,""))))});continue}let i=r.replace("/",""),c={kind:"Folder",name:i,route:`${e.route}/${i}`,children:[{kind:"Meta",...n.locale&&{locale:n.locale},data:y(a.items)}]};e.children.push(c),t(c,{kind:"Meta",data:a.items,locale:n.locale},!1)}}(u,c)})),r=t});let g=globalThis[d=i.eZ]||(globalThis[d]=Object.create(null));return e.pageMap?(g.pageMap=e.pageMap,g.Layout=n):(e={...e,pageMap:g.pageMap,flexsearch:g.flexsearch},o=g.themeConfig),e={frontMatter:{},...e},g.route=e.route,g.context||(g.context=Object.create(null)),g.context[t]={Content:c,pageOpts:e,themeConfig:o},p}},9199:function(t){"use strict";t.exports=t=>{let e=/^\\\\\?\\/.test(t),n=/[^\u0000-\u0080]+/.test(t);return e||n?t:t.replace(/\\/g,"/")}},439:function(t,e,n){let r=n(415),o=n(6184),a="[^\\s'’\\(\\)!?;:\"-]",i=RegExp(`(?:(?:(\\s?(?:^|[.\\(\\)!?;:"-])\\s*)(${a}))|(${a}))(${a}*[’']*${a}*)`,"g"),c=t=>t.map(t=>[RegExp(`\\b${t}\\b`,"gi"),t]);t.exports=(t,e={})=>{t=t.toLowerCase().replace(i,(t,e="",n,o,a,i,c)=>{let u=t.length+i>=c.length,l=function(t){let e=t[0];return/\s/.test(e)?t.slice(1):/[\(\)]/.test(e)?null:t}(t);return l?!n&&r.has(o+a)&&!u?l:e+(o||n).toUpperCase()+a:t});let n=e.special||[],a=[...o,...n],u=c(a);return u.forEach(([e,n])=>{t=t.replace(e,n)}),t}},415:function(t){t.exports=new Set(["for","and","nor","but","or","yet","so","a","an","the","aboard","about","above","across","after","against","along","amid","among","anti","around","as","at","before","behind","below","beneath","beside","besides","between","beyond","but","by","concerning","considering","despite","down","during","except","excepting","excluding","following","for","from","in","inside","into","like","minus","near","of","off","on","onto","opposite","over","past","per","plus","regarding","round","save","since","than","through","to","toward","towards","under","underneath","unlike","until","up","upon","versus","via","with","within","without"])},6184:function(t){t.exports=["ZEIT","ZEIT Inc.","Vercel","Vercel Inc.","CLI","API","HTTP","HTTPS","JSX","DNS","URL","now.sh","now.json","vercel.app","vercel.json","CI","CD","CDN","package.json","package.lock","yarn.lock","GitHub","GitLab","CSS","Sass","JS","JavaScript","TypeScript","HTML","WordPress","Next.js","Node.js","Webpack","Docker","Bash","Kubernetes","SWR","TinaCMS","UI","UX","TS","TSX","iPhone","iPad","watchOS","iOS","iPadOS","macOS","PHP","composer.json","composer.lock","CMS","SQL","C","C#","GraphQL","GraphiQL","JWT","JWTs"]},9851:function(t,e,n){n(5250)}}]); \ No newline at end of file diff --git a/_next/static/chunks/313-80b1306502288ebf.js b/_next/static/chunks/313-80b1306502288ebf.js deleted file mode 100644 index 306177b3..00000000 --- a/_next/static/chunks/313-80b1306502288ebf.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[313],{4619:function(t,e,n){var r,o="__lodash_hash_undefined__",a=1/0,i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,c=/^\w*$/,u=/^\./,l=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,s=/\\(\\)?/g,p=/^\[object .+?Constructor\]$/,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,h="object"==typeof self&&self&&self.Object===Object&&self,d=f||h||Function("return this")(),g=Array.prototype,_=Function.prototype,y=Object.prototype,b=d["__core-js_shared__"],v=(r=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",w=_.toString,j=y.hasOwnProperty,m=y.toString,S=RegExp("^"+w.call(j).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),x=d.Symbol,O=g.splice,k=N(d,"Map"),C=N(Object,"create"),T=x?x.prototype:void 0,M=T?T.toString:void 0;function P(t){var e=-1,n=t?t.length:0;for(this.clear();++e-1},$.prototype.set=function(t,e){var n=this.__data__,r=I(n,t);return r<0?n.push([t,e]):n[r][1]=e,this},E.prototype.clear=function(){this.__data__={hash:new P,map:new(k||$),string:new P}},E.prototype.delete=function(t){return L(this,t).delete(t)},E.prototype.get=function(t){return L(this,t).get(t)},E.prototype.has=function(t){return L(this,t).has(t)},E.prototype.set=function(t,e){return L(this,t).set(t,e),this};var J=R(function(t){t=null==(e=t)?"":function(t){if("string"==typeof t)return t;if(F(t))return M?M.call(t):"";var e=t+"";return"0"==e&&1/t==-a?"-0":e}(e);var e,n=[];return u.test(t)&&n.push(""),t.replace(l,function(t,e,r,o){n.push(r?o.replace(s,"$1"):e||t)}),n});function R(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=t.apply(this,r);return n.cache=a.set(o,i),i};return n.cache=new(R.Cache||E),n}R.Cache=E;var D=Array.isArray;function A(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function F(t){return"symbol"==typeof t||!!t&&"object"==typeof t&&"[object Symbol]"==m.call(t)}t.exports=function(t,e,n){var r=null==t?void 0:function(t,e){var n;e=!function(t,e){if(D(t))return!1;var n=typeof t;return!!("number"==n||"symbol"==n||"boolean"==n||null==t||F(t))||c.test(t)||!i.test(t)||null!=e&&t in Object(e)}(e,t)?D(n=e)?n:J(n):[e];for(var r=0,o=e.length;null!=t&&r{if(_(e)){let n=t.replace("/","");return[n,e.title||g(n)]}return[t,e||g(t)]}))}function b({pageNextRoute:t,pageOpts:e,nextraLayout:n,themeConfig:o,MDXContent:c,hot:u,pageOptsChecksum:l,dynamicMetaModules:s=[]}){var d;"undefined"==typeof window&&(globalThis.__nextra_resolvePageMap=async()=>{if(r)return r;let t=JSON.parse(JSON.stringify(g.pageMap));return await Promise.all(s.map(async([e,{metaObjectKeyPath:n,metaParentKeyPath:r}])=>{let o=await e,i=await o.default(),c=a()(t,n);c.data=i;let u=a()(t,r);!function t(e,n,r=!0){if(r){t(e,{kind:"Meta",data:n.data,locale:n.locale},!1),n.data=y(n.data);return}for(let[o,a]of Object.entries(n.data)){if(!_(a)){var i,c;if("*"===o)continue;e.children.push({kind:"MdxPage",...n.locale&&{locale:n.locale},name:o,route:(i=e.route,c=o,h(f.join(i,c.replace(/^index$/,""))))});continue}let u=o.replace("/",""),l={kind:"Folder",name:u,route:`${e.route}/${u}`,children:[{kind:"Meta",...n.locale&&{locale:n.locale},data:y(a.items)}]};e.children.push(l),t(l,{kind:"Meta",data:a.items,locale:n.locale},!1)}}(u,c)})),r=t});let g=globalThis[d=i.eZ]||(globalThis[d]=Object.create(null));return e.pageMap?(g.pageMap=e.pageMap,g.Layout=n):(e={...e,pageMap:g.pageMap,flexsearch:g.flexsearch},o=g.themeConfig),e={frontMatter:{},...e},g.route=e.route,g.context||(g.context=Object.create(null)),g.context[t]={Content:c,pageOpts:e,themeConfig:o},p}},9199:function(t){"use strict";t.exports=t=>{let e=/^\\\\\?\\/.test(t),n=/[^\u0000-\u0080]+/.test(t);return e||n?t:t.replace(/\\/g,"/")}},439:function(t,e,n){let r=n(415),o=n(6184),a="[^\\s'’\\(\\)!?;:\"-]",i=RegExp(`(?:(?:(\\s?(?:^|[.\\(\\)!?;:"-])\\s*)(${a}))|(${a}))(${a}*[’']*${a}*)`,"g"),c=t=>t.map(t=>[RegExp(`\\b${t}\\b`,"gi"),t]);t.exports=(t,e={})=>{t=t.toLowerCase().replace(i,(t,e="",n,o,a,i,c)=>{let u=t.length+i>=c.length,l=function(t){let e=t[0];return/\s/.test(e)?t.slice(1):/[\(\)]/.test(e)?null:t}(t);return l?!n&&r.has(o+a)&&!u?l:e+(o||n).toUpperCase()+a:t});let n=e.special||[],a=[...o,...n],u=c(a);return u.forEach(([e,n])=>{t=t.replace(e,n)}),t}},415:function(t){t.exports=new Set(["for","and","nor","but","or","yet","so","a","an","the","aboard","about","above","across","after","against","along","amid","among","anti","around","as","at","before","behind","below","beneath","beside","besides","between","beyond","but","by","concerning","considering","despite","down","during","except","excepting","excluding","following","for","from","in","inside","into","like","minus","near","of","off","on","onto","opposite","over","past","per","plus","regarding","round","save","since","than","through","to","toward","towards","under","underneath","unlike","until","up","upon","versus","via","with","within","without"])},6184:function(t){t.exports=["ZEIT","ZEIT Inc.","Vercel","Vercel Inc.","CLI","API","HTTP","HTTPS","JSX","DNS","URL","now.sh","now.json","vercel.app","vercel.json","CI","CD","CDN","package.json","package.lock","yarn.lock","GitHub","GitLab","CSS","Sass","JS","JavaScript","TypeScript","HTML","WordPress","Next.js","Node.js","Webpack","Docker","Bash","Kubernetes","SWR","TinaCMS","UI","UX","TS","TSX","iPhone","iPad","watchOS","iOS","iPadOS","macOS","PHP","composer.json","composer.lock","CMS","SQL","C","C#","GraphQL","GraphiQL","JWT","JWTs"]},9851:function(t,e,n){n(5250)}}]); \ No newline at end of file diff --git a/_next/static/chunks/314.a70356ca8e122f5e.js b/_next/static/chunks/314.a70356ca8e122f5e.js new file mode 100644 index 00000000..2cc052f0 --- /dev/null +++ b/_next/static/chunks/314.a70356ca8e122f5e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[314],{3314:function(e,t,n){var r=n(9181),u=n(1581),o=n(2321),a=n(1472),c=n(723),f=n(8561),l=n(5562);Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return y}});var i=n(4838)._(n(79)),s=n(1913);function p(e){return d.apply(this,arguments)}function d(){return(d=l(r.mark(function e(t){var n,u,o;return r.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.Component,u=t.ctx,e.next=3,(0,s.loadGetInitialProps)(n,u);case 3:return o=e.sent,e.abrupt("return",{pageProps:o});case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}var y=function(e){a(r,e);var t,n=(t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}(),function(){var e,n=f(r);if(t){var u=f(this).constructor;e=Reflect.construct(n,arguments,u)}else e=n.apply(this,arguments);return c(this,e)});function r(){return u(this,r),n.apply(this,arguments)}return o(r,[{key:"render",value:function(){var e=this.props,t=e.Component,n=e.pageProps;return i.default.createElement(t,n)}}]),r}(i.default.Component);y.origGetInitialProps=p,y.getInitialProps=p,("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}}]); \ No newline at end of file diff --git a/_next/static/chunks/330.23582af60d583a7e.js b/_next/static/chunks/330.23582af60d583a7e.js deleted file mode 100644 index 80e497be..00000000 --- a/_next/static/chunks/330.23582af60d583a7e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[330],{4330:function(e,t,a){a.r(t),a.d(t,{ShowPage:function(){return v}});var n=a(79),o=a(6626),s=a(649),r=a(6367),i=a(9841),c=a(5250),p=function(e){var t=e.className;return(0,c.jsxs)("svg",{"data-inspector-line":"10","data-inspector-column":"4","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx","aria-hidden":"true",viewBox:"0 0 564 564",xmlns:"http://www.w3.org/2000/svg",className:(0,i.W)("\n [mask-image:radial-gradient(300px_circle_at_center,white,transparent)]\n ",t),children:[(0,c.jsx)("defs",{"data-inspector-line":"21","data-inspector-column":"6","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",children:(0,c.jsx)("pattern",{"data-inspector-line":"22","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",id:":r1s:",width:"56.5",height:"56.5",patternUnits:"userSpaceOnUse",x:"-1",y:"-1",children:(0,c.jsx)("path",{"data-inspector-line":"30","data-inspector-column":"10","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",d:"M.5,56.5 V.5 H56.5",fill:"none",strokeWidth:"1",strokeDasharray:"0"})})}),(0,c.jsx)("rect",{"data-inspector-line":"38","data-inspector-column":"6","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",width:"100%",height:"100%",stroke:"none",fill:"url(#:r1s:)"}),(0,c.jsxs)("g",{"data-inspector-line":"39","data-inspector-column":"6","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",x:"-1",y:"-1",className:"overflow-visible",children:[(0,c.jsx)("rect",{"data-inspector-line":"40","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",stroke:"none",width:"56.5",height:"56.5",x:"339",y:"113"}),(0,c.jsx)("rect",{"data-inspector-line":"41","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",stroke:"none",width:"56.5",height:"56.5",x:"226",y:"169.5"}),(0,c.jsx)("rect",{"data-inspector-line":"42","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",stroke:"none",width:"56.5",height:"56.5",x:"395.5",y:"339"}),(0,c.jsx)("rect",{"data-inspector-line":"43","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/components/Pattern/Checks.tsx",stroke:"none",width:"56.5",height:"56.5",x:"113",y:"395.5"})]})]})},l=a(5709),d=a(2366),h=d.z.div({displayName:"Base",className:"\n grid place-items-center px-6 lg:px-8 relative z-0\n min-h-screen overflow-hidden\n "}),m=(0,d.z)(l.Z,{displayName:"GithubCorner",className:"absolute top-0 right-0"}),u=d.z.h1({displayName:"Title",className:"\n font-bold whitespace-nowrap text-gray-900 text-[min(8vw,2.25rem)] sm:text-6xl\n transition-all duration-200 ease\n "}),x=d.z.p({displayName:"Slogan",className:"\n mt-6 leading-8 text-gray-600 text-[min(4.5vw,1.25rem)] leading-[min(6vw,1.75rem)] sm:text-lg\n transition-all duration-200 ease\n "}),g=d.z.button({displayName:"InspectorButton",className:"\n inline-block py-2 px-6 rounded-full\n select-none text-white whitespace-nowrap no-underline [text-shadow:0_1px_1px_#000]\n shadow-sm shadow-blue-500/50\n\n bg-gradient-to-b from-[#4fa0fd] to-[#248aff]\n\n hover:shadow-[0_5px_30px_-10px] hover:shadow-[#0078ffab] hover:brightness-105\n active:shadow active:shadow-[#00295738] active:brightness-95\n focus:outline-none\n transition-all duration-200 ease\n "}),w=d.z.span({displayName:"ButtonIcon",className:"\n inline-block ml-2 transition-all duration-200 ease\n group-hover:translate-x-0.5\n group-hover:scale-110\n "}),f=d.z.div({displayName:"Pill",className:"\n relative rounded-full px-3 py-1\n whitespace-nowrap text-gray-600 text-[min(4vw,.75rem)] leading-[min(5vw,1rem)] sm:text-sm\n ring-1 ring-gray-900/10 hover:ring-gray-900/20\n "}),v=function(){var e=(0,n.useState)(!1),t=e[0],a=e[1];return(0,c.jsx)(o.l,{"data-inspector-line":"15","data-inspector-column":"4","data-inspector-relative-path":"components/show-page/show-page.tsx",disable:!1,active:t,onActiveChange:a,onInspectElement:r.sE,children:(0,c.jsxs)(h,{"data-inspector-line":"21","data-inspector-column":"6","data-inspector-relative-path":"components/show-page/show-page.tsx",children:[(0,c.jsx)(m,{"data-inspector-line":"22","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/show-page.tsx",href:r.Jx}),(0,c.jsx)("div",{"data-inspector-line":"26","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/show-page.tsx",className:" absolute -z-10 top-4 left-0 rotate-45 [aspect-ratio:1] max-w-[70vw] w-[564px] h-auto fill-blue-400/10 stroke-indigo-300/30 ",children:(0,c.jsx)(p,{"data-inspector-line":"33","data-inspector-column":"10","data-inspector-relative-path":"components/show-page/show-page.tsx"})}),(0,c.jsx)("div",{"data-inspector-line":"36","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/show-page.tsx",className:" absolute -z-10 bottom-2 right-6 rotate-[135deg] [aspect-ratio:1] max-w-[70vw] w-[564px] h-auto fill-blue-400/10 stroke-indigo-300/30 ",children:(0,c.jsx)(p,{"data-inspector-line":"43","data-inspector-column":"10","data-inspector-relative-path":"components/show-page/show-page.tsx"})}),(0,c.jsxs)("div",{"data-inspector-line":"46","data-inspector-column":"8","data-inspector-relative-path":"components/show-page/show-page.tsx",className:"mx-auto max-w-2xl",children:[(0,c.jsx)("div",{"data-inspector-line":"47","data-inspector-column":"10","data-inspector-relative-path":"components/show-page/show-page.tsx",className:"mb-8 flex justify-center",children:(0,c.jsxs)(f,{"data-inspector-line":"48","data-inspector-column":"12","data-inspector-relative-path":"components/show-page/show-page.tsx",children:["Read more in ",(0,c.jsx)("a",{"data-inspector-line":"50","data-inspector-column":"14","data-inspector-relative-path":"components/show-page/show-page.tsx",href:"/docs",className:"font-semibold text-blue-600",children:"Documentation →"})]})}),(0,c.jsxs)("div",{"data-inspector-line":"59","data-inspector-column":"10","data-inspector-relative-path":"components/show-page/show-page.tsx",className:"text-center",children:[(0,c.jsx)(u,{"data-inspector-line":"60","data-inspector-column":"12","data-inspector-relative-path":"components/show-page/show-page.tsx",children:"React Dev Inspector"}),(0,c.jsxs)(x,{"data-inspector-line":"64","data-inspector-column":"12","data-inspector-relative-path":"components/show-page/show-page.tsx",children:["Click on a React Component, ",(0,c.jsx)("br",{"data-inspector-line":"65","data-inspector-column":"42","data-inspector-relative-path":"components/show-page/show-page.tsx",className:"block sm:hidden"})," take you to the source code in local IDE!"]}),(0,c.jsxs)("div",{"data-inspector-line":"68","data-inspector-column":"12","data-inspector-relative-path":"components/show-page/show-page.tsx",className:" mt-8 flex flex-col items-center justify-center gap-x-6 ",children:[(0,c.jsx)("div",{"data-inspector-line":"73","data-inspector-column":"14","data-inspector-relative-path":"components/show-page/show-page.tsx",className:"mt-6 mb-2 text-gray-600 font-light text-[min(4.5vw,1rem)] leading-[min(6vw,1.75rem)] sm:text-lg",children:"try shortcuts or click ↓"}),(0,c.jsxs)(g,{"data-inspector-line":"79","data-inspector-column":"14","data-inspector-relative-path":"components/show-page/show-page.tsx",className:"group text-[min(4vw,.875rem)] leading-[min(5vw,1.25rem)] sm:text-base",onClick:function(){return a(!0)},children:[(0,c.jsx)("span",{"data-inspector-line":"83","data-inspector-column":"16","data-inspector-relative-path":"components/show-page/show-page.tsx",children:(0,s.B)().join(" + ")}),(0,c.jsx)(w,{"data-inspector-line":"86","data-inspector-column":"16","data-inspector-relative-path":"components/show-page/show-page.tsx",children:"\uD83C\uDF6D"})]})]})]})]})]})})}},5709:function(e,t,a){var n=Object.assign||function(e){for(var t=1;t=0)&&Object.prototype.hasOwnProperty.call(e,n)&&(a[n]=e[n]);return a}(e,["href","size","direction","octoColor","bannerColor","ariaLabel","className","svgStyle"]),h={position:"absolute",top:0,fill:s},m={},u="",x="",g="";return"left"===o?(u="M250 0L135 115h-15l-12 27L0 250V0z",x="M122 109c15-9 9-19 9-19-3-7-2-11-2-11 1-7-3-2-3-2-4 5-2 11-2 11 3 10-5 15-9 16",g="M135 115s-4 2-5 0l-14-14c-3-2-6-3-8-3 8-11 15-24-2-41-5-5-10-7-16-7-1-2-3-7-12-11 0 0-5 3-7 16-4 2-8 5-12 9s-7 8-9 12c-14 4-17 9-17 9 4 8 9 11 11 11 0 6 2 11 7 16 16 16 30 10 41 2 0 3 1 7 5 11l12 11c1 2-1 6-1 6z",h.left=0,m.WebkitTransformOrigin="120px 144px",m.transformOrigin="120px 144px"):(u="M0 0l115 115h15l12 27 108 108V0z",x="M128 109c-15-9-9-19-9-19 3-7 2-11 2-11-1-7 3-2 3-2 4 5 2 11 2 11-3 10 5 15 9 16",g="M115 115s4 2 5 0l14-14c3-2 6-3 8-3-8-11-15-24 2-41 5-5 10-7 16-7 1-2 3-7 12-11 0 0 5 3 7 16 4 2 8 5 12 9s7 8 9 12c14 3 17 7 17 7-4 8-9 11-11 11 0 6-2 11-7 16-16 16-30 10-41 2 0 3-1 7-5 11l-12 11c-1 1 1 5 1 5z",h.right=0,m.WebkitTransformOrigin="130px 106px",m.transformOrigin="130px 106px"),r.default.createElement("a",n({},d,{href:t,className:"github-corner"+("string"==typeof p?" "+p:""),"aria-label":c}),r.default.createElement("svg",{width:a,height:a,viewBox:"0 0 250 250",style:n({},h,l)},r.default.createElement("path",{className:"octo-banner",d:u,fill:i}),r.default.createElement("path",{className:"octo-arm",d:x,style:m}),r.default.createElement("path",{className:"octo-body",d:g})))}}]),t}(s.Component);d.defaultProps={href:"/",size:80,direction:"right",octoColor:"#fff",bannerColor:"#151513",ariaLabel:"Open GitHub project"},t.Z=d},9148:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return"\n.github-corner:hover .octo-arm {\n animation: octocat-wave 560ms ease-in-out;\n}\n\n@keyframes octocat-wave {\n 0%, 100% {\n transform: rotate(0deg);\n }\n\n 20%, 60% {\n transform: rotate(-25deg);\n }\n\n 40%, 80% {\n transform: rotate(10deg);\n }\n}\n\n@media (max-width: 500px) {\n .github-corner:hover .octo-arm {\n animation: none;\n }\n\n .github-corner .octo-arm {\n animation: octocat-wave 560ms ease-in-out;\n }\n}\n"}}}]); \ No newline at end of file diff --git a/_next/static/chunks/393-7fb9bcc263b76856.js b/_next/static/chunks/393-7fb9bcc263b76856.js deleted file mode 100644 index 782669f4..00000000 --- a/_next/static/chunks/393-7fb9bcc263b76856.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[393],{7426:function(t,e,i){i.d(e,{E:function(){return rz}});var n,r=i(79);let s=(0,r.createContext)({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),o=(0,r.createContext)({}),a=(0,r.createContext)(null),l="undefined"!=typeof document,u=l?r.useLayoutEffect:r.useEffect,h=(0,r.createContext)({strict:!1});function c(t){return"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,"current")}function d(t){return"string"==typeof t||Array.isArray(t)}function p(t){return"object"==typeof t&&"function"==typeof t.start}let m=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],f=["initial",...m];function g(t){return p(t.animate)||f.some(e=>d(t[e]))}function y(t){return Boolean(g(t)||t.variants)}function v(t){return Array.isArray(t)?t.join(" "):t}let x={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},P={};for(let b in x)P[b]={isEnabled:t=>x[b].some(e=>!!t[e])};let A=(0,r.createContext)({}),T=(0,r.createContext)({}),w=Symbol.for("motionComponentSymbol"),S=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function V(t){if("string"!=typeof t||t.includes("-"));else if(S.indexOf(t)>-1||/[A-Z]/.test(t))return!0;return!1}let E={},C=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],M=new Set(C);function D(t,{layout:e,layoutId:i}){return M.has(t)||t.startsWith("origin")||(e||void 0!==i)&&(!!E[t]||"opacity"===t)}let k=t=>Boolean(t&&t.getVelocity),R={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},L=C.length,B=t=>e=>"string"==typeof e&&e.startsWith(t),j=B("--"),F=B("var(--"),O=(t,e)=>e&&"number"==typeof t?e.transform(t):t,I=(t,e,i)=>Math.min(Math.max(i,t),e),U={test:t=>"number"==typeof t,parse:parseFloat,transform:t=>t},N={...U,transform:t=>I(0,1,t)},$={...U,default:1},W=t=>Math.round(1e5*t)/1e5,H=/(-)?([\d]*\.?[\d])+/g,z=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,Y=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function X(t){return"string"==typeof t}let G=t=>({test:e=>X(e)&&e.endsWith(t)&&1===e.split(" ").length,parse:parseFloat,transform:e=>`${e}${t}`}),Z=G("deg"),q=G("%"),K=G("px"),_=G("vh"),J=G("vw"),Q={...q,parse:t=>q.parse(t)/100,transform:t=>q.transform(100*t)},tt={...U,transform:Math.round},te={borderWidth:K,borderTopWidth:K,borderRightWidth:K,borderBottomWidth:K,borderLeftWidth:K,borderRadius:K,radius:K,borderTopLeftRadius:K,borderTopRightRadius:K,borderBottomRightRadius:K,borderBottomLeftRadius:K,width:K,maxWidth:K,height:K,maxHeight:K,size:K,top:K,right:K,bottom:K,left:K,padding:K,paddingTop:K,paddingRight:K,paddingBottom:K,paddingLeft:K,margin:K,marginTop:K,marginRight:K,marginBottom:K,marginLeft:K,rotate:Z,rotateX:Z,rotateY:Z,rotateZ:Z,scale:$,scaleX:$,scaleY:$,scaleZ:$,skew:Z,skewX:Z,skewY:Z,distance:K,translateX:K,translateY:K,translateZ:K,x:K,y:K,z:K,perspective:K,transformPerspective:K,opacity:N,originX:Q,originY:Q,originZ:K,zIndex:tt,fillOpacity:N,strokeOpacity:N,numOctaves:tt};function ti(t,e,i,n){let{style:r,vars:s,transform:o,transformOrigin:a}=t,l=!1,u=!1,h=!0;for(let c in e){let d=e[c];if(j(c)){s[c]=d;continue}let p=te[c],m=O(d,p);if(M.has(c)){if(l=!0,o[c]=m,!h)continue;d!==(p.default||0)&&(h=!1)}else c.startsWith("origin")?(u=!0,a[c]=m):r[c]=m}if(!e.transform&&(l||n?r.transform=function(t,{enableHardwareAcceleration:e=!0,allowTransformNone:i=!0},n,r){let s="";for(let o=0;o({style:{},transform:{},transformOrigin:{},vars:{}});function tr(t,e,i){for(let n in e)k(e[n])||D(n,i)||(t[n]=e[n])}function ts(t,e,i){let n={},s=function(t,e,i){let n=t.style||{},s={};return tr(s,n,t),Object.assign(s,function({transformTemplate:t},e,i){return(0,r.useMemo)(()=>{let n=tn();return ti(n,e,{enableHardwareAcceleration:!i},t),Object.assign({},n.vars,n.style)},[e])}(t,e,i)),t.transformValues?t.transformValues(s):s}(t,e,i);return t.drag&&!1!==t.dragListener&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.touchAction=!0===t.drag?"none":`pan-${"x"===t.drag?"y":"x"}`),void 0===t.tabIndex&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=s,n}let to=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","transformValues","custom","inherit","onLayoutAnimationStart","onLayoutAnimationComplete","onLayoutMeasure","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","ignoreStrict","viewport"]);function ta(t){return t.startsWith("while")||t.startsWith("drag")&&"draggable"!==t||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||to.has(t)}let tl=t=>!ta(t);try{(n=require("@emotion/is-prop-valid").default)&&(tl=t=>t.startsWith("on")?!ta(t):n(t))}catch(tu){}function th(t,e,i){return"string"==typeof t?t:K.transform(e+i*t)}let tc={offset:"stroke-dashoffset",array:"stroke-dasharray"},td={offset:"strokeDashoffset",array:"strokeDasharray"};function tp(t,{attrX:e,attrY:i,attrScale:n,originX:r,originY:s,pathLength:o,pathSpacing:a=1,pathOffset:l=0,...u},h,c,d){if(ti(t,u,h,d),c){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};let{attrs:p,style:m,dimensions:f}=t;p.transform&&(f&&(m.transform=p.transform),delete p.transform),f&&(void 0!==r||void 0!==s||m.transform)&&(m.transformOrigin=function(t,e,i){let n=th(e,t.x,t.width),r=th(i,t.y,t.height);return`${n} ${r}`}(f,void 0!==r?r:.5,void 0!==s?s:.5)),void 0!==e&&(p.x=e),void 0!==i&&(p.y=i),void 0!==n&&(p.scale=n),void 0!==o&&function(t,e,i=1,n=0,r=!0){t.pathLength=1;let s=r?tc:td;t[s.offset]=K.transform(-n);let o=K.transform(e),a=K.transform(i);t[s.array]=`${o} ${a}`}(p,o,a,l,!1)}let tm=()=>({...tn(),attrs:{}}),tf=t=>"string"==typeof t&&"svg"===t.toLowerCase();function tg(t,e,i,n){let s=(0,r.useMemo)(()=>{let i=tm();return tp(i,e,{enableHardwareAcceleration:!1},tf(n),t.transformTemplate),{...i.attrs,style:{...i.style}}},[e]);if(t.style){let o={};tr(o,t.style,t),s.style={...o,...s.style}}return s}let ty=t=>t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();function tv(t,{style:e,vars:i},n,r){for(let s in Object.assign(t.style,e,r&&r.getProjectionStyles(n)),i)t.style.setProperty(s,i[s])}let tx=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function tP(t,e,i,n){for(let r in tv(t,e,void 0,n),e.attrs)t.setAttribute(tx.has(r)?r:ty(r),e.attrs[r])}function tb(t,e){let{style:i}=t,n={};for(let r in i)(k(i[r])||e.style&&k(e.style[r])||D(r,t))&&(n[r]=i[r]);return n}function tA(t,e){let i=tb(t,e);for(let n in t)if(k(t[n])||k(e[n])){let r=-1!==C.indexOf(n)?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n;i[r]=t[n]}return i}function tT(t,e,i,n={},r={}){return"function"==typeof e&&(e=e(void 0!==i?i:t.custom,n,r)),"string"==typeof e&&(e=t.variants&&t.variants[e]),"function"==typeof e&&(e=e(void 0!==i?i:t.custom,n,r)),e}let tw=t=>Array.isArray(t),tS=t=>Boolean(t&&"object"==typeof t&&t.mix&&t.toValue),tV=t=>tw(t)?t[t.length-1]||0:t;function tE(t){let e=k(t)?t.get():t;return tS(e)?e.toValue():e}let tC=t=>(e,i)=>{let n=(0,r.useContext)(o),s=(0,r.useContext)(a),l=()=>(function({scrapeMotionValuesFromProps:t,createRenderState:e,onMount:i},n,r,s){let o={latestValues:function(t,e,i,n){let r={},s=n(t,{});for(let o in s)r[o]=tE(s[o]);let{initial:a,animate:l}=t,u=g(t),h=y(t);e&&h&&!u&&!1!==t.inherit&&(void 0===a&&(a=e.initial),void 0===l&&(l=e.animate));let c=!!i&&!1===i.initial;c=c||!1===a;let d=c?l:a;if(d&&"boolean"!=typeof d&&!p(d)){let m=Array.isArray(d)?d:[d];m.forEach(e=>{let i=tT(t,e);if(!i)return;let{transitionEnd:n,transition:s,...o}=i;for(let a in o){let l=o[a];if(Array.isArray(l)){let u=c?l.length-1:0;l=l[u]}null!==l&&(r[a]=l)}for(let h in n)r[h]=n[h]})}return r}(n,r,s,t),renderState:e()};return i&&(o.mount=t=>i(n,t,o)),o})(t,e,n,s);return i?l():function(t){let e=(0,r.useRef)(null);return null===e.current&&(e.current=t()),e.current}(l)},tM={useVisualState:tC({scrapeMotionValuesFromProps:tA,createRenderState:tm,onMount:(t,e,{renderState:i,latestValues:n})=>{try{i.dimensions="function"==typeof e.getBBox?e.getBBox():e.getBoundingClientRect()}catch(r){i.dimensions={x:0,y:0,width:0,height:0}}tp(i,n,{enableHardwareAcceleration:!1},tf(e.tagName),t.transformTemplate),tP(e,i)}})},tD={useVisualState:tC({scrapeMotionValuesFromProps:tb,createRenderState:tn})};function tk(t,e,i,n={passive:!0}){return t.addEventListener(e,i,n),()=>t.removeEventListener(e,i)}let tR=t=>"mouse"===t.pointerType?"number"!=typeof t.button||t.button<=0:!1!==t.isPrimary;function tL(t,e="page"){return{point:{x:t[e+"X"],y:t[e+"Y"]}}}let tB=t=>e=>tR(e)&&t(e,tL(e));function tj(t,e,i,n){return tk(t,e,tB(i),n)}let tF=(t,e)=>i=>e(t(i)),tO=(...t)=>t.reduce(tF);function tI(t){let e=null;return()=>{let i=()=>{e=null};return null===e&&(e=t,i)}}let tU=tI("dragHorizontal"),tN=tI("dragVertical");function t$(t){let e=!1;if("y"===t)e=tN();else if("x"===t)e=tU();else{let i=tU(),n=tN();i&&n?e=()=>{i(),n()}:(i&&i(),n&&n())}return e}function tW(){let t=t$(!0);return!t||(t(),!1)}class tH{constructor(t){this.isMounted=!1,this.node=t}update(){}}let tz={delta:0,timestamp:0,isProcessing:!1},tY=!0,tX=!1,tG=["read","update","preRender","render","postRender"],tZ=tG.reduce((t,e)=>(t[e]=function(t){let e=[],i=[],n=0,r=!1,s=!1,o=new WeakSet,a={schedule:(t,s=!1,a=!1)=>{let l=a&&r,u=l?e:i;return s&&o.add(t),-1===u.indexOf(t)&&(u.push(t),l&&r&&(n=e.length)),t},cancel:t=>{let e=i.indexOf(t);-1!==e&&i.splice(e,1),o.delete(t)},process:l=>{if(r){s=!0;return}if(r=!0,[e,i]=[i,e],i.length=0,n=e.length)for(let u=0;utX=!0),t),{}),tq=t=>tZ[t].process(tz),tK=t=>{tX=!1,tz.delta=tY?1e3/60:Math.max(Math.min(t-tz.timestamp,40),1),tz.timestamp=t,tz.isProcessing=!0,tG.forEach(tq),tz.isProcessing=!1,tX&&(tY=!1,requestAnimationFrame(tK))},t_=()=>{tX=!0,tY=!0,tz.isProcessing||requestAnimationFrame(tK)},tJ=tG.reduce((t,e)=>{let i=tZ[e];return t[e]=(t,e=!1,n=!1)=>(tX||t_(),i.schedule(t,e,n)),t},{});function tQ(t){tG.forEach(e=>tZ[e].cancel(t))}function t0(t,e){let i="onHover"+(e?"Start":"End"),n=(n,r)=>{if("touch"===n.type||tW())return;let s=t.getProps();t.animationState&&s.whileHover&&t.animationState.setActive("whileHover",e),s[i]&&tJ.update(()=>s[i](n,r))};return tj(t.current,"pointer"+(e?"enter":"leave"),n,{passive:!t.getProps()[i]})}let t1=(t,e)=>!!e&&(t===e||t1(t,e.parentElement)),t5=t=>t;function t2(t,e){if(!e)return;let i=new PointerEvent("pointer"+t);e(i,tL(i))}let t3=new WeakMap,t9=new WeakMap,t4=t=>{let e=t3.get(t.target);e&&e(t)},t6=t=>{t.forEach(t4)},t8={some:0,all:1};function t7(t,e){if(!Array.isArray(e))return!1;let i=e.length;if(i!==t.length)return!1;for(let n=0;ne[i]=t.get()),e}(t),function(t){let e={};return t.values.forEach((t,i)=>e[i]=t.getVelocity()),e}(t))}let ee="data-"+ty("framerAppearId"),ei=t=>1e3*t,en=t=>t/1e3,er={current:!1},es=t=>Array.isArray(t)&&"number"==typeof t[0],eo=([t,e,i,n])=>`cubic-bezier(${t}, ${e}, ${i}, ${n})`,ea={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:eo([0,.65,.55,1]),circOut:eo([.55,0,1,.45]),backIn:eo([.31,.01,.66,-.59]),backOut:eo([.33,1.53,.69,.99])},el={waapi:()=>Object.hasOwnProperty.call(Element.prototype,"animate")},eu={},eh={};for(let ec in el)eh[ec]=()=>(void 0===eu[ec]&&(eu[ec]=el[ec]()),eu[ec]);let ed=(t,e,i)=>(((1-3*i+3*e)*t+(3*i-6*e))*t+3*e)*t;function ep(t,e,i,n){if(t===e&&i===n)return t5;let r=e=>(function(t,e,i,n,r){let s,o;let a=0;do(s=ed(o=e+(i-e)/2,n,r)-t)>0?i=o:e=o;while(Math.abs(s)>1e-7&&++a<12);return o})(e,0,1,t,i);return t=>0===t||1===t?t:ed(r(t),e,n)}let em=ep(.42,0,1,1),ef=ep(0,0,.58,1),eg=ep(.42,0,.58,1),ey=t=>Array.isArray(t)&&"number"!=typeof t[0],ev=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,ex=t=>e=>1-t(1-e),eP=t=>1-Math.sin(Math.acos(t)),eb=ex(eP),eA=ev(eb),eT=ep(.33,1.53,.69,.99),ew=ex(eT),eS=ev(ew),eV=t=>(t*=2)<1?.5*ew(t):.5*(2-Math.pow(2,-10*(t-1))),eE={linear:t5,easeIn:em,easeInOut:eg,easeOut:ef,circIn:eP,circInOut:eA,circOut:eb,backIn:ew,backInOut:eS,backOut:eT,anticipate:eV},eC=t=>{if(Array.isArray(t)){t5(4===t.length,"Cubic bezier arrays must contain four numerical values.");let[e,i,n,r]=t;return ep(e,i,n,r)}return"string"==typeof t?(t5(void 0!==eE[t],`Invalid easing type '${t}'`),eE[t]):t},eM=(t,e)=>i=>Boolean(X(i)&&Y.test(i)&&i.startsWith(t)||e&&Object.prototype.hasOwnProperty.call(i,e)),eD=(t,e,i)=>n=>{if(!X(n))return n;let[r,s,o,a]=n.match(H);return{[t]:parseFloat(r),[e]:parseFloat(s),[i]:parseFloat(o),alpha:void 0!==a?parseFloat(a):1}},ek=t=>I(0,255,t),eR={...U,transform:t=>Math.round(ek(t))},eL={test:eM("rgb","red"),parse:eD("red","green","blue"),transform:({red:t,green:e,blue:i,alpha:n=1})=>"rgba("+eR.transform(t)+", "+eR.transform(e)+", "+eR.transform(i)+", "+W(N.transform(n))+")"},eB={test:eM("#"),parse:function(t){let e="",i="",n="",r="";return t.length>5?(e=t.substring(1,3),i=t.substring(3,5),n=t.substring(5,7),r=t.substring(7,9)):(e=t.substring(1,2),i=t.substring(2,3),n=t.substring(3,4),r=t.substring(4,5),e+=e,i+=i,n+=n,r+=r),{red:parseInt(e,16),green:parseInt(i,16),blue:parseInt(n,16),alpha:r?parseInt(r,16)/255:1}},transform:eL.transform},ej={test:eM("hsl","hue"),parse:eD("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:i,alpha:n=1})=>"hsla("+Math.round(t)+", "+q.transform(W(e))+", "+q.transform(W(i))+", "+W(N.transform(n))+")"},eF={test:t=>eL.test(t)||eB.test(t)||ej.test(t),parse:t=>eL.test(t)?eL.parse(t):ej.test(t)?ej.parse(t):eB.parse(t),transform:t=>X(t)?t:t.hasOwnProperty("red")?eL.transform(t):ej.transform(t)},eO=(t,e,i)=>-i*t+i*e+t;function eI(t,e,i){return(i<0&&(i+=1),i>1&&(i-=1),i<1/6)?t+(e-t)*6*i:i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}let eU=(t,e,i)=>{let n=t*t;return Math.sqrt(Math.max(0,i*(e*e-n)+n))},eN=[eB,eL,ej],e$=t=>eN.find(e=>e.test(t));function eW(t){let e=e$(t);t5(Boolean(e),`'${t}' is not an animatable color. Use the equivalent color code instead.`);let i=e.parse(t);return e===ej&&(i=function({hue:t,saturation:e,lightness:i,alpha:n}){t/=360,i/=100;let r=0,s=0,o=0;if(e/=100){let a=i<.5?i*(1+e):i+e-i*e,l=2*i-a;r=eI(l,a,t+1/3),s=eI(l,a,t),o=eI(l,a,t-1/3)}else r=s=o=i;return{red:Math.round(255*r),green:Math.round(255*s),blue:Math.round(255*o),alpha:n}}(i)),i}let eH=(t,e)=>{let i=eW(t),n=eW(e),r={...i};return t=>(r.red=eU(i.red,n.red,t),r.green=eU(i.green,n.green,t),r.blue=eU(i.blue,n.blue,t),r.alpha=eO(i.alpha,n.alpha,t),eL.transform(r))},ez={regex:/var\s*\(\s*--[\w-]+(\s*,\s*(?:(?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)+)?\s*\)/g,countKey:"Vars",token:"${v}",parse:t5},eY={regex:z,countKey:"Colors",token:"${c}",parse:eF.parse},eX={regex:H,countKey:"Numbers",token:"${n}",parse:U.parse};function eG(t,{regex:e,countKey:i,token:n,parse:r}){let s=t.tokenised.match(e);s&&(t["num"+i]=s.length,t.tokenised=t.tokenised.replace(e,n),t.values.push(...s.map(r)))}function eZ(t){let e=t.toString(),i={value:e,tokenised:e,values:[],numVars:0,numColors:0,numNumbers:0};return i.value.includes("var(--")&&eG(i,ez),eG(i,eY),eG(i,eX),i}function eq(t){return eZ(t).values}function eK(t){let{values:e,numColors:i,numVars:n,tokenised:r}=eZ(t),s=e.length;return t=>{let e=r;for(let o=0;o"number"==typeof t?0:t,eJ={test:function(t){var e,i;return isNaN(t)&&X(t)&&((null===(e=t.match(H))||void 0===e?void 0:e.length)||0)+((null===(i=t.match(z))||void 0===i?void 0:i.length)||0)>0},parse:eq,createTransformer:eK,getAnimatableNone:function(t){let e=eq(t),i=eK(t);return i(e.map(e_))}},eQ=(t,e)=>i=>`${i>0?e:t}`;function e0(t,e){return"number"==typeof t?i=>eO(t,e,i):eF.test(t)?eH(t,e):t.startsWith("var(")?eQ(t,e):e2(t,e)}let e1=(t,e)=>{let i=[...t],n=i.length,r=t.map((t,i)=>e0(t,e[i]));return t=>{for(let e=0;e{let i={...t,...e},n={};for(let r in i)void 0!==t[r]&&void 0!==e[r]&&(n[r]=e0(t[r],e[r]));return t=>{for(let e in n)i[e]=n[e](t);return i}},e2=(t,e)=>{let i=eJ.createTransformer(e),n=eZ(t),r=eZ(e),s=n.numVars===r.numVars&&n.numColors===r.numColors&&n.numNumbers>=r.numNumbers;return s?tO(e1(n.values,r.values),i):(t5(!0,`Complex values '${t}' and '${e}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`),eQ(t,e))},e3=(t,e,i)=>{let n=e-t;return 0===n?1:(i-t)/n},e9=(t,e)=>i=>eO(t,e,i);function e4(t,e,{clamp:i=!0,ease:n,mixer:r}={}){let s=t.length;if(t5(s===e.length,"Both input and output ranges must be the same length"),1===s)return()=>e[0];t[0]>t[s-1]&&(t=[...t].reverse(),e=[...e].reverse());let o=function(t,e,i){let n=[],r=i||function(t){if("number"==typeof t);else if("string"==typeof t)return eF.test(t)?eH:e2;else if(Array.isArray(t))return e1;else if("object"==typeof t)return e5;return e9}(t[0]),s=t.length-1;for(let o=0;o{let i=0;if(a>1)for(;il(I(t[0],t[s-1],e)):l}function e6({duration:t=300,keyframes:e,times:i,ease:n="easeInOut"}){let r=ey(n)?n.map(eC):eC(n),s={done:!1,value:e[0]},o=(i&&i.length===e.length?i:function(t){let e=[0];return function(t,e){let i=t[t.length-1];for(let n=1;n<=e;n++){let r=e3(0,e,n);t.push(eO(i,1,r))}}(e,t.length-1),e}(e)).map(e=>e*t),a=e4(o,e,{ease:Array.isArray(r)?r:e.map(()=>r||eg).splice(0,e.length-1)});return{calculatedDuration:t,next:e=>(s.value=a(e),s.done=e>=t,s)}}function e8(t,e,i){var n,r;let s=Math.max(e-5,0);return n=i-t(s),(r=e-s)?n*(1e3/r):0}function e7(t,e){return t*Math.sqrt(1-e*e)}let it=["duration","bounce"],ie=["stiffness","damping","mass"];function ii(t,e){return e.some(e=>void 0!==t[e])}function ir({keyframes:t,restDelta:e,restSpeed:i,...n}){let r;let s=t[0],o=t[t.length-1],a={done:!1,value:s},{stiffness:l,damping:u,mass:h,velocity:c,duration:d,isResolvedFromDuration:p}=function(t){let e={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...t};if(!ii(t,ie)&&ii(t,it)){let i=function({duration:t=800,bounce:e=.25,velocity:i=0,mass:n=1}){let r,s;t5(t<=ei(10),"Spring duration must be 10 seconds or less");let o=1-e;o=I(.05,1,o),t=I(.01,10,en(t)),o<1?(r=e=>{let n=e*o,r=n*t,s=e7(e,o);return .001-(n-i)/s*Math.exp(-r)},s=e=>{let n=e*o,s=n*t,a=Math.pow(o,2)*Math.pow(e,2)*t,l=e7(Math.pow(e,2),o),u=-r(e)+.001>0?-1:1;return u*((s*i+i-a)*Math.exp(-s))/l}):(r=e=>{let n=Math.exp(-e*t),r=(e-i)*t+1;return -.001+n*r},s=e=>{let n=Math.exp(-e*t),r=(i-e)*(t*t);return n*r});let a=5/t,l=function(t,e,i){let n=i;for(let r=1;r<12;r++)n-=t(n)/e(n);return n}(r,s,a);if(t=ei(t),isNaN(l))return{stiffness:100,damping:10,duration:t};{let u=Math.pow(l,2)*n;return{stiffness:u,damping:2*o*Math.sqrt(n*u),duration:t}}}(t);(e={...e,...i,velocity:0,mass:1}).isResolvedFromDuration=!0}return e}(n),m=c?-en(c):0,f=u/(2*Math.sqrt(l*h)),g=o-s,y=en(Math.sqrt(l/h)),v=5>Math.abs(g);if(i||(i=v?.01:2),e||(e=v?.005:.5),f<1){let x=e7(y,f);r=t=>o-Math.exp(-f*y*t)*((m+f*y*g)/x*Math.sin(x*t)+g*Math.cos(x*t))}else if(1===f)r=t=>o-Math.exp(-y*t)*(g+(m+y*g)*t);else{let P=y*Math.sqrt(f*f-1);r=t=>{let e=Math.min(P*t,300);return o-Math.exp(-f*y*t)*((m+f*y*g)*Math.sinh(e)+P*g*Math.cosh(e))/P}}return{calculatedDuration:p&&d||null,next:t=>{let n=r(t);if(p)a.done=t>=d;else{let s=m;0!==t&&(s=f<1?e8(r,t,n):0);let l=Math.abs(s)<=i,u=Math.abs(o-n)<=e;a.done=l&&u}return a.value=a.done?o:n,a}}}function is({keyframes:t,velocity:e=0,power:i=.8,timeConstant:n=325,bounceDamping:r=10,bounceStiffness:s=500,modifyTarget:o,min:a,max:l,restDelta:u=.5,restSpeed:h}){let c,d;let p=t[0],m={done:!1,value:p},f=t=>void 0!==a&&tl,g=t=>void 0===a?l:void 0===l?a:Math.abs(a-t)-y*Math.exp(-t/n),b=t=>x+P(t),A=t=>{let e=P(t),i=b(t);m.done=Math.abs(e)<=u,m.value=m.done?x:i},T=t=>{f(m.value)&&(c=t,d=ir({keyframes:[m.value,g(m.value)],velocity:e8(b,t,m.value),damping:r,stiffness:s,restDelta:u,restSpeed:h}))};return T(0),{calculatedDuration:null,next:t=>{let e=!1;return(d||void 0!==c||(e=!0,A(t),T(t)),void 0!==c&&t>c)?d.next(t-c):(e||A(t),m)}}}let io=t=>{let e=({timestamp:e})=>t(e);return{start:()=>tJ.update(e,!0),stop:()=>tQ(e),now:()=>tz.isProcessing?tz.timestamp:performance.now()}};function ia(t){let e=0,i=t.next(e);for(;!i.done&&e<2e4;)e+=50,i=t.next(e);return e>=2e4?1/0:e}let il={decay:is,inertia:is,tween:e6,keyframes:e6,spring:ir};function iu({autoplay:t=!0,delay:e=0,driver:i=io,keyframes:n,type:r="keyframes",repeat:s=0,repeatDelay:o=0,repeatType:a="loop",onPlay:l,onStop:u,onComplete:h,onUpdate:c,...d}){let p,m,f,g,y,v=1,x=!1,P=()=>{p&&p(),m=new Promise(t=>{p=t})};P();let b=il[r]||e6;b!==e6&&"number"!=typeof n[0]&&(g=e4([0,100],n,{clamp:!1}),n=[0,100]);let A=b({...d,keyframes:n});"mirror"===a&&(y=b({...d,keyframes:[...n].reverse(),velocity:-(d.velocity||0)}));let T="idle",w=null,S=null,V=null;null===A.calculatedDuration&&s&&(A.calculatedDuration=ia(A));let{calculatedDuration:E}=A,C=1/0,M=1/0;null!==E&&(M=(C=E+o)*(s+1)-o);let D=0,k=t=>{if(null===S)return;v>0&&(S=Math.min(S,t)),v<0&&(S=Math.min(t-M/v,S)),D=null!==w?w:Math.round(t-S)*v;let i=D-e*(v>=0?1:-1),r=v>=0?i<0:i>M;D=Math.max(i,0),"finished"===T&&null===w&&(D=M);let l=D,u=A;if(s){let h=D/C,d=Math.floor(h),p=h%1;!p&&h>=1&&(p=1),1===p&&d--,d=Math.min(d,s+1);let m=Boolean(d%2);m&&("reverse"===a?(p=1-p,o&&(p-=o/C)):"mirror"===a&&(u=y));let f=I(0,1,p);D>M&&(f="reverse"===a&&m?1:0),l=f*C}let x=r?{done:!1,value:n[0]}:u.next(l);g&&(x.value=g(x.value));let{done:P}=x;r||null===E||(P=v>=0?D>=M:D<=0);let b=null===w&&("finished"===T||"running"===T&&P);return c&&c(x.value),b&&B(),x},R=()=>{f&&f.stop(),f=void 0},L=()=>{T="idle",R(),P(),S=V=null},B=()=>{T="finished",h&&h(),R(),P()},j=()=>{if(x)return;f||(f=i(k));let t=f.now();l&&l(),null!==w?S=t-w:S&&"finished"!==T||(S=t),V=S,w=null,T="running",f.start()};t&&j();let F={then:(t,e)=>m.then(t,e),get time(){return en(D)},set time(newTime){D=newTime=ei(newTime),null===w&&f&&0!==v?S=f.now()-newTime/v:w=newTime},get duration(){let O=null===A.calculatedDuration?ia(A):A.calculatedDuration;return en(O)},get speed(){return v},set speed(newSpeed){if(newSpeed===v||!f)return;v=newSpeed,F.time=en(D)},get state(){return T},play:j,pause:()=>{T="paused",w=D},stop:()=>{x=!0,"idle"!==T&&(T="idle",u&&u(),L())},cancel:()=>{null!==V&&k(V),L()},complete:()=>{T="finished"},sample:t=>(S=0,k(t))};return F}let ih=new Set(["opacity","clipPath","filter","transform","backgroundColor"]),ic=(t,e)=>"spring"===e.type||"backgroundColor"===t||!function t(e){return Boolean(!e||"string"==typeof e&&ea[e]||es(e)||Array.isArray(e)&&e.every(t))}(e.ease),id={type:"spring",stiffness:500,damping:25,restSpeed:10},ip=t=>({type:"spring",stiffness:550,damping:0===t?2*Math.sqrt(550):30,restSpeed:10}),im={type:"keyframes",duration:.8},ig={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},iy=(t,{keyframes:e})=>e.length>2?im:M.has(t)?t.startsWith("scale")?ip(e[1]):id:ig,iv=(t,e)=>"zIndex"!==t&&!!("number"==typeof e||Array.isArray(e)||"string"==typeof e&&(eJ.test(e)||"0"===e)&&!e.startsWith("url(")),ix=new Set(["brightness","contrast","saturate","opacity"]);function iP(t){let[e,i]=t.slice(0,-1).split("(");if("drop-shadow"===e)return t;let[n]=i.match(H)||[];if(!n)return t;let r=i.replace(n,""),s=ix.has(e)?1:0;return n!==i&&(s*=100),e+"("+s+r+")"}let ib=/([a-z-]*)\(.*?\)/g,iA={...eJ,getAnimatableNone:t=>{let e=t.match(ib);return e?e.map(iP).join(" "):t}},iT={...te,color:eF,backgroundColor:eF,outlineColor:eF,fill:eF,stroke:eF,borderColor:eF,borderTopColor:eF,borderRightColor:eF,borderBottomColor:eF,borderLeftColor:eF,filter:iA,WebkitFilter:iA},iw=t=>iT[t];function iS(t,e){let i=iw(t);return i!==iA&&(i=eJ),i.getAnimatableNone?i.getAnimatableNone(e):void 0}let iV=t=>/^0[^.\s]+$/.test(t);function iE(t,e){return t[e]||t.default||t}let iC=(t,e,i,n={})=>r=>{let s=iE(n,t)||{},o=s.delay||n.delay||0,{elapsed:a=0}=n;a-=ei(o);let l=function(t,e,i,n){let r,s;let o=iv(e,i);r=Array.isArray(i)?[...i]:[null,i];let a=void 0!==n.from?n.from:t.get(),l=[];for(let u=0;u{e.set(t),s.onUpdate&&s.onUpdate(t)},onComplete:()=>{r(),s.onComplete&&s.onComplete()}};if(!function({when:t,delay:e,delayChildren:i,staggerChildren:n,staggerDirection:r,repeat:s,repeatType:o,repeatDelay:a,from:l,elapsed:u,...h}){return!!Object.keys(h).length}(s)&&(p={...p,...iy(t,p)}),p.duration&&(p.duration=ei(p.duration)),p.repeatDelay&&(p.repeatDelay=ei(p.repeatDelay)),!c||!d||er.current||!1===s.type)return function({keyframes:t,delay:e,onUpdate:i,onComplete:n}){let r=()=>(i&&i(t[t.length-1]),n&&n(),{time:0,speed:1,duration:0,play:t5,pause:t5,stop:t5,then:t=>(t(),Promise.resolve()),cancel:t5,complete:t5});return e?iu({keyframes:[0,1],duration:0,delay:e,onComplete:r}):r()}(er.current?{...p,delay:0}:p);if(e.owner&&e.owner.current instanceof HTMLElement&&!e.owner.getProps().onUpdate){let m=function(t,e,{onUpdate:i,onComplete:n,...r}){let s,o;let a=eh.waapi()&&ih.has(e)&&!r.repeatDelay&&"mirror"!==r.repeatType&&0!==r.damping&&"inertia"!==r.type;if(!a)return!1;let l=!1,u=()=>{o=new Promise(t=>{s=t})};u();let{keyframes:h,duration:c=300,ease:d,times:p}=r;if(ic(e,r)){let m=iu({...r,repeat:0,delay:0}),f={done:!1,value:h[0]},g=[],y=0;for(;!f.done&&y<2e4;)g.push((f=m.sample(y)).value),y+=10;p=void 0,h=g,c=y-10,d="linear"}let v=function(t,e,i,{delay:n=0,duration:r,repeat:s=0,repeatType:o="loop",ease:a,times:l}={}){let u={[e]:i};l&&(u.offset=l);let h=function t(e){if(e)return es(e)?eo(e):Array.isArray(e)?e.map(t):ea[e]}(a);return Array.isArray(h)&&(u.easing=h),t.animate(u,{delay:n,duration:r,easing:Array.isArray(h)?"linear":h,fill:"both",iterations:s+1,direction:"reverse"===o?"alternate":"normal"})}(t.owner.current,e,h,{...r,duration:c,ease:d,times:p}),x=()=>v.cancel(),P=()=>{tJ.update(x),s(),u()};return v.onfinish=()=>{t.set(function(t,{repeat:e,repeatType:i="loop"}){let n=e&&"loop"!==i&&e%2==1?0:t.length-1;return t[n]}(h,r)),n&&n(),P()},{then:(t,e)=>o.then(t,e),get time(){return en(v.currentTime||0)},set time(newTime){v.currentTime=ei(newTime)},get speed(){return v.playbackRate},set speed(newSpeed){v.playbackRate=newSpeed},get duration(){return en(c)},play:()=>{l||(v.play(),tQ(x))},pause:()=>v.pause(),stop:()=>{if(l=!0,"idle"===v.playState)return;let{currentTime:e}=v;if(e){let i=iu({...r,autoplay:!1});t.setWithVelocity(i.sample(e-10).value,i.sample(e).value,10)}P()},complete:()=>v.finish(),cancel:P}}(e,t,p);if(m)return m}return iu(p)};function iM(t){return Boolean(k(t)&&t.add)}let iD=t=>/^\-?\d*\.?\d+$/.test(t);function ik(t,e){-1===t.indexOf(e)&&t.push(e)}function iR(t,e){let i=t.indexOf(e);i>-1&&t.splice(i,1)}class iL{constructor(){this.subscriptions=[]}add(t){return ik(this.subscriptions,t),()=>iR(this.subscriptions,t)}notify(t,e,i){let n=this.subscriptions.length;if(n){if(1===n)this.subscriptions[0](t,e,i);else for(let r=0;r!isNaN(parseFloat(t));class ij{constructor(t,e={}){this.version="10.12.18",this.timeDelta=0,this.lastUpdated=0,this.canTrackVelocity=!1,this.events={},this.updateAndNotify=(t,e=!0)=>{this.prev=this.current,this.current=t;let{delta:i,timestamp:n}=tz;this.lastUpdated!==n&&(this.timeDelta=i,this.lastUpdated=n,tJ.postRender(this.scheduleVelocityCheck)),this.prev!==this.current&&this.events.change&&this.events.change.notify(this.current),this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()),e&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.scheduleVelocityCheck=()=>tJ.postRender(this.velocityCheck),this.velocityCheck=({timestamp:t})=>{t!==this.lastUpdated&&(this.prev=this.current,this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()))},this.hasAnimated=!1,this.prev=this.current=t,this.canTrackVelocity=iB(this.current),this.owner=e.owner}onChange(t){return this.on("change",t)}on(t,e){this.events[t]||(this.events[t]=new iL);let i=this.events[t].add(e);return"change"===t?()=>{i(),tJ.read(()=>{this.events.change.getSize()||this.stop()})}:i}clearListeners(){for(let t in this.events)this.events[t].clear()}attach(t,e){this.passiveEffect=t,this.stopPassiveEffect=e}set(t,e=!0){e&&this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t,e)}setWithVelocity(t,e,i){this.set(e),this.prev=t,this.timeDelta=i}jump(t){this.updateAndNotify(t),this.prev=t,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){var t,e;return this.canTrackVelocity?(t=parseFloat(this.current)-parseFloat(this.prev),(e=this.timeDelta)?t*(1e3/e):0):0}start(t){return this.stop(),new Promise(e=>{this.hasAnimated=!0,this.animation=t(e),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function iF(t,e){return new ij(t,e)}let iO=t=>e=>e.test(t),iI=[U,K,q,Z,J,_,{test:t=>"auto"===t,parse:t=>t}],iU=t=>iI.find(iO(t)),iN=[...iI,eF,eJ],i$=t=>iN.find(iO(t));function iW(t,e,{delay:i=0,transitionOverride:n,type:r}={}){let{transition:s=t.getDefaultTransition(),transitionEnd:o,...a}=t.makeTargetAnimatable(e),l=t.getValue("willChange");n&&(s=n);let u=[],h=r&&t.animationState&&t.animationState.getState()[r];for(let c in a){let d=t.getValue(c),p=a[c];if(!d||void 0===p||h&&function({protectedKeys:t,needsAnimating:e},i){let n=t.hasOwnProperty(i)&&!0!==e[i];return e[i]=!1,n}(h,c))continue;let m={delay:i,elapsed:0,...s};if(window.HandoffAppearAnimations&&!d.hasAnimated){let f=t.getProps()[ee];f&&(m.elapsed=window.HandoffAppearAnimations(f,c,d,tJ))}d.start(iC(c,d,p,t.shouldReduceMotion&&M.has(c)?{type:!1}:m));let g=d.animation;iM(l)&&(l.add(c),g.then(()=>l.remove(c))),u.push(g)}return o&&Promise.all(u).then(()=>{o&&function(t,e){let i=et(t,e),{transitionEnd:n={},transition:r={},...s}=i?t.makeTargetAnimatable(i,!1):{};for(let o in s={...s,...n}){var a;let l=tV(s[o]);a=o,t.hasValue(a)?t.getValue(a).set(l):t.addValue(a,iF(l))}}(t,o)}),u}function iH(t,e,i={}){let n=et(t,e,i.custom),{transition:r=t.getDefaultTransition()||{}}=n||{};i.transitionOverride&&(r=i.transitionOverride);let s=n?()=>Promise.all(iW(t,n,i)):()=>Promise.resolve(),o=t.variantChildren&&t.variantChildren.size?(n=0)=>{let{delayChildren:s=0,staggerChildren:o,staggerDirection:a}=r;return function(t,e,i=0,n=0,r=1,s){let o=[],a=(t.variantChildren.size-1)*n,l=1===r?(t=0)=>t*n:(t=0)=>a-t*n;return Array.from(t.variantChildren).sort(iz).forEach((t,n)=>{t.notify("AnimationStart",e),o.push(iH(t,e,{...s,delay:i+l(n)}).then(()=>t.notify("AnimationComplete",e)))}),Promise.all(o)}(t,e,s+n,o,a,i)}:()=>Promise.resolve(),{when:a}=r;if(!a)return Promise.all([s(),o(i.delay)]);{let[l,u]="beforeChildren"===a?[s,o]:[o,s];return l().then(()=>u())}}function iz(t,e){return t.sortNodePosition(e)}let iY=[...m].reverse(),iX=m.length;function iG(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}let iZ=0,iq=(t,e)=>Math.abs(t-e);class iK{constructor(t,e,{transformPagePoint:i}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;let t=iQ(this.lastMoveEventInfo,this.history),e=null!==this.startEvent,i=function(t,e){let i=iq(t.x,e.x),n=iq(t.y,e.y);return Math.sqrt(i**2+n**2)}(t.offset,{x:0,y:0})>=3;if(!e&&!i)return;let{point:n}=t,{timestamp:r}=tz;this.history.push({...n,timestamp:r});let{onStart:s,onMove:o}=this.handlers;e||(s&&s(this.lastMoveEvent,t),this.startEvent=this.lastMoveEvent),o&&o(this.lastMoveEvent,t)},this.handlePointerMove=(t,e)=>{this.lastMoveEvent=t,this.lastMoveEventInfo=i_(e,this.transformPagePoint),tJ.update(this.updatePoint,!0)},this.handlePointerUp=(t,e)=>{if(this.end(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;let{onEnd:i,onSessionEnd:n}=this.handlers,r=iQ("pointercancel"===t.type?this.lastMoveEventInfo:i_(e,this.transformPagePoint),this.history);this.startEvent&&i&&i(t,r),n&&n(t,r)},!tR(t))return;this.handlers=e,this.transformPagePoint=i;let n=tL(t),r=i_(n,this.transformPagePoint),{point:s}=r,{timestamp:o}=tz;this.history=[{...s,timestamp:o}];let{onSessionStart:a}=e;a&&a(t,iQ(r,this.history)),this.removeListeners=tO(tj(window,"pointermove",this.handlePointerMove),tj(window,"pointerup",this.handlePointerUp),tj(window,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),tQ(this.updatePoint)}}function i_(t,e){return e?{point:e(t.point)}:t}function iJ(t,e){return{x:t.x-e.x,y:t.y-e.y}}function iQ({point:t},e){return{point:t,delta:iJ(t,i0(e)),offset:iJ(t,e[0]),velocity:function(t,e){if(t.length<2)return{x:0,y:0};let i=t.length-1,n=null,r=i0(t);for(;i>=0&&(n=t[i],!(r.timestamp-n.timestamp>ei(.1)));)i--;if(!n)return{x:0,y:0};let s=en(r.timestamp-n.timestamp);if(0===s)return{x:0,y:0};let o={x:(r.x-n.x)/s,y:(r.y-n.y)/s};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}(e,0)}}function i0(t){return t[t.length-1]}function i1(t){return t.max-t.min}function i5(t,e=0,i=.01){return Math.abs(t-e)<=i}function i2(t,e,i,n=.5){t.origin=n,t.originPoint=eO(e.min,e.max,t.origin),t.scale=i1(i)/i1(e),(i5(t.scale,1,1e-4)||isNaN(t.scale))&&(t.scale=1),t.translate=eO(i.min,i.max,t.origin)-t.originPoint,(i5(t.translate)||isNaN(t.translate))&&(t.translate=0)}function i3(t,e,i,n){i2(t.x,e.x,i.x,n?n.originX:void 0),i2(t.y,e.y,i.y,n?n.originY:void 0)}function i9(t,e,i){t.min=i.min+e.min,t.max=t.min+i1(e)}function i4(t,e,i){t.min=e.min-i.min,t.max=t.min+i1(e)}function i6(t,e,i){i4(t.x,e.x,i.x),i4(t.y,e.y,i.y)}function i8(t,e,i){return{min:void 0!==e?t.min+e:void 0,max:void 0!==i?t.max+i-(t.max-t.min):void 0}}function i7(t,e){let i=e.min-t.min,n=e.max-t.max;return e.max-e.min({translate:0,scale:1,origin:0,originPoint:0}),nn=()=>({x:ni(),y:ni()}),nr=()=>({min:0,max:0}),ns=()=>({x:nr(),y:nr()});function no(t){return[t("x"),t("y")]}function na({top:t,left:e,right:i,bottom:n}){return{x:{min:e,max:i},y:{min:t,max:n}}}function nl(t){return void 0===t||1===t}function nu({scale:t,scaleX:e,scaleY:i}){return!nl(t)||!nl(e)||!nl(i)}function nh(t){return nu(t)||nc(t)||t.z||t.rotate||t.rotateX||t.rotateY}function nc(t){var e,i;return(e=t.x)&&"0%"!==e||(i=t.y)&&"0%"!==i}function nd(t,e,i,n,r){return void 0!==r&&(t=n+r*(t-n)),n+i*(t-n)+e}function np(t,e=0,i=1,n,r){t.min=nd(t.min,e,i,n,r),t.max=nd(t.max,e,i,n,r)}function nm(t,{x:e,y:i}){np(t.x,e.translate,e.scale,e.originPoint),np(t.y,i.translate,i.scale,i.originPoint)}function nf(t){return Number.isInteger(t)?t:t>1.0000000000001||t<.999999999999?t:1}function ng(t,e){t.min=t.min+e,t.max=t.max+e}function ny(t,e,[i,n,r]){let s=void 0!==e[r]?e[r]:.5,o=eO(t.min,t.max,s);np(t,e[i],e[n],o,e.scale)}let nv=["x","scaleX","originX"],nx=["y","scaleY","originY"];function nP(t,e){ny(t.x,e,nv),ny(t.y,e,nx)}function nb(t,e){return na(function(t,e){if(!e)return t;let i=e({x:t.left,y:t.top}),n=e({x:t.right,y:t.bottom});return{top:i.y,left:i.x,bottom:n.y,right:n.x}}(t.getBoundingClientRect(),e))}let nA=new WeakMap;class nT{constructor(t){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=ns(),this.visualElement=t}start(t,{snapToCursor:e=!1}={}){let{presenceContext:i}=this.visualElement;if(i&&!1===i.isPresent)return;let n=t=>{this.stopAnimation(),e&&this.snapToCursor(tL(t,"page").point)},r=(t,e)=>{let{drag:i,dragPropagation:n,onDragStart:r}=this.getProps();if(i&&!n&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=t$(i),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),no(t=>{let e=this.getAxisMotionValue(t).get()||0;if(q.test(e)){let{projection:i}=this.visualElement;if(i&&i.layout){let n=i.layout.layoutBox[t];if(n){let r=i1(n);e=r*(parseFloat(e)/100)}}}this.originPoint[t]=e}),r&&tJ.update(()=>r(t,e),!1,!0);let{animationState:s}=this.visualElement;s&&s.setActive("whileDrag",!0)},s=(t,e)=>{let{dragPropagation:i,dragDirectionLock:n,onDirectionLock:r,onDrag:s}=this.getProps();if(!i&&!this.openGlobalLock)return;let{offset:o}=e;if(n&&null===this.currentDirection){this.currentDirection=function(t,e=10){let i=null;return Math.abs(t.y)>e?i="y":Math.abs(t.x)>e&&(i="x"),i}(o),null!==this.currentDirection&&r&&r(this.currentDirection);return}this.updateAxis("x",e.point,o),this.updateAxis("y",e.point,o),this.visualElement.render(),s&&s(t,e)},o=(t,e)=>this.stop(t,e);this.panSession=new iK(t,{onSessionStart:n,onStart:r,onMove:s,onSessionEnd:o},{transformPagePoint:this.visualElement.getTransformPagePoint()})}stop(t,e){let i=this.isDragging;if(this.cancel(),!i)return;let{velocity:n}=e;this.startAnimation(n);let{onDragEnd:r}=this.getProps();r&&tJ.update(()=>r(t,e))}cancel(){this.isDragging=!1;let{projection:t,animationState:e}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;let{dragPropagation:i}=this.getProps();!i&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),e&&e.setActive("whileDrag",!1)}updateAxis(t,e,i){let{drag:n}=this.getProps();if(!i||!nw(t,n,this.currentDirection))return;let r=this.getAxisMotionValue(t),s=this.originPoint[t]+i[t];this.constraints&&this.constraints[t]&&(s=function(t,{min:e,max:i},n){return void 0!==e&&ti&&(t=n?eO(i,t,n.max):Math.min(t,i)),t}(s,this.constraints[t],this.elastic[t])),r.set(s)}resolveConstraints(){let{dragConstraints:t,dragElastic:e}=this.getProps(),{layout:i}=this.visualElement.projection||{},n=this.constraints;t&&c(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&i?this.constraints=function(t,{top:e,left:i,bottom:n,right:r}){return{x:i8(t.x,i,r),y:i8(t.y,e,n)}}(i.layoutBox,t):this.constraints=!1,this.elastic=function(t=.35){return!1===t?t=0:!0===t&&(t=.35),{x:nt(t,"left","right"),y:nt(t,"top","bottom")}}(e),n!==this.constraints&&i&&this.constraints&&!this.hasMutatedConstraints&&no(t=>{this.getAxisMotionValue(t)&&(this.constraints[t]=function(t,e){let i={};return void 0!==e.min&&(i.min=e.min-t.min),void 0!==e.max&&(i.max=e.max-t.min),i}(i.layoutBox[t],this.constraints[t]))})}resolveRefConstraints(){var t;let{dragConstraints:e,onMeasureDragConstraints:i}=this.getProps();if(!e||!c(e))return!1;let n=e.current;t5(null!==n,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");let{projection:r}=this.visualElement;if(!r||!r.layout)return!1;let s=function(t,e,i){let n=nb(t,i),{scroll:r}=e;return r&&(ng(n.x,r.offset.x),ng(n.y,r.offset.y)),n}(n,r.root,this.visualElement.getTransformPagePoint()),o={x:i7((t=r.layout.layoutBox).x,s.x),y:i7(t.y,s.y)};if(i){let a=i(function({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}(o));this.hasMutatedConstraints=!!a,a&&(o=na(a))}return o}startAnimation(t){let{drag:e,dragMomentum:i,dragElastic:n,dragTransition:r,dragSnapToOrigin:s,onDragTransitionEnd:o}=this.getProps(),a=this.constraints||{},l=no(o=>{if(!nw(o,e,this.currentDirection))return;let l=a&&a[o]||{};s&&(l={min:0,max:0});let u={type:"inertia",velocity:i?t[o]:0,bounceStiffness:n?200:1e6,bounceDamping:n?40:1e7,timeConstant:750,restDelta:1,restSpeed:10,...r,...l};return this.startAxisValueAnimation(o,u)});return Promise.all(l).then(o)}startAxisValueAnimation(t,e){let i=this.getAxisMotionValue(t);return i.start(iC(t,i,0,e))}stopAnimation(){no(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){let e="_drag"+t.toUpperCase(),i=this.visualElement.getProps(),n=i[e];return n||this.visualElement.getValue(t,(i.initial?i.initial[t]:void 0)||0)}snapToCursor(t){no(e=>{let{drag:i}=this.getProps();if(!nw(e,i,this.currentDirection))return;let{projection:n}=this.visualElement,r=this.getAxisMotionValue(e);if(n&&n.layout){let{min:s,max:o}=n.layout.layoutBox[e];r.set(t[e]-eO(s,o,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;let{drag:t,dragConstraints:e}=this.getProps(),{projection:i}=this.visualElement;if(!c(e)||!i||!this.constraints)return;this.stopAnimation();let n={x:0,y:0};no(t=>{let e=this.getAxisMotionValue(t);if(e){let i=e.get();n[t]=function(t,e){let i=.5,n=i1(t),r=i1(e);return r>n?i=e3(e.min,e.max-n,t.min):n>r&&(i=e3(t.min,t.max-r,e.min)),I(0,1,i)}({min:i,max:i},this.constraints[t])}});let{transformTemplate:r}=this.visualElement.getProps();this.visualElement.current.style.transform=r?r({},""):"none",i.root&&i.root.updateScroll(),i.updateLayout(),this.resolveConstraints(),no(e=>{if(!nw(e,t,null))return;let i=this.getAxisMotionValue(e),{min:r,max:s}=this.constraints[e];i.set(eO(r,s,n[e]))})}addListeners(){if(!this.visualElement.current)return;nA.set(this.visualElement,this);let t=this.visualElement.current,e=tj(t,"pointerdown",t=>{let{drag:e,dragListener:i=!0}=this.getProps();e&&i&&this.start(t)}),i=()=>{let{dragConstraints:t}=this.getProps();c(t)&&(this.constraints=this.resolveRefConstraints())},{projection:n}=this.visualElement,r=n.addEventListener("measure",i);n&&!n.layout&&(n.root&&n.root.updateScroll(),n.updateLayout()),i();let s=tk(window,"resize",()=>this.scalePositionWithinConstraints()),o=n.addEventListener("didUpdate",({delta:t,hasLayoutChanged:e})=>{this.isDragging&&e&&(no(e=>{let i=this.getAxisMotionValue(e);i&&(this.originPoint[e]+=t[e].translate,i.set(i.get()+t[e].translate))}),this.visualElement.render())});return()=>{s(),e(),r(),o&&o()}}getProps(){let t=this.visualElement.getProps(),{drag:e=!1,dragDirectionLock:i=!1,dragPropagation:n=!1,dragConstraints:r=!1,dragElastic:s=.35,dragMomentum:o=!0}=t;return{...t,drag:e,dragDirectionLock:i,dragPropagation:n,dragConstraints:r,dragElastic:s,dragMomentum:o}}}function nw(t,e,i){return(!0===e||e===t)&&(null===i||i===t)}let nS=t=>(e,i)=>{t&&tJ.update(()=>t(e,i))},nV={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function nE(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}let nC={correct:(t,e)=>{if(!e.target)return t;if("string"==typeof t){if(!K.test(t))return t;t=parseFloat(t)}let i=nE(t,e.target.x),n=nE(t,e.target.y);return`${i}% ${n}%`}};class nM extends r.Component{componentDidMount(){let{visualElement:t,layoutGroup:e,switchLayoutGroup:i,layoutId:n}=this.props,{projection:r}=t;Object.assign(E,nk),r&&(e.group&&e.group.add(r),i&&i.register&&n&&i.register(r),r.root.didUpdate(),r.addEventListener("animationComplete",()=>{this.safeToRemove()}),r.setOptions({...r.options,onExitComplete:()=>this.safeToRemove()})),nV.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){let{layoutDependency:e,visualElement:i,drag:n,isPresent:r}=this.props,s=i.projection;return s&&(s.isPresent=r,n||t.layoutDependency!==e||void 0===e?s.willUpdate():this.safeToRemove(),t.isPresent===r||(r?s.promote():s.relegate()||tJ.postRender(()=>{let t=s.getStack();t&&t.members.length||this.safeToRemove()}))),null}componentDidUpdate(){let{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),queueMicrotask(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){let{visualElement:t,layoutGroup:e,switchLayoutGroup:i}=this.props,{projection:n}=t;n&&(n.scheduleCheckAfterUnmount(),e&&e.group&&e.group.remove(n),i&&i.deregister&&i.deregister(n))}safeToRemove(){let{safeToRemove:t}=this.props;t&&t()}render(){return null}}function nD(t){let[e,i]=function(){let t=(0,r.useContext)(a);if(null===t)return[!0,null];let{isPresent:e,onExitComplete:i,register:n}=t,s=(0,r.useId)();(0,r.useEffect)(()=>n(s),[]);let o=()=>i&&i(s);return!e&&i?[!1,o]:[!0]}(),n=(0,r.useContext)(A);return r.createElement(nM,{...t,layoutGroup:n,switchLayoutGroup:(0,r.useContext)(T),isPresent:e,safeToRemove:i})}let nk={borderRadius:{...nC,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:nC,borderTopRightRadius:nC,borderBottomLeftRadius:nC,borderBottomRightRadius:nC,boxShadow:{correct:(t,{treeScale:e,projectionDelta:i})=>{let n=eJ.parse(t);if(n.length>5)return t;let r=eJ.createTransformer(t),s="number"!=typeof n[0]?1:0,o=i.x.scale*e.x,a=i.y.scale*e.y;n[0+s]/=o,n[1+s]/=a;let l=eO(o,a,.5);return"number"==typeof n[2+s]&&(n[2+s]/=l),"number"==typeof n[3+s]&&(n[3+s]/=l),r(n)}}},nR=["TopLeft","TopRight","BottomLeft","BottomRight"],nL=nR.length,nB=t=>"string"==typeof t?parseFloat(t):t,nj=t=>"number"==typeof t||K.test(t);function nF(t,e){return void 0!==t[e]?t[e]:t.borderRadius}let nO=nU(0,.5,eb),nI=nU(.5,.95,t5);function nU(t,e,i){return n=>ne?1:i(e3(t,e,n))}function nN(t,e){t.min=e.min,t.max=e.max}function n$(t,e){nN(t.x,e.x),nN(t.y,e.y)}function nW(t,e,i,n,r){return t-=e,t=n+1/i*(t-n),void 0!==r&&(t=n+1/r*(t-n)),t}function nH(t,e,[i,n,r],s,o){!function(t,e=0,i=1,n=.5,r,s=t,o=t){if(q.test(e)){e=parseFloat(e);let a=eO(o.min,o.max,e/100);e=a-o.min}if("number"!=typeof e)return;let l=eO(s.min,s.max,n);t===s&&(l-=e),t.min=nW(t.min,e,i,l,r),t.max=nW(t.max,e,i,l,r)}(t,e[i],e[n],e[r],e.scale,s,o)}let nz=["x","scaleX","originX"],nY=["y","scaleY","originY"];function nX(t,e,i,n){nH(t.x,e,nz,i?i.x:void 0,n?n.x:void 0),nH(t.y,e,nY,i?i.y:void 0,n?n.y:void 0)}function nG(t){return 0===t.translate&&1===t.scale}function nZ(t){return nG(t.x)&&nG(t.y)}function nq(t,e){return t.x.min===e.x.min&&t.x.max===e.x.max&&t.y.min===e.y.min&&t.y.max===e.y.max}function nK(t){return i1(t.x)/i1(t.y)}class n_{constructor(){this.members=[]}add(t){ik(this.members,t),t.scheduleRender()}remove(t){if(iR(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){let e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(t){let e;let i=this.members.findIndex(e=>t===e);if(0===i)return!1;for(let n=i;n>=0;n--){let r=this.members[n];if(!1!==r.isPresent){e=r;break}}return!!e&&(this.promote(e),!0)}promote(t,e){let i=this.lead;if(t!==i&&(this.prevLead=i,this.lead=t,t.show(),i)){i.instance&&i.scheduleRender(),t.scheduleRender(),t.resumeFrom=i,e&&(t.resumeFrom.preserveOpacity=!0),i.snapshot&&(t.snapshot=i.snapshot,t.snapshot.latestValues=i.animationValues||i.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);let{crossfade:n}=t.options;!1===n&&i.hide()}}exitAnimationComplete(){this.members.forEach(t=>{let{options:e,resumingFrom:i}=t;e.onExitComplete&&e.onExitComplete(),i&&i.options.onExitComplete&&i.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function nJ(t,e,i){let n="",r=t.x.translate/e.x,s=t.y.translate/e.y;if((r||s)&&(n=`translate3d(${r}px, ${s}px, 0) `),(1!==e.x||1!==e.y)&&(n+=`scale(${1/e.x}, ${1/e.y}) `),i){let{rotate:o,rotateX:a,rotateY:l}=i;o&&(n+=`rotate(${o}deg) `),a&&(n+=`rotateX(${a}deg) `),l&&(n+=`rotateY(${l}deg) `)}let u=t.x.scale*e.x,h=t.y.scale*e.y;return(1!==u||1!==h)&&(n+=`scale(${u}, ${h})`),n||"none"}let nQ=(t,e)=>t.depth-e.depth;class n0{constructor(){this.children=[],this.isDirty=!1}add(t){ik(this.children,t),this.isDirty=!0}remove(t){iR(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(nQ),this.isDirty=!1,this.children.forEach(t)}}let n1=["","X","Y","Z"],n5=0,n2={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function n3({attachResizeListener:t,defaultParent:e,measureScroll:i,checkIsScrollRoot:n,resetTransform:r}){return class{constructor(t={},i=null==e?void 0:e()){this.id=n5++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{n2.totalNodes=n2.resolvedTargetDeltas=n2.recalculatedProjection=0,this.nodes.forEach(n6),this.nodes.forEach(rr),this.nodes.forEach(rs),this.nodes.forEach(n8),window.MotionDebug&&window.MotionDebug.record(n2)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=t,this.root=i?i.root||i:this,this.path=i?[...i.path,i]:[],this.parent=i,this.depth=i?i.depth+1:0;for(let n=0;nthis.root.updateBlockedByResize=!1;t(e,()=>{this.root.updateBlockedByResize=!0,o&&o(),o=function(t,e){let i=performance.now(),n=({timestamp:r})=>{let s=r-i;s>=e&&(tQ(n),t(s-e))};return tJ.read(n,!0),()=>tQ(n)}(a,250),nV.hasAnimatedSinceResize&&(nV.hasAnimatedSinceResize=!1,this.nodes.forEach(rn))})}n&&this.root.registerSharedNode(n,this),!1!==this.options.animate&&s&&(n||r)&&this.addEventListener("didUpdate",({delta:t,hasLayoutChanged:e,hasRelativeTargetChanged:i,layout:n})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}let r=this.options.transition||s.getDefaultTransition()||rc,{onLayoutAnimationStart:o,onLayoutAnimationComplete:a}=s.getProps(),l=!this.targetLayout||!nq(this.targetLayout,n)||i,u=!e&&i;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||u||e&&(l||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(t,u);let h={...iE(r,"layout"),onPlay:o,onComplete:a};(s.shouldReduceMotion||this.options.layoutRoot)&&(h.delay=0,h.type=!1),this.startAnimation(h)}else e||rn(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=n})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);let t=this.getStack();t&&t.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,tQ(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){!this.isUpdateBlocked()&&(this.isUpdating=!0,this.nodes&&this.nodes.forEach(ro),this.animationId++)}getTransformTemplate(){let{visualElement:t}=this.options;return t&&t.getProps().transformTemplate}willUpdate(t=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(this.root.isUpdating||this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let e=0;ethis.update()))}clearAllSnapshots(){this.nodes.forEach(n7),this.sharedNodes.forEach(ra)}scheduleUpdateProjection(){tJ.preRender(this.updateProjection,!1,!0)}scheduleCheckAfterUnmount(){tJ.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let t=0;t{var n,l;let u=e/1e3;rl(o.x,t.x,u),rl(o.y,t.y,u),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(i6(a,this.layout.layoutBox,this.relativeParent.layout.layoutBox),n=this.relativeTarget,l=this.relativeTargetOrigin,ru(n.x,l.x,a.x,u),ru(n.y,l.y,a.y,u),i&&nq(this.relativeTarget,i)&&(this.isProjectionDirty=!1),i||(i=ns()),n$(i,this.relativeTarget)),h&&(this.animationValues=s,function(t,e,i,n,r,s){r?(t.opacity=eO(0,void 0!==i.opacity?i.opacity:1,nO(n)),t.opacityExit=eO(void 0!==e.opacity?e.opacity:1,0,nI(n))):s&&(t.opacity=eO(void 0!==e.opacity?e.opacity:1,void 0!==i.opacity?i.opacity:1,n));for(let o=0;o{nV.hasAnimatedSinceResize=!0,this.currentAnimation=function(t,e,i){let n=k(t)?t:iF(t);return n.start(iC("",n,1e3,i)),n.animation}(0,0,{...t,onUpdate:e=>{this.mixTargetDelta(e),t.onUpdate&&t.onUpdate(e)},onComplete:()=>{t.onComplete&&t.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);let t=this.getStack();t&&t.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){let t=this.getLead(),{targetWithTransforms:e,target:i,layout:n,latestValues:r}=t;if(e&&i&&n){if(this!==t&&this.layout&&n&&rp(this.options.animationType,this.layout.layoutBox,n.layoutBox)){i=this.target||ns();let s=i1(this.layout.layoutBox.x);i.x.min=t.target.x.min,i.x.max=i.x.min+s;let o=i1(this.layout.layoutBox.y);i.y.min=t.target.y.min,i.y.max=i.y.min+o}n$(e,i),nP(e,r),i3(this.projectionDeltaWithTransform,this.layoutCorrected,e,r)}}registerSharedNode(t,e){this.sharedNodes.has(t)||this.sharedNodes.set(t,new n_);let i=this.sharedNodes.get(t);i.add(e);let n=e.options.initialPromotionConfig;e.promote({transition:n?n.transition:void 0,preserveFollowOpacity:n&&n.shouldPreserveFollowOpacity?n.shouldPreserveFollowOpacity(e):void 0})}isLead(){let t=this.getStack();return!t||t.lead===this}getLead(){var t;let{layoutId:e}=this.options;return e&&(null===(t=this.getStack())||void 0===t?void 0:t.lead)||this}getPrevLead(){var t;let{layoutId:e}=this.options;return e?null===(t=this.getStack())||void 0===t?void 0:t.prevLead:void 0}getStack(){let{layoutId:t}=this.options;if(t)return this.root.sharedNodes.get(t)}promote({needsReset:t,transition:e,preserveFollowOpacity:i}={}){let n=this.getStack();n&&n.promote(this,i),t&&(this.projectionDelta=void 0,this.needsReset=!0),e&&this.setOptions({transition:e})}relegate(){let t=this.getStack();return!!t&&t.relegate(this)}resetRotation(){let{visualElement:t}=this.options;if(!t)return;let e=!1,{latestValues:i}=t;if((i.rotate||i.rotateX||i.rotateY||i.rotateZ)&&(e=!0),!e)return;let n={};for(let r=0;r{var e;return null===(e=t.currentAnimation)||void 0===e?void 0:e.stop()}),this.root.nodes.forEach(rt),this.root.sharedNodes.clear()}}}function n9(t){t.updateLayout()}function n4(t){var e;let i=(null===(e=t.resumeFrom)||void 0===e?void 0:e.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&i&&t.hasListeners("didUpdate")){let{layoutBox:n,measuredBox:r}=t.layout,{animationType:s}=t.options,o=i.source!==t.layout.source;"size"===s?no(t=>{let e=o?i.measuredBox[t]:i.layoutBox[t],r=i1(e);e.min=n[t].min,e.max=e.min+r}):rp(s,i.layoutBox,n)&&no(e=>{let r=o?i.measuredBox[e]:i.layoutBox[e],s=i1(n[e]);r.max=r.min+s,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[e].max=t.relativeTarget[e].min+s)});let a=nn();i3(a,n,i.layoutBox);let l=nn();o?i3(l,t.applyTransform(r,!0),i.measuredBox):i3(l,n,i.layoutBox);let u=!nZ(a),h=!1;if(!t.resumeFrom){let c=t.getClosestProjectingParent();if(c&&!c.resumeFrom){let{snapshot:d,layout:p}=c;if(d&&p){let m=ns();i6(m,i.layoutBox,d.layoutBox);let f=ns();i6(f,n,p.layoutBox),nq(m,f)||(h=!0),c.options.layoutRoot&&(t.relativeTarget=f,t.relativeTargetOrigin=m,t.relativeParent=c)}}}t.notifyListeners("didUpdate",{layout:n,snapshot:i,delta:l,layoutDelta:a,hasLayoutChanged:u,hasRelativeTargetChanged:h})}else if(t.isLead()){let{onExitComplete:g}=t.options;g&&g()}t.options.transition=void 0}function n6(t){n2.totalNodes++,t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=Boolean(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function n8(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function n7(t){t.clearSnapshot()}function rt(t){t.clearMeasurements()}function re(t){t.isLayoutDirty=!1}function ri(t){let{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function rn(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function rr(t){t.resolveTargetDelta()}function rs(t){t.calcProjection()}function ro(t){t.resetRotation()}function ra(t){t.removeLeadSnapshot()}function rl(t,e,i){t.translate=eO(e.translate,0,i),t.scale=eO(e.scale,1,i),t.origin=e.origin,t.originPoint=e.originPoint}function ru(t,e,i,n){t.min=eO(e.min,i.min,n),t.max=eO(e.max,i.max,n)}function rh(t){return t.animationValues&&void 0!==t.animationValues.opacityExit}let rc={duration:.45,ease:[.4,0,.1,1]};function rd(t){t.min=Math.round(t.min),t.max=Math.round(t.max)}function rp(t,e,i){return"position"===t||"preserve-aspect"===t&&!i5(nK(e),nK(i),.2)}let rm=n3({attachResizeListener:(t,e)=>tk(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),rf={current:void 0},rg=n3({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!rf.current){let t=new rm({});t.mount(window),t.setOptions({layoutScroll:!0}),rf.current=t}return rf.current},resetTransform:(t,e)=>{t.style.transform=void 0!==e?e:"none"},checkIsScrollRoot:t=>Boolean("fixed"===window.getComputedStyle(t).position)}),ry=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;function rv(t,e,i=1){t5(i<=4,`Max CSS variable fallback depth detected in property "${t}". This may indicate a circular fallback dependency.`);let[n,r]=function(t){let e=ry.exec(t);if(!e)return[,];let[,i,n]=e;return[i,n]}(t);if(!n)return;let s=window.getComputedStyle(e).getPropertyValue(n);return s?s.trim():F(r)?rv(r,e,i+1):r}let rx=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),rP=t=>rx.has(t),rb=t=>Object.keys(t).some(rP),rA=t=>t===U||t===K,rT=(t,e)=>parseFloat(t.split(", ")[e]),rw=(t,e)=>(i,{transform:n})=>{if("none"===n||!n)return 0;let r=n.match(/^matrix3d\((.+)\)$/);if(r)return rT(r[1],e);{let s=n.match(/^matrix\((.+)\)$/);return s?rT(s[1],t):0}},rS=new Set(["x","y","z"]),rV=C.filter(t=>!rS.has(t)),rE={width:({x:t},{paddingLeft:e="0",paddingRight:i="0"})=>t.max-t.min-parseFloat(e)-parseFloat(i),height:({y:t},{paddingTop:e="0",paddingBottom:i="0"})=>t.max-t.min-parseFloat(e)-parseFloat(i),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:rw(4,13),y:rw(5,14)},rC=(t,e,i)=>{let n=e.measureViewportBox(),r=e.current,s=getComputedStyle(r),{display:o}=s,a={};"none"===o&&e.setStaticValue("display",t.display||"block"),i.forEach(t=>{a[t]=rE[t](n,s)}),e.render();let l=e.measureViewportBox();return i.forEach(i=>{let n=e.getValue(i);n&&n.jump(a[i]),t[i]=rE[i](l,s)}),t},rM=(t,e,i={},n={})=>{e={...e},n={...n};let r=Object.keys(e).filter(rP),s=[],o=!1,a=[];if(r.forEach(r=>{let l;let u=t.getValue(r);if(!t.hasValue(r))return;let h=i[r],c=iU(h),d=e[r];if(tw(d)){let p=d.length,m=null===d[0]?1:0;c=iU(h=d[m]);for(let f=m;f{let n=t.getValue(i);void 0!==n&&(e.push([i,n.get()]),n.set(i.startsWith("scale")?1:0))}),e.length&&t.render(),e}(t),o=!0),a.push(r),n[r]=void 0!==n[r]?n[r]:e[r],u.jump(d))}}),!a.length)return{target:e,transitionEnd:n};{let u=a.indexOf("height")>=0?window.pageYOffset:null,h=rC(e,t,a);return s.length&&s.forEach(([e,i])=>{t.getValue(e).set(i)}),t.render(),l&&null!==u&&window.scrollTo({top:u}),{target:h,transitionEnd:n}}},rD=(t,e,i,n)=>{var r,s;let o=function(t,{...e},i){let n=t.current;if(!(n instanceof Element))return{target:e,transitionEnd:i};for(let r in i&&(i={...i}),t.values.forEach(t=>{let e=t.get();if(!F(e))return;let i=rv(e,n);i&&t.set(i)}),e){let s=e[r];if(!F(s))continue;let o=rv(s,n);o&&(e[r]=o,i||(i={}),void 0===i[r]&&(i[r]=s))}return{target:e,transitionEnd:i}}(t,e,n);return e=o.target,n=o.transitionEnd,r=e,s=n,rb(r)?rM(t,r,i,s):{target:r,transitionEnd:s}},rk={current:null},rR={current:!1},rL=new WeakMap,rB=Object.keys(P),rj=rB.length,rF=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],rO=f.length;class rI{constructor({parent:t,props:e,presenceContext:i,reducedMotionConfig:n,visualState:r},s={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>tJ.render(this.render,!1,!0);let{latestValues:o,renderState:a}=r;this.latestValues=o,this.baseTarget={...o},this.initialValues=e.initial?{...o}:{},this.renderState=a,this.parent=t,this.props=e,this.presenceContext=i,this.depth=t?t.depth+1:0,this.reducedMotionConfig=n,this.options=s,this.isControllingVariants=g(e),this.isVariantNode=y(e),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(t&&t.current);let{willChange:l,...u}=this.scrapeMotionValuesFromProps(e,{});for(let h in u){let c=u[h];void 0!==o[h]&&k(c)&&(c.set(o[h],!1),iM(l)&&l.add(h))}}scrapeMotionValuesFromProps(t,e){return{}}mount(t){this.current=t,rL.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((t,e)=>this.bindToMotionValue(e,t)),rR.current||function(){if(rR.current=!0,l){if(window.matchMedia){let t=window.matchMedia("(prefers-reduced-motion)"),e=()=>rk.current=t.matches;t.addListener(e),e()}else rk.current=!1}}(),this.shouldReduceMotion="never"!==this.reducedMotionConfig&&("always"===this.reducedMotionConfig||rk.current),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){for(let t in rL.delete(this.current),this.projection&&this.projection.unmount(),tQ(this.notifyUpdate),tQ(this.render),this.valueSubscriptions.forEach(t=>t()),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this),this.events)this.events[t].clear();for(let e in this.features)this.features[e].unmount();this.current=null}bindToMotionValue(t,e){let i=M.has(t),n=e.on("change",e=>{this.latestValues[t]=e,this.props.onUpdate&&tJ.update(this.notifyUpdate,!1,!0),i&&this.projection&&(this.projection.isTransformDirty=!0)}),r=e.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(t,()=>{n(),r()})}sortNodePosition(t){return this.current&&this.sortInstanceNodePosition&&this.type===t.type?this.sortInstanceNodePosition(this.current,t.current):0}loadFeatures({children:t,...e},i,n,r){let s,o;for(let a=0;athis.scheduleRender(),animationType:"string"==typeof f?f:"both",initialPromotionConfig:r,layoutScroll:v,layoutRoot:x})}return o}updateFeatures(){for(let t in this.features){let e=this.features[t];e.isMounted?e.update():(e.mount(),e.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):ns()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,e){this.latestValues[t]=e}makeTargetAnimatable(t,e=!0){return this.makeTargetAnimatableFromInstance(t,this.props,e)}update(t,e){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=e;for(let i=0;ie.variantChildren.delete(t)}addValue(t,e){e!==this.values.get(t)&&(this.removeValue(t),this.bindToMotionValue(t,e)),this.values.set(t,e),this.latestValues[t]=e.get()}removeValue(t){this.values.delete(t);let e=this.valueSubscriptions.get(t);e&&(e(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,e){if(this.props.values&&this.props.values[t])return this.props.values[t];let i=this.values.get(t);return void 0===i&&void 0!==e&&(i=iF(e,{owner:this}),this.addValue(t,i)),i}readValue(t){return void 0===this.latestValues[t]&&this.current?this.readValueFromInstance(this.current,t,this.options):this.latestValues[t]}setBaseTarget(t,e){this.baseTarget[t]=e}getBaseTarget(t){var e;let{initial:i}=this.props,n="string"==typeof i||"object"==typeof i?null===(e=tT(this.props,i))||void 0===e?void 0:e[t]:void 0;if(i&&void 0!==n)return n;let r=this.getBaseTargetFromProps(this.props,t);return void 0===r||k(r)?void 0!==this.initialValues[t]&&void 0===n?void 0:this.baseTarget[t]:r}on(t,e){return this.events[t]||(this.events[t]=new iL),this.events[t].add(e)}notify(t,...e){this.events[t]&&this.events[t].notify(...e)}}class rU extends rI{sortInstanceNodePosition(t,e){return 2&t.compareDocumentPosition(e)?1:-1}getBaseTargetFromProps(t,e){return t.style?t.style[e]:void 0}removeValueFromRenderState(t,{vars:e,style:i}){delete e[t],delete i[t]}makeTargetAnimatableFromInstance({transition:t,transitionEnd:e,...i},{transformValues:n},r){let s=function(t,e,i){let n={};for(let r in t){let s=function(t,e){if(!e)return;let i=e[t]||e.default||e;return i.from}(r,e);if(void 0!==s)n[r]=s;else{let o=i.getValue(r);o&&(n[r]=o.get())}}return n}(i,t||{},this);if(n&&(e&&(e=n(e)),i&&(i=n(i)),s&&(s=n(s))),r){!function(t,e,i){var n,r;let s=Object.keys(e).filter(e=>!t.hasValue(e)),o=s.length;if(o)for(let a=0;a{this.current&&(this.current.textContent=`${t}`)}))}renderInstance(t,e,i,n){tv(t,e,i,n)}}class r$ extends rU{constructor(){super(...arguments),this.isSVGTag=!1}getBaseTargetFromProps(t,e){return t[e]}readValueFromInstance(t,e){if(M.has(e)){let i=iw(e);return i&&i.default||0}return e=tx.has(e)?e:ty(e),t.getAttribute(e)}measureInstanceViewportBox(){return ns()}scrapeMotionValuesFromProps(t,e){return tA(t,e)}build(t,e,i,n){tp(t,e,i,this.isSVGTag,n.transformTemplate)}renderInstance(t,e,i,n){tP(t,e,i,n)}mount(t){this.isSVGTag=tf(t.tagName),super.mount(t)}}let rW=(t,e)=>V(t)?new r$(e,{enableHardwareAcceleration:!1}):new rN(e,{enableHardwareAcceleration:!0}),rH={animation:{Feature:class extends tH{constructor(t){super(t),t.animationState||(t.animationState=function(t){let e=e=>Promise.all(e.map(({animation:e,options:i})=>(function(t,e,i={}){let n;if(t.notify("AnimationStart",e),Array.isArray(e)){let r=e.map(e=>iH(t,e,i));n=Promise.all(r)}else if("string"==typeof e)n=iH(t,e,i);else{let s="function"==typeof e?et(t,e,i.custom):e;n=Promise.all(iW(t,s,i))}return n.then(()=>t.notify("AnimationComplete",e))})(t,e,i))),i={animate:iG(!0),whileInView:iG(),whileHover:iG(),whileTap:iG(),whileDrag:iG(),whileFocus:iG(),exit:iG()},n=!0,r=(e,i)=>{let n=et(t,i);if(n){let{transition:r,transitionEnd:s,...o}=n;e={...e,...o,...s}}return e};function s(s,o){let a=t.getProps(),l=t.getVariantContext(!0)||{},u=[],h=new Set,c={},m=1/0;for(let f=0;fm&&P,S=Array.isArray(x)?x:[x],V=S.reduce(r,{});!1===b&&(V={});let{prevResolvedValues:E={}}=v,C={...E,...V},M=t=>{w=!0,h.delete(t),v.needsAnimating[t]=!0};for(let D in C){let k=V[D],R=E[D];c.hasOwnProperty(D)||(k!==R?tw(k)&&tw(R)?!t7(k,R)||T?M(D):v.protectedKeys[D]=!0:void 0!==k?M(D):h.add(D):void 0!==k&&h.has(D)?M(D):v.protectedKeys[D]=!0)}v.prevProp=x,v.prevResolvedValues=V,v.isActive&&(c={...c,...V}),n&&t.blockInitialAnimation&&(w=!1),w&&!A&&u.push(...S.map(t=>({animation:t,options:{type:y,...s}})))}if(h.size){let L={};h.forEach(e=>{let i=t.getBaseTarget(e);void 0!==i&&(L[e]=i)}),u.push({animation:L})}let B=Boolean(u.length);return n&&!1===a.initial&&!t.manuallyAnimateOnMount&&(B=!1),n=!1,B?e(u):Promise.resolve()}return{animateChanges:s,setActive:function(e,n,r){var o;if(i[e].isActive===n)return Promise.resolve();null===(o=t.variantChildren)||void 0===o||o.forEach(t=>{var i;return null===(i=t.animationState)||void 0===i?void 0:i.setActive(e,n)}),i[e].isActive=n;let a=s(r,e);for(let l in i)i[l].protectedKeys={};return a},setAnimateFunction:function(i){e=i(t)},getState:()=>i}}(t))}updateAnimationControlsSubscription(){let{animate:t}=this.node.getProps();this.unmount(),p(t)&&(this.unmount=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){let{animate:t}=this.node.getProps(),{animate:e}=this.node.prevProps||{};t!==e&&this.updateAnimationControlsSubscription()}unmount(){}}},exit:{Feature:class extends tH{constructor(){super(...arguments),this.id=iZ++}update(){if(!this.node.presenceContext)return;let{isPresent:t,onExitComplete:e,custom:i}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===n)return;let r=this.node.animationState.setActive("exit",!t,{custom:null!=i?i:this.node.getProps().custom});e&&!t&&r.then(()=>e(this.id))}mount(){let{register:t}=this.node.presenceContext||{};t&&(this.unmount=t(this.id))}unmount(){}}},inView:{Feature:class extends tH{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();let{viewport:t={}}=this.node.getProps(),{root:e,margin:i,amount:n="some",once:r}=t,s={root:e?e.current:void 0,rootMargin:i,threshold:"number"==typeof n?n:t8[n]},o=t=>{let{isIntersecting:e}=t;if(this.isInView===e||(this.isInView=e,r&&!e&&this.hasEnteredView))return;e&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",e);let{onViewportEnter:i,onViewportLeave:n}=this.node.getProps(),s=e?i:n;s&&s(t)};return function(t,e,i){let n=function({root:t,...e}){let i=t||document;t9.has(i)||t9.set(i,{});let n=t9.get(i),r=JSON.stringify(e);return n[r]||(n[r]=new IntersectionObserver(t6,{root:t,...e})),n[r]}(e);return t3.set(t,i),n.observe(t),()=>{t3.delete(t),n.unobserve(t)}}(this.node.current,s,o)}mount(){this.startObserver()}update(){if("undefined"==typeof IntersectionObserver)return;let{props:t,prevProps:e}=this.node,i=["amount","margin","root"].some(function({viewport:t={}},{viewport:e={}}={}){return i=>t[i]!==e[i]}(t,e));i&&this.startObserver()}unmount(){}}},tap:{Feature:class extends tH{constructor(){super(...arguments),this.removeStartListeners=t5,this.removeEndListeners=t5,this.removeAccessibleListeners=t5,this.startPointerPress=(t,e)=>{if(this.removeEndListeners(),this.isPressing)return;let i=this.node.getProps(),n=(t,e)=>{if(!this.checkPressEnd())return;let{onTap:i,onTapCancel:n}=this.node.getProps();tJ.update(()=>{t1(this.node.current,t.target)?i&&i(t,e):n&&n(t,e)})},r=tj(window,"pointerup",n,{passive:!(i.onTap||i.onPointerUp)}),s=tj(window,"pointercancel",(t,e)=>this.cancelPress(t,e),{passive:!(i.onTapCancel||i.onPointerCancel)});this.removeEndListeners=tO(r,s),this.startPress(t,e)},this.startAccessiblePress=()=>{let t=t=>{if("Enter"!==t.key||this.isPressing)return;let e=t=>{"Enter"===t.key&&this.checkPressEnd()&&t2("up",(t,e)=>{let{onTap:i}=this.node.getProps();i&&tJ.update(()=>i(t,e))})};this.removeEndListeners(),this.removeEndListeners=tk(this.node.current,"keyup",e),t2("down",(t,e)=>{this.startPress(t,e)})},e=tk(this.node.current,"keydown",t),i=()=>{this.isPressing&&t2("cancel",(t,e)=>this.cancelPress(t,e))},n=tk(this.node.current,"blur",i);this.removeAccessibleListeners=tO(e,n)}}startPress(t,e){this.isPressing=!0;let{onTapStart:i,whileTap:n}=this.node.getProps();n&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),i&&tJ.update(()=>i(t,e))}checkPressEnd(){this.removeEndListeners(),this.isPressing=!1;let t=this.node.getProps();return t.whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!tW()}cancelPress(t,e){if(!this.checkPressEnd())return;let{onTapCancel:i}=this.node.getProps();i&&tJ.update(()=>i(t,e))}mount(){let t=this.node.getProps(),e=tj(this.node.current,"pointerdown",this.startPointerPress,{passive:!(t.onTapStart||t.onPointerStart)}),i=tk(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=tO(e,i)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}},focus:{Feature:class extends tH{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch(e){t=!0}t&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=tO(tk(this.node.current,"focus",()=>this.onFocus()),tk(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}},hover:{Feature:class extends tH{mount(){this.unmount=tO(t0(this.node,!0),t0(this.node,!1))}unmount(){}}},pan:{Feature:class extends tH{constructor(){super(...arguments),this.removePointerDownListener=t5}onPointerDown(t){this.session=new iK(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint()})}createPanHandlers(){let{onPanSessionStart:t,onPanStart:e,onPan:i,onPanEnd:n}=this.node.getProps();return{onSessionStart:nS(t),onStart:nS(e),onMove:i,onEnd:(t,e)=>{delete this.session,n&&tJ.update(()=>n(t,e))}}}mount(){this.removePointerDownListener=tj(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}},drag:{Feature:class extends tH{constructor(t){super(t),this.removeGroupControls=t5,this.removeListeners=t5,this.controls=new nT(t)}mount(){let{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||t5}unmount(){this.removeGroupControls(),this.removeListeners()}},ProjectionNode:rg,MeasureLayout:nD},layout:{ProjectionNode:rg,MeasureLayout:nD}},rz=function(t){function e(e,i={}){return function({preloadedFeatures:t,createVisualElement:e,useRender:i,useVisualState:n,Component:p}){t&&function(t){for(let e in t)P[e]={...P[e],...t[e]}}(t);let m=(0,r.forwardRef)(function(m,f){var y,x;let P;let b={...(0,r.useContext)(s),...m,layoutId:function({layoutId:t}){let e=(0,r.useContext)(A).id;return e&&void 0!==t?e+"-"+t:t}(m)},{isStatic:w}=b,S=function(t){let{initial:e,animate:i}=function(t,e){if(g(t)){let{initial:i,animate:n}=t;return{initial:!1===i||d(i)?i:void 0,animate:d(n)?n:void 0}}return!1!==t.inherit?e:{}}(t,(0,r.useContext)(o));return(0,r.useMemo)(()=>({initial:e,animate:i}),[v(e),v(i)])}(m),V=n(m,w);if(!w&&l){S.visualElement=function(t,e,i,n){let{visualElement:l}=(0,r.useContext)(o),c=(0,r.useContext)(h),d=(0,r.useContext)(a),p=(0,r.useContext)(s).reducedMotion,m=(0,r.useRef)();n=n||c.renderer,!m.current&&n&&(m.current=n(t,{visualState:e,parent:l,props:i,presenceContext:d,blockInitialAnimation:!!d&&!1===d.initial,reducedMotionConfig:p}));let f=m.current;(0,r.useInsertionEffect)(()=>{f&&f.update(i,d)}),u(()=>{f&&f.render()}),(0,r.useEffect)(()=>{f&&f.updateFeatures()});let g=window.HandoffAppearAnimations?u:r.useEffect;return g(()=>{f&&f.animationState&&f.animationState.animateChanges()}),f}(p,V,b,e);let E=(0,r.useContext)(T),C=(0,r.useContext)(h).strict;S.visualElement&&(P=S.visualElement.loadFeatures(b,C,t,E))}return r.createElement(o.Provider,{value:S},P&&S.visualElement?r.createElement(P,{visualElement:S.visualElement,...b}):null,i(p,m,(y=S.visualElement,x=f,(0,r.useCallback)(t=>{t&&V.mount&&V.mount(t),y&&(t?y.mount(t):y.unmount()),x&&("function"==typeof x?x(t):c(x)&&(x.current=t))},[y])),V,w,S.visualElement))});return m[w]=p,m}(t(e,i))}if("undefined"==typeof Proxy)return e;let i=new Map;return new Proxy(e,{get:(t,n)=>(i.has(n)||i.set(n,e(n)),i.get(n))})}((t,e)=>(function(t,{forwardMotionProps:e=!1},i,n){let s=V(t)?tM:tD;return{...s,preloadedFeatures:i,useRender:function(t=!1){let e=(e,i,n,{latestValues:s},o)=>{let a=V(e)?tg:ts,l=a(i,s,o,e),u=function(t,e,i){let n={};for(let r in t)("values"!==r||"object"!=typeof t.values)&&(tl(r)||!0===i&&ta(r)||!e&&!ta(r)||t.draggable&&r.startsWith("onDrag"))&&(n[r]=t[r]);return n}(i,"string"==typeof e,t),h={...u,...l,ref:n},{children:c}=i,d=(0,r.useMemo)(()=>k(c)?c.get():c,[c]);return(0,r.createElement)(e,{...h,children:d})};return e}(e),createVisualElement:n,Component:t}})(t,e,rH,rW))},3501:function(t,e,i){i.d(e,{Z:function(){return n}});function n(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=Array(e);i=0||(r[i]=t[i]);return r}(t,e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(n=0;n=0)&&Object.prototype.propertyIsEnumerable.call(t,i)&&(r[i]=t[i])}return r}},9054:function(t,e,i){i.d(e,{Z:function(){return r}});var n=i(164);function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var i,n,r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var s=[],o=!0,a=!1;try{for(r=r.call(t);!(o=(i=r.next()).done)&&(s.push(i.value),!e||s.length!==e);o=!0);}catch(l){a=!0,n=l}finally{try{o||null==r.return||r.return()}finally{if(a)throw n}}return s}}(t,e)||(0,n.Z)(t,e)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},164:function(t,e,i){i.d(e,{Z:function(){return r}});var n=i(3501);function r(t,e){if(t){if("string"==typeof t)return(0,n.Z)(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);if("Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i)return Array.from(t);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return(0,n.Z)(t,e)}}}}]); \ No newline at end of file diff --git a/_next/static/chunks/419.3dedf6324a329639.js b/_next/static/chunks/419.3dedf6324a329639.js new file mode 100644 index 00000000..fbdd105b --- /dev/null +++ b/_next/static/chunks/419.3dedf6324a329639.js @@ -0,0 +1,291 @@ +"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[419],{8419:function(e,t,r){r.r(t),r.d(t,{OnlineInspector:function(){return t7}});var o,n,i,a,l,s,c,d,g,p=r(5250),u=r(79),h=r(2275),f=r(4284),m=r(5473),b=r(8409),v=r(8889),w=r(7875),x=r(5932),y=r(9552),k=r(8791),L=r(5477),C=r(3229),z=r(9976),M=r(7679),P=r(7447),R=r(2434),S=r(6262),T=r(7845);(o=s||(s={})).VSCode="code",o.VSCodeInsiders="code-insiders",o.VSCodium="vscodium",o.VSCodiumInsiders="vscodium-insiders",o.Codium="codium",o.Cursor="cursor",o.WebStorm="webstorm",o.AppCode="appcode",o.Idea="idea",o.Phpstorm="phpstorm",o.Pycharm="pycharm",o.Rubymine="rubymine",o.Goland="goland",o.Rider="rider",o.Sublime="subl",o.Zed="zed",o.Atom="atom",o.Vim="vim",o.Neovim="nvim",o.Emacs="emacs";var E=r(3159);function $(e){if(e instanceof HTMLElement){let t=window.getComputedStyle(e);return{borderLeft:Number.parseInt(t.borderLeftWidth,10),borderRight:Number.parseInt(t.borderRightWidth,10),borderTop:Number.parseInt(t.borderTopWidth,10),borderBottom:Number.parseInt(t.borderBottomWidth,10),marginLeft:Number.parseInt(t.marginLeft,10),marginRight:Number.parseInt(t.marginRight,10),marginTop:Number.parseInt(t.marginTop,10),marginBottom:Number.parseInt(t.marginBottom,10),paddingLeft:Number.parseInt(t.paddingLeft,10),paddingRight:Number.parseInt(t.paddingRight,10),paddingTop:Number.parseInt(t.paddingTop,10),paddingBottom:Number.parseInt(t.paddingBottom,10)}}return{borderTop:0,borderBottom:0,borderLeft:0,borderRight:0,paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0,marginTop:0,marginBottom:0,marginLeft:0,marginRight:0}}function I(...e){return(0,v.m6)(function(){for(var e,t,r=0,o="";rr=>{let[o,n]=(0,f.eY)(r,["class","style"]),i=()=>{let e=o.style;return"string"==typeof e&&"string"==typeof t.style?`${t.style} ${e}`:"object"==typeof e&&"object"==typeof t.style?{...t.style,...e}:e??t.style};return(0,f.LM)(m.m5,(0,f.dG)({component:e},n,{get class(){return I(t.class,o.class)},get style(){return i()}}))};["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","menu","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","script","search","section","select","slot","small","source","span","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"].forEach(e=>{B[e]=t=>B(e,t)});let _=String.raw,H=e=>{let t,r,o;let[n,i]=(0,S.MT)("function"==typeof e?e({set:e=>t(e),get:()=>r(),update:e=>o(e)}):e);return t=e=>{i(t=>"function"==typeof e?e(t):e)},r=()=>n,o=e=>{i((0,S.Uy)(e))},n},N=T.U2,j=e=>{let[t,r]=(0,f.eY)(e,["class"]);return(0,f.LM)(T.dr,(0,f.dG)({get class(){return I(` + flex items-center justify-start + w-full h-10 py-1 gap-2 + `,t.class)}},r))},F=e=>{let[t,r]=(0,f.eY)(e,["class"]);return(0,f.LM)(T.SP,(0,f.dG)({get class(){return I(` + inline-flex flex-initial items-center justify-start whitespace-nowrap rounded + w-[100px] px-1 py-1 text-sm text-text-3 font-normal + disabled:pointer-events-none select-none + hover:text-text-2 hover:opacity-80 hover:font-medium + data-[selected]:text-text-0 data-[selected]:font-medium + `,t.class)}},r))},O=B.div({class:` + flex flex-none flex-col items-stretch justify-stretch + p-1 w-[41px] border-r border-border box-border + `}),D=B.div({class:` + flex flex-none items-center justify-center text-sm + h-8 text-text-0 truncate + `}),W=B.div({class:` + flex flex-none items-center justify-between gap-1.5 text-xs + w-6 h-[1px] mb-1 mx-auto bg-border + `}),X=B.div({class:` + flex flex-auto flex-col items-stretch justify-start + no-scrollbar overflow-y-auto box-content + text-text-2 select-none relative + `}),G=B.div({class:` + flex flex-none items-center justify-center + aria-selected:sticky aria-selected:top-0 aria-selected:bottom-0 aria-selected:z-10 + h-8 bg-bg-1 text-text-2 font-mono truncate + `}),A=B.span({class:"opacity-85"});var K=(0,m.XK)('
Empty'),V=(0,m.XK)("
");let Y=e=>{var t;let[r,o]=(0,S.MT)({items:[],loadDone:!1,isLoading:!1}),n=e=>o("loadDone",e),i=e=>o("isLoading",e),a,l=0,s=(t=1)=>{let r=[];for(let o=0;o{e.items.push(...r),e.isLoading=!1}))};return(0,f.H3)(async()=>{if(a){await Promise.resolve();let e=a.clientHeight;(0,f.dC)(()=>{do s();while(l<2*e&&!r.loadDone)})}}),t=V(),(0,m.D$)(e=>a=e,t),(0,m.hw)(t,(0,f.dG)(()=>e.forwardProps,{get class(){return I(` + h-full gap-1 p-1.5 overflow-y-auto flex flex-col items-stretch justify-start + [content-visibility:auto] [contain-intrinsic-size:auto_none] [flex:1_1_100%] + `,e.class)},get style(){return e.style},onScroll:()=>{if(!a||r.isLoading||r.loadDone)return;let{scrollTop:e,clientHeight:t,scrollHeight:o}=a,n=e+t;i(!0),(0,f.dC)(()=>{for(;!r.loadDone&&n>=Math.max(l,o)-Math.max(.2*t,30);)s()}),i(!1)},get onPointerLeave(){return e.onPointerLeave}}),!1,!0),(0,m.$T)(t,(0,f.LM)(f.rs,{get children(){return[(0,f.LM)(f.qE,{get when(){return r.items.length},get children(){return[(0,f.LM)(f.U2,{get each(){return r.items},children:t=>(0,f.LM)(q,{get children(){return(0,f.LM)(e.ElementItem,(0,f.dG)(()=>t.props))}})}),(0,f.LM)(U,{get onPointerEnter(){return e.onPointerLeave}})]}}),(0,f.LM)(f.qE,{get when(){return r.loadDone&&!r.items.length},get children(){return K()}})]}})),t},q=B.div({class:"flex items-stretch justify-stretch",style:_`contain: layout paint;`}),U=B.div({class:"h-10 flex-[1_0_auto]"});var Q=(0,m.XK)('
'),J=(0,m.XK)('
'),Z=(0,m.XK)('
'),ee=(0,m.XK)('
'),et=(0,m.XK)('
'),er=(0,m.XK)('
'),eo=(0,m.XK)('
'),en=(0,m.XK)('
');let ei=e=>{var t,r,o,n,i,a,l,s;let c=(0,f.Py)(()=>({width:`${e.cornerSize||8}px`,height:`${e.cornerSize||8}px`})),d=(0,f.Py)(()=>`${e.borderSize||3}px`);return[(t=Q(),(0,f.F3)(()=>null!=d()?t.style.setProperty("height",d()):t.style.removeProperty("height")),t),(r=J(),(0,f.F3)(()=>null!=d()?r.style.setProperty("height",d()):r.style.removeProperty("height")),r),(o=Z(),(0,f.F3)(()=>null!=d()?o.style.setProperty("width",d()):o.style.removeProperty("width")),o),(n=ee(),(0,f.F3)(()=>null!=d()?n.style.setProperty("width",d()):n.style.removeProperty("width")),n),(i=et(),(0,f.F3)(e=>(0,m.oB)(i,c(),e)),i),(a=er(),(0,f.F3)(e=>(0,m.oB)(a,c(),e)),a),(l=eo(),(0,f.F3)(e=>(0,m.oB)(l,c(),e)),l),(s=en(),(0,f.F3)(e=>(0,m.oB)(s,c(),e)),s)]},ea=e=>{let t=e??window.__REACT_DEVTOOLS_TARGET_WINDOW__??window,r=es(t.document.documentElement);return{x:r.x+t.scrollX,y:r.y+t.scrollY,width:t.innerWidth,height:t.innerHeight}},el=async({elementBox:e,spaceBox:t,tipSize:r})=>{let{x:o,y:n}=await (0,h.oo)(e,r,{platform:{getElementRects:e=>e,getDimensions:e=>e,getClippingRect:()=>t},placement:"bottom-start",strategy:"fixed",middleware:[(0,h.cv)(4),(0,h.RR)({crossAxis:!1,fallbackAxisSideDirection:"start"}),(0,h.uY)({padding:4,crossAxis:!0})]});return{left:o,top:n}};function es(e){let t=e?.getBoundingClientRect?.();return t?{x:t.left,y:t.top,width:t.width,height:t.height}:{x:0,y:0,width:0,height:0}}let ec=e=>{let t=()=>e.spaceBox??ea(),r=H(({set:e,get:t})=>({setContainerRef:t=>e({container:t}),positionSizeStyle:{},updatePosition:r=>{let{positionSizeStyle:o}=t();e({position:r,positionSizeStyle:{position:"fixed",translate:`${r.x}px ${r.y}px`,width:o.width,height:o.height}})},updateRectBox:({position:r,size:o})=>{let n=t(),i=r??n.position??n.container?.getBoundingClientRect().toJSON();if(!i)return;let a=(r?void 0:n.positionSizeStyle.translate)??`${i.x}px ${i.y}px`;e({position:i,size:o,positionSizeStyle:{position:"fixed",translate:a,width:`${o.width}px`,height:`${o.height}px`}})}}));(0,f.H3)(()=>{let o=r.container;o&&e.initialPosition&&el({elementBox:{x:e.initialPosition.x-4,y:e.initialPosition.y-4,width:4,height:4},spaceBox:t(),tipSize:o.getBoundingClientRect().toJSON()}).then(e=>{r.updatePosition({x:e.left,y:e.top})})});let{dragStart$:o}=ed({container:()=>r.container,position:()=>r.position,updatePosition:r.updatePosition}),{resizeStart$:n}=eg({container:()=>r.container,position:()=>r.position,size:()=>r.size,sizeLimit:e.sizeLimit,updateRectBox:r.updateRectBox});return{setContainerRef:r.setContainerRef,container:()=>r.container,positionStyle:()=>r.positionSizeStyle,resizeOrDragTrigger:e=>{e.stopPropagation();let t=e.target;if(t instanceof HTMLElement&&e.button===eb.Left){if("resizeHandler"in t.dataset){e.preventDefault(),n.next(e);return}"draggableBlock"in t.dataset&&(e.preventDefault(),o.next(e))}}}},ed=e=>{let{container:t,position:r,updatePosition:o}=e,n=new w.x,i=n.pipe((0,x.w)(e=>{let o=r()??t()?.getBoundingClientRect().toJSON();if(!o)return y.E;let n=!0;return(0,k.R)(window,"pointermove",{capture:!0}).pipe((0,L.h)(()=>!!t()),(0,C.b)(e=>{e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation(),n&&(t().dataset.dragging="",n=!1)}),(0,z.U)(t=>({x:t.clientX-e.clientX+o.x,y:t.clientY-e.clientY+o.y})),(0,M.R)((0,P.T)((0,k.R)(window,"pointerdown",{capture:!0}),(0,k.R)(window,"pointercancel",{capture:!0}),(0,k.R)(window,"contextmenu",{capture:!0}),(0,k.R)(window,"pointerup",{capture:!0}),(0,k.R)(window,"blur",{capture:!0})).pipe((0,R.q)(1),(0,C.b)(()=>{t()&&delete t().dataset.dragging}))))}),(0,C.b)(e=>{o(e)})).subscribe();return(0,f.$W)(()=>i.unsubscribe()),{dragStart$:n}},eg=e=>{let{container:t,position:r,size:o,updateRectBox:n}=e,i=new w.x,a=i.pipe((0,x.w)(e=>{let n=e.target,i=eu(n);if(!i)return y.E;let a=r()&&o()?{...r(),...o()}:t()?.getBoundingClientRect().toJSON();if(!a)return y.E;let l=eh[i],s=!0,c=document.body.style.cursor;return(0,k.R)(window,"pointermove",{capture:!0}).pipe((0,L.h)(()=>!!t()),(0,C.b)(e=>{e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation(),s&&(document.body.style.cursor=l,t().dataset.resizing="",s=!1)}),(0,z.U)(t=>({startRect:a,direction:i,movement:{x:t.clientX-e.clientX,y:t.clientY-e.clientY}})),(0,M.R)((0,P.T)((0,k.R)(window,"pointerdown",{capture:!0}),(0,k.R)(window,"pointercancel",{capture:!0}),(0,k.R)(window,"contextmenu",{capture:!0}),(0,k.R)(window,"pointerup",{capture:!0}),(0,k.R)(window,"blur",{capture:!0})).pipe((0,R.q)(1),(0,C.b)(()=>{document.body.style.cursor=c,t()&&delete t().dataset.resizing}))))}),(0,C.b)(({startRect:t,direction:r,movement:o})=>{let i=ef(r),a=t.width+o.x*i.x,l=t.height+o.y*i.y,{sizeLimit:s}=e;s?.minWidth&&(a=Math.max(s.minWidth,a)),s?.minHeight&&(l=Math.max(s.minHeight,l)),s?.maxWidth&&(a=Math.min(s.maxWidth,a)),s?.maxHeight&&(l=Math.min(s.maxHeight,l));let c=t.width-a,d=t.height-l,g=em(i);n({position:g?{x:t.x+c*g.x,y:t.y+d*g.y}:void 0,size:{width:a,height:l}})})).subscribe();return(0,f.$W)(()=>a.unsubscribe()),{resizeStart$:i}};var ep=((n=ep||{}).Top="Top",n.Right="Right",n.Bottom="Bottom",n.Left="Left",n.TopLeft="TopLeft",n.TopRight="TopRight",n.BottomLeft="BottomLeft",n.BottomRight="BottomRight",n);let eu=e=>{if(!(!(e instanceof HTMLElement)||!("resizeHandler"in e.dataset)))switch(!0){case""===e.dataset.resizeBorderTop:return ep.Top;case""===e.dataset.resizeBorderRight:return ep.Right;case""===e.dataset.resizeBorderBottom:return ep.Bottom;case""===e.dataset.resizeBorderLeft:return ep.Left;case""===e.dataset.resizeCornerTopLeft:return ep.TopLeft;case""===e.dataset.resizeCornerTopRight:return ep.TopRight;case""===e.dataset.resizeCornerBottomLeft:return ep.BottomLeft;case""===e.dataset.resizeCornerBottomRight:return ep.BottomRight}},eh={[ep.Top]:"ns-resize",[ep.Right]:"ew-resize",[ep.Bottom]:"ns-resize",[ep.Left]:"ew-resize",[ep.TopLeft]:"nwse-resize",[ep.TopRight]:"nesw-resize",[ep.BottomLeft]:"nesw-resize",[ep.BottomRight]:"nwse-resize"},ef=e=>({[ep.Left]:{x:-1,y:0},[ep.Top]:{x:0,y:-1},[ep.Right]:{x:1,y:0},[ep.Bottom]:{x:0,y:1},[ep.TopLeft]:{x:-1,y:-1},[ep.TopRight]:{x:1,y:-1},[ep.BottomLeft]:{x:-1,y:1},[ep.BottomRight]:{x:1,y:1}})[e],em=e=>{if(!(-1!==e.x&&-1!==e.y))return{x:-1===e.x?1:0,y:-1===e.y?1:0}},eb=((i={})[i.Left=0]="Left",i[i.Middle=1]="Middle",i[i.Right=2]="Right",i);var ev=(0,m.XK)("
");let ew=e=>{var t;let{setContainerRef:r,positionStyle:o,resizeOrDragTrigger:n}=ec(e);return(t=ev()).$$click=ex,t.$$mousedown=ex,(0,m.Oo)(t,"pointerdown",n,!0),(0,m.D$)(r,t),(0,m.$T)(t,()=>e.children,null),(0,m.$T)(t,(0,f.LM)(ei,{}),null),(0,f.F3)(r=>{var n=I(` + inspector-context-panel + relative top-0 left-0 + flex items-stretch justify-stretch + overflow-hidden rounded-md border bg-card shadow-xl + *:data-[dragging]:pointer-events-none data-[dragging]:cursor-move + *:data-[resizing]:pointer-events-none + `,e.class),i=o();return n!==r.e&&(0,m.ok)(t,r.e=n),r.t=(0,m.oB)(t,i,r.t),r},{e:void 0,t:void 0}),t},ex=e=>e.stopPropagation();(0,m.Qj)(["pointerdown","mousedown","click"]);let ey=B.div({class:` + inspector-panel-container + flex flex-auto flex-col items-stretch justify-stretch overflow-hidden + bg-bg-1 text-text-1 text-sm + `}),ek=B.div({class:` + inspector-panel-body + flex items-stretch justify-stretch flex-auto + min-h-0 min-w-0 + `}),eL=B.div({class:` + inspector-panel-header + flex items-center justify-between flex-none + w-full h-11 px-2 border-b gap-1.5 + `});var eC={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};let ez=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),eM=(...e)=>e.filter((e,t,r)=>!!e&&r.indexOf(e)===t).join(" ");var eP=(0,m.XK)(""),eR=e=>{var t;let[r,o]=(0,f.eY)(e,["color","size","strokeWidth","children","class","name","iconNode","absoluteStrokeWidth"]);return t=eP(),(0,m.hw)(t,(0,f.dG)(eC,{get width(){return r.size??eC.width},get height(){return r.size??eC.height},get stroke(){return r.color??eC.stroke},get"stroke-width"(){return(0,f.Py)(()=>!!r.absoluteStrokeWidth)()?24*Number(r.strokeWidth??eC["stroke-width"])/Number(r.size):Number(r.strokeWidth??eC["stroke-width"])},get class(){return eM("lucide","lucide-icon",null!=r.name?`lucide-${ez(r?.name)}`:void 0,null!=r.class?r.class:"")}},o),!0,!0),(0,m.$T)(t,(0,f.LM)(f.U2,{get each(){return r.iconNode},children:([e,t])=>(0,f.LM)(m.m5,(0,f.dG)({component:e},t))})),t};let eS=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]];var eT=e=>(0,f.LM)(eR,(0,f.dG)(e,{name:"Copy",iconNode:eS}));let eE=[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]];var e$=e=>(0,f.LM)(eR,(0,f.dG)(e,{name:"Layers",iconNode:eE}));let eI=[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]];var eB=e=>(0,f.LM)(eR,(0,f.dG)(e,{name:"Settings",iconNode:eI})),e_=(0,m.XK)("
");let eH=e=>{var t;return t=e_(),(0,m.hw)(t,(0,f.dG)(()=>e.forwardProps,{get class(){return I(` + iconbox flex flex-none items-center justify-center rounded + size-7 text-sm leading-none + `,e.onClick&&"cursor-pointer hover:bg-bg-hover-2 active:bg-bg-active-1",e.class)},get style(){return{width:e.boxSize&&`${e.boxSize}px`,height:e.boxSize&&`${e.boxSize}px`,"font-size":e.size&&`${e.size}px`,...e.style}},get onClick(){return e.onClick},get onPointerEnter(){return e.onPointerEnter},get onPointerLeave(){return e.onPointerLeave}}),!1,!0),(0,m.$T)(t,()=>e.children),t},eN=e=>{let[t,r]=(0,f.eY)(e,["tag","style"]),o=()=>"string"==typeof t.tag?t.tag:t.tag?.label,n=()=>"string"==typeof t.tag?void 0:t.tag?.background,i=()=>"string"==typeof t.tag?void 0:t.tag?.textColor;return(0,f.LM)(f.di,{get when(){return o()},get children(){return(0,f.LM)(ej.Tag,(0,f.dG)(r,{get style(){return{...t.style,color:i(),background:n()}},get children(){return o()}}))}})},ej={Tag:B.span({class:"text-text-1 bg-[var(--color-tag-lightblue-1)] rounded px-1.5 py-0.5 select-none text-xs"})};var eF=(0,m.XK)('');let eO=e=>{var t;return t=eF(),(0,f.F3)(r=>{var o=e.size,n=e.size,i=e.class;return o!==r.e&&(0,m.P$)(t,"width",r.e=o),n!==r.t&&(0,m.P$)(t,"height",r.t=n),i!==r.a&&(0,m.P$)(t,"class",r.a=i),r},{e:void 0,t:void 0,a:void 0}),t};var eD=(0,m.XK)("");let eW=e=>{var t;return t=eD(),(0,m.P$)(t,"src",`data:image/svg+xml;base64,${eX}`),(0,f.F3)(r=>{var o=e.size,n=e.size,i=e.class;return o!==r.e&&(0,m.P$)(t,"width",r.e=o),n!==r.t&&(0,m.P$)(t,"height",r.t=n),i!==r.a&&(0,m.ok)(t,r.a=i),r},{e:void 0,t:void 0,a:void 0}),t},eX=window.btoa(` + + + + + + + + + + + + + + + + + + + + + +`);var eG=(0,m.XK)('
'),eA=(0,m.XK)('
'),eK=(0,m.XK)("‎"),eV=(0,m.XK)('
\ No newline at end of file diff --git a/docs/editor-settings.html b/docs/editor-settings.html index bb92f8ba..eef6b5a8 100644 --- a/docs/editor-settings.html +++ b/docs/editor-settings.html @@ -1,6 +1,7 @@ IDE / Editor config – React Dev Inspector
Documentation
Editor Settings

IDE / Editor config

+
Documentation
Editor Settings

IDE / Editor config

The react-dev-inspector could launch your local IDE/Editor application with file path, but which one will be open?

In fact, it uses an environment variable named REACT_EDITOR to specify an IDE application.

For example, if you want it always open VSCode when inspection clicked, set export REACT_EDITOR=code in your shell config like .bashrc or .zshrc.

@@ -28,7 +30,7 @@

VSCode

Install VSCode command line tools, follow the official docs (opens in a new tab), you need to run the command: >Shell Command: Install 'code' command in PATH -install-vscode-cli

+install-vscode-cli

Set env to shell, like .bashrc or .zshrc

export REACT_EDITOR=code

@@ -37,7 +39,7 @@

~/.zshrc
export REACT_EDITOR='/Applications/WebStorm.app/Contents/MacOS/webstorm'

OR

Install WebStorm command line tools: -install-webstorm-cli

+install-webstorm-cli

Then set env to shell, like .bashrc or .zshrc:

~/.zshrc
export REACT_EDITOR=webstorm

@@ -45,4 +47,4 @@

Yes! you can also use nvim/vim if you want, just set env to shell

~/.zshrc
export REACT_EDITOR=nvim
 # or
-export REACT_EDITOR=vim

\ No newline at end of file +export REACT_EDITOR=vim
\ No newline at end of file diff --git a/docs/inspector-component.html b/docs/inspector-component.html index cc40e8f8..be3d937b 100644 --- a/docs/inspector-component.html +++ b/docs/inspector-component.html @@ -1,6 +1,7 @@ Inspector Component – React Dev Inspector
Documentation
Inspector Component

Inspector Component

+
Documentation
Inspector Component

Inspector Component

0

Optional
Compiler

0

Optional
Compiler

1

Inspector
Component

1

Inspector
Component

2

Dev Server
Middleware

2

Dev Server
Middleware

-

This page is the Part.1 of configuration, we will add the Inspector UI component in your project +

This page is the Part.1 of configuration, we will add the Inspector UI component in your project that provider interaction on browser, like this:

- -

Setup

-

At first install the package:

-
npm i -D react-dev-inspector
-

Then import the react-dev-inspector in your project entry file, like one of main.tsx, App.tsx or index.tsx:

-
main.tsx
import { createRoot } from 'react-dom/client'
-import { Inspector } from 'react-dev-inspector'
-import { App } from './App'
-import './index.css'
- 
-createRoot(document.getElementById('root') as HTMLDivElement)
-  .render(
-    <React.StrictMode>
-      <Inspector />
-      <App />
-    </React.StrictMode>,
-  )
-

-Open in StackBlitz + +

Triggered by hotkeys, also able to be controlled by component props. +See the default settings or change them below.

+

Also provides a panel to show hierarchy from the inspected element to root. +It’s triggered by a right-click when inspecting (version >=v2.1.0). +Called InspectContextPanel due to it's like the mouse context-menu

+

Try it on the Showcase page to see the effect.

+ +

Setup

+

At first install the package:

+
npm i -D react-dev-inspector
+

Then import the react-dev-inspector in your project entry file, like one of main.tsx, App.tsx or index.tsx:

+
main.tsx
import { createRoot } from 'react-dom/client'
+import { Inspector } from 'react-dev-inspector'
+import { App } from './App'
+import './index.css'
+ 
+createRoot(document.getElementById('root') as HTMLDivElement)
+  .render(
+    <React.StrictMode>
+      <Inspector />
+      <App />
+    </React.StrictMode>,
+  )
+

+Open in StackBlitz (opens in a new tab)

-

Now, we've completed the simplest setup way in this Part.1 🎉.

-

To begin developing your project, you'll gain access to the Inspector UI in the browser -via default keyboard shortcuts:

-
    -
  • Ctrl + Shift + Command + C on macOS
  • -
  • Ctrl + Shift + Alt + C on Windows / Linux
  • +

    Now, we've completed the simplest setup way in this Part.1 🎉.

    +

    To begin developing your project, you'll gain access to the Inspector UI in the browser +via default keyboard shortcuts:

    +
      +
    • Ctrl + Shift + Command + C on macOS
    • +
    • Ctrl + Shift + Alt + C on Windows / Linux
    -

    By default, clicking inspected element in the browser will trigger the <Inspector> to send an API network request to dev-server, +

    By default, clicking inspected element in the browser will trigger the <Inspector> to send an API network request to dev-server, that will call your local IDE/editor to open the source file.

    -

    For the next Part.2, you'll need to do set up a Middleware on Server-Side to handle these API requests.

    -

    Certainly, you also have the option to override these shortcuts by configuring the props of the <Inspector> component. -For more advanced controls, refer to the Props section below.

    -

    Props

    -

    This section refers to the interface of InspectorProps (opens in a new tab) -for <Inspector> component.

    -
    <Inspector
    -  keys={...}
    -  onInspectElement={...}
    -  onHoverElement={...}
    -  onClickElement={...}
    -  active={...}
    -  onActiveChange={...}
    -  disable={...}
    -/>
    -

    keys

    -
      -
    • Type: keys?: string[] | null
    • -
    • Default:
      -['Ctrl', 'Shift', 'Command', 'C'] on macOS
      -['Ctrl', 'Shift', 'Alt', 'C'] on other platforms
    • +

      For the next Part.2, you'll need to do set up a Middleware on Server-Side to handle these API requests.

      +

      Certainly, you also have the option to override these shortcuts by configuring the props of the <Inspector> component. +For more advanced controls, refer to the Props section below.

      +

      Props

      +

      This section refers to the interface of InspectorProps (opens in a new tab) +for <Inspector> component.

      +
      <Inspector
      +  keys={...}
      +  onInspectElement={...}
      +  onHoverElement={...}
      +  onClickElement={...}
      +  active={...}
      +  onActiveChange={...}
      +  disable={...}
      +/>
      +

      keys

      +
        +
      • Type: keys?: string[] | null
      • +
      • Default:
        +['Ctrl', 'Shift', 'Command', 'C'] on macOS
        +['Ctrl', 'Shift', 'Alt', 'C'] on other platforms
      -

      Activity toggle hotkeys for <Inspector> component, supported keys see: https://github.com/jaywcjlove/hotkeys#supported-keys (opens in a new tab)

      -

      Setting keys={null} explicitly means that disable use hotkeys to trigger it.

      -
      -

      active

      -

      Added in: v2.0.0

      -

      Type: active?: boolean

      -

      If setting active prop, the Inspector will be a Controlled React Component, -you need to control the true / false state to active the Inspector.

      -

      If not setting active prop, this only a Uncontrolled component that +

      Activity toggle hotkeys for <Inspector> component, supported keys see: https://github.com/jaywcjlove/hotkeys#supported-keys (opens in a new tab)

      +

      Setting keys={null} explicitly means that disable use hotkeys to trigger it.

      +
      +

      active

      +

      Added in: v2.0.0

      +

      Type: active?: boolean

      +

      If setting active prop, the Inspector will be a Controlled React Component, +you need to control the true / false state to active the Inspector.

      +

      If not setting active prop, this only a Uncontrolled component that will activate/deactivate by hotkeys.

      -
      -

      onActiveChange

      -

      Added in: v2.0.0

      -

      Type: onActiveChange?: (active: boolean) => void

      -

      Callback trigger by active state change, includes:

      -
        -
      • hotkeys toggle, before activate/deactivate Inspector
      • -
      • Escape / Click, before deactivate Inspector
      • +
        +

        onActiveChange

        +

        Added in: v2.0.0

        +

        Type: onActiveChange?: (active: boolean) => void

        +

        Callback trigger by active state change, includes:

        +
          +
        • hotkeys toggle, before activate/deactivate Inspector
        • +
        • Escape / Click, before deactivate Inspector
        -
        -

        Note: onActiveChange will NOT trigger by change of active prop key.

        +
        +

        Note: onActiveChange will NOT trigger by change of active prop key.

        -
        -

        disable

        -

        Added in: v2.0.0

        -

        Type: disable?: boolean

        -

        Whether to disable all behavior include hotkeys listening or trigger.

        -
        💡

        Note: react-dev-inspector will automatically disable in production environment by default.

        -
        -

        inspectAgents

        -

        Added in: v2.1.0

        -
          -
        • Type: inspectAgents?: InspectAgent<Element>[] -
          -

          interface InspectAgent (opens in a new tab)

          +
          +

          disable

          +

          Added in: v2.0.0

          +

          Type: disable?: boolean

          +

          Whether to disable all behavior include hotkeys listening or trigger.

          +
          💡

          Note: react-dev-inspector will automatically disable in production environment by default.

          +
          +

          inspectAgents

          +

          Added in: v2.1.0

          + -

          Agent for get inspection info in different React renderer with user interaction.

          -
          -

          onInspectElement

          -

          Added in: v2.0.0

          -
            -
          • Type: onInspectElement?: (params: Required<InspectParams>) => void -
            -

            interface InspectParams (opens in a new tab))

            +

            Agent for get inspection info in different React renderer with user interaction.

            +
            +

            onInspectElement

            +

            Added in: v2.0.0

            + -

            Callback when left-clicking on an element, with ensuring the source code info is found, -the default gotoServerEditor callback will request the dev-server to open local IDE/editor from server-side.

            -
            💡

            Note: By override the onInspectElement prop, the default gotoServerEditor will be removed, +

            Callback when left-clicking on an element, with ensuring the source code info is found, +the default gotoServerEditor callback will request the dev-server to open local IDE/editor from server-side.

            +
            💡

            Note: By override the onInspectElement prop, the default gotoServerEditor will be removed, that means you want to manually handle the source info, or handle how to goto editor by yourself.

            -

            You can also use the built-in gotoServerEditor util funtion in onInspectElement to get origin behavior (open local IDE on server-side), +

            You can also use the built-in gotoServerEditor util funtion in onInspectElement to get origin behavior (open local IDE on server-side), it looks like:

            -
            import { Inspector, gotoServerEditor } from 'react-dev-inspector'
            - 
            -<Inspector
            -  onInspectElement={({ codeInfo }) => {
            -    ... // your processing
            - 
            -    gotoServerEditor(codeInfo)
            -  }}
            -/>
            -

            Or simply use other built-in utils likes gotoVSCode, gotoVSCodeInsiders, gotoWebStorm to open IDE/editor by URL-scheme, +

            import { Inspector, gotoServerEditor } from 'react-dev-inspector'
            + 
            +<Inspector
            +  onInspectElement={({ codeInfo }) => {
            +    ... // your processing
            + 
            +    gotoServerEditor(codeInfo)
            +  }}
            +/>
            +

            Or simply use other built-in utils likes gotoVSCode, gotoVSCodeInsiders, gotoWebStorm to open IDE/editor by URL-scheme, which not need any server side configuration:

            -
            import { gotoVSCode, gotoVSCodeInsiders, gotoWebStorm } from 'react-dev-inspector'
            - 
            -<Inspector
            -  onInspectElement={gotoVSCode}
            -  // onInspectElement={gotoVSCodeInsiders}
            -  // onInspectElement={gotoWebStorm}
            -/>
            -
            -

            onHoverElement

            -

            Type: onHoverElement?: (params: InspectParams) => void

            -

            Callback when hovering on an element

            -
            -

            onClickElement

            -

            Type: onClickElement?: (params: InspectParams) => void

            -

            Callback when left-clicking on an element.

            -
            -

            children

            -

            Type: children?: ReactNode

            -

            Any children of react nodes, to support usages like both of:

            -
            <Layout>
            -  <Inspector />
            -  <App />
            -</Layout>
            -

            and

            -
            <Layout>
            -  <Inspector>
            -    <App />
            -  </Inspector>
            -</Layout>
            -
            -

            disableLaunchEditor

            -

            Deprecated after: v2.0.0

            -
              -
            • Type: disableLaunchEditor?: boolean
            • -
            • Default: true if setting onInspectElement callback, otherwise is false.
            • +
              import { gotoVSCode, gotoVSCodeInsiders, gotoWebStorm } from 'react-dev-inspector'
              + 
              +<Inspector
              +  onInspectElement={gotoVSCode}
              +  // onInspectElement={gotoVSCodeInsiders}
              +  // onInspectElement={gotoWebStorm}
              +/>
              +
              +

              onHoverElement

              +

              Type: onHoverElement?: (params: InspectParams) => void

              +

              Callback when hovering on an element

              +
              +

              onClickElement

              +

              Type: onClickElement?: (params: InspectParams) => void

              +

              Callback when left-clicking on an element.

              +
              +

              children

              +

              Type: children?: ReactNode

              +

              Any children of react nodes, to support usages like both of:

              +
              <Layout>
              +  <Inspector />
              +  <App />
              +</Layout>
              +

              and

              +
              <Layout>
              +  <Inspector>
              +    <App />
              +  </Inspector>
              +</Layout>
              +
              +

              disableLaunchEditor

              +

              Deprecated after: v2.0.0

              +
                +
              • Type: disableLaunchEditor?: boolean
              • +
              • Default: true if setting onInspectElement callback, otherwise is false.
              -

              Whether to disable default behavior: "open local IDE when click on component".

              -
              ⚠️

              Deprecated
              -disableLaunchEditor is deprecated after v2, please use onInspectElement callback instead for fully custom controlling.

\ No newline at end of file +

Whether to disable default behavior: "open local IDE when click on component".

+
⚠️

Deprecated
+disableLaunchEditor is deprecated after v2, please use onInspectElement callback instead for fully custom controlling.

\ No newline at end of file diff --git a/docs/integration.html b/docs/integration.html index dc644415..cde0f3d2 100644 --- a/docs/integration.html +++ b/docs/integration.html @@ -1,6 +1,7 @@ Server-Side Integration – React Dev Inspector
Documentation
Server-Side Integration

Server-Side Integration

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

react-dev-inspector provides a pure middleware and many integrated plugins for popular frameworks, you can choose one of them to integrate into your project.

Frameworks Integration

@@ -110,23 +112,23 @@

All behind those interaction plugins is the @react-dev-inspector/middleware,

for other frameworks, you can use the middleware directly in your framework's dev-server.

Inspector Middleware

-
npm i -D @react-dev-inspector/middleware
-

This package mainly just provides a launchEditorMiddleware, -that is an Express.js (opens in a new tab) / Connect.js (opens in a new tab) compatible request middleware.

-
import { launchEditorMiddleware } from '@react-dev-inspector/middleware'
-

Usage Examples

-

For example, use with webpack-dev-server (opens in a new tab) / webpack-dev-middleware (opens in a new tab):

-
-

Note: Place launchEditorMiddleware as far forward in the middleware sequence as possible, before other middlewares.

-
webpack.config.js
const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
- 
-module.exports = {
-  ...
- 
-  devServer: {
-    setupMiddlewares(middlewares) {
-      middlewares.unshift(launchEditorMiddleware)
-      return middlewares
-    },
-  },
-}
\ No newline at end of file +
npm i -D @react-dev-inspector/middleware
+

This package mainly just provides a launchEditorMiddleware, +that is an Express.js (opens in a new tab) / Connect.js (opens in a new tab) compatible request middleware.

+
import { launchEditorMiddleware } from '@react-dev-inspector/middleware'
+

Usage Examples

+

For example, use with webpack-dev-server (opens in a new tab) / webpack-dev-middleware (opens in a new tab):

+
+

Note: Place launchEditorMiddleware as far forward in the middleware sequence as possible, before other middlewares.

+
webpack.config.js
const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
+ 
+module.exports = {
+  ...
+ 
+  devServer: {
+    setupMiddlewares(middlewares) {
+      middlewares.unshift(launchEditorMiddleware)
+      return middlewares
+    },
+  },
+}
\ No newline at end of file diff --git a/docs/integration/_snip-declaration.html b/docs/integration/_snip-declaration.html index 84f3167e..00caa6f0 100644 --- a/docs/integration/_snip-declaration.html +++ b/docs/integration/_snip-declaration.html @@ -1,6 +1,7 @@ Snip Declaration – React Dev Inspector

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/integration/create-react-app.html b/docs/integration/create-react-app.html index e8d8f626..0c09705c 100644 --- a/docs/integration/create-react-app.html +++ b/docs/integration/create-react-app.html @@ -1,6 +1,7 @@ Create-React-App Integration – React Dev Inspector
Documentation
Create React App

Create-React-App Integration

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

In this section, follow the simple setup below to integrate react-dev-inspector into your create-react-app (opens in a new tab) project.

Setup customize-cra

Before setup with react-dev-inspector, let's assume you have use customize-cra (opens in a new tab) @@ -119,36 +121,36 @@

and already have a config-overrides.js for customize-cra.

Setup react-dev-inspector

Install the middleware package and add it to your config-overrides.js:

-
npm i -D @react-dev-inspector/middleware
-
config-overrides.js
const {
-  override,
-  overrideDevServer,
-} = require('customize-cra')
-const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
- 
-module.exports = {
-  /**
-   * react-dev-inspector server config for webpack-dev-server
-   */
-  devServer: overrideDevServer(
-    serverConfig => {
-      // https://webpack.js.org/configuration/dev-server/#devserversetupmiddlewares
-      serverConfig.setupMiddlewares = (middlewares) => {
-        middlewares.unshift(launchEditorMiddleware)
-        return middlewares
-      }
- 
-      return serverConfig
-    },
-  ),
- 
-  webpack: override(
-    ...
-  ),
-}
-

Example

-

Example project code you can find in examples/cra5-with-rewired (opens in a new tab), +

npm i -D @react-dev-inspector/middleware
+
config-overrides.js
const {
+  override,
+  overrideDevServer,
+} = require('customize-cra')
+const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
+ 
+module.exports = {
+  /**
+   * react-dev-inspector server config for webpack-dev-server
+   */
+  devServer: overrideDevServer(
+    serverConfig => {
+      // https://webpack.js.org/configuration/dev-server/#devserversetupmiddlewares
+      serverConfig.setupMiddlewares = (middlewares) => {
+        middlewares.unshift(launchEditorMiddleware)
+        return middlewares
+      }
+ 
+      return serverConfig
+    },
+  ),
+ 
+  webpack: override(
+    ...
+  ),
+}
+

Example

+

Example project code you can find in examples/cra5-with-rewired (opens in a new tab), or see online demo via:

-

-Open in StackBlitz - (opens in a new tab)

\ No newline at end of file +

+Open in StackBlitz + (opens in a new tab)

\ No newline at end of file diff --git a/docs/integration/nextjs.html b/docs/integration/nextjs.html index 67a2436d..049df84b 100644 --- a/docs/integration/nextjs.html +++ b/docs/integration/nextjs.html @@ -1,6 +1,7 @@ Next.js Integration – React Dev Inspector
Documentation
Next.js

Next.js Integration

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

In this section, follow the simple setup below to integrate react-dev-inspector into your Next.js (opens in a new tab) project.

Setup

At first install the package:

-
npm i -D @react-dev-inspector/middleware
-

This middleware package just provides a launchEditorMiddleware, -you need to add it to Custom Server (opens in a new tab) of Next.js, -and update the dev script in package.json.

-

Here provide a example template for your to create a server.mjs as custom server:

-
package.json
{
-  ...
-  "scripts": {
-    "dev": "node server.mjs",
-    "build": "next build"
-  }
-}
-
server.mjs
/**
- * https://nextjs.org/docs/advanced-features/custom-server
- */
-import { createServer } from 'node:http'
-import next from 'next'
-import { launchEditorMiddleware } from '@react-dev-inspector/middleware'
- 
- 
-const dev = process.env.NODE_ENV !== 'production'
- 
-const hostname = process.env.HOST || 'localhost'
-const port = process.env.PORT ? Number(process.env.PORT) : 3000
-const app = next({
-  dev,
-  hostname,
-  port,
-})
-const handle = app.getRequestHandler()
- 
-app.prepare().then(() => {
-  createServer((req, res) => {
-    /**
-     * middlewares, from top to bottom
-     */
-    const middlewares = [
-      /** `react-dev-inspector` server config for nextjs */
-      launchEditorMiddleware,
- 
-      /** Next.js default app handler as middleware */
-      (req, res) => handle(req, res),
-    ]
- 
-    const middlewarePipeline = middlewares.reduceRight(
-      (next, middleware) => (
-        () => { middleware(req, res, next) }
-      ),
-      () => {},
-    )
- 
-    try {
-      middlewarePipeline()
-    }
-    catch (err) {
-      console.error('Error occurred handling', req.url, err)
-      res.statusCode = 500
-      res.end('internal server error')
-    }
-  }).listen(port, (err) => {
-    if (err) throw err
-    console.debug(`\n > Ready on http://${hostname}:${port} \n`)
-  })
-})
-
-

That is because the launchEditorMiddleware can it CANNOT running in Next.js Edge Runtime (opens in a new tab), +

npm i -D @react-dev-inspector/middleware
+

This middleware package just provides a launchEditorMiddleware, +you need to add it to Custom Server (opens in a new tab) of Next.js, +and update the dev script in package.json.

+

Here provide a example template for your to create a server.mjs as custom server:

+
package.json
{
+  ...
+  "scripts": {
+    "dev": "node server.mjs",
+    "build": "next build"
+  }
+}
+
server.mjs
/**
+ * https://nextjs.org/docs/advanced-features/custom-server
+ */
+import { createServer } from 'node:http'
+import next from 'next'
+import { launchEditorMiddleware } from '@react-dev-inspector/middleware'
+ 
+ 
+const dev = process.env.NODE_ENV !== 'production'
+ 
+const hostname = process.env.HOST || 'localhost'
+const port = process.env.PORT ? Number(process.env.PORT) : 3000
+const app = next({
+  dev,
+  hostname,
+  port,
+})
+const handle = app.getRequestHandler()
+ 
+app.prepare().then(() => {
+  createServer((req, res) => {
+    /**
+     * middlewares, from top to bottom
+     */
+    const middlewares = [
+      /** `react-dev-inspector` server config for nextjs */
+      launchEditorMiddleware,
+ 
+      /** Next.js default app handler as middleware */
+      (req, res) => handle(req, res),
+    ]
+ 
+    const middlewarePipeline = middlewares.reduceRight(
+      (next, middleware) => (
+        () => { middleware(req, res, next) }
+      ),
+      () => {},
+    )
+ 
+    try {
+      middlewarePipeline()
+    }
+    catch (err) {
+      console.error('Error occurred handling', req.url, err)
+      res.statusCode = 500
+      res.end('internal server error')
+    }
+  }).listen(port, (err) => {
+    if (err) throw err
+    console.debug(`\n > Ready on http://${hostname}:${port} \n`)
+  })
+})
+
+

That is because the launchEditorMiddleware can it CANNOT running in Next.js Edge Runtime (opens in a new tab), that need you to use it in the Custom Server.

-

Example

-

Example project code you can find in examples/nextjs-custom-server (opens in a new tab), +

Example

+

Example project code you can find in examples/nextjs-custom-server (opens in a new tab), or see online demo via:

-

-Open in StackBlitz - (opens in a new tab)

\ No newline at end of file +

+Open in StackBlitz + (opens in a new tab)

\ No newline at end of file diff --git a/docs/integration/rspack.html b/docs/integration/rspack.html index 93f35794..a1aaa500 100644 --- a/docs/integration/rspack.html +++ b/docs/integration/rspack.html @@ -1,6 +1,7 @@ Rspack Integration – React Dev Inspector
Documentation
Rspack

Rspack Integration

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

In this section, follow the simple setup below to integrate react-dev-inspector into your Rspack (opens in a new tab) project.

Setup

At first install the package:

-
npm i -D @react-dev-inspector/middleware
-

This package provides a launchEditorMiddleware, -just add it in your rscpack.config.ts by devServer.setupMiddlewares (opens in a new tab):

-
-

Note: Place launchEditorMiddleware as far forward in the middleware sequence as possible, before other middlewares.

+
npm i -D @react-dev-inspector/middleware
+

This package provides a launchEditorMiddleware, +just add it in your rscpack.config.ts by devServer.setupMiddlewares (opens in a new tab):

+
+

Note: Place launchEditorMiddleware as far forward in the middleware sequence as possible, before other middlewares.

-
rspack.config.ts
import type { Configuration } from '@rspack/cli'
-import { launchEditorMiddleware } from '@react-dev-inspector/middleware'
- 
-const config: Configuration = {
-  context: process.cwd(),
-  entry: {
-    main: './src/main.tsx',
-  },
- 
-  ...
- 
-  devServer: {
-    setupMiddlewares(middlewares) {
-      /** react-dev-inspector server config for rspack */
-      middlewares.unshift(launchEditorMiddleware)
-      return middlewares
-    },
-  },
-}
- 
-export default config
-

Example

-

Example project code you can find in examples/rspack (opens in a new tab).

-
\ No newline at end of file +
rspack.config.ts
import type { Configuration } from '@rspack/cli'
+import { launchEditorMiddleware } from '@react-dev-inspector/middleware'
+ 
+const config: Configuration = {
+  context: process.cwd(),
+  entry: {
+    main: './src/main.tsx',
+  },
+ 
+  ...
+ 
+  devServer: {
+    setupMiddlewares(middlewares) {
+      /** react-dev-inspector server config for rspack */
+      middlewares.unshift(launchEditorMiddleware)
+      return middlewares
+    },
+  },
+}
+ 
+export default config
+

Example

+

Example project code you can find in examples/rspack (opens in a new tab).

+
\ No newline at end of file diff --git a/docs/integration/umijs.html b/docs/integration/umijs.html index 27ff5702..9256ab39 100644 --- a/docs/integration/umijs.html +++ b/docs/integration/umijs.html @@ -1,6 +1,7 @@ Umi Plugin – React Dev Inspector
Documentation
UmiJS

Umi Plugin

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

In this section, follow the simple setup below to integrate react-dev-inspector into your UmiJS (opens in a new tab) project.

Umi4 Setup

At first install the plugin package:

-
npm i -D @react-dev-inspector/umi4-plugin
-

Then add the plugin to your UmiJS config file and that's all done, likes .umirc.dev.ts:

-
.umirc.dev.ts
// https://umijs.org/docs/api/config
-import { defineConfig } from 'umi'
- 
-export default defineConfig({
-  ...
- 
-  plugins: [
-    ...
- 
-    '@react-dev-inspector/umi4-plugin',
-  ],
-})
-
-

The plugin includes @react-dev-inspector/babel-plugin, -which will automatically be disabled when using srcTranspiler: 'swc' in umi4 config or when in production build mode.

+
npm i -D @react-dev-inspector/umi4-plugin
+

Then add the plugin to your UmiJS config file and that's all done, likes .umirc.dev.ts:

+
.umirc.dev.ts
// https://umijs.org/docs/api/config
+import { defineConfig } from 'umi'
+ 
+export default defineConfig({
+  ...
+ 
+  plugins: [
+    ...
+ 
+    '@react-dev-inspector/umi4-plugin',
+  ],
+})
+
+

The plugin includes @react-dev-inspector/babel-plugin, +which will automatically be disabled when using srcTranspiler: 'swc' in umi4 config or when in production build mode.

-

Umi3 Setup

-

Same as setup with Umi4, but change the plugin package to:

-
npm i -D @react-dev-inspector/umi3-plugin
-

Then add the plugin to your UmiJS config file and that's all done, likes .umirc.dev.ts:

-
.umirc.dev.ts
// https://v3.umijs.org/config
-import { defineConfig } from 'umi'
- 
-export default defineConfig({
-  ...
- 
-  plugins: [
-    ...
- 
-    '@react-dev-inspector/umi3-plugin',
-  ],
-})
-
-

This plugin has include a @react-dev-inspector/babel-plugin +

Umi3 Setup

+

Same as setup with Umi4, but change the plugin package to:

+
npm i -D @react-dev-inspector/umi3-plugin
+

Then add the plugin to your UmiJS config file and that's all done, likes .umirc.dev.ts:

+
.umirc.dev.ts
// https://v3.umijs.org/config
+import { defineConfig } from 'umi'
+ 
+export default defineConfig({
+  ...
+ 
+  plugins: [
+    ...
+ 
+    '@react-dev-inspector/umi3-plugin',
+  ],
+})
+
+

This plugin has include a @react-dev-inspector/babel-plugin which will automatically disable when production build mode.

-

Example

-

Example project code you can find in examples/umi4 (opens in a new tab) -and examples/umi3 (opens in a new tab), +

Example

+

Example project code you can find in examples/umi4 (opens in a new tab) +and examples/umi3 (opens in a new tab), or see online demo via:

-

-Open in StackBlitz - (opens in a new tab)

\ No newline at end of file +

+Open in StackBlitz + (opens in a new tab)

\ No newline at end of file diff --git a/docs/integration/vite.html b/docs/integration/vite.html index ef27d25c..3b8953e9 100644 --- a/docs/integration/vite.html +++ b/docs/integration/vite.html @@ -1,6 +1,7 @@ Vite Plugin – React Dev Inspector
Documentation
Vite

Vite Plugin

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

In this section, follow the simple setup below to integrate react-dev-inspector into your Vite (opens in a new tab) project.

Setup

At first install the plugin package:

-
npm i -D @react-dev-inspector/vite-plugin
-

The @react-dev-inspector/vite-plugin now export a inspectorServer that compatible with vite@5 / vite@4 / vite@3 / vite@2, -just add it into vite.config.ts and that's all done.

-
vite.config.ts
import { defineConfig } from 'vite'
-import react from '@vitejs/plugin-react'
-import { inspectorServer } from '@react-dev-inspector/vite-plugin'
- 
-// https://vitejs.dev/config/
-export default defineConfig({
-  ...
- 
-  plugins: [
-    react(),
- 
-    /**
-     * react-dev-inspector server config for vite
-     */
-    inspectorServer(),
-  ],
-})
-

Example

-

Example project code you can find in examples/vite4 (opens in a new tab), +

npm i -D @react-dev-inspector/vite-plugin
+

The @react-dev-inspector/vite-plugin now export a inspectorServer that compatible with vite@5 / vite@4 / vite@3 / vite@2, +just add it into vite.config.ts and that's all done.

+
vite.config.ts
import { defineConfig } from 'vite'
+import react from '@vitejs/plugin-react'
+import { inspectorServer } from '@react-dev-inspector/vite-plugin'
+ 
+// https://vitejs.dev/config/
+export default defineConfig({
+  ...
+ 
+  plugins: [
+    react(),
+ 
+    /**
+     * react-dev-inspector server config for vite
+     */
+    inspectorServer(),
+  ],
+})
+

Example

+

Example project code you can find in examples/vite4 (opens in a new tab), or see online demo via:

-

-Open in StackBlitz - (opens in a new tab)

\ No newline at end of file +

+Open in StackBlitz + (opens in a new tab)

\ No newline at end of file diff --git a/docs/integration/webpack.html b/docs/integration/webpack.html index 50067feb..565337bc 100644 --- a/docs/integration/webpack.html +++ b/docs/integration/webpack.html @@ -1,6 +1,7 @@ Webpack Integration – React Dev Inspector
Documentation
Webpack

Webpack Integration

+

This page is the Part.2 of configuration, we will add a middleware in dev-server to receives API from Inspector Component, and call your local IDE/Editor to open the source file from server side. Please make sure you have already added the Inspector Component in your project as Part.1.

- +

In this section, follow the simple setup below to integrate react-dev-inspector into your Webpack (opens in a new tab) project.

Setup

At first install the package:

-
npm i -D @react-dev-inspector/middleware
-

This package provides a launchEditorMiddleware, +

npm i -D @react-dev-inspector/middleware
+

This package provides a launchEditorMiddleware, just add it in your webpack config's middlewares.

-
-

Note: Place launchEditorMiddleware as far forward in the middleware sequence as possible, before other middlewares.

+
+

Note: Place launchEditorMiddleware as far forward in the middleware sequence as possible, before other middlewares.

-

For example, use with setupMiddlewares (opens in a new tab) in Webpack 5 likes:

-
webpack.config.js
const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
- 
-module.exports = {
-  ...
- 
-  devServer: {
-    setupMiddlewares(middlewares) {
-      middlewares.unshift(launchEditorMiddleware)
-      return middlewares
-    },
-  },
-}
-

Use with devServer.before (opens in a new tab) in Webpack 4 likes:

-
webpack.config.js
const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
- 
-module.exports = {
-  ...
- 
-  devServer: {
-    before: (app, server, compiler) => {
-      app.use(launchEditorMiddleware)
-    },
-  },
-}
\ No newline at end of file +

For example, use with setupMiddlewares (opens in a new tab) in Webpack 5 likes:

+
webpack.config.js
const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
+ 
+module.exports = {
+  ...
+ 
+  devServer: {
+    setupMiddlewares(middlewares) {
+      middlewares.unshift(launchEditorMiddleware)
+      return middlewares
+    },
+  },
+}
+

Use with devServer.before (opens in a new tab) in Webpack 4 likes:

+
webpack.config.js
const { launchEditorMiddleware } = require('@react-dev-inspector/middleware')
+ 
+module.exports = {
+  ...
+ 
+  devServer: {
+    before: (app, server, compiler) => {
+      app.use(launchEditorMiddleware)
+    },
+  },
+}
\ No newline at end of file diff --git a/docs/migrate-v1-to-v2.html b/docs/migrate-v1-to-v2.html index bbdc03ac..92de0887 100644 --- a/docs/migrate-v1-to-v2.html +++ b/docs/migrate-v1-to-v2.html @@ -1,6 +1,7 @@ Migrate From V1 to V2 – React Dev Inspector
Documentation
Migrate From V1

Migrate From V1 to V2

+
\ No newline at end of file +
\ No newline at end of file diff --git a/index.html b/index.html index accd3eb3..3eff24a0 100644 --- a/index.html +++ b/index.html @@ -1,6 +1,7 @@ React Dev Inspector – Seamless Browser-to-Editor Code Navigation – React Dev Inspector

Seamless browser-to-editor code navigation.

Inspect in browser, click, then you will get its source code in your local IDE, instantly.

Get started

Background

Seamless browser-to-editor code navigation.

Inspect in browser, click, then you will get its source code in your local IDE, instantly.

Get started

Simple to integrate with
your React frameworks and Editors

Simple to integrate with
your React frameworks and Editors

It's quick and easy to get started with some built-in plugins for most popular React frameworks.

Prefer an online demo?

Prefer an online demo?

Okay, it's also supported on StackBlitz, CodeSandbox, Gitpod, Replit, GitHub Codespaces and other remote Cloud IDEs.

The Working Pipeline

Working Pipeline

That's how it works

Okay, it's also supported on StackBlitz, CodeSandbox, Gitpod, Replit, GitHub Codespaces and other remote Cloud IDEs.

The Working Pipeline

Working Pipeline

That's how it works

Inject JSX Source

The compiler's plugin records source path info into component's react fiber.

The Inspector Component

The <Inspector/> component reads the source info, sends it to the dev-server when you inspect elements on browser.

Dev Server Middleware

The dev server middleware receives source path info from API, then call your local IDE/Editor to open the source file.

Try now, at once.

Yes, you can try the react-dev-inspector immediately on this page by the button below!

Try now, at once.

Yes, you can try the react-dev-inspector immediately on this page by the button below!

And more...

Examples / Configuration / Built-in Plugins / API / Fully Controlled Usages ...
A lot of new possibilities to be explored.

Getting the Docs →

\ No newline at end of file + ">🍭

And more...

Examples / Configuration / Built-in Plugins / API / Fully Controlled Usages ...
A lot of new possibilities to be explored.

Getting the Docs →

\ No newline at end of file diff --git a/showcase.html b/showcase.html index 7046b741..c9dee485 100644 --- a/showcase.html +++ b/showcase.html @@ -1 +1 @@ -
\ No newline at end of file +
\ No newline at end of file